Skip to content

工艺

technic 工艺表

CREATE TABLE `technic` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL COMMENT '站点ID',
  `custom_id` varchar(32) DEFAULT NULL COMMENT '自定义ID',
  `name` varchar(32) NOT NULL DEFAULT '' COMMENT '名字',
  `desc` varchar(128) DEFAULT NULL COMMENT '描述',
  `custom_cols` json DEFAULT NULL,
  `role` int(11) DEFAULT NULL COMMENT '默认操作角色',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `modify_time` datetime NOT NULL COMMENT '编辑时间',
  `delete_time` datetime NOT NULL DEFAULT '0001-01-01',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_custom_id` (`station_id`, `custom_id`, `delete_time`),
  UNIQUE KEY `uk_name` (`station_id`, `name`, `delete_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

technic_flow 生产流程表

CREATE TABLE `technic_flow` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `technic_id` int(11) NOT NULL COMMENT '工艺ID',
  `version` int(11) NOT NULL COMMENT '自身版本',
  `name` varchar(16) NOT NULL DEFAULT '' COMMENT '工艺名字',
  `sku_id` varchar(16) NOT NULL DEFAULT '' COMMENT '最终产出SKUID',
  `next_id` int(11) DEFAULT NULL COMMENT '下一步ID',
  `custom_cols` json DEFAULT NULL,
  `desc` varchar(128) DEFAULT NULL COMMENT '描述',
  `type` int(11) NOT NULL COMMENT '类型(1普通,2分装)',
  `purchase_spec_id` varchar(16) DEFAULT NULL COMMENT '采购规格(第一个会有)',
  `out_spu_id` varchar(16) NOT NULL DEFAULT '' COMMENT '输出SPUID',
  `role` int(11) DEFAULT NULL COMMENT '默认操作角色',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

加工

process_order 加工单

CREATE TABLE `process_order` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL,
  `code` varchar(32) NOT NULL DEFAULT '' COMMENT '二维码',
  `custom_id` varchar(16) DEFAULT NULL COMMENT '自定义ID',
  `spu_id` varchar(16) NOT NULL DEFAULT '',
  `sku_id` varchar(16) NOT NULL DEFAULT '' COMMENT '产出SKU',
  `type` int(11) NOT NULL COMMENT '产出类型(2半成品,3成品)',
  `technic_flow_version` int(11) NOT NULL COMMENT '工艺流程版本',
  `plan_amount` float NOT NULL COMMENT '计划产出数量',
  `finish_amount` float DEFAULT NULL COMMENT '已完成数量',
  `creator` int(11) NOT NULL COMMENT '创建人',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  `release_time` datetime DEFAULT NULL,
  `finish_time` datetime DEFAULT NULL,
  `start_time` datetime DEFAULT NULL,
  `plan_start_time` datetime NOT NULL COMMENT '计划开始时间',
  `plan_finish_time` datetime NOT NULL COMMENT '计划完成时间',
  `status` int(11) NOT NULL COMMENT '状态(1未下达,2已下达,3已完成)',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

process_task 加工任务

CREATE TABLE `process_task` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `proc_order_id` int(11) NOT NULL COMMENT '加工单ID',
  `next_id` int(11) DEFAULT NULL COMMENT '下一步ID',
  `technic_flow_id` int(11) NOT NULL COMMENT '工艺流程ID',
  `technic_flow_version` int(11) NOT NULL COMMENT '工艺流程版本',
  `technic_flow_name` varchar(32) NOT NULL COMMENT '工艺流程名',
  `out_amount` float DEFAULT NULL COMMENT '产出数',
  `out_spu_id` varchar(16) DEFAULT NULL,
  `out_code` varchar(32) DEFAULT NULL,
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  `finish_time` datetime DEFAULT NULL,
  `start_time` datetime DEFAULT NULL,
  `plan_start_time` datetime COMMENT '计划开始时间',
  `plan_finish_time` datetime COMMENT '计划完成时间',
  `status` int(11) NOT NULL COMMENT '状态(1未开始2加工中3已完成)',
  `plan_worker` int(11) DEFAULT NULL COMMENT '工人',
  `real_worker` int(11) DEFAULT NULL,
  `plan_role` int(11) DEFAULT NULL COMMENT '角色',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

process_task_material 加工任务原料

CREATE TABLE `process_task_material` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `spu_id` varchar(16) NOT NULL,
  `proc_order_id` int(11) NOT NULL COMMENT '加工单ID',
  `type` int(11) NOT NULL COMMENT '物料类型1原料2半成品',
  `task_id` int(11) NOT NULL COMMENT '任务ID',
  `material_code` int(11),
  `batch_num` varchar(32) DEFAULT NULL COMMENT '批次号',
  `amount` float COMMENT '加工前物料数',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

material_recv 领料表

CREATE TABLE `material_recv` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL COMMENT '站点ID',
  `spu_id` varchar(16) NOT NULL,
  `material_code` int(11) NOT NULL COMMENT '物料码',
  `batch_num` varchar(32) NOT NULL DEFAULT '' COMMENT '批次号',
  `type` int(11) NOT NULL COMMENT '类型(1原料2半成品)',
  `proc_order_id` int(11) NOT NULL COMMENT '加工单ID',
  `shelf_id` int(11) NOT NULL,
  `plan_amount` float NOT NULL COMMENT '计划领料数',
  `real_amount` float NOT NULL COMMENT '实际领料数',
  `in_stock_batch_num` varchar(32) COMMENT '入库批次号(入库前为空)',
  `creator` int(11) NOT NULL COMMENT '操作人',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

material_return 退料表

CREATE TABLE `material_return` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL COMMENT '站点ID',
  `spu_id` varchar(16) NOT NULL,
  `recv_id` int(11) NOT NULL COMMENT '领料ID',
  `proc_order_id` int(11) NOT NULL COMMENT '加工单ID',
  `batch_num` varchar(32) NOT NULL DEFAULT '' COMMENT '批次号',
  `amount` float NOT NULL COMMENT '退料数',
  `creator` int(11) NOT NULL COMMENT '操作人',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

material_code 物料码表

CREATE TABLE `material_code` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL COMMENT '站点ID',
  `batch_num` varchar(32) NOT NULL,
  `proc_order_id` int(11) NOT NULL,
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

process_task_package 分装表

CREATE TABLE `process_task_package` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(16) NOT NULL COMMENT '站点ID',
  `proc_order_id` int(11) NOT NULL COMMENT '加工单ID',
  `sku_id` varchar(16) NOT NULL,
  `code` varchar(32) NOT NULL DEFAULT '',
  `parent_code` varchar(32) NOT NULL DEFAULT '',
  `batch_num` varchar(32) NOT NULL,
  `package_unit_name` varchar(8) NOT NULL DEFAULT '',
  `amount` float NOT NULL,
  `worker` int(11)  COMMENT '工人ID',
  `order_id` varchar(16),
  `proc_sort_id` int(11),
  `sku_id` varchar(16),
  `sort_operator_id` int(11),
  `create_time` datetime NOT NULL,
  `package_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

proc_sku_sorting 净菜分拣表

CREATE TABLE `proc_sku_sorting` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `order_id` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sku_id` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `std_weigh_amount` float DEFAULT NULL,
  `sale_weigh_amount` int(11) DEFAULT NULL,
  `sale_order_amount` int(11) DEFAULT NULL,
  `sorted` tinyint(4) DEFAULT NULL,
  `out_of_stock` tinyint(4) DEFAULT NULL,
  `print_times` int(11) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `modify_time` datetime DEFAULT NULL,
  `delete_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

进销存

process_in_stock_log(mongo)半成品和成品入库记录(新)

_id
batch_num string 批次号
amount float 入库数
origin_amount float 原库数
creator int 操作人
unit_name string 单位
unit_price float 单价
spu_id
sku_id string sku
name string 商品名
type int 类型(3成品,2半成品)
station_id
create_time
modify_time
delete_time
in_stock_time
shelf_id int 库位
process_order_id int 加工单ID
process_task_id int 加工任务ID

stock_new 库存表(老)

加字段来区分原料半成品成品

加

semi { 半成品
  remain float 库存
  avg_price int 库存均价
}
product {dict 成品
    sku_id: {
        std_remain float 标准单位库存
        sale_remain float 销售单位库存
        avg_price int库存均价
        <!-- sku_id string skuid -->
        threshold_remain_difference float 安全库存差额
        threshold float 安全库存,
        product_frozen: {
            PL12331: {'std_amount': float, 'sale_amount': float}
        },
    }
}