feat(shipment): 添加父级货运销售产品ID字段

- 在SaleProductItem结构体中新增ParentShipmentSaleProductId字段
- 用于关联父级货运销售产品关系
- 保持原有数据结构完整性
- 更新两个相关文件中的结构体定义
This commit is contained in:
2026-04-09 16:56:28 +08:00
parent 408b739e4c
commit cdd0ebe733
2 changed files with 160 additions and 158 deletions

View File

@@ -13,85 +13,86 @@ type saleProduct struct {
} }
type SaleProductItem struct { type SaleProductItem struct {
Id int64 `json:"id"` Id int64 `json:"id"`
Mold int64 `json:"mold"` Mold int64 `json:"mold"`
MoldCount int64 `json:"moldCount"` MoldCount int64 `json:"moldCount"`
ParentSaleProductId int64 `json:"parentSaleProductId"` ParentSaleProductId int64 `json:"parentSaleProductId"`
SaleProductId int64 `json:"saleProductId"` ParentShipmentSaleProductId int64 `json:"parentShipmentSaleProductId"`
PiSerial string `json:"piSerial"` SaleProductId int64 `json:"saleProductId"`
Sort int64 `json:"sort"` PiSerial string `json:"piSerial"`
Po string `json:"po"` Sort int64 `json:"sort"`
Serial string `json:"serial"` Po string `json:"po"`
ImgFilePaths []string `json:"imgFilePaths"` Serial string `json:"serial"`
CustomSerial string `json:"customSerial"` ImgFilePaths []string `json:"imgFilePaths"`
PackageDescription string `json:"packageDescription"` CustomSerial string `json:"customSerial"`
PackageEngDescription string `json:"packageEngDescription"` PackageDescription string `json:"packageDescription"`
PackageWeight decimal.Decimal `json:"packageWeight"` PackageEngDescription string `json:"packageEngDescription"`
EngName string `json:"engName"` PackageWeight decimal.Decimal `json:"packageWeight"`
Name string `json:"name"` EngName string `json:"engName"`
CustomsName string `json:"customsName"` Name string `json:"name"`
CustomsSerial string `json:"customsSerial"` CustomsName string `json:"customsName"`
CustomsMeasureUnit string `json:"customsMeasureUnit"` CustomsSerial string `json:"customsSerial"`
CustomsInvoiceUnit string `json:"customsInvoiceUnit"` CustomsMeasureUnit string `json:"customsMeasureUnit"`
CustomsDetail string `json:"customsDetail"` CustomsInvoiceUnit string `json:"customsInvoiceUnit"`
BlEngName string `json:"blEngName"` CustomsDetail string `json:"customsDetail"`
BoxCount int64 `json:"boxCount"` BlEngName string `json:"blEngName"`
InnerNum int64 `json:"innerNum"` BoxCount int64 `json:"boxCount"`
InnerBoxCount *int64 `json:"innerBoxCount"` InnerNum int64 `json:"innerNum"`
BoxNumUnit string `json:"boxNumUnit"` InnerBoxCount *int64 `json:"innerBoxCount"`
OuterNum int64 `json:"outerNum"` BoxNumUnit string `json:"boxNumUnit"`
ShipmentCount int64 `json:"shipmentCount"` OuterNum int64 `json:"outerNum"`
ShipmentCountUnit string `json:"shipmentCountUnit"` ShipmentCount int64 `json:"shipmentCount"`
Length decimal.Decimal `json:"length"` ShipmentCountUnit string `json:"shipmentCountUnit"`
Width decimal.Decimal `json:"width"` Length decimal.Decimal `json:"length"`
Height decimal.Decimal `json:"height"` Width decimal.Decimal `json:"width"`
Volume decimal.Decimal `json:"volume"` Height decimal.Decimal `json:"height"`
TotalVolume decimal.Decimal `json:"totalVolume"` Volume decimal.Decimal `json:"volume"`
NetGrossVolume int64 `json:"netGrossVolume"` TotalVolume decimal.Decimal `json:"totalVolume"`
GrossWeight decimal.Decimal `json:"grossWeight"` NetGrossVolume int64 `json:"netGrossVolume"`
TotalGrossWeight decimal.Decimal `json:"totalGrossWeight"` GrossWeight decimal.Decimal `json:"grossWeight"`
NetWeight decimal.Decimal `json:"netWeight"` TotalGrossWeight decimal.Decimal `json:"totalGrossWeight"`
TotalNetWeight decimal.Decimal `json:"totalNetWeight"` NetWeight decimal.Decimal `json:"netWeight"`
CustomsVolume decimal.Decimal `json:"customsVolume"` TotalNetWeight decimal.Decimal `json:"totalNetWeight"`
TotalCustomsVolume decimal.Decimal `json:"totalCustomsVolume"` CustomsVolume decimal.Decimal `json:"customsVolume"`
CustomsNetWeight decimal.Decimal `json:"customsNetWeight"` TotalCustomsVolume decimal.Decimal `json:"totalCustomsVolume"`
TotalCustomsNetWeight decimal.Decimal `json:"totalCustomsNetWeight"` CustomsNetWeight decimal.Decimal `json:"customsNetWeight"`
CustomsGrossWeight decimal.Decimal `json:"customsGrossWeight"` TotalCustomsNetWeight decimal.Decimal `json:"totalCustomsNetWeight"`
TotalCustomsGrossWeight decimal.Decimal `json:"totalCustomsGrossWeight"` CustomsGrossWeight decimal.Decimal `json:"customsGrossWeight"`
SalePrice decimal.Decimal `json:"salePrice"` TotalCustomsGrossWeight decimal.Decimal `json:"totalCustomsGrossWeight"`
SaleAmount decimal.Decimal `json:"saleAmount"` SalePrice decimal.Decimal `json:"salePrice"`
CustomsPrice decimal.Decimal `json:"customsPrice"` SaleAmount decimal.Decimal `json:"saleAmount"`
CustomsAmount decimal.Decimal `json:"customsAmount"` CustomsPrice decimal.Decimal `json:"customsPrice"`
FactoryName string `json:"factoryName"` CustomsAmount decimal.Decimal `json:"customsAmount"`
CurrencyRate decimal.Decimal `json:"currencyRate"` FactoryName string `json:"factoryName"`
Brand string `json:"brand"` CurrencyRate decimal.Decimal `json:"currencyRate"`
DomesticSupply string `json:"domesticSupply"` Brand string `json:"brand"`
EpmNo string `json:"epmNo"` DomesticSupply string `json:"domesticSupply"`
HsSerial int64 `json:"hsSerial"` EpmNo string `json:"epmNo"`
TaxExemption string `json:"taxExemption"` HsSerial int64 `json:"hsSerial"`
ItemNumber string `json:"itemNumber"` TaxExemption string `json:"taxExemption"`
Texture string `json:"texture"` ItemNumber string `json:"itemNumber"`
EngTexture string `json:"engTexture"` Texture string `json:"texture"`
Remark1 string `json:"remark1"` EngTexture string `json:"engTexture"`
Remark2 string `json:"remark2"` Remark1 string `json:"remark1"`
Remark3 string `json:"remark3"` Remark2 string `json:"remark2"`
Remark4 string `json:"remark4"` Remark3 string `json:"remark3"`
Remark5 string `json:"remark5"` Remark4 string `json:"remark4"`
Remark6 string `json:"remark6"` Remark5 string `json:"remark5"`
ExchangeSettlementRemark string `json:"exchangeSettlementRemark"` Remark6 string `json:"remark6"`
RemarkImg string `json:"remarkImg"` ExchangeSettlementRemark string `json:"exchangeSettlementRemark"`
ContainerNumber string `json:"containerNumber"` RemarkImg string `json:"remarkImg"`
SealNumber string `json:"sealNumber"` ContainerNumber string `json:"containerNumber"`
PurchasePrice decimal.Decimal `json:"purchasePrice"` SealNumber string `json:"sealNumber"`
PurchaseAmount decimal.Decimal `json:"purchaseAmount"` PurchasePrice decimal.Decimal `json:"purchasePrice"`
IsSerial int64 `json:"isSerial"` PurchaseAmount decimal.Decimal `json:"purchaseAmount"`
IsCustoms int64 `json:"isCustoms"` IsSerial int64 `json:"isSerial"`
IsExchangeSettlement int64 `json:"isExchangeSettlement"` IsCustoms int64 `json:"isCustoms"`
CreatedAt *time.Time `json:"createdAt"` IsExchangeSettlement int64 `json:"isExchangeSettlement"`
UpdatedAt *time.Time `json:"updatedAt"` CreatedAt *time.Time `json:"createdAt"`
Children []*SaleProductItem `json:"children"` UpdatedAt *time.Time `json:"updatedAt"`
ShipmentPurchaseProducts []PurchaseProductItem `json:"shipmentPurchaseProducts"` Children []*SaleProductItem `json:"children"`
AllPurchaseProducts []sale2.PurchaseProduct `json:"allPurchaseProducts"` ShipmentPurchaseProducts []PurchaseProductItem `json:"shipmentPurchaseProducts"`
AllPurchaseProducts []sale2.PurchaseProduct `json:"allPurchaseProducts"`
} }
type PurchaseProductItem struct { type PurchaseProductItem struct {
ShipmentPurchaseProductId int64 `json:"shipmentPurchaseProductId"` ShipmentPurchaseProductId int64 `json:"shipmentPurchaseProductId"`

View File

@@ -13,85 +13,86 @@ type saleProduct struct {
} }
type SaleProductItem struct { type SaleProductItem struct {
Id int64 `json:"id"` Id int64 `json:"id"`
Mold int64 `json:"mold"` Mold int64 `json:"mold"`
MoldCount int64 `json:"moldCount"` MoldCount int64 `json:"moldCount"`
ParentSaleProductId int64 `json:"parentSaleProductId"` ParentSaleProductId int64 `json:"parentSaleProductId"`
SaleProductId int64 `json:"saleProductId"` ParentShipmentSaleProductId int64 `json:"parentShipmentSaleProductId"`
PiSerial string `json:"piSerial"` SaleProductId int64 `json:"saleProductId"`
Sort int64 `json:"sort"` PiSerial string `json:"piSerial"`
Po string `json:"po"` Sort int64 `json:"sort"`
Serial string `json:"serial"` Po string `json:"po"`
ImgFilePaths []string `json:"imgFilePaths"` Serial string `json:"serial"`
CustomSerial string `json:"customSerial"` ImgFilePaths []string `json:"imgFilePaths"`
PackageDescription string `json:"packageDescription"` CustomSerial string `json:"customSerial"`
PackageEngDescription string `json:"packageEngDescription"` PackageDescription string `json:"packageDescription"`
PackageWeight decimal.Decimal `json:"packageWeight"` PackageEngDescription string `json:"packageEngDescription"`
EngName string `json:"engName"` PackageWeight decimal.Decimal `json:"packageWeight"`
Name string `json:"name"` EngName string `json:"engName"`
CustomsName string `json:"customsName"` Name string `json:"name"`
CustomsSerial string `json:"customsSerial"` CustomsName string `json:"customsName"`
CustomsMeasureUnit string `json:"customsMeasureUnit"` CustomsSerial string `json:"customsSerial"`
CustomsInvoiceUnit string `json:"customsInvoiceUnit"` CustomsMeasureUnit string `json:"customsMeasureUnit"`
CustomsDetail string `json:"customsDetail"` CustomsInvoiceUnit string `json:"customsInvoiceUnit"`
BlEngName string `json:"blEngName"` CustomsDetail string `json:"customsDetail"`
BoxCount int64 `json:"boxCount"` BlEngName string `json:"blEngName"`
InnerNum int64 `json:"innerNum"` BoxCount int64 `json:"boxCount"`
InnerBoxCount *int64 `json:"innerBoxCount"` InnerNum int64 `json:"innerNum"`
BoxNumUnit string `json:"boxNumUnit"` InnerBoxCount *int64 `json:"innerBoxCount"`
OuterNum int64 `json:"outerNum"` BoxNumUnit string `json:"boxNumUnit"`
ShipmentCount int64 `json:"shipmentCount"` OuterNum int64 `json:"outerNum"`
ShipmentCountUnit string `json:"shipmentCountUnit"` ShipmentCount int64 `json:"shipmentCount"`
Length decimal.Decimal `json:"length"` ShipmentCountUnit string `json:"shipmentCountUnit"`
Width decimal.Decimal `json:"width"` Length decimal.Decimal `json:"length"`
Height decimal.Decimal `json:"height"` Width decimal.Decimal `json:"width"`
Volume decimal.Decimal `json:"volume"` Height decimal.Decimal `json:"height"`
TotalVolume decimal.Decimal `json:"totalVolume"` Volume decimal.Decimal `json:"volume"`
NetGrossVolume int64 `json:"netGrossVolume"` TotalVolume decimal.Decimal `json:"totalVolume"`
GrossWeight decimal.Decimal `json:"grossWeight"` NetGrossVolume int64 `json:"netGrossVolume"`
TotalGrossWeight decimal.Decimal `json:"totalGrossWeight"` GrossWeight decimal.Decimal `json:"grossWeight"`
NetWeight decimal.Decimal `json:"netWeight"` TotalGrossWeight decimal.Decimal `json:"totalGrossWeight"`
TotalNetWeight decimal.Decimal `json:"totalNetWeight"` NetWeight decimal.Decimal `json:"netWeight"`
CustomsVolume decimal.Decimal `json:"customsVolume"` TotalNetWeight decimal.Decimal `json:"totalNetWeight"`
TotalCustomsVolume decimal.Decimal `json:"totalCustomsVolume"` CustomsVolume decimal.Decimal `json:"customsVolume"`
CustomsNetWeight decimal.Decimal `json:"customsNetWeight"` TotalCustomsVolume decimal.Decimal `json:"totalCustomsVolume"`
TotalCustomsNetWeight decimal.Decimal `json:"totalCustomsNetWeight"` CustomsNetWeight decimal.Decimal `json:"customsNetWeight"`
CustomsGrossWeight decimal.Decimal `json:"customsGrossWeight"` TotalCustomsNetWeight decimal.Decimal `json:"totalCustomsNetWeight"`
TotalCustomsGrossWeight decimal.Decimal `json:"totalCustomsGrossWeight"` CustomsGrossWeight decimal.Decimal `json:"customsGrossWeight"`
SalePrice decimal.Decimal `json:"salePrice"` TotalCustomsGrossWeight decimal.Decimal `json:"totalCustomsGrossWeight"`
SaleAmount decimal.Decimal `json:"saleAmount"` SalePrice decimal.Decimal `json:"salePrice"`
CustomsPrice decimal.Decimal `json:"customsPrice"` SaleAmount decimal.Decimal `json:"saleAmount"`
CustomsAmount decimal.Decimal `json:"customsAmount"` CustomsPrice decimal.Decimal `json:"customsPrice"`
FactoryName string `json:"factoryName"` CustomsAmount decimal.Decimal `json:"customsAmount"`
CurrencyRate decimal.Decimal `json:"currencyRate"` FactoryName string `json:"factoryName"`
Brand string `json:"brand"` CurrencyRate decimal.Decimal `json:"currencyRate"`
DomesticSupply string `json:"domesticSupply"` Brand string `json:"brand"`
EpmNo string `json:"epmNo"` DomesticSupply string `json:"domesticSupply"`
HsSerial int64 `json:"hsSerial"` EpmNo string `json:"epmNo"`
TaxExemption string `json:"taxExemption"` HsSerial int64 `json:"hsSerial"`
ItemNumber string `json:"itemNumber"` TaxExemption string `json:"taxExemption"`
Texture string `json:"texture"` ItemNumber string `json:"itemNumber"`
EngTexture string `json:"engTexture"` Texture string `json:"texture"`
Remark1 string `json:"remark1"` EngTexture string `json:"engTexture"`
Remark2 string `json:"remark2"` Remark1 string `json:"remark1"`
Remark3 string `json:"remark3"` Remark2 string `json:"remark2"`
Remark4 string `json:"remark4"` Remark3 string `json:"remark3"`
Remark5 string `json:"remark5"` Remark4 string `json:"remark4"`
Remark6 string `json:"remark6"` Remark5 string `json:"remark5"`
ExchangeSettlementRemark string `json:"exchangeSettlementRemark"` Remark6 string `json:"remark6"`
RemarkImg string `json:"remarkImg"` ExchangeSettlementRemark string `json:"exchangeSettlementRemark"`
ContainerNumber string `json:"containerNumber"` RemarkImg string `json:"remarkImg"`
SealNumber string `json:"sealNumber"` ContainerNumber string `json:"containerNumber"`
PurchasePrice decimal.Decimal `json:"purchasePrice"` SealNumber string `json:"sealNumber"`
PurchaseAmount decimal.Decimal `json:"purchaseAmount"` PurchasePrice decimal.Decimal `json:"purchasePrice"`
IsSerial int64 `json:"isSerial"` PurchaseAmount decimal.Decimal `json:"purchaseAmount"`
IsCustoms int64 `json:"isCustoms"` IsSerial int64 `json:"isSerial"`
IsExchangeSettlement int64 `json:"isExchangeSettlement"` IsCustoms int64 `json:"isCustoms"`
CreatedAt *time.Time `json:"createdAt"` IsExchangeSettlement int64 `json:"isExchangeSettlement"`
UpdatedAt *time.Time `json:"updatedAt"` CreatedAt *time.Time `json:"createdAt"`
Children []*SaleProductItem `json:"children"` UpdatedAt *time.Time `json:"updatedAt"`
ShipmentPurchaseProducts []PurchaseProductItem `json:"shipmentPurchaseProducts"` Children []*SaleProductItem `json:"children"`
AllPurchaseProducts []sale2.PurchaseProduct `json:"allPurchaseProducts"` ShipmentPurchaseProducts []PurchaseProductItem `json:"shipmentPurchaseProducts"`
AllPurchaseProducts []sale2.PurchaseProduct `json:"allPurchaseProducts"`
} }
type PurchaseProductItem struct { type PurchaseProductItem struct {