request/operation.go
@@ -6,114 +6,118 @@
)
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
   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         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
   DealerType        string                     `json:"dealerType" gorm:"type:varchar(255);comment:调拨出入库类型"`
   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" `   //源位置id
   //ToLocationId      int                      `json:"toLocationId" `   //目标位置id
   OperationDate     string                     `json:"operationDate" `     //安排日期
   Details           []*OperationDetails        `json:"details"`            // 详情
   ContacterID       int                        `json:"contacterID" `       //联系人ID-非必填
   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" `        //源位置id
   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" `       // 保管员id
   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 {
   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:数量"` //数量
   StockAmount decimal.Decimal `json:"stockAmount" gorm:"type:decimal(30,10);"`                //库存数量,盘点时用
   //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"`
   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"`   //源位置id
   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"` //销售单价
   Cost            decimal.Decimal `json:"cost"`            //成本单价
   SalePrice       decimal.Decimal `json:"salePrice"`       //销售单价
   SilkMarket      string          `json:"silkMarket"`      // 庄口
   SilkMarketClose string          `json:"silkMarketClose"` // 庄口关闭
}
type OperationList struct {
   PageInfo
   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"`
   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" 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
   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           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)"`
   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"  `   //源位置id
   //ToLocationId      int                        `json:"toLocationId" `   //目标位置id
   OperationDate       string                     `json:"operationDate" `    //安排日期
   Details             []*OperationDetails        `json:"details"`           // 详情
   ContacterID         int                        `json:"contacterID" `      //联系人ID-非必填
   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" `          //源位置id
   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" `         // 保管员id
   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"`
   Number       string `json:"number"`       // 单号
   SourceNumber string `json:"sourceNumber"` // 源单号
}
type OperationCondition struct {
   PageInfo
   Condition   string `json:"condition"`
   Condition   string `json:"condition"`                      // 模糊查询条件
   Keyword     string `json:"keyword" form:"keyword"`         //关键字搜索
   WarehouseId int    `json:"warehouseId" form:"warehouseId"` //仓库ID
   LocationId  int    `json:"locationId" form:"locationId"`   //位置ID