zhangqian
2024-07-01 73b6baf6af3d88cdcb0e2df7932a9bd96b0b85c5
request/operation.go
@@ -12,34 +12,60 @@
   OperationTypeId   int                      `json:"operationTypeId" gorm:"type:int;not null;comment:作业类型id"`   //作业类型id
   OperationTypeName string                   `json:"operationTypeName" gorm:"type:varchar(127);comment:作业类型名称"` //作业类型名称
   Status            constvar.OperationStatus `json:"status" gorm:"type:int(11);not null;comment:状态"`            //状态
   FromLocationId    int                      `json:"fromLocationId"   gorm:"type:int;not null;comment:源位置id"`   //源位置id
   ToLocationId      int                      `json:"toLocationId"    gorm:"type:int;not null;comment:目标位置id"`   //目标位置id
   OperationDate     string                   `json:"operationDate" gorm:"type:varchar(31);comment:安排日期"`        //安排日期
   Details           []*OperationDetails      `json:"details"`
   ContacterID       int                      `json:"contacterID" gorm:"type:int;comment:联系人ID"`           //联系人ID-非必填
   ContacterName     string                   `json:"contacterName" gorm:"type:varchar(63);comment:联系人姓名"` //联系人姓名-非必填
   CompanyID         int                      `json:"companyID" gorm:"type:int;comment:公司ID"`              //公司ID-客户
   CompanyName       string                   `json:"companyName" gorm:"type:varchar(127);comment:公司名称"`   //公司名称-客户名称
   Comment           string                   `json:"comment" gorm:"type:text;comment:备注"`                 //备注
   //Weight          decimal.Decimal          `json:"weight" gorm:"type:decimal(20,2);comment:重量(kg)"`           //重量(kg)-非必填
   //TransferWeight  decimal.Decimal          `json:"transferWeight" gorm:"type:decimal(20,2);comment:物流重量(kg)"` //物流重量(kg)-非必填
   //CarrierID       int                      `json:"carrierID" gorm:"type:int;comment:承运商ID"`                   //承运商ID-非必填
   //CarrierName     string                   `json:"carrierName" gorm:"type:varchar(63);comment:承运商名称"`         //承运商名称-非必填
   //Tracking        string                   `json:"tracking" gorm:"type:varchar(127);comment:追踪参考"`            //追踪参考-非必填
   //FromLocationId    int                      `json:"fromLocationId"   gorm:"type:int;not null;comment:源位置id"`   //源位置id
   //ToLocationId      int                      `json:"toLocationId"    gorm:"type:int;not null;comment:目标位置id"`   //目标位置id
   OperationDate       string                     `json:"operationDate" gorm:"type:varchar(31);comment:安排日期"` //安排日期
   Details             []*OperationDetails        `json:"details"`
   ContacterID         int                        `json:"contacterID" gorm:"type:int;comment:联系人ID"`           //联系人ID-非必填
   ContacterName       string                     `json:"contacterName" gorm:"type:varchar(63);comment:联系人姓名"` //联系人姓名-非必填
   CompanyID           string                     `json:"companyID"`                                           //公司ID-客户
   CompanyName         string                     `json:"companyName" gorm:"type:varchar(127);comment:公司名称"`   //公司名称-客户名称
   Comment             string                     `json:"comment" gorm:"type:text;comment:备注"`                 //备注
   LogisticCompanyId   string                     `json:"logisticCompanyId"   gorm:"type:varchar(191);comment:物流公司id"`
   WaybillNumber       string                     `json:"waybillNumber" gorm:"type:varchar(255);comment:运单号"`    //运单号
   Weight              decimal.Decimal            `gorm:"type:decimal(20,2);comment:重量" json:"weight"`           //重量
   LogisticWeight      decimal.Decimal            `gorm:"type:decimal(20,2);comment:物流重量" json:"logisticWeight"` //物流重量
   ReceiverName        string                     `json:"receiverName" gorm:"type:varchar(31);comment:收货人姓名"`
   ReceiverPhone       string                     `json:"receiverPhone" gorm:"type:varchar(31);comment:联系电话"`
   ReceiverAddr        string                     `json:"receiverAddr" gorm:"type:varchar(255);comment:收货地址"`
   LocationId          int                        `json:"locationId"   gorm:"type:int;not null;comment:源位置id"`     //源位置id
   ToLocationId        int                        `json:"toLocationId"    gorm:"type:int;not null;comment:仓库位置id"` //目标位置id
   ManagerId           string                     `json:"managerId" gorm:"type:varchar(255);comment:主管id"`
   Manager             string                     `json:"manager" gorm:"type:varchar(255);comment:主管名称"`
   AccountantId        string                     `json:"accountantId" gorm:"type:varchar(255);comment:会计id"`
   Accountant          string                     `json:"accountant" gorm:"type:varchar(255);comment:会计名称"`
   CustodianId         string                     `json:"custodianId" gorm:"type:varchar(255);comment:保管员id"`
   Custodian           string                     `json:"custodian" gorm:"type:varchar(255);comment:保管员名称"`
   BaseOperationType   constvar.BaseOperationType `json:"baseOperationType" gorm:"type:tinyint;not null;comment:基础作业类型"` //基础作业类型 5库存盘点
   WarehouseId         int                        `json:"warehouseId" gorm:"type:int;not null;comment:仓库id"`             //仓库id
   InventoryDealerType int                        `json:"inventoryDealerType" gorm:"type:varchar(255);comment:调拨出入库分类(对应dict字典表的ID)"`
}
type OperationDetails struct {
   OperationId int             `json:"OperationId" gorm:"type:int;not null;comment:操作记录id"`        //操作id
   ProductId   string          `json:"productId" gorm:"type:varchar(191);not null;comment:产品id"`   //产品id
   ProductName string          `json:"productName" gorm:"type:varchar(255);not null;comment:产品名称"` //产品名称
   Amount      decimal.Decimal `json:"amount" gorm:"type:decimal(20,2);not null;comment:数量"`       //数量
   Unit        string          `json:"unit" gorm:"type:varchar(31);comment:单位"`
   OperationId int    `json:"OperationId" gorm:"type:int;not null;comment:操作记录id"`      //操作id
   ProductId   string `json:"productId" gorm:"type:varchar(191);not null;comment:产品id"` //产品id
   //ProductName string          `json:"productName" gorm:"type:varchar(255);not null;comment:产品名称"` //产品名称
   Amount decimal.Decimal `json:"amount" gorm:"type:decimal(20,2);not null;comment:数量"` //数量
   //Unit        string          `json:"unit" gorm:"type:varchar(31);comment:单位"`                    //单位
   //Product models.Material `json:"product" gorm:"foreignKey:ProductId;references:ID"`
   FromLocationId   int             `json:"fromLocationId"   gorm:"type:int;not null;comment:源位置id"` //源位置id
   ToLocationId     int             `json:"toLocationId"    gorm:"type:int;not null;comment:目标位置id"` //目标位置id
   TotalGrossWeight decimal.Decimal `json:"totalGrossWeight" gorm:"type:decimal(20,3);comment:总毛重"`  //总毛重
   TotalNetWeight   decimal.Decimal `json:"totalNetWeight" gorm:"type:decimal(20,3);comment:总净重"`    //总净重
   AuxiliaryAmount  decimal.Decimal `json:"auxiliaryAmount" gorm:"type:decimal(20,3);comment:辅助数量"`  //辅助数量
   AuxiliaryUnit    string          `json:"auxiliaryUnit" gorm:"type:varchar(191);comment:辅助单位"`     //辅助单位
   Remark           string          `gorm:"type:varchar(1024);comment:备注" json:"remark"`
   Cost      decimal.Decimal `json:"cost"`      //成本单价
   SalePrice decimal.Decimal `json:"salePrice"` //销售单价
}
type OperationList struct {
   PageInfo
   OperationTypeId int `json:"operationTypeId" form:"operationTypeId"`
   OperationTypeId   int                        `json:"operationTypeId" form:"operationTypeId"`
   BaseOperationType constvar.BaseOperationType `json:"baseOperationType"` // 1 入库 2 出库 3 内部调拨 4 报废 5 库存盘点
   Number            string                     `json:"number"`
   Status            constvar.OperationStatus   `json:"status"`
}
type UpdateOperation struct {
@@ -49,19 +75,45 @@
   OperationTypeId   int                      `json:"operationTypeId" gorm:"type:int;not null;comment:作业类型id"`   //作业类型id
   OperationTypeName string                   `json:"operationTypeName" gorm:"type:varchar(127);comment:作业类型名称"` //作业类型名称
   Status            constvar.OperationStatus `json:"status" gorm:"type:int(11);not null;comment:状态"`            //状态
   FromLocationId    int                      `json:"fromLocationId"   gorm:"type:int;not null;comment:源位置id"`   //源位置id
   ToLocationId      int                      `json:"toLocationId"    gorm:"type:int;not null;comment:目标位置id"`   //目标位置id
   OperationDate     string                   `json:"operationDate" gorm:"type:varchar(31);comment:安排日期"`        //安排日期
   Details           []*OperationDetails      `json:"details"`
   ContacterID       int                      `json:"contacterID" gorm:"type:int;comment:联系人ID"`           //联系人ID-非必填
   ContacterName     string                   `json:"contacterName" gorm:"type:varchar(63);comment:联系人姓名"` //联系人姓名-非必填
   CompanyID         int                      `json:"companyID" gorm:"type:int;comment:公司ID"`              //公司ID-客户
   CompanyName       string                   `json:"companyName" gorm:"type:varchar(127);comment:公司名称"`   //公司名称-客户名称
   Comment           string                   `json:"comment" gorm:"type:text;comment:备注"`                 //备注
   //FromLocationId    int                        `json:"fromLocationId"   gorm:"type:int;not null;comment:源位置id"`   //源位置id
   //ToLocationId      int                        `json:"toLocationId"    gorm:"type:int;not null;comment:目标位置id"`   //目标位置id
   OperationDate       string                     `json:"operationDate" gorm:"type:varchar(31);comment:安排日期"` //安排日期
   Details             []*OperationDetails        `json:"details"`
   ContacterID         int                        `json:"contacterID" gorm:"type:int;comment:联系人ID"`           //联系人ID-非必填
   ContacterName       string                     `json:"contacterName" gorm:"type:varchar(63);comment:联系人姓名"` //联系人姓名-非必填
   CompanyID           string                     `json:"companyID"`                                           //公司ID-客户
   CompanyName         string                     `json:"companyName" gorm:"type:varchar(127);comment:公司名称"`   //公司名称-客户名称
   Comment             string                     `json:"comment" gorm:"type:text;comment:备注"`                 //备注
   BaseOperationType   constvar.BaseOperationType `json:"baseOperationType"`                                   //基础作业类型
   LogisticCompanyId   string                     `json:"logisticCompanyId"   gorm:"type:varchar(191);comment:物流公司id"`
   WaybillNumber       string                     `json:"waybillNumber" gorm:"type:varchar(255);comment:运单号"`    //运单号
   Weight              decimal.Decimal            `gorm:"type:decimal(20,2);comment:重量" json:"weight"`           //重量
   LogisticWeight      decimal.Decimal            `gorm:"type:decimal(20,2);comment:物流重量" json:"logisticWeight"` //物流重量
   ReceiverName        string                     `json:"receiverName" gorm:"type:varchar(31);comment:收货人姓名"`
   ReceiverPhone       string                     `json:"receiverPhone" gorm:"type:varchar(31);comment:联系电话"`
   ReceiverAddr        string                     `json:"receiverAddr" gorm:"type:varchar(255);comment:收货地址"`
   LocationId          int                        `json:"locationId"   gorm:"type:int;not null;comment:源位置id"`     //源位置id
   ToLocationId        int                        `json:"toLocationId"    gorm:"type:int;not null;comment:仓库位置id"` //目标位置id
   ManagerId           string                     `json:"managerId" gorm:"type:varchar(255);comment:主管id"`
   Manager             string                     `json:"manager" gorm:"type:varchar(255);comment:主管名称"`
   AccountantId        string                     `json:"accountantId" gorm:"type:varchar(255);comment:会计id"`
   Accountant          string                     `json:"accountant" gorm:"type:varchar(255);comment:会计名称"`
   CustodianId         string                     `json:"custodianId" gorm:"type:varchar(255);comment:保管员id"`
   Custodian           string                     `json:"custodian" gorm:"type:varchar(255);comment:保管员名称"`
   WarehouseId         int                        `json:"warehouseId" gorm:"type:int;not null;comment:仓库id"` //仓库id
   InventoryDealerType int                        `json:"inventoryDealerType" gorm:"type:varchar(255);comment:调拨出入库分类(对应dict字典表的ID)"`
}
   //CarrierID      int             `json:"carrierID" gorm:"type:int;comment:承运商ID"`                   //承运商ID-非必填
   //CarrierName    string          `json:"carrierName" gorm:"type:varchar(63);comment:承运商名称"`         //承运商名称-非必填
   //Tracking       string          `json:"tracking" gorm:"type:varchar(127);comment:追踪参考"`            //追踪参考-非必填
   //Weight         decimal.Decimal `json:"weight" gorm:"type:decimal(20,2);comment:重量(kg)"`           //重量(kg)-非必填
   //TransferWeight decimal.Decimal `json:"transferWeight" gorm:"type:decimal(20,2);comment:物流重量(kg)"` //物流重量(kg)-非必填
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
}