From 9bb979dbfb2c4edc31018a83970567f8734c0b61 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期二, 30 七月 2024 11:42:45 +0800
Subject: [PATCH] 单位字典保存前进行重复校验
---
request/operation.go | 132 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 117 insertions(+), 15 deletions(-)
diff --git a/request/operation.go b/request/operation.go
index 63639fc..a88d06b 100644
--- a/request/operation.go
+++ b/request/operation.go
@@ -1,26 +1,128 @@
package request
import (
- "google.golang.org/genproto/googleapis/type/decimal"
+ "github.com/shopspring/decimal"
"wms/constvar"
- "wms/extend/util"
+ "wms/models"
)
type AddOperation struct {
- Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
- Number string `json:"number" gorm:"column:number;type:varchar(255)"` //鍗曞彿
- SourceNumber string `json:"sourceNumber" gorm:"type:varchar(255)"` //婧愬崟鍙�
- OperationTypeId int `json:"operationTypeId" gorm:"type:int;not null;comment:浣滀笟绫诲瀷id"` //浣滀笟绫诲瀷id
- Status constvar.OperationStatus `json:"status" gorm:"type:int(11);not null;comment:鐘舵��"` //鐘舵��
- FromLocationId int `json:"fromLocationId" gorm:"type:int;not null;comment:婧愪綅缃甶d"` //婧愪綅缃甶d
- ToLocationId int `json:"toLocationId" gorm:"type:int;not null;comment:鐩爣浣嶇疆id"` //鐩爣浣嶇疆id
- OperationDate util.JSONTime `json:"operationDate" gorm:"comment:瀹夋帓鏃ユ湡"`
- Details []*OperationDetails `json:"details"`
+ ID int `json:"id" `
+ Number string `json:"number" ` //鍗曞彿
+ SourceNumber string `json:"sourceNumber" ` //婧愬崟鍙�
+ OperationTypeId int `json:"operationTypeId" ` //浣滀笟绫诲瀷id
+ OperationTypeName string `json:"operationTypeName" ` //浣滀笟绫诲瀷鍚嶇О
+ Status constvar.OperationStatus `json:"status" ` //鐘舵��
+ //FromLocationId int `json:"fromLocationId" ` //婧愪綅缃甶d
+ //ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ OperationDate string `json:"operationDate" ` //瀹夋帓鏃ユ湡
+ Details []*OperationDetails `json:"details"` // 璇︽儏
+ ContacterID int `json:"contacterID" ` //鑱旂郴浜篒D-闈炲繀濉�
+ ContacterName string `json:"contacterName" ` //鑱旂郴浜哄鍚�-闈炲繀濉�
+ CompanyID string `json:"companyID"` //鍏徃ID-瀹㈡埛
+ CompanyName string `json:"companyName" ` //鍏徃鍚嶇О-瀹㈡埛鍚嶇О
+ Comment string `json:"comment" ` //澶囨敞
+ LogisticCompanyId string `json:"logisticCompanyId" ` // 鐗╂祦鍏徃id
+ WaybillNumber string `json:"waybillNumber" ` //杩愬崟鍙�
+ Weight decimal.Decimal `json:"weight"` //閲嶉噺
+ LogisticWeight decimal.Decimal `json:"logisticWeight"` //鐗╂祦閲嶉噺
+ ReceiverName string `json:"receiverName" ` // 鏀惰揣浜哄鍚�
+ ReceiverPhone string `json:"receiverPhone" ` // 鑱旂郴鐢佃瘽
+ ReceiverAddr string `json:"receiverAddr" ` // 鏀惰揣鍦板潃
+ LocationId int `json:"locationId" ` //婧愪綅缃甶d
+ ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ ManagerId string `json:"managerId" ` // 涓荤id
+ Manager string `json:"manager" ` // 涓荤鍚嶇О
+ AccountantId string `json:"accountantId" ` // 浼氳id
+ Accountant string `json:"accountant" ` // 浼氳鍚嶇О
+ CustodianId string `json:"custodianId" ` // 淇濈鍛榠d
+ Custodian string `json:"custodian" ` // 淇濈鍛樺悕绉�
+ BaseOperationType constvar.BaseOperationType `json:"baseOperationType" ` //鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣
+ WarehouseId int `json:"warehouseId" ` //浠撳簱id
+ DealerType string `json:"dealerType" ` // 璋冩嫧鍑哄叆搴撶被鍨�
+ SilkMarket string `json:"silkMarket"` // 搴勫彛
}
type OperationDetails struct {
- ProductId int `json:"productId" gorm:"type:int;not null;comment:浜у搧id"` //浜у搧id
- ProductName string `json:"productName" gorm:"type:varchar(255);not null;comment:浜у搧鍚嶇О"` //浜у搧鍚嶇О
- Quantity decimal.Decimal `json:"quantity" gorm:"type:decimal(20,2);not null;comment:鏁伴噺"` //鏁伴噺
- FinishQuantity decimal.Decimal `json:"finishQuantity" gorm:"type:decimal(20,2);not null;comment:鏁伴噺"` //瀹屾垚鏁伴噺
+ OperationId int `json:"OperationId" ` //鎿嶄綔id
+ ProductId string `json:"productId" ` //浜у搧id
+ //ProductName string `json:"productName" ` //浜у搧鍚嶇О
+ Amount decimal.Decimal `json:"amount" ` //鏁伴噺
+ StockAmount decimal.Decimal `json:"stockAmount"` //搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�
+ //Unit string `json:"unit"` //鍗曚綅
+ //Product models.Material `json:"product" ` // 浜у搧
+ FromLocationId int `json:"fromLocationId"` //婧愪綅缃甶d
+ ToLocationId int `json:"toLocationId"` //鐩爣浣嶇疆id
+ TotalGrossWeight decimal.Decimal `json:"totalGrossWeight"` //鎬绘瘺閲�
+ TotalNetWeight decimal.Decimal `json:"totalNetWeight"` //鎬诲噣閲�
+ AuxiliaryAmount decimal.Decimal `json:"auxiliaryAmount"` //杈呭姪鏁伴噺
+ AuxiliaryUnit string `json:"auxiliaryUnit"` //杈呭姪鍗曚綅
+ Remark string `json:"remark"` // 澶囨敞
+
+ Cost decimal.Decimal `json:"cost"` //鎴愭湰鍗曚环
+ SalePrice decimal.Decimal `json:"salePrice"` //閿�鍞崟浠�
+ SilkMarket string `json:"silkMarket"` // 搴勫彛
+ SilkMarketClose string `json:"silkMarketClose"` // 搴勫彛鍏抽棴
+
+ MoreUnitList []models.UnitItems `json:"moreUnitList" gorm:"-"`
+ MoreUnitValue string `json:"-" gorm:"type:varchar(255);comment:澶氬崟浣嶅��"`
+}
+
+type OperationList struct {
+ PageInfo
+ OperationTypeId int `json:"operationTypeId" form:"operationTypeId"` // 浣滀笟绫诲瀷id
+ BaseOperationType constvar.BaseOperationType `json:"baseOperationType"` //鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣
+ Number string `json:"number"` // 鍗曞彿
+ Status constvar.OperationStatus `json:"status"` // 鐘舵��
+}
+
+type UpdateOperation struct {
+ ID int `json:"id"`
+ Number string `json:"number" ` //鍗曞彿
+ SourceNumber string `json:"sourceNumber" ` //婧愬崟鍙�
+ OperationTypeId int `json:"operationTypeId" ` //浣滀笟绫诲瀷id
+ OperationTypeName string `json:"operationTypeName" ` //浣滀笟绫诲瀷鍚嶇О
+ Status constvar.OperationStatus `json:"status" ` //鐘舵��
+ //FromLocationId int `json:"fromLocationId" ` //婧愪綅缃甶d
+ //ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ OperationDate string `json:"operationDate" ` //瀹夋帓鏃ユ湡
+ Details []*OperationDetails `json:"details"` // 璇︽儏
+ ContacterID int `json:"contacterID" ` //鑱旂郴浜篒D-闈炲繀濉�
+ ContacterName string `json:"contacterName"` //鑱旂郴浜哄鍚�-闈炲繀濉�
+ CompanyID string `json:"companyID"` //鍏徃ID-瀹㈡埛
+ CompanyName string `json:"companyName" ` //鍏徃鍚嶇О-瀹㈡埛鍚嶇О
+ Comment string `json:"comment"` //澶囨敞
+ BaseOperationType constvar.BaseOperationType `json:"baseOperationType"` //鍩虹浣滀笟绫诲瀷
+ LogisticCompanyId string `json:"logisticCompanyId" `
+ WaybillNumber string `json:"waybillNumber" ` //杩愬崟鍙�
+ Weight decimal.Decimal `json:"weight"` //閲嶉噺
+ LogisticWeight decimal.Decimal `json:"logisticWeight"` //鐗╂祦閲嶉噺
+ ReceiverName string `json:"receiverName" ` // 鏀惰揣浜哄鍚�
+ ReceiverPhone string `json:"receiverPhone" ` // 鑱旂郴鐢佃瘽
+ ReceiverAddr string `json:"receiverAddr" ` // 鏀惰揣鍦板潃
+ LocationId int `json:"locationId" ` //婧愪綅缃甶d
+ ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ ManagerId string `json:"managerId" ` // 涓荤id
+ Manager string `json:"manager" ` // 涓荤鍚嶇О
+ AccountantId string `json:"accountantId" ` // 浼氳id
+ Accountant string `json:"accountant" ` // 浼氳鍚嶇О
+ CustodianId string `json:"custodianId" ` // 淇濈鍛榠d
+ Custodian string `json:"custodian" ` // 淇濈鍛樺悕绉�
+ WarehouseId int `json:"warehouseId" ` //浠撳簱id
+ InventoryDealerType int `json:"inventoryDealerType" ` // 璋冩嫧鍑哄叆搴撳垎绫�(瀵瑰簲dict瀛楀吀琛ㄧ殑ID)
+ SilkMarket string `json:"silkMarket"` // 搴勫彛
+}
+
+type OperationAllList struct {
+ PageInfo
+ Number string `json:"number"` // 鍗曞彿
+ SourceNumber string `json:"sourceNumber"` // 婧愬崟鍙�
+}
+
+type OperationCondition struct {
+ PageInfo
+ Condition string `json:"condition"` // 妯$硦鏌ヨ鏉′欢
+ Keyword string `json:"keyword" form:"keyword"` //鍏抽敭瀛楁悳绱�
+ WarehouseId int `json:"warehouseId" form:"warehouseId"` //浠撳簱ID
+ LocationId int `json:"locationId" form:"locationId"` //浣嶇疆ID
}
--
Gitblit v1.8.0