Files
klp-oa/script/sql/mysql/eqp_auxiliary_material.sql

227 lines
15 KiB
MySQL
Raw Normal View History

-- ----------------------------
-- Table structure for eqp_auxiliary_material
-- ----------------------------
DROP TABLE IF EXISTS `eqp_auxiliary_material`;
CREATE TABLE `eqp_auxiliary_material` (
`auxiliary_id` bigint NOT NULL AUTO_INCREMENT COMMENT '辅料ID',
`auxiliary_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '辅料名称',
`material_category` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '物料品类',
`auxiliary_model` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '辅料型号',
`unit` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '计量单位',
`equipment_id` bigint NULL DEFAULT NULL COMMENT '关联设备ID可为空通用辅料',
`quantity` int NULL DEFAULT 0 COMMENT '当前库存数量',
2026-01-20 15:20:19 +08:00
`unit_price` decimal(18, 6) NULL DEFAULT 0 COMMENT '当前移动加权平均单价',
`total_amount` decimal(18, 2) NULL DEFAULT 0 COMMENT '当前库存总金额(可冗余,= quantity * unit_price',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建者',
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新者',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '0' COMMENT '删除标志0=存在 2=删除)',
`remark` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '备注',
PRIMARY KEY (`auxiliary_id`) USING BTREE,
INDEX `fk_auxiliary_equipment`(`equipment_id` ASC) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2007691600657760258 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '辅料表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for eqp_auxiliary_material_change
-- ----------------------------
DROP TABLE IF EXISTS `eqp_auxiliary_material_change`;
CREATE TABLE `eqp_auxiliary_material_change` (
`change_id` bigint NOT NULL AUTO_INCREMENT COMMENT '变动记录ID',
`auxiliary_id` bigint NOT NULL COMMENT '关联辅料ID',
`change_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变动类型(增加/减少)',
`change_quantity` int NOT NULL COMMENT '变动数量',
2026-01-20 15:20:19 +08:00
`in_unit_price` decimal(18, 6) NULL DEFAULT NULL COMMENT '入库单价(仅增加时有意义)',
`unit_price_snapshot` decimal(18, 6) NULL DEFAULT NULL COMMENT '单价快照(减少时必填,增加时可记录入库后单价)',
2026-01-20 15:48:08 +08:00
`amount` decimal(18, 2) NULL DEFAULT NULL COMMENT '本次变动金额(有符号;建议减少时为负数:-unit_price_snapshot*change_quantity',
`reason` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '变动原因',
`change_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '变动时间',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建者',
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新者',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '0' COMMENT '删除标志0=存在 2=删除)',
`remark` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '备注',
PRIMARY KEY (`change_id`) USING BTREE,
INDEX `fk_change_auxiliary`(`auxiliary_id` ASC) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2007692247788535810 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '辅料变动记录表' ROW_FORMAT = DYNAMIC;
CREATE TABLE `eqp_spare_part` (
`part_id` bigint NOT NULL AUTO_INCREMENT COMMENT '备件ID',
`part_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '备件名称',
`material_category` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物料品类',
`model` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备件型号',
`unit` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '计量单位',
`equipment_id` bigint DEFAULT NULL COMMENT '关联设备ID可为空通用备件',
`quantity` int DEFAULT '0' COMMENT '当前库存数量',
2026-01-20 15:20:19 +08:00
`unit_price` decimal(18, 6) NULL DEFAULT 0 COMMENT '当前移动加权平均单价',
`total_amount` decimal(18, 2) NULL DEFAULT 0 COMMENT '当前库存总金额(可冗余,= quantity * unit_price',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建者',
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新者',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '0' COMMENT '删除标志0=存在 2=删除)',
`remark` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '备注',
PRIMARY KEY (`part_id`) USING BTREE,
KEY `fk_part_equipment` (`equipment_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1979376133262389251 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='备品备件表';
CREATE TABLE `eqp_spare_parts_change` (
`change_id` bigint NOT NULL AUTO_INCREMENT COMMENT '变动记录ID',
`part_id` bigint NOT NULL COMMENT '关联备件ID',
`change_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变动类型(增加/减少)',
`change_quantity` int NOT NULL COMMENT '变动数量',
2026-01-20 15:48:08 +08:00
`in_unit_price` decimal(18, 6) NULL DEFAULT NULL COMMENT '入库单价',
2026-01-20 15:20:19 +08:00
`unit_price_snapshot` decimal(18, 6) NULL DEFAULT NULL COMMENT '单价快照(减少时必填,增加时可记录入库后单价)',
2026-01-20 15:48:08 +08:00
`amount` decimal(18, 2) NULL DEFAULT NULL COMMENT '本次变动金额(有符号;建议减少时为负数:-unit_price_snapshot*change_quantity',
`reason` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变动原因',
`change_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '变动时间',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建者',
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新者',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '0' COMMENT '删除标志0=存在 2=删除)',
`remark` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '备注',
PRIMARY KEY (`change_id`) USING BTREE,
KEY `fk_change_part` (`part_id`) USING BTREE
2026-01-20 15:20:19 +08:00
) ENGINE=InnoDB AUTO_INCREMENT=1980201774324969474 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='备品备件变动记录表';
create table wms_material_coil
(
coil_id bigint auto_increment comment '主键ID'
primary key,
enter_coil_no varchar(50) not null comment '入场钢卷号(年份后两位+月份+当月第几个如25100001、25102422',
current_coil_no varchar(50) not null comment '当前钢卷号(入场钢卷号和当前钢卷号可能不同)',
supplier_coil_no varchar(50) null comment '厂家原料卷号',
data_type tinyint(1) default 1 not null comment '数据类型0=历史1=现存)',
warehouse_id bigint null comment '所在库区ID',
next_warehouse_id bigint null comment '下一库区ID',
actual_warehouse_id bigint null comment '所在实际库区ID关联wms_actual_warehouse表',
qrcode_record_id bigint null comment '关联二维码IDwms_generate_record.record_id',
team varchar(50) null comment '班组',
has_merge_split tinyint(1) default 0 not null comment '是否合卷/分卷0=否1=分卷2=合卷)',
parent_coil_nos varchar(500) null comment '父卷号(合卷或分卷时用,逗号分隔)',
item_id bigint not null comment '物品ID指向原材料或产品主键',
item_type varchar(20) not null comment '物品类型raw_material/product',
material_type varchar(20) null comment '材料类型(废品,成品,原料)',
2026-01-27 19:07:25 +08:00
quality_status varchar(20) null comment '质量状态C+,C,C-,D+,D,D-为次品ABC*为良品)',
status tinyint(1) default 0 null comment '状态0=在库1=已出库)',
remark varchar(255) null comment '备注',
export_time datetime null comment '发货时间',
del_flag tinyint(1) default 0 not null comment '删除标志0=正常1=已删除)',
create_time datetime default CURRENT_TIMESTAMP not null comment '创建时间',
create_by varchar(50) null comment '创建人',
update_time datetime default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '更新时间',
update_by varchar(50) null comment '更新人',
gross_weight decimal(10, 3) null comment '毛重',
net_weight decimal(10, 3) null comment '毛重',
length decimal(10, 3) null comment '钢卷长度(单位:米)',
trimming_requirement varchar(100) null comment '切边要求',
packing_status varchar(20) null comment '打包状态0=未打包1=已打包)',
packaging_requirement varchar(255) null comment '包装要求',
sale_id bigint null comment '销售id',
constraint fk_coil_next_warehouse
foreign key (next_warehouse_id) references wms_warehouse (warehouse_id),
constraint fk_coil_qrcode
foreign key (qrcode_record_id) references wms_generate_record (record_id)
)
comment '钢卷物料表';
create index idx_coil_current_no
on wms_material_coil (current_coil_no);
create index idx_coil_type
on wms_material_coil (data_type);
create index idx_coil_warehouse
on wms_material_coil (warehouse_id);
create index idx_mc_coil_id
on wms_material_coil (coil_id);
create index idx_mc_core
on wms_material_coil (del_flag, data_type, status, material_type, actual_warehouse_id, item_type, item_id);
create index idx_mc_data_type
on wms_material_coil (data_type);
create index idx_mc_del_awh
on wms_material_coil (del_flag, actual_warehouse_id);
create index idx_mc_del_create
on wms_material_coil (del_flag, create_time);
create index idx_mc_del_item
on wms_material_coil (del_flag, item_type, item_id);
create index idx_mc_del_status_sale
on wms_material_coil (del_flag, status, sale_id);
create index idx_mc_del_update
on wms_material_coil (del_flag, update_time);
create index idx_mc_del_wh
on wms_material_coil (del_flag, warehouse_id);
create index idx_mc_enter_coil_no
on wms_material_coil (enter_coil_no);
create index idx_mc_fixed_group
on wms_material_coil (del_flag, data_type, status, item_type, actual_warehouse_id, item_id);
create index idx_mc_has_merge_split
on wms_material_coil (has_merge_split);
create index idx_mc_team
on wms_material_coil (team);
create table wms_coil_pending_action
(
action_id bigint auto_increment comment '主键ID'
primary key,
coil_id bigint not null comment '关联的钢卷ID',
current_coil_no varchar(50) not null comment '当前钢卷号',
action_type int not null comment '操作类型1=分卷2=合卷3=更新)',
action_status tinyint(1) default 0 not null comment '操作状态0=待处理1=处理中2=已完成3=已取消)',
scan_time datetime null comment '扫码时间',
scan_device varchar(100) null comment '扫码设备(移动端设备信息)',
priority tinyint(1) default 0 null comment '优先级0=普通1=重要2=紧急)',
source_type varchar(20) default 'scan' not null comment '来源类型scan=扫码manual=手动创建)',
warehouse_id bigint null comment '所在库区ID',
operator_id bigint null comment '操作人ID',
operator_name varchar(50) null comment '操作人姓名',
process_time datetime null comment '处理时间',
complete_time datetime null comment '完成时间',
remark varchar(500) null comment '备注',
del_flag tinyint(1) default 0 not null comment '删除标志0=正常1=已删除)',
create_time datetime default CURRENT_TIMESTAMP not null comment '创建时间',
create_by varchar(50) null comment '创建人',
update_time datetime default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '更新时间',
update_by varchar(50) null comment '更新人'
)
comment '钢卷待操作表';
create index idx_action_status
on wms_coil_pending_action (action_status);
create index idx_action_type
on wms_coil_pending_action (action_type);
create index idx_coil_id
on wms_coil_pending_action (coil_id);
create index idx_scan_time
on wms_coil_pending_action (scan_time);
create index idx_warehouse_id
on wms_coil_pending_action (warehouse_id);