116 lines
5.7 KiB
Go
Executable File
116 lines
5.7 KiB
Go
Executable File
package model
|
|
|
|
import "time"
|
|
|
|
// DeliveryApply 我要提货 - 提货委托
|
|
type DeliveryApply struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
OrderNumber string `gorm:"size:50;uniqueIndex" json:"orderNumber"`
|
|
BLNumber string `gorm:"size:100" json:"blNumber"`
|
|
BLNumber2 string `gorm:"size:100" json:"blNumber2"`
|
|
LicensePlate string `gorm:"size:20" json:"licensePlate"`
|
|
DriverName string `gorm:"size:50" json:"driverName"`
|
|
DriverPhone string `gorm:"size:20" json:"driverPhone"`
|
|
DriverIdCard string `gorm:"size:30" json:"driverIdCard"`
|
|
Commodity string `gorm:"size:50" json:"commodity"`
|
|
Quantity float64 `gorm:"type:decimal(16,4)" json:"quantity"`
|
|
Unit string `gorm:"size:20" json:"unit"`
|
|
DeliveryDate string `gorm:"size:20" json:"deliveryDate"`
|
|
DeliveryAddress string `gorm:"size:200" json:"deliveryAddress"`
|
|
Warehouse string `gorm:"size:100" json:"warehouse"`
|
|
Status string `gorm:"size:20;default:pending" json:"status"` // pending, approved, in_progress, completed, cancelled
|
|
Remark string `gorm:"size:500" json:"remark"`
|
|
CreateTime time.Time `json:"createTime"`
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
}
|
|
|
|
// DeliveryOutbound 提货明细 - 出库单
|
|
type DeliveryOutbound struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
OutboundNumber string `gorm:"size:50;uniqueIndex" json:"outboundNumber"`
|
|
DeliveryOrderNumber string `gorm:"size:50" json:"deliveryOrderNumber"`
|
|
BLNumber string `gorm:"size:100" json:"blNumber"`
|
|
LicensePlate string `gorm:"size:20" json:"licensePlate"`
|
|
DriverName string `gorm:"size:50" json:"driverName"`
|
|
DriverPhone string `gorm:"size:20" json:"driverPhone"`
|
|
Commodity string `gorm:"size:50" json:"commodity"`
|
|
CommodityCode string `gorm:"size:30" json:"commodityCode"`
|
|
Quantity float64 `gorm:"type:decimal(16,4)" json:"quantity"`
|
|
Unit string `gorm:"size:20" json:"unit"`
|
|
OutboundDate string `gorm:"size:20" json:"outboundDate"`
|
|
Warehouse string `gorm:"size:100" json:"warehouse"`
|
|
Operator string `gorm:"size:50" json:"operator"`
|
|
OutboundStatus string `gorm:"size:20;default:pending" json:"outboundStatus"`
|
|
ReceiptStatus string `gorm:"size:20;default:pending" json:"receiptStatus"`
|
|
Remark string `gorm:"size:500" json:"remark"`
|
|
CreateTime time.Time `json:"createTime"`
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
}
|
|
|
|
// Warehouse 仓库
|
|
type Warehouse struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
Code string `gorm:"size:30;uniqueIndex" json:"code"`
|
|
Name string `gorm:"size:100" json:"name"`
|
|
Address string `gorm:"size:200" json:"address"`
|
|
ContactPerson string `gorm:"size:50" json:"contactPerson"`
|
|
ContactPhone string `gorm:"size:20" json:"contactPhone"`
|
|
Status string `gorm:"size:20;default:active" json:"status"`
|
|
Remark string `gorm:"size:500" json:"remark"`
|
|
CreateTime time.Time `json:"createTime"`
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
}
|
|
|
|
// InventoryInbound 入库单
|
|
type InventoryInbound struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
InboundNumber string `gorm:"size:50;uniqueIndex" json:"inboundNumber"`
|
|
Warehouse string `gorm:"size:100" json:"warehouse"`
|
|
Commodity string `gorm:"size:50" json:"commodity"`
|
|
CommodityCode string `gorm:"size:30" json:"commodityCode"`
|
|
BLNumber string `gorm:"size:100" json:"blNumber"`
|
|
BLWeight float64 `gorm:"type:decimal(16,4)" json:"blWeight"`
|
|
InboundWeight float64 `gorm:"type:decimal(16,4)" json:"inboundWeight"`
|
|
Owner string `gorm:"size:100" json:"owner"`
|
|
ContractNumber string `gorm:"size:50" json:"contractNumber"`
|
|
InboundDate string `gorm:"size:20" json:"inboundDate"`
|
|
Operator string `gorm:"size:50" json:"operator"`
|
|
Remark string `gorm:"size:500" json:"remark"`
|
|
CreateTime time.Time `json:"createTime"`
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
}
|
|
|
|
// OwnershipTransfer 货权转移
|
|
type OwnershipTransfer struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
TransferNumber string `gorm:"size:50;uniqueIndex" json:"transferNumber"`
|
|
TransferDate string `gorm:"size:20" json:"transferDate"`
|
|
Commodity string `gorm:"size:50" json:"commodity"`
|
|
Warehouse string `gorm:"size:100" json:"warehouse"`
|
|
Transferor string `gorm:"size:100" json:"transferor"`
|
|
Transferee string `gorm:"size:100" json:"transferee"`
|
|
Status string `gorm:"size:20;default:draft" json:"status"`
|
|
Remark string `gorm:"size:500" json:"remark"`
|
|
CreateTime time.Time `json:"createTime"`
|
|
UpdateTime time.Time `json:"updateTime"`
|
|
|
|
BLItems []OwnershipTransferBL `gorm:"foreignKey:TransferID" json:"blItems"`
|
|
Files []OwnershipTransferFile `gorm:"foreignKey:TransferID" json:"fileList"`
|
|
}
|
|
|
|
// OwnershipTransferBL 货权转移 - 提单明细(支持动态多条)
|
|
type OwnershipTransferBL struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
TransferID uint `gorm:"index;not null" json:"transferId"`
|
|
BLNumber string `gorm:"size:100" json:"blNumber"`
|
|
Quantity float64 `gorm:"type:decimal(16,4)" json:"quantity"`
|
|
}
|
|
|
|
// OwnershipTransferFile 货权转移附件
|
|
type OwnershipTransferFile struct {
|
|
ID uint `gorm:"primaryKey" json:"id"`
|
|
TransferID uint `gorm:"index" json:"transferId"`
|
|
Name string `gorm:"size:255" json:"name"`
|
|
URL string `gorm:"size:500" json:"url"`
|
|
}
|