| | |
| | | BaseOperationTypeIncoming BaseOperationType = iota + 1 //收货 |
| | | BaseOperationTypeOutgoing //交货 |
| | | BaseOperationTypeInternal //内部调拨 |
| | | BaseOperationTypeDisuse //报废 |
| | | BaseOperationTypeAdjust //库存盘点 |
| | | ) |
| | | |
| | | func (slf BaseOperationType) IsValid() bool { |
| | |
| | | type ProductType int |
| | | |
| | | const ( |
| | | ProductTypeRaw = iota + 1 // 原材料 |
| | | ProductTypeSemi // 半成品 |
| | | ProductTypeFinished // 成品 |
| | | Consumables ProductType = iota + 1 // 消耗品 |
| | | Server // 服务 |
| | | StoredProduct // 可储存的产品 |
| | | ) |
| | | |
| | | // MaterialMode 物料类型(字符串) |
| | | type MaterialMode string |
| | | |
| | | const ( |
| | | MaterialModeRaw MaterialMode = "原材料" |
| | | MaterialModeSemi MaterialMode = "半成品" |
| | | MaterialModeFinished MaterialMode = "成品" |
| | | MaterialModeAuxiliary MaterialMode = "辅料" //辅料 |
| | | MaterialModeConsumables MaterialMode = "耗材" //耗材 |
| | | MaterialModeOther MaterialMode = "其他" //其他 |
| | | MaterialModeVirtual MaterialMode = "虚拟件" //虚拟件, 不能销售,不能出入库,不能采购 |
| | | ) |
| | | |
| | | func (t MaterialMode) Valid() bool { |
| | | if t != MaterialModeRaw && |
| | | t != MaterialModeSemi && |
| | | t != MaterialModeAuxiliary && |
| | | t != MaterialModeConsumables && |
| | | t != MaterialModeOther && |
| | | t != MaterialModeFinished && |
| | | t != MaterialModeVirtual { |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | func (t MaterialMode) Type() MaterialType { |
| | | switch t { |
| | | case MaterialModeRaw: |
| | | return MaterialTypeRaw |
| | | case MaterialModeSemi: |
| | | return MaterialTypeSemi |
| | | case MaterialModeFinished: |
| | | return MaterialTypeFinished |
| | | case MaterialModeAuxiliary: |
| | | return MaterialTypeAuxiliary |
| | | case MaterialModeConsumables: |
| | | return MaterialTypeConsumables |
| | | case MaterialModeOther: |
| | | return MaterialTypeOther |
| | | case MaterialModeVirtual: |
| | | return MaterialTypeVirtual |
| | | } |
| | | return MaterialType(0) |
| | | } |
| | | |
| | | // MaterialType 物料类型(数字) |
| | | type MaterialType int |
| | | |
| | | const ( |
| | | MaterialTypeRaw = iota + 1 // 原材料 |
| | | MaterialTypeSemi // 半成品 |
| | | MaterialTypeFinished // 成品 |
| | | MaterialTypeAuxiliary //辅料 |
| | | MaterialTypeConsumables //耗材 |
| | | MaterialTypeOther //其他 |
| | | MaterialTypeVirtual //虚拟件 |
| | | ) |
| | | |
| | | func (t MaterialType) Valid() bool { |
| | | if t < MaterialTypeRaw || |
| | | t > MaterialTypeVirtual { |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | 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 |
| | |
| | | LocationTypeInventoryLoss // 库存损失 |
| | | LocationTypeProduction // 生产 |
| | | LocationTypeTransit // 中转位置 |
| | | LocationTypeDisuse //报废位置 |
| | | LocationTypeAdjust //库存盘点 |
| | | ) |
| | | |
| | | func (t LocationType) Valid() bool { |
| | |
| | | const ( |
| | | CostingMethodStandardPrice CostingMethod = iota + 1 //标准价格 |
| | | CostingMethodFIFO //先进先出 |
| | | CostingMethodAverageCost // |
| | | CostingMethodAverageCost //平均成本 |
| | | ) |
| | | |
| | | func (t CostingMethod) Valid() bool { |
| | |
| | | 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 //完成 |
| | | OperationStatus_Cancel //取消 |
| | | ) |
| | | |
| | | type PostType int |
| | | |
| | | const ( |
| | | PostType_Soon PostType = iota + 1 //尽快 |
| | | PostType_AfterReady //当所有产品就绪时 |
| | | ) |
| | | |
| | | type RuleType int |
| | | |
| | | const ( |
| | | RuleType_Product RuleType = iota + 1 //产品上架规则 |
| | | RuleType_ProductCategory //产品类别上架规则 |
| | | ) |
| | | |
| | | type UserType int |
| | | |
| | | const ( |
| | | UserTypeSuper UserType = iota + 1 // 超级管理员 |
| | | UserTypePrimary // 主账户 |
| | | UserTypeSub // 子账户 |
| | | ) |
| | | |
| | | type FileType string |
| | | |
| | | const ( |
| | | FileType_File FileType = "file" //文件 |
| | | FileType_Picture FileType = "picture" //图片 |
| | | FileType_Thumbnail FileType = "thumbnail" //缩略图 |
| | | ) |
| | | |
| | | var FileExtMap = map[string]FileType{ |
| | | "doc": FileType_File, |
| | | "docx": FileType_File, |
| | | "xls": FileType_File, |
| | | "xlsx": FileType_File, |
| | | "txt": FileType_File, |
| | | } |
| | | |
| | | var PicExtMap = map[string]FileType{ |
| | | "jpg": FileType_Picture, |
| | | "jpeg": FileType_Picture, |
| | | "png": FileType_Picture, |
| | | "svg": FileType_Picture, |
| | | } |
| | | |
| | | type FileTemplateCategory int |
| | | |
| | | const ( |
| | | FileTemplateCategory_Selfmade FileTemplateCategory = iota + 1 //入库-自制 |
| | | FileTemplateCategory_Output //出库 |
| | | FileTemplateCategory_JialianInput = 14 //嘉联入库 |
| | | FileTemplateCategory_JialianOutput = 15 //嘉联出库 |
| | | ) |
| | | |
| | | type CodeStandardType string |
| | | |
| | | const ( |
| | | CodeStandardType_Material CodeStandardType = "物料编码" |
| | | CodeStandardType_Incoming CodeStandardType = "入库编码" |
| | | CodeStandardType_Outgoing CodeStandardType = "出库编码" |
| | | CodeStandardType_Internal CodeStandardType = "调拨编码" |
| | | CodeStandardType_Disuse CodeStandardType = "仓库报废编码" |
| | | ) |
| | | |
| | | type OperationSource int |
| | | |
| | | const ( |
| | | OperationSourcePurchase OperationSource = 1 //采购入库 |
| | | OperationSourceProduction OperationSource = 2 //生产入库 |
| | | OperationSourceOutsourcing OperationSource = 3 //委外入库 |
| | | OperationSourceProductionApply OperationSource = 4 //生产领料 |
| | | OperationSourceOutsourcingApply OperationSource = 5 //委外领料 |
| | | OperationSourceSaleDelivery OperationSource = 6 //销售发货 |
| | | ) |