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
|
||
}
|