| | |
| | | BaseOperationTypeIncoming BaseOperationType = iota + 1 //收货 |
| | | BaseOperationTypeOutgoing //交货 |
| | | BaseOperationTypeInternal //内部调拨 |
| | | BaseOperationTypeDisuse //报废 |
| | | BaseOperationTypeAdjust //库存盘点 |
| | | ) |
| | | |
| | | func (slf BaseOperationType) IsValid() bool { |
| | |
| | | slf == WhetherTypeAlways || |
| | | slf == ReservationNever |
| | | } |
| | | |
| | | // ProductType 产品类型 |
| | | type ProductType int |
| | | |
| | | const ( |
| | | Consumables ProductType = iota + 1 // 消耗品 |
| | | Server // 服务 |
| | | StoredProduct // 可储存的产品 |
| | | ) |
| | | |
| | | type MaterialMode string |
| | | |
| | | const ( |
| | | MaterialModeRaw MaterialMode = "原材料" |
| | | MaterialModeSemi MaterialMode = "半成品" |
| | | MaterialModeFinished MaterialMode = "成品" |
| | | ) |
| | | |
| | | type MaterialStatus int |
| | | |
| | | const ( |
| | | MaterialStatusCreate MaterialStatus = iota // 新建 |
| | | MaterialStatusActive // 启用 |
| | | MaterialStatusInactive = -1 // 停用 |
| | | ) |
| | | |
| | | // InvoicingStrategy 开票策略 |
| | | type InvoicingStrategy int |
| | | |
| | | const ( |
| | | IndentNumber InvoicingStrategy = iota + 1 //订购数量 |
| | | DeliverNumber //交付数量 |
| | | PrepaidPrice //预付\固定价格 |
| | | Milestones //基于里程碑 |
| | | BasedDeliverNumber //基于交付数量 |
| | | ) |
| | | |
| | | // OrderCreation 订单创建 |
| | | type OrderCreation int |
| | | |
| | | const ( |
| | | Nothing OrderCreation = iota + 1 //不操作 |
| | | Task //任务 |
| | | Object //项目 |
| | | TaskAndObject //任务和项目 |
| | | ) |
| | | |
| | | type ProductStatus int |
| | | |
| | | const ( |
| | | ProductStatusCreate ProductStatus = iota // 新建 |
| | | ProductStatusActive // 启用 |
| | | ProductStatusInactive = -1 // 停用 |
| | | ) |
| | | |
| | | // PurchaseType 采购类型 |
| | | type PurchaseType int |
| | | |
| | | const ( |
| | | PurchaseTypeOutSource PurchaseType = iota + 1 // 采购 |
| | | PurchaseTypeSelf // 自制 |
| | | PurchaseTypeEntrust // 委外 |
| | | ) |
| | | |
| | | func (t PurchaseType) Valid() bool { |
| | | if t < PurchaseTypeOutSource || |
| | | t > PurchaseTypeEntrust { |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | // LocationType 位置类型 |
| | | type LocationType int |
| | | |
| | | const ( |
| | | LocationTypeVendor LocationType = iota + 1 // 供应商位置 |
| | | LocationTypeView // 视图 |
| | | LocationTypeInternal // 内部位置 |
| | | LocationTypeCustomer // 客户位置 |
| | | LocationTypeInventoryLoss // 库存损失 |
| | | LocationTypeProduction // 生产 |
| | | LocationTypeTransit // 中转位置 |
| | | LocationTypeDisuse //报废位置 |
| | | LocationTypeAdjust //库存盘点 |
| | | ) |
| | | |
| | | func (t LocationType) Valid() bool { |
| | | return t >= LocationTypeVendor && t <= LocationTypeTransit |
| | | } |
| | | |
| | | type ForceRemovalStrategy int |
| | | |
| | | const ( |
| | | ForceRemovalStrategyFIFO ForceRemovalStrategy = iota + 1 |
| | | ForceRemovalStrategyLIFO |
| | | ForceRemovalStrategyClosestLocation |
| | | ) |
| | | |
| | | func (t ForceRemovalStrategy) Valid() bool { |
| | | return t >= ForceRemovalStrategyFIFO && t <= ForceRemovalStrategyClosestLocation |
| | | } |
| | | |
| | | type CostingMethod int |
| | | |
| | | const ( |
| | | CostingMethodStandardPrice CostingMethod = iota + 1 //标准价格 |
| | | CostingMethodFIFO //先进先出 |
| | | CostingMethodAverageCost //平均成本 |
| | | ) |
| | | |
| | | func (t CostingMethod) Valid() bool { |
| | | return t >= CostingMethodStandardPrice && t <= CostingMethodAverageCost |
| | | } |
| | | |
| | | type InventoryValuation int |
| | | |
| | | const ( |
| | | InventoryValuationManual InventoryValuation = iota + 1 //手动 |
| | | InventoryValuationAuto //自动 |
| | | ) |
| | | |
| | | func (t InventoryValuation) Valid() bool { |
| | | return t >= InventoryValuationManual && t <= InventoryValuationAuto |
| | | } |
| | | |
| | | type OperationStatus int |
| | | |
| | | const ( |
| | | OperationStatus_Draft OperationStatus = iota + 1 //草稿 |
| | | OperationStatus_Waiting //正在等待 |
| | | OperationStatus_Ready //就绪 |
| | | OperationStatus_Finish //完成 |
| | | ) |
| | | |
| | | type PostType int |
| | | |
| | | const ( |
| | | PostType_Soon PostType = iota + 1 //尽快 |
| | | PostType_AfterReady //当所有产品就绪时 |
| | | ) |