222 lines
16 KiB
SQL
222 lines
16 KiB
SQL
-- ----------------------------
|
||
-- 生产管理模块建表脚本(P0)
|
||
-- 执行方式:在 MySQL 8.0 中执行本脚本
|
||
-- ----------------------------
|
||
|
||
-- ----------------------------
|
||
-- 1、包装BOM主表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_pack_bom`;
|
||
CREATE TABLE `jsh_pack_bom` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`bom_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '方案编号',
|
||
`bom_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '方案名称',
|
||
`product_material_id` bigint(0) NULL DEFAULT NULL COMMENT '待包装产品商品id',
|
||
`product_material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '待包装产品扩展id',
|
||
`product_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '待包装产品多属性',
|
||
`output_material_id` bigint(0) NULL DEFAULT NULL COMMENT '成品SKU商品id',
|
||
`output_material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '成品扩展id',
|
||
`output_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '成品多属性',
|
||
`output_number` decimal(24, 6) NULL DEFAULT NULL COMMENT '单位待包装产品产出成品数量',
|
||
`version` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT 'V1' COMMENT '版本',
|
||
`enabled` bit(1) NULL DEFAULT b'1' COMMENT '启用状态',
|
||
`remark` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
|
||
`creator` bigint(0) NULL DEFAULT NULL COMMENT '创建人',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `product_material_id`(`product_material_id`) USING BTREE,
|
||
INDEX `output_material_id`(`output_material_id`) USING BTREE,
|
||
INDEX `tenant_id`(`tenant_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '包装BOM主表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 2、包装BOM包材明细表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_pack_bom_item`;
|
||
CREATE TABLE `jsh_pack_bom_item` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`bom_id` bigint(0) NOT NULL COMMENT '包装BOM id',
|
||
`material_id` bigint(0) NOT NULL COMMENT '包材商品id',
|
||
`material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '商品扩展id',
|
||
`material_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '多属性',
|
||
`unit` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
|
||
`quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '用量(每产出1单位成品所需包材数量)',
|
||
`remark` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `bom_id`(`bom_id`) USING BTREE,
|
||
INDEX `material_id`(`material_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '包装BOM包材明细表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 3、生产工单主表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_order`;
|
||
CREATE TABLE `jsh_production_order` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`order_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工单号',
|
||
`source_type` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '来源类型(销售订单/手工备货)',
|
||
`source_id` bigint(0) NULL DEFAULT NULL COMMENT '来源单据id(销售订单depot_head.id)',
|
||
`source_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '来源单据号(销售订单号)',
|
||
`product_material_id` bigint(0) NULL DEFAULT NULL COMMENT '待包装产品商品id',
|
||
`product_material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '待包装产品扩展id',
|
||
`product_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '待包装产品多属性',
|
||
`bom_id` bigint(0) NULL DEFAULT NULL COMMENT '包装BOM id',
|
||
`output_material_id` bigint(0) NULL DEFAULT NULL COMMENT '成品SKU商品id',
|
||
`output_material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '成品扩展id',
|
||
`output_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '成品多属性',
|
||
`order_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '工单数量(待包装产品)',
|
||
`output_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '预计成品数量',
|
||
`finished_quantity` decimal(24, 6) NULL DEFAULT 0.000000 COMMENT '已完工良品数',
|
||
`plan_start_date` datetime(0) NULL DEFAULT NULL COMMENT '计划开工日期',
|
||
`plan_end_date` datetime(0) NULL DEFAULT NULL COMMENT '计划完工日期',
|
||
`actual_start_date` datetime(0) NULL DEFAULT NULL COMMENT '实际开工日期',
|
||
`actual_end_date` datetime(0) NULL DEFAULT NULL COMMENT '实际完工日期',
|
||
`priority` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '优先级,0普通、1紧急',
|
||
`status` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '状态,0已创建、1已下达、2生产中、3已完工、4已关闭',
|
||
`audit_by` bigint(0) NULL DEFAULT NULL COMMENT '审批人',
|
||
`audit_time` datetime(0) NULL DEFAULT NULL COMMENT '审批时间',
|
||
`release_by` bigint(0) NULL DEFAULT NULL COMMENT '下达人',
|
||
`release_time` datetime(0) NULL DEFAULT NULL COMMENT '下达时间',
|
||
`close_reason` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '关闭原因',
|
||
`remark` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
|
||
`creator` bigint(0) NULL DEFAULT NULL COMMENT '创建人',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `order_number`(`order_number`) USING BTREE,
|
||
INDEX `source_number`(`source_number`) USING BTREE,
|
||
INDEX `status`(`status`) USING BTREE,
|
||
INDEX `tenant_id`(`tenant_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '生产工单主表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 4、工单操作日志表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_order_log`;
|
||
CREATE TABLE `jsh_production_order_log` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`order_id` bigint(0) NULL DEFAULT NULL COMMENT '工单id',
|
||
`order_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工单号',
|
||
`operation_type` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作类型(创建/修改/审批下达/开工/生成领料/发料/完工/关闭等)',
|
||
`operation_desc` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作描述',
|
||
`operator` bigint(0) NULL DEFAULT NULL COMMENT '操作人',
|
||
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '操作时间',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `order_id`(`order_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '工单操作日志表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 5、生产领料单主表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_requisition`;
|
||
CREATE TABLE `jsh_production_requisition` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`requisition_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '领料单号',
|
||
`order_id` bigint(0) NULL DEFAULT NULL COMMENT '工单id',
|
||
`order_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工单号',
|
||
`depot_id` bigint(0) NULL DEFAULT NULL COMMENT '发料仓库id',
|
||
`status` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '状态,0待确认、1已发料、2已驳回',
|
||
`confirm_by` bigint(0) NULL DEFAULT NULL COMMENT '确认人',
|
||
`confirm_time` datetime(0) NULL DEFAULT NULL COMMENT '确认时间',
|
||
`remark` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
|
||
`creator` bigint(0) NULL DEFAULT NULL COMMENT '创建人',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `requisition_number`(`requisition_number`) USING BTREE,
|
||
INDEX `order_id`(`order_id`) USING BTREE,
|
||
INDEX `status`(`status`) USING BTREE,
|
||
INDEX `tenant_id`(`tenant_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '生产领料单主表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 6、生产领料单明细表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_requisition_item`;
|
||
CREATE TABLE `jsh_production_requisition_item` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`requisition_id` bigint(0) NOT NULL COMMENT '领料单id',
|
||
`depot_id` bigint(0) NULL DEFAULT NULL COMMENT '发料仓库id',
|
||
`material_id` bigint(0) NOT NULL COMMENT '物料商品id',
|
||
`material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '商品扩展id',
|
||
`material_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '多属性',
|
||
`unit` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
|
||
`required_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '申请数量(BOM定额)',
|
||
`issued_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '实发数量',
|
||
`unit_price` decimal(24, 6) NULL DEFAULT NULL COMMENT '参考单价',
|
||
`remark` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `requisition_id`(`requisition_id`) USING BTREE,
|
||
INDEX `depot_id`(`depot_id`) USING BTREE,
|
||
INDEX `material_id`(`material_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '生产领料单明细表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 7、完工报告主表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_report`;
|
||
CREATE TABLE `jsh_production_report` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`report_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '报告号',
|
||
`order_id` bigint(0) NULL DEFAULT NULL COMMENT '工单id',
|
||
`order_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工单号',
|
||
`finished_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '实际良品数',
|
||
`defect_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '不良品数',
|
||
`qualified_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '质检结果,0未检、1合格、2不合格',
|
||
`depot_id` bigint(0) NULL DEFAULT NULL COMMENT '入库仓库id',
|
||
`in_number` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '生产入库单号',
|
||
`audit_status` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '审核状态,0待审核、1已审核、2已驳回',
|
||
`audit_by` bigint(0) NULL DEFAULT NULL COMMENT '审核人',
|
||
`audit_time` datetime(0) NULL DEFAULT NULL COMMENT '审核时间',
|
||
`report_by` bigint(0) NULL DEFAULT NULL COMMENT '报工人',
|
||
`report_date` datetime(0) NULL DEFAULT NULL COMMENT '报工日期',
|
||
`remark` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
|
||
`creator` bigint(0) NULL DEFAULT NULL COMMENT '创建人',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `report_number`(`report_number`) USING BTREE,
|
||
INDEX `order_id`(`order_id`) USING BTREE,
|
||
INDEX `audit_status`(`audit_status`) USING BTREE,
|
||
INDEX `tenant_id`(`tenant_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '完工报告主表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 8、完工报告物料消耗明细表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `jsh_production_report_item`;
|
||
CREATE TABLE `jsh_production_report_item` (
|
||
`id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`report_id` bigint(0) NOT NULL COMMENT '完工报告id',
|
||
`material_id` bigint(0) NOT NULL COMMENT '物料商品id',
|
||
`material_extend_id` bigint(0) NULL DEFAULT NULL COMMENT '商品扩展id',
|
||
`material_sku` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '多属性',
|
||
`unit` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
|
||
`consumption_quantity` decimal(24, 6) NULL DEFAULT NULL COMMENT '实际消耗数量',
|
||
`remark` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||
`tenant_id` bigint(0) NULL DEFAULT NULL COMMENT '租户id',
|
||
`delete_flag` varchar(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '删除标记,0未删除,1删除',
|
||
PRIMARY KEY (`id`) USING BTREE,
|
||
INDEX `report_id`(`report_id`) USING BTREE,
|
||
INDEX `material_id`(`material_id`) USING BTREE
|
||
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '完工报告物料消耗明细表' ROW_FORMAT = Dynamic;
|
||
|
||
-- ----------------------------
|
||
-- 9、生产管理菜单(jsh_function)
|
||
-- ----------------------------
|
||
INSERT INTO `jsh_function` (`number`, `name`, `parent_number`, `url`, `component`, `state`, `sort`, `enabled`, `type`, `push_btn`, `icon`, `delete_flag`) VALUES ('0901', '生产管理', '0', '/production', '/layouts/TabLayout', b'0', '0480', b'1', '电脑版', '', 'cluster', '0');
|
||
INSERT INTO `jsh_function` (`number`, `name`, `parent_number`, `url`, `component`, `state`, `sort`, `enabled`, `type`, `push_btn`, `icon`, `delete_flag`) VALUES ('090101', '包装方案', '0901', '/production/pack_bom', '/production/PackBomList', b'0', '0481', b'1', '电脑版', '1,2,3', 'profile', '0');
|
||
INSERT INTO `jsh_function` (`number`, `name`, `parent_number`, `url`, `component`, `state`, `sort`, `enabled`, `type`, `push_btn`, `icon`, `delete_flag`) VALUES ('090102', '生产工单', '0901', '/production/order', '/production/OrderList', b'0', '0482', b'1', '电脑版', '1,2,3', 'profile', '0');
|
||
INSERT INTO `jsh_function` (`number`, `name`, `parent_number`, `url`, `component`, `state`, `sort`, `enabled`, `type`, `push_btn`, `icon`, `delete_flag`) VALUES ('090103', '领料管理', '0901', '/production/requisition', '/production/RequisitionList', b'0', '0483', b'1', '电脑版', '1,2,3', 'profile', '0');
|
||
INSERT INTO `jsh_function` (`number`, `name`, `parent_number`, `url`, `component`, `state`, `sort`, `enabled`, `type`, `push_btn`, `icon`, `delete_flag`) VALUES ('090104', '完工报工', '0901', '/production/report', '/production/ReportList', b'0', '0484', b'1', '电脑版', '1,2,3', 'profile', '0');
|