gongchunyi
2026-04-01 b572e82dcafea0fd893d908c7bb0e048483a1dd3
doc/ÄþÏÄ-ÖÐÊ¢½¨²Ä.sql
@@ -414,4 +414,118 @@
DROP TABLE IF EXISTS process_route_item_instance;
DROP TABLE IF EXISTS process_route_item_param_instance;
DROP TABLE IF EXISTS product_structure_instance;
DROP TABLE IF EXISTS product_structure_instance;
ALTER TABLE `product-inventory-management-zsjc`.`production_product_route_item_param`
    MODIFY COLUMN `order_item_param_id` bigint NULL DEFAULT NULL COMMENT '生产订单绑定的工艺路线工序--参数表ID' AFTER `production_product_route_item_id`;
CREATE TABLE `production_product_input`
(
    `id`              bigint          NOT NULL AUTO_INCREMENT,
    `product_main_id` bigint          NOT NULL COMMENT '报工单主表ID',
    `route_item_id`   bigint      DEFAULT NULL COMMENT '关联具体的报工工序ID (对应原参数表的关联ID)',
    `product_id`      bigint          NOT NULL COMMENT '产品/物料ID',
    `bom_id`          bigint      DEFAULT NULL COMMENT 'BOM ID',
    `quantity`        decimal(30, 15) NOT NULL COMMENT '投入数量 (对应原product_value)',
    `unit`            varchar(20) DEFAULT NULL COMMENT '单位',
    `create_user`     bigint      DEFAULT NULL COMMENT '录入人',
    `create_time`     datetime    DEFAULT CURRENT_TIMESTAMP COMMENT '录入时间',
    `update_time`     datetime    DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    `tenant_id`       bigint          NOT NULL COMMENT '租户ID',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `idx_main_id` (`product_main_id`),
    KEY `idx_product_id` (`product_id`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT ='生产报工物料投入表';
ALTER TABLE `production_product_route_item_param`
    DROP COLUMN `product_id`,
    DROP COLUMN `bom_id`,
    DROP COLUMN `product_value`,
    DROP COLUMN `dict_code`;
ALTER TABLE `product-inventory-management-zsjc`.`production_product_output`
    ADD COLUMN `total_quantity` decimal(20, 15) NULL COMMENT '总数量' AFTER `scrap_qty`;
CREATE TABLE `production_order_route`
(
    `id`                 bigint                                                        NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    `order_id`           bigint                                                        NOT NULL COMMENT '关联生产订单ID (production_order.id)',
    `process_route_id`   bigint                                                                 DEFAULT NULL COMMENT '原始工艺路线ID (process_route.id)',
    `product_model_id`   bigint                                                                 DEFAULT '0' COMMENT '产品id',
    `process_route_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci          DEFAULT NULL COMMENT '工艺路线编码',
    `bom_id`             int                                                                    DEFAULT NULL COMMENT '关联bom的id',
    `dict_code`          bigint                                                        NOT NULL COMMENT '产品类型字典编码',
    `description`        varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '描述',
    `tenant_id`          bigint                                                        NOT NULL COMMENT '租户id',
    `create_by`          varchar(64)                                                            DEFAULT '' COMMENT '创建者',
    `create_time`        datetime                                                               DEFAULT NULL COMMENT '录入时间',
    `update_by`          varchar(64)                                                            DEFAULT '' COMMENT '更新者',
    `update_time`        datetime                                                               DEFAULT NULL COMMENT '更新时间',
    `remark`             varchar(500)                                                           DEFAULT NULL COMMENT '备注',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `idx_order_id` (`order_id`) USING BTREE
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4
  COLLATE = utf8mb4_0900_ai_ci COMMENT ='生产订单绑定的工艺路线表';
CREATE TABLE `production_settlement_batches`
(
    `id`          bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    `period_time` date         DEFAULT NULL COMMENT '核算归属月份',
    `batch_name`  varchar(255) DEFAULT NULL COMMENT '批次名称',
    `status`      int          DEFAULT '0' COMMENT '状态:0-仅预算,1-结算计算中,2-已完成结算,3-已锁定',
    `create_user` varchar(255) DEFAULT NULL COMMENT '导入用户',
    `create_time` datetime     DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期',
    `tenant_id`   bigint       DEFAULT NULL COMMENT '租户ID',
    PRIMARY KEY (`id`),
    KEY `idx_period` (`period_time`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4 COMMENT ='生产成本核算批次主表';
CREATE TABLE `production_settlement_details`
(
    `id`           bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    `batch_id`     bigint NOT NULL COMMENT '关联核算批次表ID',
    `product_id`   bigint          DEFAULT NULL COMMENT '产品ID',
    `product_type` varchar(100)    DEFAULT NULL COMMENT '产品类型名称',
    `category`     varchar(100)    DEFAULT NULL COMMENT '费用类别',
    `subject_name` varchar(100)    DEFAULT NULL COMMENT '科目名称',
    `budget_qty`   decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '预算耗量',
    `budget_price` decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '预算单价',
    `budget_total` decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '预算总成本',
    `actual_qty`   decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '实际耗量',
    `actual_price` decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '实际单价',
    `actual_total` decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '实际总成本',
    `diff_qty`     decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '耗量差异',
    `diff_price`   decimal(20, 15) DEFAULT '0.000000000000000' COMMENT '单价差异',
    `diff_total`   DECIMAL(20, 15) DEFAULT '0.000000000000000' COMMENT '总成本差异',
    `tenant_id`    bigint          DEFAULT NULL COMMENT '租户ID',
    PRIMARY KEY (`id`),
    KEY `idx_batch_id` (`batch_id`),
    KEY `idx_product_id` (`product_id`) COMMENT '方便按产品查询历史成本对比'
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4 COMMENT ='生产成本核算对比明细表';
ALTER TABLE `product-inventory-management-zsjc`.`production_settlement_batches`
    DROP INDEX `idx_period`;
ALTER TABLE `product-inventory-management-zsjc`.`production_settlement_batches`
    DROP COLUMN `batch_name`,
    DROP COLUMN `status`;
ALTER TABLE `product-inventory-management-zsjc`.`production_settlement_details`
    DROP COLUMN `actual_qty`,
    DROP COLUMN `actual_price`,
    DROP COLUMN `actual_total`,
    DROP COLUMN `diff_qty`,
    DROP COLUMN `diff_price`,
    DROP COLUMN `diff_total`;
ALTER TABLE `product-inventory-management-zsjc`.`production_settlement_batches`
    MODIFY COLUMN `period_time` varchar(255) NULL DEFAULT NULL COMMENT '核算归属年月' AFTER `id`;