61 lines
3.1 KiB
Go
61 lines
3.1 KiB
Go
|
|
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"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
// InventoryCountDetail 库存盘点明细表实体
|
|||
|
|
type InventoryCountDetail struct {
|
|||
|
|
beans.MongoBaseDO `bson:",inline"` // 嵌入基础字段:Id, Creator, CreatedAt, Updater, UpdatedAt, TenantId, IsDeleted
|
|||
|
|
|
|||
|
|
// 关联信息
|
|||
|
|
CountID *bson.ObjectID `bson:"countId" json:"countId"` // 盘点单ID
|
|||
|
|
AssetID *bson.ObjectID `bson:"assetId" json:"assetId"` // 资产ID
|
|||
|
|
AssetSkuID *bson.ObjectID `bson:"assetSkuId" json:"assetSkuId"` // 资产SKU ID
|
|||
|
|
WarehouseID *bson.ObjectID `bson:"warehouseId" json:"warehouseId"` // 仓库ID
|
|||
|
|
ZoneID *bson.ObjectID `bson:"zoneId" json:"zoneId"` // 库区ID
|
|||
|
|
LocationID *bson.ObjectID `bson:"locationId" json:"locationId"` // 库位ID
|
|||
|
|
|
|||
|
|
// 账面数据
|
|||
|
|
BookQuantity int `bson:"bookQuantity" json:"bookQuantity"` // 账面数量
|
|||
|
|
BookBatchInfo map[string]int `bson:"bookBatchInfo" json:"bookBatchInfo"` // 账面批次信息 {batchNo: quantity}
|
|||
|
|
|
|||
|
|
// 实盘数据
|
|||
|
|
ActualQuantity int `bson:"actualQuantity" json:"actualQuantity"` // 实盘数量
|
|||
|
|
ActualBatchInfo map[string]int `bson:"actualBatchInfo" json:"actualBatchInfo"` // 实盘批次信息 {batchNo: quantity}
|
|||
|
|
CountBy string `bson:"countBy" json:"countBy"` // 盘点人ID
|
|||
|
|
CountAt *gtime.Time `bson:"countAt" json:"countAt"` // 盘点时间
|
|||
|
|
|
|||
|
|
// 差异信息
|
|||
|
|
Difference int `bson:"difference" json:"difference"` // 差异数量 (实际-账面)
|
|||
|
|
DifferenceRate float64 `bson:"differenceRate" json:"differenceRate"` // 差异率
|
|||
|
|
DiscrepancyType stock.DiscrepancyType `bson:"discrepancyType" json:"discrepancyType"` // 差异类型
|
|||
|
|
DiscrepancyReason string `bson:"discrepancyReason" json:"discrepancyReason"` // 差异原因
|
|||
|
|
|
|||
|
|
// 状态信息
|
|||
|
|
Status stock.InventoryDetailStatus `bson:"status" json:"status"` // 明细状态
|
|||
|
|
IsAdjusted bool `bson:"isAdjusted" json:"isAdjusted"` // 是否已调整
|
|||
|
|
AdjustedAt *gtime.Time `bson:"adjustedAt" json:"adjustedAt"` // 调整时间
|
|||
|
|
AdjustedBy string `bson:"adjustedBy" json:"adjustedBy"` // 调整人ID
|
|||
|
|
AdjustedByName string `bson:"adjustedByName" json:"adjustedByName"` // 调整人姓名
|
|||
|
|
|
|||
|
|
// 上传信息
|
|||
|
|
UploadBy string `bson:"uploadBy" json:"uploadBy"` // 上传人ID
|
|||
|
|
UploadByName string `bson:"uploadByName" json:"uploadByName"` // 上传人姓名
|
|||
|
|
UploadAt *gtime.Time `bson:"uploadAt" json:"uploadAt"` // 上传时间
|
|||
|
|
UploadFileName string `bson:"uploadFileName" json:"uploadFileName"` // 文件名
|
|||
|
|
|
|||
|
|
// 备注信息
|
|||
|
|
Remark string `bson:"remark" json:"remark"` // 备注
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// CollectionName 获取集合名称
|
|||
|
|
func (InventoryCountDetail) CollectionName() string {
|
|||
|
|
return public.InventoryCountDetailCollection
|
|||
|
|
}
|