Dockerfile
This commit is contained in:
56
model/entity/stock/private_stock.go
Normal file
56
model/entity/stock/private_stock.go
Normal file
@@ -0,0 +1,56 @@
|
||||
package entity
|
||||
|
||||
import (
|
||||
"assets/consts/public"
|
||||
"assets/consts/stock"
|
||||
|
||||
"gitea.com/red-future/common/beans"
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
"go.mongodb.org/mongo-driver/v2/bson"
|
||||
)
|
||||
|
||||
// PrivateStock 实物库存批次(记录SKU批次在具体仓库/库区/库位的实际存放位置和数量)
|
||||
type PrivateStock struct {
|
||||
beans.MongoBaseDO `bson:",inline"` // 嵌入基础字段:Id, Creator, CreatedAt, Updater, UpdatedAt, TenantId, IsDeleted
|
||||
// 关联信息 - 支持多种库存类型
|
||||
StockType stock.StockLocationType `bson:"stockType" json:"stockType"` // 库存类型:stock_details/private_stock/stock_batch
|
||||
|
||||
// 位置信息
|
||||
WarehouseID *bson.ObjectID `bson:"warehouseId" json:"warehouseId"` // 仓库ID
|
||||
WarehouseCode string `bson:"warehouseCode" json:"warehouseCode"` // 仓库编码
|
||||
WarehouseName string `bson:"warehouseName" json:"warehouseName"` // 仓库名称
|
||||
|
||||
ZoneID *bson.ObjectID `bson:"zoneId" json:"zoneId"` // 库区ID(可选)
|
||||
ZoneCode string `bson:"zoneCode" json:"zoneCode"` // 库区编码
|
||||
ZoneName string `bson:"zoneName" json:"zoneName"` // 库区名称
|
||||
ZoneType stock.ZoneType `bson:"zoneType" json:"zoneType"` // 库区类型
|
||||
|
||||
LocationID *bson.ObjectID `bson:"locationId" json:"locationId"` // 库位ID(可选)
|
||||
LocationCode string `bson:"locationCode" json:"locationCode"` // 库位编码
|
||||
LocationName string `bson:"locationName" json:"locationName"` // 库位名称
|
||||
LocationType stock.LocationType `bson:"locationType" json:"locationType"` // 库位类型
|
||||
|
||||
PrivateSkuID *bson.ObjectID `bson:"privateSkuId" json:"privateSkuId"` // 私域SKU ID
|
||||
BatchNo string `bson:"batchNo" json:"batchNo"` // 批次号
|
||||
BatchQty int `bson:"batchQty" json:"batchQty"` // 批次总数量(入库后不可变)
|
||||
AvailableQty int `bson:"availableQty" json:"availableQty"` // 可用数量(实时变化)
|
||||
// 状态
|
||||
BatchStatus stock.BatchStatus `bson:"batchStatus" json:"batchStatus"` // 批次状态
|
||||
// 订单关联
|
||||
OrderID *bson.ObjectID `bson:"orderId" json:"orderId"` // 关联订单ID(如果有)
|
||||
// 供应商关联和临期管理
|
||||
SupplierID *bson.ObjectID `bson:"supplierId" json:"supplierId"` // 关联供应商ID
|
||||
SupportsRecycle bool `bson:"supportsRecycle" json:"supportsRecycle"` // 是否支持回收
|
||||
ProductionDate *gtime.Time `bson:"productionDate" json:"productionDate"` // 生产日期
|
||||
ExpiryDate *gtime.Time `bson:"expiryDate" json:"expiryDate"` // 过期日期
|
||||
ExpiryWarningDate *gtime.Time `bson:"expiryWarningDate" json:"expiryWarningDate"` // 临期预警时间(有过期日期时建议填写)
|
||||
PrivateCategoryPath string `bson:"privateCategoryPath" json:"privateCategoryPath"` // 私域分类路径
|
||||
|
||||
StockStatus stock.StockStatus `bson:"stockStatus" json:"stockStatus"` // 库存状态
|
||||
LastMovedAt *gtime.Time `bson:"lastMovedAt" json:"lastMovedAt"` // 最后移动时间
|
||||
}
|
||||
|
||||
// CollectionName 获取集合名称
|
||||
func (PrivateStock) CollectionName() string {
|
||||
return public.PrivateStockCollection
|
||||
}
|
||||
Reference in New Issue
Block a user