2688 lines
141 KiB
SQL
2688 lines
141 KiB
SQL
-- =====================================================
|
||
-- ERP系统数据库设计 - DDL脚本
|
||
-- 版本: 1.1.0
|
||
-- 创建日期: 2026-01-25
|
||
-- 更新日期: 2026-02-06
|
||
-- 数据库: MySQL 8.0+
|
||
-- 字符集: utf8mb4
|
||
-- 更新说明: 新增生产管理(prs)、研发管理(rd)、委外管理(pu)、财务管理(fd)模块表结构
|
||
-- =====================================================
|
||
|
||
-- 设置字符集
|
||
SET NAMES utf8mb4;
|
||
SET FOREIGN_KEY_CHECKS = 0;
|
||
|
||
-- =====================================================
|
||
-- 第一部分: 系统基础表
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 1.1 租户表 (sys_tenant)
|
||
-- 说明: 用户表(sys_user)和部门表(sys_dept)已在原项目数据库中定义,此处不再重复定义
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `sys_tenant`;
|
||
CREATE TABLE `sys_tenant` (
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`tenant_name` varchar(100) NOT NULL COMMENT '租户名称',
|
||
`contact_name` varchar(50) DEFAULT NULL COMMENT '联系人',
|
||
`contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
|
||
`address` varchar(200) DEFAULT NULL COMMENT '地址',
|
||
`status` char(1) NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志(0存在 1删除)',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户表';
|
||
|
||
-- =====================================================
|
||
-- 第二部分: 基础数据表 (Master Data)
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 2.1 物料分类表 (md_item_type)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_md_item_type`;
|
||
CREATE TABLE `erp_md_item_type` (
|
||
`item_type_id` bigint NOT NULL AUTO_INCREMENT COMMENT '分类ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`item_type_code` varchar(32) NOT NULL COMMENT '分类编码',
|
||
`item_type_name` varchar(50) NOT NULL COMMENT '分类名称',
|
||
`parent_type_id` bigint DEFAULT NULL COMMENT '父分类ID',
|
||
`ancestors` varchar(500) DEFAULT NULL COMMENT '祖级列表',
|
||
`order_num` int DEFAULT 0 COMMENT '排序号',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态(Y启用 N停用)',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`item_type_id`),
|
||
UNIQUE KEY `uk_item_type_code` (`item_type_code`, `tenant_id`),
|
||
KEY `idx_item_type_parent` (`parent_type_id`),
|
||
KEY `idx_item_type_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料分类表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 2.2 物料档案表 (md_item)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_md_item`;
|
||
CREATE TABLE `erp_md_item` (
|
||
`item_id` bigint NOT NULL AUTO_INCREMENT COMMENT '物料ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_of_measure` varchar(20) DEFAULT NULL COMMENT '主计量单位',
|
||
`item_type_id` bigint DEFAULT NULL COMMENT '物料分类ID',
|
||
`item_type_code` varchar(32) DEFAULT NULL COMMENT '物料分类编码',
|
||
`item_type_name` varchar(50) DEFAULT NULL COMMENT '物料分类名称',
|
||
`item_sub_type_code` varchar(32) DEFAULT NULL COMMENT '二级分类编码',
|
||
`item_sub_type_name` varchar(50) DEFAULT NULL COMMENT '二级分类名称',
|
||
`item_or_product` varchar(20) DEFAULT 'ITEM' COMMENT '物料/产品(ITEM物料 PRODUCT产品)',
|
||
`safe_stock_flag` char(1) DEFAULT 'N' COMMENT '启用安全库存(Y/N)',
|
||
`min_stock` decimal(18,4) DEFAULT 0 COMMENT '最小库存',
|
||
`max_stock` decimal(18,4) DEFAULT 0 COMMENT '最大库存',
|
||
`default_warehouse_id` bigint DEFAULT NULL COMMENT '默认仓库ID',
|
||
`default_warehouse_name` varchar(50) DEFAULT NULL COMMENT '默认仓库名称',
|
||
`weight` decimal(18,6) DEFAULT NULL COMMENT '重量(kg)',
|
||
`volume` decimal(18,6) DEFAULT NULL COMMENT '体积(m³)',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态(Y启用 N停用)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`item_id`),
|
||
UNIQUE KEY `uk_item_code` (`item_code`, `tenant_id`),
|
||
KEY `idx_item_type` (`item_type_id`),
|
||
KEY `idx_item_name` (`item_name`),
|
||
KEY `idx_item_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料档案表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 2.3 计量单位表 (md_unit)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_md_unit`;
|
||
CREATE TABLE `erp_md_unit` (
|
||
`unit_id` bigint NOT NULL AUTO_INCREMENT COMMENT '单位ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`unit_code` varchar(20) NOT NULL COMMENT '单位编码',
|
||
`unit_name` varchar(50) NOT NULL COMMENT '单位名称',
|
||
`unit_type` varchar(20) DEFAULT NULL COMMENT '单位类型',
|
||
`order_num` int DEFAULT 0 COMMENT '排序号',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
PRIMARY KEY (`unit_id`),
|
||
UNIQUE KEY `uk_unit_code` (`unit_code`, `tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计量单位表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 2.4 BOM表头 (md_bom)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_md_bom`;
|
||
CREATE TABLE `erp_md_bom` (
|
||
`bom_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'BOM ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`bom_code` varchar(32) NOT NULL COMMENT 'BOM编码',
|
||
`bom_name` varchar(100) DEFAULT NULL COMMENT 'BOM名称',
|
||
`item_id` bigint NOT NULL COMMENT '产品物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '产品物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '产品物料名称',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`base_qty` decimal(18,4) NOT NULL DEFAULT 1 COMMENT '基本数量',
|
||
`version` varchar(20) DEFAULT NULL COMMENT '版本号',
|
||
`version_desc` varchar(200) DEFAULT NULL COMMENT '版本说明',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态(DRAFT草稿 APPROVED审核)',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`bom_id`),
|
||
UNIQUE KEY `uk_bom_code` (`bom_code`, `tenant_id`),
|
||
KEY `idx_bom_item` (`item_id`),
|
||
KEY `idx_bom_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='BOM表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 2.5 BOM明细表 (md_bom_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_md_bom_line`;
|
||
CREATE TABLE `erp_md_bom_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`bom_id` bigint NOT NULL COMMENT 'BOM ID',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`item_id` bigint NOT NULL COMMENT '子件物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '子件物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '子件物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`base_qty` decimal(18,6) NOT NULL DEFAULT 1 COMMENT '基本用量',
|
||
`loss_rate` decimal(5,2) DEFAULT 0 COMMENT '损耗率(%)',
|
||
`supply_type` varchar(20) DEFAULT 'PURCHASE' COMMENT '供应方式(PURCHASE采购 SELF_MADE自制 OUTSOURCE委外)',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_bom_line_bom` (`bom_id`),
|
||
KEY `idx_bom_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='BOM明细表';
|
||
|
||
-- =====================================================
|
||
-- 第三部分: 仓库管理表 (Warehouse Management)
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.1 仓库表 (wm_warehouse)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_warehouse`;
|
||
CREATE TABLE `erp_wm_warehouse` (
|
||
`warehouse_id` bigint NOT NULL AUTO_INCREMENT COMMENT '仓库ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`warehouse_code` varchar(32) NOT NULL COMMENT '仓库编码',
|
||
`warehouse_name` varchar(50) NOT NULL COMMENT '仓库名称',
|
||
`warehouse_type` varchar(20) DEFAULT NULL COMMENT '仓库类型',
|
||
`location` varchar(100) DEFAULT NULL COMMENT '位置',
|
||
`area` decimal(10,2) DEFAULT NULL COMMENT '面积(m²)',
|
||
`charge` varchar(50) DEFAULT NULL COMMENT '负责人',
|
||
`charge_tel` varchar(20) DEFAULT NULL COMMENT '负责人电话',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`warehouse_id`),
|
||
UNIQUE KEY `uk_warehouse_code` (`warehouse_code`, `tenant_id`),
|
||
KEY `idx_warehouse_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仓库表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.2 库区表 (wm_location)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_location`;
|
||
CREATE TABLE `erp_wm_location` (
|
||
`location_id` bigint NOT NULL AUTO_INCREMENT COMMENT '库区ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`warehouse_id` bigint NOT NULL COMMENT '仓库ID',
|
||
`location_code` varchar(32) NOT NULL COMMENT '库区编码',
|
||
`location_name` varchar(50) NOT NULL COMMENT '库区名称',
|
||
`area` decimal(10,2) DEFAULT NULL COMMENT '面积(m²)',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
PRIMARY KEY (`location_id`),
|
||
UNIQUE KEY `uk_location_code` (`location_code`, `tenant_id`),
|
||
KEY `idx_location_warehouse` (`warehouse_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库区表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.3 库位表 (wm_area)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_area`;
|
||
CREATE TABLE `erp_wm_area` (
|
||
`area_id` bigint NOT NULL AUTO_INCREMENT COMMENT '库位ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`warehouse_id` bigint NOT NULL COMMENT '仓库ID',
|
||
`location_id` bigint DEFAULT NULL COMMENT '库区ID',
|
||
`area_code` varchar(32) NOT NULL COMMENT '库位编码',
|
||
`area_name` varchar(50) NOT NULL COMMENT '库位名称',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
PRIMARY KEY (`area_id`),
|
||
UNIQUE KEY `uk_area_code` (`area_code`, `tenant_id`),
|
||
KEY `idx_area_warehouse` (`warehouse_id`),
|
||
KEY `idx_area_location` (`location_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库位表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.4 库存表 (wm_stock)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_stock`;
|
||
CREATE TABLE `erp_wm_stock` (
|
||
`stock_id` bigint NOT NULL AUTO_INCREMENT COMMENT '库存ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`warehouse_id` bigint NOT NULL COMMENT '仓库ID',
|
||
`warehouse_code` varchar(32) DEFAULT NULL COMMENT '仓库编码',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`location_id` bigint DEFAULT NULL COMMENT '库区ID',
|
||
`area_id` bigint DEFAULT NULL COMMENT '库位ID',
|
||
`batch_no` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`quantity_on_hand` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '在库数量',
|
||
`quantity_locked` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '锁定数量',
|
||
`quantity_available` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '可用数量',
|
||
`unit_cost` decimal(18,4) DEFAULT 0 COMMENT '单位成本',
|
||
`expire_date` date DEFAULT NULL COMMENT '有效期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`stock_id`),
|
||
UNIQUE KEY `uk_stock` (`item_id`, `warehouse_id`, `location_id`, `area_id`, `batch_no`, `tenant_id`),
|
||
KEY `idx_stock_item` (`item_id`),
|
||
KEY `idx_stock_warehouse` (`warehouse_id`),
|
||
KEY `idx_stock_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.5 入库单表头 (wm_item_recpt)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_item_recpt`;
|
||
CREATE TABLE `erp_wm_item_recpt` (
|
||
`recpt_id` bigint NOT NULL AUTO_INCREMENT COMMENT '入库单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`recpt_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`recpt_name` varchar(100) DEFAULT NULL COMMENT '入库单名称',
|
||
`recpt_date` date NOT NULL COMMENT '入库日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`source_doc_type` varchar(20) DEFAULT NULL COMMENT '来源单据类型',
|
||
`source_doc_id` bigint DEFAULT NULL COMMENT '来源单据ID',
|
||
`source_doc_code` varchar(32) DEFAULT NULL COMMENT '来源单据编码',
|
||
`vendor_id` bigint DEFAULT NULL COMMENT '供应商ID',
|
||
`vendor_code` varchar(32) DEFAULT NULL COMMENT '供应商编码',
|
||
`vendor_name` varchar(100) DEFAULT NULL COMMENT '供应商名称',
|
||
`warehouse_id` bigint NOT NULL COMMENT '仓库ID',
|
||
`warehouse_code` varchar(32) DEFAULT NULL COMMENT '仓库编码',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`recpt_id`),
|
||
UNIQUE KEY `uk_recpt_code` (`recpt_code`, `tenant_id`),
|
||
KEY `idx_recpt_warehouse` (`warehouse_id`),
|
||
KEY `idx_recpt_date` (`recpt_date`),
|
||
KEY `idx_recpt_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='入库单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.6 入库单明细 (wm_item_recpt_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_item_recpt_line`;
|
||
CREATE TABLE `erp_wm_item_recpt_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`recpt_id` bigint NOT NULL COMMENT '入库单ID',
|
||
`recpt_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`location_id` bigint DEFAULT NULL COMMENT '库区ID',
|
||
`area_id` bigint DEFAULT NULL COMMENT '库位ID',
|
||
`batch_no` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '入库数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_recpt_line_recpt` (`recpt_id`),
|
||
KEY `idx_recpt_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='入库单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.7 出库单表头 (wm_issue)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_issue`;
|
||
CREATE TABLE `erp_wm_issue` (
|
||
`issue_id` bigint NOT NULL AUTO_INCREMENT COMMENT '出库单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`issue_code` varchar(32) NOT NULL COMMENT '出库单编码',
|
||
`issue_name` varchar(100) DEFAULT NULL COMMENT '出库单名称',
|
||
`issue_date` date NOT NULL COMMENT '出库日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`source_doc_type` varchar(20) DEFAULT NULL COMMENT '来源单据类型',
|
||
`source_doc_id` bigint DEFAULT NULL COMMENT '来源单据ID',
|
||
`source_doc_code` varchar(32) DEFAULT NULL COMMENT '来源单据编码',
|
||
`warehouse_id` bigint NOT NULL COMMENT '仓库ID',
|
||
`warehouse_code` varchar(32) DEFAULT NULL COMMENT '仓库编码',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`issue_id`),
|
||
UNIQUE KEY `uk_issue_code` (`issue_code`, `tenant_id`),
|
||
KEY `idx_issue_warehouse` (`warehouse_id`),
|
||
KEY `idx_issue_date` (`issue_date`),
|
||
KEY `idx_issue_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='出库单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 3.8 出库单明细 (wm_issue_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_wm_issue_line`;
|
||
CREATE TABLE `erp_wm_issue_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`issue_id` bigint NOT NULL COMMENT '出库单ID',
|
||
`issue_code` varchar(32) NOT NULL COMMENT '出库单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`location_id` bigint DEFAULT NULL COMMENT '库区ID',
|
||
`area_id` bigint DEFAULT NULL COMMENT '库位ID',
|
||
`batch_no` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '出库数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_issue_line_issue` (`issue_id`),
|
||
KEY `idx_issue_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='出库单明细';
|
||
|
||
-- =====================================================
|
||
-- 第四部分: 销售管理表 (Sales)
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 说明: 客户档案表使用 md_client,已合并 erp_sl_client 的字段
|
||
-- ---------------------------------------------------
|
||
-- 4.2 销售合同表头 (sl_contract)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_contract`;
|
||
CREATE TABLE `erp_sl_contract` (
|
||
`contract_id` bigint NOT NULL AUTO_INCREMENT COMMENT '合同ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`contract_code` varchar(32) NOT NULL COMMENT '合同编码',
|
||
`contract_name` varchar(100) DEFAULT NULL COMMENT '合同名称',
|
||
`contract_date` date NOT NULL COMMENT '合同日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`client_id` bigint NOT NULL COMMENT '客户ID',
|
||
`client_code` varchar(32) DEFAULT NULL COMMENT '客户编码',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`delivery_date` date DEFAULT NULL COMMENT '交货日期',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '合同总金额',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`contract_id`),
|
||
UNIQUE KEY `uk_contract_code` (`contract_code`, `tenant_id`),
|
||
KEY `idx_contract_client` (`client_id`),
|
||
KEY `idx_contract_date` (`contract_date`),
|
||
KEY `idx_contract_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售合同表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.3 销售合同明细 (sl_contract_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_contract_line`;
|
||
CREATE TABLE `erp_sl_contract_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`contract_id` bigint NOT NULL COMMENT '合同ID',
|
||
`contract_code` varchar(32) NOT NULL COMMENT '合同编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_contract_line_contract` (`contract_id`),
|
||
KEY `idx_contract_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售合同明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.4 销售订单表头 (sl_order)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_order`;
|
||
CREATE TABLE `erp_sl_order` (
|
||
`order_id` bigint NOT NULL AUTO_INCREMENT COMMENT '订单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`order_code` varchar(32) NOT NULL COMMENT '订单编码',
|
||
`order_name` varchar(100) DEFAULT NULL COMMENT '订单名称',
|
||
`order_date` date NOT NULL COMMENT '订单日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_status` varchar(20) DEFAULT 'NORMAL' COMMENT '业务状态',
|
||
`order_type` varchar(20) DEFAULT NULL COMMENT '订单类型',
|
||
`contract_id` bigint DEFAULT NULL COMMENT '合同ID',
|
||
`contract_code` varchar(32) DEFAULT NULL COMMENT '合同编码',
|
||
`client_id` bigint NOT NULL COMMENT '客户ID',
|
||
`client_code` varchar(32) DEFAULT NULL COMMENT '客户编码',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`sales_user_id` bigint DEFAULT NULL COMMENT '销售员ID',
|
||
`sales_user_name` varchar(50) DEFAULT NULL COMMENT '销售员名称',
|
||
`dept_id` bigint DEFAULT NULL COMMENT '部门ID',
|
||
`dept_name` varchar(50) DEFAULT NULL COMMENT '部门名称',
|
||
`delivery_date` date DEFAULT NULL COMMENT '交货日期',
|
||
`delivery_address` varchar(200) DEFAULT NULL COMMENT '收货地址',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '总数量',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '总金额',
|
||
`delivered_quantity` decimal(18,4) DEFAULT 0 COMMENT '已发货数量',
|
||
`delivered_amount` decimal(18,2) DEFAULT 0 COMMENT '已发货金额',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`order_id`),
|
||
UNIQUE KEY `uk_sl_order_code` (`order_code`, `tenant_id`),
|
||
KEY `idx_sl_order_client` (`client_id`),
|
||
KEY `idx_sl_order_date` (`order_date`),
|
||
KEY `idx_sl_order_status` (`status`),
|
||
KEY `idx_sl_order_delivery` (`delivery_date`),
|
||
KEY `idx_sl_order_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售订单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.5 销售订单明细 (sl_order_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_order_line`;
|
||
CREATE TABLE `erp_sl_order_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`order_id` bigint NOT NULL COMMENT '订单ID',
|
||
`order_code` varchar(32) NOT NULL COMMENT '订单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`contract_line_id` bigint DEFAULT NULL COMMENT '合同明细ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_id` bigint DEFAULT NULL COMMENT '计量单位ID',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '订单数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`delivered_qty` decimal(18,4) DEFAULT 0 COMMENT '已发货数量',
|
||
`quality_req` varchar(200) DEFAULT NULL COMMENT '质量要求',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_sl_order_line_order` (`order_id`),
|
||
KEY `idx_sl_order_line_item` (`item_id`),
|
||
KEY `idx_sl_order_line_track` (`track_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售订单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.6 发货单表头 (sl_deliver)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_deliver`;
|
||
CREATE TABLE `erp_sl_deliver` (
|
||
`deliver_id` bigint NOT NULL AUTO_INCREMENT COMMENT '发货单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`deliver_code` varchar(32) NOT NULL COMMENT '发货单编码',
|
||
`deliver_name` varchar(100) DEFAULT NULL COMMENT '发货单名称',
|
||
`deliver_date` date NOT NULL COMMENT '发货日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`order_id` bigint DEFAULT NULL COMMENT '销售订单ID',
|
||
`order_code` varchar(32) DEFAULT NULL COMMENT '销售订单编码',
|
||
`client_id` bigint NOT NULL COMMENT '客户ID',
|
||
`client_code` varchar(32) DEFAULT NULL COMMENT '客户编码',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`warehouse_id` bigint DEFAULT NULL COMMENT '发货仓库ID',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`delivery_address` varchar(200) DEFAULT NULL COMMENT '收货地址',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '总数量',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '总金额',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`deliver_id`),
|
||
UNIQUE KEY `uk_deliver_code` (`deliver_code`, `tenant_id`),
|
||
KEY `idx_deliver_order` (`order_id`),
|
||
KEY `idx_deliver_client` (`client_id`),
|
||
KEY `idx_deliver_date` (`deliver_date`),
|
||
KEY `idx_deliver_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='发货单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.7 发货单明细 (sl_deliver_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_deliver_line`;
|
||
CREATE TABLE `erp_sl_deliver_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`deliver_id` bigint NOT NULL COMMENT '发货单ID',
|
||
`deliver_code` varchar(32) NOT NULL COMMENT '发货单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`order_id` bigint DEFAULT NULL COMMENT '销售订单ID',
|
||
`order_line_id` bigint DEFAULT NULL COMMENT '订单明细ID',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`order_qty` decimal(18,4) DEFAULT 0 COMMENT '订单数量',
|
||
`delivered_qty` decimal(18,4) DEFAULT 0 COMMENT '已发数量',
|
||
`deliver_qty` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '本次发货数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_deliver_line_deliver` (`deliver_id`),
|
||
KEY `idx_deliver_line_order` (`order_id`),
|
||
KEY `idx_deliver_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='发货单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.8 销售发票表头 (sl_invoice)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_invoice`;
|
||
CREATE TABLE `erp_sl_invoice` (
|
||
`invoice_id` bigint NOT NULL AUTO_INCREMENT COMMENT '发票ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`invoice_code` varchar(32) NOT NULL COMMENT '发票单据编码',
|
||
`invoice_date` date NOT NULL COMMENT '发票日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`finance_status` varchar(20) DEFAULT 'RECORDED' COMMENT '财务状态',
|
||
`client_id` bigint NOT NULL COMMENT '客户ID',
|
||
`client_code` varchar(32) DEFAULT NULL COMMENT '客户编码',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`invoice_title` varchar(100) DEFAULT NULL COMMENT '开票名称',
|
||
`invoice_no` varchar(50) DEFAULT NULL COMMENT '发票号码',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '发票类型',
|
||
`bank_name` varchar(100) DEFAULT NULL COMMENT '开户行',
|
||
`bank_account` varchar(30) DEFAULT NULL COMMENT '银行账号',
|
||
`tax_no` varchar(30) DEFAULT NULL COMMENT '税号',
|
||
`tax_rate` decimal(5,2) DEFAULT 0 COMMENT '税率(%)',
|
||
`invoice_amount` decimal(18,2) DEFAULT 0 COMMENT '发票金额(不含税)',
|
||
`tax_amount` decimal(18,2) DEFAULT 0 COMMENT '税额',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '价税合计',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`invoice_id`),
|
||
UNIQUE KEY `uk_sl_invoice_code` (`invoice_code`, `tenant_id`),
|
||
KEY `idx_sl_invoice_client` (`client_id`),
|
||
KEY `idx_sl_invoice_date` (`invoice_date`),
|
||
KEY `idx_sl_invoice_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售发票表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.9 销售发票明细 (sl_invoice_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_invoice_line`;
|
||
CREATE TABLE `erp_sl_invoice_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`invoice_id` bigint NOT NULL COMMENT '发票ID',
|
||
`invoice_code` varchar(32) NOT NULL COMMENT '发票单据编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`deliver_id` bigint DEFAULT NULL COMMENT '发货单ID',
|
||
`deliver_line_id` bigint DEFAULT NULL COMMENT '发货明细ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '开票数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`tax_amount` decimal(18,2) DEFAULT 0 COMMENT '税额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_sl_invoice_line_invoice` (`invoice_id`),
|
||
KEY `idx_sl_invoice_line_deliver` (`deliver_id`),
|
||
KEY `idx_sl_invoice_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售发票明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.10 销售退货单表头 (sl_saleback)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_saleback`;
|
||
CREATE TABLE `erp_sl_saleback` (
|
||
`saleback_id` bigint NOT NULL AUTO_INCREMENT COMMENT '退货单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`saleback_code` varchar(32) NOT NULL COMMENT '退货单编码',
|
||
`saleback_date` date NOT NULL COMMENT '退货日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '状态',
|
||
`order_id` bigint DEFAULT NULL COMMENT '原销售订单ID',
|
||
`order_code` varchar(32) DEFAULT NULL COMMENT '原销售订单编码',
|
||
`client_id` bigint NOT NULL COMMENT '客户ID',
|
||
`client_code` varchar(32) DEFAULT NULL COMMENT '客户编码',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`warehouse_id` bigint DEFAULT NULL COMMENT '退货仓库ID',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '总数量',
|
||
`reason` varchar(500) DEFAULT NULL COMMENT '退货原因',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`saleback_id`),
|
||
UNIQUE KEY `uk_saleback_code` (`saleback_code`, `tenant_id`),
|
||
KEY `idx_saleback_order` (`order_id`),
|
||
KEY `idx_saleback_client` (`client_id`),
|
||
KEY `idx_saleback_date` (`saleback_date`),
|
||
KEY `idx_saleback_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售退货单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 4.11 销售退货单明细 (sl_saleback_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_sl_saleback_line`;
|
||
CREATE TABLE `erp_sl_saleback_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`saleback_id` bigint NOT NULL COMMENT '退货单ID',
|
||
`saleback_code` varchar(32) NOT NULL COMMENT '退货单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`deliver_id` bigint DEFAULT NULL COMMENT '发货单ID',
|
||
`deliver_line_id` bigint DEFAULT NULL COMMENT '发货明细ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '规格型号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`delivered_qty` decimal(18,4) DEFAULT 0 COMMENT '已发数量',
|
||
`return_qty` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '退货数量',
|
||
`reason` varchar(200) DEFAULT NULL COMMENT '退货原因',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_saleback_line_saleback` (`saleback_id`),
|
||
KEY `idx_saleback_line_deliver` (`deliver_id`),
|
||
KEY `idx_saleback_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='销售退货单明细';
|
||
|
||
-- =====================================================
|
||
-- 第五部分: 采购管理表 (Procurement)
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.1 供应商档案表 (po_supplier)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_supplier`;
|
||
CREATE TABLE `erp_po_supplier` (
|
||
`supplier_id` bigint NOT NULL AUTO_INCREMENT COMMENT '供应商ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`supplier_code` varchar(32) NOT NULL COMMENT '供应商编码',
|
||
`supplier_name` varchar(100) NOT NULL COMMENT '供应商名称',
|
||
`supplier_alias` varchar(100) DEFAULT NULL COMMENT '供应商别名',
|
||
`supplier_nick` varchar(50) DEFAULT NULL COMMENT '供应商简称',
|
||
`supplier_type` varchar(20) DEFAULT NULL COMMENT '供应商分类',
|
||
`supplier_level` varchar(10) DEFAULT 'B' COMMENT '供应商等级(A/B/C/D)',
|
||
`province` varchar(50) DEFAULT NULL COMMENT '省份',
|
||
`city` varchar(50) DEFAULT NULL COMMENT '城市',
|
||
`address` varchar(200) DEFAULT NULL COMMENT '公司地址',
|
||
`zip_code` varchar(10) DEFAULT NULL COMMENT '邮编',
|
||
`tel` varchar(20) DEFAULT NULL COMMENT '电话',
|
||
`fax` varchar(20) DEFAULT NULL COMMENT '传真',
|
||
`email` varchar(100) DEFAULT NULL COMMENT '邮箱',
|
||
`website` varchar(200) DEFAULT NULL COMMENT '网址',
|
||
`contact1` varchar(50) DEFAULT NULL COMMENT '业务联系人',
|
||
`contact1_tel` varchar(20) DEFAULT NULL COMMENT '业务联系人电话',
|
||
`contact2` varchar(50) DEFAULT NULL COMMENT '财务联系人',
|
||
`contact2_tel` varchar(20) DEFAULT NULL COMMENT '财务联系人电话',
|
||
`bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行',
|
||
`bank_account` varchar(30) DEFAULT NULL COMMENT '银行账号',
|
||
`bank_address` varchar(200) DEFAULT NULL COMMENT '开票地址电话',
|
||
`tax_no` varchar(30) DEFAULT NULL COMMENT '税号',
|
||
`supply_items` varchar(500) DEFAULT NULL COMMENT '供应料品(逗号分隔)',
|
||
`enable_flag` char(1) NOT NULL DEFAULT 'Y' COMMENT '启用状态(Y启用 N停用)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`supplier_id`),
|
||
UNIQUE KEY `uk_supplier_code` (`supplier_code`, `tenant_id`),
|
||
KEY `idx_supplier_name` (`supplier_name`),
|
||
KEY `idx_supplier_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='供应商档案表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.2 采购订单表头 (po_order)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_order`;
|
||
CREATE TABLE `erp_po_order` (
|
||
`order_id` bigint NOT NULL AUTO_INCREMENT COMMENT '订单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`order_code` varchar(32) NOT NULL COMMENT '订单编码',
|
||
`order_date` date NOT NULL COMMENT '订单日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_status` varchar(20) DEFAULT 'NORMAL' COMMENT '业务状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`order_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`material_need` varchar(20) DEFAULT NULL COMMENT '用料需求',
|
||
`supplier_id` bigint DEFAULT NULL COMMENT '供应商ID',
|
||
`supplier_code` varchar(32) DEFAULT NULL COMMENT '供应商编码',
|
||
`supplier_name` varchar(100) DEFAULT NULL COMMENT '供应商名称',
|
||
`dept_id` bigint DEFAULT NULL COMMENT '采购部门ID',
|
||
`dept_name` varchar(50) DEFAULT NULL COMMENT '采购部门名称',
|
||
`user_id` bigint DEFAULT NULL COMMENT '采购人员ID',
|
||
`user_name` varchar(50) DEFAULT NULL COMMENT '采购人员名称',
|
||
`delivery_date` date DEFAULT NULL COMMENT '到货日期',
|
||
`contract_no` varchar(50) DEFAULT NULL COMMENT '合同号',
|
||
`contract_file` varchar(500) DEFAULT NULL COMMENT '合同附件',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '总数量',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '总金额',
|
||
`arrived_quantity` decimal(18,4) DEFAULT 0 COMMENT '已到货数量',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`order_id`),
|
||
UNIQUE KEY `uk_po_order_code` (`order_code`, `tenant_id`),
|
||
KEY `idx_po_order_supplier` (`supplier_id`),
|
||
KEY `idx_po_order_date` (`order_date`),
|
||
KEY `idx_po_order_status` (`status`),
|
||
KEY `idx_po_order_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购订单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.3 采购订单明细 (po_order_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_order_line`;
|
||
CREATE TABLE `erp_po_order_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`order_id` bigint NOT NULL COMMENT '订单ID',
|
||
`order_code` varchar(32) NOT NULL COMMENT '订单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`plan_code` varchar(32) DEFAULT NULL COMMENT '计划单号',
|
||
`plan_line_id` bigint DEFAULT NULL COMMENT '计划明细ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_id` bigint DEFAULT NULL COMMENT '计量单位ID',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`need_date` date DEFAULT NULL COMMENT '需求日期',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '采购数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '采购单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`arrived_quantity` decimal(18,4) DEFAULT 0 COMMENT '已到货数量',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '采购说明',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_po_order_line_order` (`order_id`),
|
||
KEY `idx_po_order_line_item` (`item_id`),
|
||
KEY `idx_po_order_line_track` (`track_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购订单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.4 采购到货单表头 (po_checkin)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_checkin`;
|
||
CREATE TABLE `erp_po_checkin` (
|
||
`checkin_id` bigint NOT NULL AUTO_INCREMENT COMMENT '到货单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`checkin_code` varchar(32) NOT NULL COMMENT '到货单编码',
|
||
`checkin_date` date NOT NULL COMMENT '到货日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`order_id` bigint DEFAULT NULL COMMENT '采购订单ID',
|
||
`order_code` varchar(32) DEFAULT NULL COMMENT '采购订单编码',
|
||
`supplier_id` bigint DEFAULT NULL COMMENT '供应商ID',
|
||
`supplier_code` varchar(32) DEFAULT NULL COMMENT '供应商编码',
|
||
`supplier_name` varchar(100) DEFAULT NULL COMMENT '供应商名称',
|
||
`warehouse_id` bigint DEFAULT NULL COMMENT '仓库ID',
|
||
`warehouse_code` varchar(32) DEFAULT NULL COMMENT '仓库编码',
|
||
`warehouse_name` varchar(50) DEFAULT NULL COMMENT '仓库名称',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '总到货数量',
|
||
`stocked_quantity` decimal(18,4) DEFAULT 0 COMMENT '已入库数量',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`checkin_id`),
|
||
UNIQUE KEY `uk_checkin_code` (`checkin_code`, `tenant_id`),
|
||
KEY `idx_checkin_order` (`order_id`),
|
||
KEY `idx_checkin_supplier` (`supplier_id`),
|
||
KEY `idx_checkin_date` (`checkin_date`),
|
||
KEY `idx_checkin_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购到货单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.5 采购到货单明细 (po_checkin_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_checkin_line`;
|
||
CREATE TABLE `erp_po_checkin_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`checkin_id` bigint NOT NULL COMMENT '到货单ID',
|
||
`checkin_code` varchar(32) NOT NULL COMMENT '到货单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`order_line_id` bigint DEFAULT NULL COMMENT '采购订单明细ID',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`order_quantity` decimal(18,4) DEFAULT 0 COMMENT '订单数量',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '到货数量',
|
||
`stocked_quantity` decimal(18,4) DEFAULT 0 COMMENT '已入库数量',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_checkin_line_checkin` (`checkin_id`),
|
||
KEY `idx_checkin_line_order` (`order_line_id`),
|
||
KEY `idx_checkin_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购到货单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.6 采购发票表头 (po_invoice)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_invoice`;
|
||
CREATE TABLE `erp_po_invoice` (
|
||
`invoice_id` bigint NOT NULL AUTO_INCREMENT COMMENT '发票ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`invoice_code` varchar(32) NOT NULL COMMENT '发票单据编码',
|
||
`invoice_date` date NOT NULL COMMENT '单据日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`finance_status` varchar(20) DEFAULT 'RECORDED' COMMENT '财务状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`supplier_id` bigint NOT NULL COMMENT '供应商ID',
|
||
`supplier_code` varchar(32) DEFAULT NULL COMMENT '供应商编码',
|
||
`supplier_name` varchar(100) NOT NULL COMMENT '供应商名称',
|
||
`invoice_no` varchar(50) DEFAULT NULL COMMENT '发票号码',
|
||
`invoice_amount` decimal(18,2) NOT NULL DEFAULT 0 COMMENT '发票金额(不含税)',
|
||
`tax_rate` decimal(5,2) DEFAULT 0 COMMENT '税率(%)',
|
||
`tax_amount` decimal(18,2) DEFAULT 0 COMMENT '税额',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '价税合计',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`invoice_id`),
|
||
UNIQUE KEY `uk_po_invoice_code` (`invoice_code`, `tenant_id`),
|
||
KEY `idx_po_invoice_supplier` (`supplier_id`),
|
||
KEY `idx_po_invoice_date` (`invoice_date`),
|
||
KEY `idx_po_invoice_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购发票表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.7 采购发票明细 (po_invoice_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_invoice_line`;
|
||
CREATE TABLE `erp_po_invoice_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`invoice_id` bigint NOT NULL COMMENT '发票ID',
|
||
`invoice_code` varchar(32) NOT NULL COMMENT '发票单据编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`checkin_line_id` bigint DEFAULT NULL COMMENT '到货明细ID',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '开票数量',
|
||
`unit_price` decimal(18,4) DEFAULT 0 COMMENT '单价',
|
||
`amount` decimal(18,2) DEFAULT 0 COMMENT '金额',
|
||
`tax_amount` decimal(18,2) DEFAULT 0 COMMENT '税额',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_po_invoice_line_invoice` (`invoice_id`),
|
||
KEY `idx_po_invoice_line_checkin` (`checkin_line_id`),
|
||
KEY `idx_po_invoice_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购发票明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.8 采购退货单表头 (po_reject)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_reject`;
|
||
CREATE TABLE `erp_po_reject` (
|
||
`reject_id` bigint NOT NULL AUTO_INCREMENT COMMENT '退货单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`reject_code` varchar(32) NOT NULL COMMENT '退货单编码',
|
||
`reject_date` date NOT NULL COMMENT '退货日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`supplier_id` bigint NOT NULL COMMENT '供应商ID',
|
||
`supplier_code` varchar(32) DEFAULT NULL COMMENT '供应商编码',
|
||
`supplier_name` varchar(100) NOT NULL COMMENT '供应商名称',
|
||
`checkin_id` bigint DEFAULT NULL COMMENT '到货单ID',
|
||
`checkin_code` varchar(32) DEFAULT NULL COMMENT '到货单编码',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '退货总数量',
|
||
`out_quantity` decimal(18,4) DEFAULT 0 COMMENT '已出库数量',
|
||
`return_quantity` decimal(18,4) DEFAULT 0 COMMENT '补收数量',
|
||
`reason` varchar(500) DEFAULT NULL COMMENT '退货原因',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`reject_id`),
|
||
UNIQUE KEY `uk_reject_code` (`reject_code`, `tenant_id`),
|
||
KEY `idx_reject_supplier` (`supplier_id`),
|
||
KEY `idx_reject_checkin` (`checkin_id`),
|
||
KEY `idx_reject_date` (`reject_date`),
|
||
KEY `idx_reject_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购退货单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 5.9 采购退货单明细 (po_reject_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_po_reject_line`;
|
||
CREATE TABLE `erp_po_reject_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`reject_id` bigint NOT NULL COMMENT '退货单ID',
|
||
`reject_code` varchar(32) NOT NULL COMMENT '退货单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`checkin_line_id` bigint DEFAULT NULL COMMENT '到货明细ID',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '退货数量',
|
||
`out_quantity` decimal(18,4) DEFAULT 0 COMMENT '已出库数量',
|
||
`return_quantity` decimal(18,4) DEFAULT 0 COMMENT '补收数量',
|
||
`reason` varchar(200) DEFAULT NULL COMMENT '退货原因',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_reject_line_reject` (`reject_id`),
|
||
KEY `idx_reject_line_checkin` (`checkin_line_id`),
|
||
KEY `idx_reject_line_item` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购退货单明细';
|
||
|
||
-- =====================================================
|
||
-- 第六部分: 生产计划表 (Manufacturing Planning)
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.1 生产计划单表头 (mp_plan)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_plan`;
|
||
CREATE TABLE `erp_mp_plan` (
|
||
`plan_id` bigint NOT NULL AUTO_INCREMENT COMMENT '计划ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`plan_code` varchar(32) NOT NULL COMMENT '计划单编码',
|
||
`plan_date` date NOT NULL COMMENT '计划日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_status` varchar(20) DEFAULT 'NORMAL' COMMENT '业务状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_type` int NOT NULL DEFAULT 0 COMMENT '工作类型(0生产计划/1零部件计划/2零部件订单)',
|
||
`sales_order_id` bigint DEFAULT NULL COMMENT '销售订单ID',
|
||
`sales_order_code` varchar(32) DEFAULT NULL COMMENT '销售订单编码',
|
||
`sales_user_id` bigint DEFAULT NULL COMMENT '销售员ID',
|
||
`sales_user_name` varchar(50) DEFAULT NULL COMMENT '销售员名称',
|
||
`delivery_date` date DEFAULT NULL COMMENT '订单交期',
|
||
`bom_id` bigint DEFAULT NULL COMMENT 'BOM ID',
|
||
`bom_version` varchar(20) DEFAULT NULL COMMENT 'BOM版本号',
|
||
`bom_desc` varchar(200) DEFAULT NULL COMMENT 'BOM版本说明',
|
||
`total_quantity` decimal(18,4) DEFAULT 0 COMMENT '生产总量',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`plan_id`),
|
||
UNIQUE KEY `uk_plan_code` (`plan_code`, `tenant_id`),
|
||
KEY `idx_plan_sales` (`sales_order_id`),
|
||
KEY `idx_plan_date` (`plan_date`),
|
||
KEY `idx_plan_status` (`status`),
|
||
KEY `idx_plan_work_type` (`work_type`),
|
||
KEY `idx_plan_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产计划单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.2 生产计划单明细 (mp_plan_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_plan_line`;
|
||
CREATE TABLE `erp_mp_plan_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`plan_id` bigint NOT NULL COMMENT '计划ID',
|
||
`plan_code` varchar(32) NOT NULL COMMENT '计划单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`sales_line_id` bigint DEFAULT NULL COMMENT '销售订单明细ID',
|
||
`track_code` varchar(32) DEFAULT NULL COMMENT '跟单编号',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_id` bigint DEFAULT NULL COMMENT '计量单位ID',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '生产数量',
|
||
`quality_req` varchar(200) DEFAULT NULL COMMENT '质量要求',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_plan_line_plan` (`plan_id`),
|
||
KEY `idx_plan_line_sales` (`sales_line_id`),
|
||
KEY `idx_plan_line_item` (`item_id`),
|
||
KEY `idx_plan_line_track` (`track_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产计划单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.3 物料清单表头 (mp_mbom)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_mbom`;
|
||
CREATE TABLE `erp_mp_mbom` (
|
||
`mbom_id` bigint NOT NULL AUTO_INCREMENT COMMENT '物料清单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`mbom_code` varchar(32) NOT NULL COMMENT '物料清单编码',
|
||
`mbom_date` date NOT NULL COMMENT '单据日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`business_type` varchar(20) DEFAULT NULL COMMENT '业务类型(BOM运算/生产补料)',
|
||
`issue_status` varchar(20) DEFAULT NULL COMMENT '下发状态',
|
||
`plan_id` bigint NOT NULL COMMENT '生产计划ID',
|
||
`plan_code` varchar(32) NOT NULL COMMENT '生产计划编码',
|
||
`sales_order_id` bigint DEFAULT NULL COMMENT '销售订单ID',
|
||
`sales_order_code` varchar(32) DEFAULT NULL COMMENT '销售订单编码',
|
||
`delivery_date` date DEFAULT NULL COMMENT '订单交期',
|
||
`item_id` bigint NOT NULL COMMENT '产品物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '产品物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '产品物料名称',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`supply_type` varchar(20) DEFAULT NULL COMMENT '供应方式(PURCHASE采购/SELF_MADE自制/OUTSOURCE委外)',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '生产数量',
|
||
`workshop_id` bigint DEFAULT NULL COMMENT '下发车间ID',
|
||
`workshop_name` varchar(50) DEFAULT NULL COMMENT '下发车间名称',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`mbom_id`),
|
||
UNIQUE KEY `uk_mbom_code` (`mbom_code`, `tenant_id`),
|
||
KEY `idx_mbom_plan` (`plan_id`),
|
||
KEY `idx_mbom_sales` (`sales_order_id`),
|
||
KEY `idx_mbom_item` (`item_id`),
|
||
KEY `idx_mbom_date` (`mbom_date`),
|
||
KEY `idx_mbom_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料清单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.4 物料清单明细 (mp_mbom_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_mbom_line`;
|
||
CREATE TABLE `erp_mp_mbom_line` (
|
||
`line_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细ID',
|
||
`mbom_id` bigint NOT NULL COMMENT '物料清单ID',
|
||
`mbom_code` varchar(32) NOT NULL COMMENT '物料清单编码',
|
||
`line_no` int NOT NULL COMMENT '行号',
|
||
`parent_item_id` bigint DEFAULT NULL COMMENT '父级物料ID',
|
||
`bom_level` int DEFAULT 1 COMMENT 'BOM层级',
|
||
`item_id` bigint NOT NULL COMMENT '子件物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '子件物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '子件物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`base_qty` decimal(18,6) DEFAULT 1 COMMENT '基本用量',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '需求数量',
|
||
`loss_rate` decimal(5,2) DEFAULT 0 COMMENT '损耗率(%)',
|
||
`supply_type` varchar(20) DEFAULT NULL COMMENT '供应方式',
|
||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
PRIMARY KEY (`line_id`),
|
||
KEY `idx_mbom_line_mbom` (`mbom_id`),
|
||
KEY `idx_mbom_line_item` (`item_id`),
|
||
KEY `idx_mbom_line_parent` (`parent_item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料清单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.5 采购计划单表 (mp_purchase)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_purchase`;
|
||
CREATE TABLE `erp_mp_purchase` (
|
||
`purchase_id` bigint NOT NULL AUTO_INCREMENT COMMENT '采购计划ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`purchase_code` varchar(32) NOT NULL COMMENT '采购计划编码',
|
||
`purchase_date` date NOT NULL COMMENT '计划日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`need_type` int NOT NULL DEFAULT 0 COMMENT '需求方式(0订单用料/1库存备料)',
|
||
`plan_id` bigint DEFAULT NULL COMMENT '生产计划ID',
|
||
`plan_code` varchar(32) DEFAULT NULL COMMENT '生产计划编码',
|
||
`sales_order_id` bigint DEFAULT NULL COMMENT '销售订单ID',
|
||
`sales_order_code` varchar(32) DEFAULT NULL COMMENT '销售订单编码(跟单单号)',
|
||
`delivery_date` date DEFAULT NULL COMMENT '订单交期',
|
||
`item_id` bigint NOT NULL COMMENT '物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`purchase_qty` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '采购数量',
|
||
`ordered_qty` decimal(18,4) DEFAULT 0 COMMENT '已订数量',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`purchase_id`),
|
||
UNIQUE KEY `uk_mp_purchase_code` (`purchase_code`, `tenant_id`),
|
||
KEY `idx_mp_purchase_plan` (`plan_id`),
|
||
KEY `idx_mp_purchase_sales` (`sales_order_id`),
|
||
KEY `idx_mp_purchase_item` (`item_id`),
|
||
KEY `idx_mp_purchase_date` (`purchase_date`),
|
||
KEY `idx_mp_purchase_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='采购计划单表';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.6 零部件订单表 (mp_parts)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_mp_parts`;
|
||
CREATE TABLE `erp_mp_parts` (
|
||
`parts_id` bigint NOT NULL AUTO_INCREMENT COMMENT '零部件订单ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`parts_code` varchar(32) NOT NULL COMMENT '零部件订单编码',
|
||
`parts_date` date NOT NULL COMMENT '单据日期',
|
||
`status` varchar(20) NOT NULL DEFAULT 'DRAFT' COMMENT '单据状态',
|
||
`item_id` bigint NOT NULL COMMENT '零部件物料ID',
|
||
`item_code` varchar(32) NOT NULL COMMENT '零部件物料编码',
|
||
`item_name` varchar(100) NOT NULL COMMENT '零部件物料名称',
|
||
`specification` varchar(200) DEFAULT NULL COMMENT '型号规格',
|
||
`drawing_no` varchar(50) DEFAULT NULL COMMENT '图纸号',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) NOT NULL DEFAULT 0 COMMENT '订单数量',
|
||
`plan_qty` decimal(18,4) DEFAULT 0 COMMENT '计划数量',
|
||
`completed_qty` decimal(18,4) DEFAULT 0 COMMENT '完成数量',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`operator_id` bigint DEFAULT NULL COMMENT '操作员ID',
|
||
`operator_name` varchar(50) DEFAULT NULL COMMENT '操作员名称',
|
||
`approver_id` bigint DEFAULT NULL COMMENT '审核员ID',
|
||
`approver_name` varchar(50) DEFAULT NULL COMMENT '审核员名称',
|
||
`approve_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`parts_id`),
|
||
UNIQUE KEY `uk_parts_code` (`parts_code`, `tenant_id`),
|
||
KEY `idx_parts_item` (`item_id`),
|
||
KEY `idx_parts_date` (`parts_date`),
|
||
KEY `idx_parts_tenant` (`tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='零部件订单表';
|
||
|
||
-- =====================================================
|
||
-- 第七部分: 视图定义
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.1 销售订单明细视图
|
||
-- ---------------------------------------------------
|
||
DROP VIEW IF EXISTS `erp_v_sl_order_detail`;
|
||
CREATE VIEW `erp_v_sl_order_detail` AS
|
||
SELECT
|
||
o.order_id,
|
||
o.order_code,
|
||
o.order_date,
|
||
o.status,
|
||
o.client_id,
|
||
o.client_name,
|
||
o.sales_user_name,
|
||
o.delivery_date,
|
||
o.total_amount,
|
||
l.line_id,
|
||
l.item_id,
|
||
l.item_code,
|
||
l.item_name,
|
||
l.specification,
|
||
l.unit_name,
|
||
l.quantity,
|
||
l.unit_price,
|
||
l.amount,
|
||
l.delivered_qty,
|
||
(l.quantity - IFNULL(l.delivered_qty, 0)) AS undelivered_qty,
|
||
o.tenant_id
|
||
FROM erp_sl_order o
|
||
LEFT JOIN erp_sl_order_line l ON o.order_id = l.order_id AND l.del_flag = '0'
|
||
WHERE o.del_flag = '0';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.2 采购订单明细视图
|
||
-- ---------------------------------------------------
|
||
DROP VIEW IF EXISTS `erp_v_po_order_detail`;
|
||
CREATE VIEW `erp_v_po_order_detail` AS
|
||
SELECT
|
||
l.line_id,
|
||
l.order_id,
|
||
o.order_code,
|
||
o.order_date,
|
||
o.status,
|
||
o.business_type,
|
||
o.material_need,
|
||
o.supplier_id,
|
||
o.supplier_name,
|
||
l.track_code,
|
||
l.plan_code,
|
||
l.item_id,
|
||
l.item_code,
|
||
l.item_name,
|
||
l.specification,
|
||
l.unit_name,
|
||
l.need_date,
|
||
l.quantity AS order_quantity,
|
||
l.unit_price,
|
||
l.amount,
|
||
l.arrived_quantity,
|
||
(l.quantity - IFNULL(l.arrived_quantity, 0)) AS pending_quantity,
|
||
o.tenant_id
|
||
FROM erp_po_order_line l
|
||
INNER JOIN erp_po_order o ON l.order_id = o.order_id
|
||
WHERE l.del_flag = '0' AND o.del_flag = '0';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.3 生产计划明细视图
|
||
-- ---------------------------------------------------
|
||
DROP VIEW IF EXISTS `erp_v_mp_plan_detail`;
|
||
CREATE VIEW `erp_v_mp_plan_detail` AS
|
||
SELECT
|
||
l.line_id,
|
||
l.plan_id,
|
||
p.plan_code,
|
||
p.plan_date,
|
||
p.status,
|
||
p.work_type,
|
||
p.sales_order_code,
|
||
p.sales_user_name,
|
||
p.delivery_date,
|
||
l.track_code,
|
||
l.item_id,
|
||
l.item_code,
|
||
l.item_name,
|
||
l.specification,
|
||
l.unit_name,
|
||
l.quantity,
|
||
p.tenant_id
|
||
FROM erp_mp_plan_line l
|
||
INNER JOIN erp_mp_plan p ON l.plan_id = p.plan_id
|
||
WHERE l.del_flag = '0' AND p.del_flag = '0';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.4 采购计划执行视图
|
||
-- ---------------------------------------------------
|
||
DROP VIEW IF EXISTS `erp_v_mp_purchase_exec`;
|
||
CREATE VIEW `erp_v_mp_purchase_exec` AS
|
||
SELECT
|
||
p.purchase_id,
|
||
p.purchase_code,
|
||
p.purchase_date,
|
||
p.status,
|
||
p.need_type,
|
||
p.sales_order_code,
|
||
p.delivery_date,
|
||
p.item_id,
|
||
p.item_code,
|
||
p.item_name,
|
||
p.purchase_qty,
|
||
p.ordered_qty,
|
||
(p.purchase_qty - IFNULL(p.ordered_qty, 0)) AS unordered_qty,
|
||
i.item_type_code,
|
||
i.item_type_name,
|
||
p.tenant_id
|
||
FROM erp_mp_purchase p
|
||
LEFT JOIN erp_md_item i ON p.item_id = i.item_id
|
||
WHERE p.del_flag = '0';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.5 库存汇总视图
|
||
-- ---------------------------------------------------
|
||
DROP VIEW IF EXISTS `erp_v_wm_stock_summary`;
|
||
CREATE VIEW `erp_v_wm_stock_summary` AS
|
||
SELECT
|
||
s.item_id,
|
||
s.item_code,
|
||
s.item_name,
|
||
s.specification,
|
||
s.unit_name,
|
||
SUM(s.quantity_on_hand) AS total_on_hand,
|
||
SUM(s.quantity_locked) AS total_locked,
|
||
SUM(s.quantity_available) AS total_available,
|
||
s.tenant_id
|
||
FROM erp_wm_stock s
|
||
GROUP BY s.item_id, s.item_code, s.item_name, s.specification, s.unit_name, s.tenant_id;
|
||
|
||
-- =====================================================
|
||
-- 第六部分: 生产管理模块 (车间执行) - 来源: Swagger API /prs
|
||
-- 新增日期: 2026-02-06
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.1 车间设置 - 生产线 (erp_prs_beltline)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_beltline`;
|
||
CREATE TABLE `erp_prs_beltline` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '生产线编码',
|
||
`name` varchar(100) NOT NULL COMMENT '生产线名称',
|
||
`process_route` varchar(100) DEFAULT NULL COMMENT '工艺路线',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态(Y/N)',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '所属车间类型',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_beltline_code` (`code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产线';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.2 车间设置 - 班组 (erp_prs_team)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_team`;
|
||
CREATE TABLE `erp_prs_team` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '班组编码',
|
||
`name` varchar(100) NOT NULL COMMENT '班组名称',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '所属车间类型',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班组';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.3 车间设置 - 工人 (erp_prs_worker)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_worker`;
|
||
CREATE TABLE `erp_prs_worker` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '工人编码',
|
||
`name` varchar(100) NOT NULL COMMENT '工人姓名',
|
||
`jobs` varchar(50) DEFAULT NULL COMMENT '工种',
|
||
`team` varchar(50) DEFAULT NULL COMMENT '所属班组',
|
||
`beltline` varchar(50) DEFAULT NULL COMMENT '所属生产线',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '所属车间类型',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工人';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.4 车间设置 - 工种 (erp_prs_jobs)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_jobs`;
|
||
CREATE TABLE `erp_prs_jobs` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '工种编码',
|
||
`name` varchar(100) NOT NULL COMMENT '工种名称',
|
||
`jobs` varchar(50) DEFAULT NULL COMMENT '工种类型',
|
||
`ratio` decimal(10,4) DEFAULT NULL COMMENT '计件比例',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工种';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.5 车间设置 - 标准工序段 (erp_prs_operate_section)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_operate_section`;
|
||
CREATE TABLE `erp_prs_operate_section` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '工序段编码',
|
||
`name` varchar(100) NOT NULL COMMENT '工序段名称',
|
||
`duration` decimal(10,2) DEFAULT NULL COMMENT '标准工时(分)',
|
||
`cost_ratio` decimal(10,4) DEFAULT NULL COMMENT '成本比例',
|
||
`count_type` varchar(20) DEFAULT NULL COMMENT '计数方式',
|
||
`is_quality` varchar(1) DEFAULT 'N' COMMENT '是否质检(Y/N)',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='标准工序段';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.6 车间设置 - 工艺路线 (erp_prs_process_route)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_process_route`;
|
||
CREATE TABLE `erp_prs_process_route` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '工艺路线编码',
|
||
`name` varchar(100) NOT NULL COMMENT '工艺路线名称',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工艺路线';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.7 车间设置 - 设备 (erp_prs_equipment)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_equipment`;
|
||
CREATE TABLE `erp_prs_equipment` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '设备编码',
|
||
`name` varchar(100) NOT NULL COMMENT '设备名称',
|
||
`dept_name` varchar(50) DEFAULT NULL COMMENT '所属部门',
|
||
`order_id` bigint DEFAULT NULL COMMENT '排序号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '所属车间类型',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设备';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.8 生产订单表头 (erp_prs_order)
|
||
-- API: /prs/order
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_order`;
|
||
CREATE TABLE `erp_prs_order` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态(开立/审核/退回)',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型(车间类型)',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性/规格',
|
||
`inv_quantity` decimal(18,4) DEFAULT NULL COMMENT '物料数量',
|
||
`inv_sort_id` varchar(32) DEFAULT NULL COMMENT '物料分类ID',
|
||
`inv_sort_root` varchar(32) DEFAULT NULL COMMENT '物料根分类',
|
||
`inv_supply_type` varchar(20) DEFAULT NULL COMMENT '供应方式',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`drawing_no` varchar(50) DEFAULT NULL COMMENT '图纸号',
|
||
`mp_order_code` varchar(32) DEFAULT NULL COMMENT '关联计划单编码',
|
||
`wo_code` varchar(32) DEFAULT NULL COMMENT '上游工单编码',
|
||
`wo_quantity` decimal(18,4) DEFAULT NULL COMMENT '工单数量',
|
||
`wo_date` datetime DEFAULT NULL COMMENT '工单日期',
|
||
`wo_type` varchar(20) DEFAULT NULL COMMENT '工单类型',
|
||
`wo_type_id` varchar(32) DEFAULT NULL COMMENT '工单类型ID',
|
||
`wo_invoice` varchar(50) DEFAULT NULL COMMENT '上游单据',
|
||
`wo_invoice_id` varchar(32) DEFAULT NULL COMMENT '上游单据ID',
|
||
`wo_unique_id` varchar(32) DEFAULT NULL COMMENT '上游主键ID',
|
||
`wo_config` varchar(50) DEFAULT NULL COMMENT '工单配置',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已完成数量',
|
||
`wi_instruct` decimal(18,4) DEFAULT 0 COMMENT '已下达指令数量',
|
||
`process` varchar(100) DEFAULT NULL COMMENT '工艺路线名称',
|
||
`process_id` varchar(32) DEFAULT NULL COMMENT '工艺路线ID',
|
||
`prs_process_code` varchar(32) DEFAULT NULL COMMENT '生产工序编码',
|
||
`beltline` varchar(100) DEFAULT NULL COMMENT '生产线名称',
|
||
`beltline_id` varchar(32) DEFAULT NULL COMMENT '生产线ID',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '入库仓库',
|
||
`duration` bigint DEFAULT NULL COMMENT '加工时长(分)',
|
||
`arrange_date` datetime DEFAULT NULL COMMENT '排产日期',
|
||
`need_date` datetime DEFAULT NULL COMMENT '需求日期',
|
||
`pp_date` datetime DEFAULT NULL COMMENT '计划日期',
|
||
`salesman` varchar(50) DEFAULT NULL COMMENT '销售员',
|
||
`upstream_type` varchar(20) DEFAULT NULL COMMENT '上游类型',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号(乐观锁)',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_order_code` (`prs_code`),
|
||
KEY `idx_prs_order_pp` (`pp_number`),
|
||
KEY `idx_prs_order_tenant` (`tenant_id`),
|
||
KEY `idx_prs_order_mp` (`mp_order_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产订单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.9 生产订单明细 (erp_prs_order_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_order_line`;
|
||
CREATE TABLE `erp_prs_order_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '子件物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '子件物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '子件物料属性',
|
||
`inv_in_type` varchar(20) DEFAULT NULL COMMENT '物料领用类型',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) DEFAULT NULL COMMENT '需求数量',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已领数量',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '仓库',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_order_line_code` (`prs_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产订单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.10 生产领料单表头 (erp_prs_pick)
|
||
-- API: /prs/pick
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_pick`;
|
||
CREATE TABLE `erp_prs_pick` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '领料单编码',
|
||
`prs_order_code` varchar(32) DEFAULT NULL COMMENT '关联生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '领料仓库',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_pick_code` (`prs_code`),
|
||
KEY `idx_prs_pick_order` (`prs_order_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产领料单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.11 生产领料单明细 (erp_prs_pick_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_pick_line`;
|
||
CREATE TABLE `erp_prs_pick_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '领料单编码',
|
||
`prs_order_code` varchar(32) DEFAULT NULL COMMENT '生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) DEFAULT NULL COMMENT '领料数量',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已出库数量',
|
||
`batch_number` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '仓库',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_pick_line_code` (`prs_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产领料单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.12 生产完工单表头 (erp_prs_product)
|
||
-- API: /prs/product
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_product`;
|
||
CREATE TABLE `erp_prs_product` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '完工单编码',
|
||
`prs_order_code` varchar(32) DEFAULT NULL COMMENT '关联生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '产品物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '产品物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '产品物料属性',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`inv_quantity` decimal(18,4) DEFAULT NULL COMMENT '完工数量',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '入库仓库',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_product_code` (`prs_code`),
|
||
KEY `idx_prs_product_order` (`prs_order_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产完工单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.13 生产入库单表头 (erp_prs_checkin)
|
||
-- API: /prs/checkin
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_checkin`;
|
||
CREATE TABLE `erp_prs_checkin` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '入库仓库',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_checkin_code` (`prs_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产入库单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 6.14 生产入库单明细 (erp_prs_checkin_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_prs_checkin_line`;
|
||
CREATE TABLE `erp_prs_checkin_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`prs_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`prs_order_code` varchar(32) DEFAULT NULL COMMENT '生产订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) DEFAULT NULL COMMENT '入库数量',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已入库数量',
|
||
`batch_number` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '仓库',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_prs_checkin_line_code` (`prs_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产入库单明细';
|
||
|
||
-- =====================================================
|
||
-- 第七部分: 研发管理模块 - 来源: Swagger API /rd
|
||
-- 新增日期: 2026-02-06
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.1 EBOM表头 (erp_rd_ebom)
|
||
-- API: /rd/ebom
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_ebom`;
|
||
CREATE TABLE `erp_rd_ebom` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT 'BOM单据编码(如EBOM000xxx)',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态(开立/审核/退回)',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型(如机械BOM)',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`inv_code` varchar(32) NOT NULL COMMENT '母件物料编码',
|
||
`inv_name` varchar(100) NOT NULL COMMENT '母件物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '母件物料属性/规格',
|
||
`inv_sort_id` bigint DEFAULT NULL COMMENT '物料分类ID',
|
||
`inv_sort_root` bigint DEFAULT NULL COMMENT '物料根分类ID',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`base_number` decimal(18,4) DEFAULT 1 COMMENT '母件基数',
|
||
`ver_number` varchar(20) DEFAULT '1.0' COMMENT '版本号',
|
||
`ver_remark` varchar(200) DEFAULT NULL COMMENT '版本说明',
|
||
`drawing_no` varchar(50) DEFAULT NULL COMMENT '图纸号',
|
||
`attribute` varchar(200) DEFAULT NULL COMMENT '属性',
|
||
`colour` varchar(50) DEFAULT NULL COMMENT '颜色',
|
||
`density` float DEFAULT NULL COMMENT '密度',
|
||
`cost` varchar(50) DEFAULT NULL COMMENT '成本',
|
||
`cust` varchar(100) DEFAULT NULL COMMENT '客户',
|
||
`property` varchar(100) DEFAULT NULL COMMENT '性质',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号(乐观锁)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_ebom_code` (`rd_code`),
|
||
KEY `idx_rd_ebom_inv` (`inv_code`),
|
||
KEY `idx_rd_ebom_tenant` (`tenant_id`),
|
||
KEY `idx_rd_ebom_pp` (`pp_number`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='研发BOM表头(EBOM)';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.2 EBOM明细 (erp_rd_ebom_line)
|
||
-- API: /rd/ebom/getDetail
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_ebom_line`;
|
||
CREATE TABLE `erp_rd_ebom_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT '关联BOM编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) NOT NULL COMMENT '子件物料编码',
|
||
`inv_name` varchar(100) NOT NULL COMMENT '子件物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '子件物料属性',
|
||
`inv_sort_id` bigint DEFAULT NULL COMMENT '子件分类ID',
|
||
`inv_sort_root` bigint DEFAULT NULL COMMENT '子件根分类ID',
|
||
`inv_supply_type` varchar(20) DEFAULT NULL COMMENT '子件供应方式(采购/生产/委外/装配/加工)',
|
||
`inv_out_type` varchar(20) DEFAULT NULL COMMENT '领料方式(按单领用/直接领用)',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`ratio` decimal(18,6) DEFAULT NULL COMMENT '用量比例(分子)',
|
||
`fill` varchar(20) DEFAULT NULL COMMENT '用量方式(按比例/固定)',
|
||
`drawing_no` varchar(50) DEFAULT NULL COMMENT '子件图纸号',
|
||
`formula` varchar(200) DEFAULT NULL COMMENT '公式',
|
||
`order_num` int DEFAULT NULL COMMENT '排序号',
|
||
`parent_id` bigint DEFAULT NULL COMMENT '父节点ID(多阶展开)',
|
||
`ancestors` varchar(500) DEFAULT NULL COMMENT '祖级列表',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_ebom_line_code` (`rd_code`),
|
||
KEY `idx_rd_ebom_line_inv` (`inv_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='研发BOM明细(EBOM子件)';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.3 样品配方表头 (erp_rd_sample)
|
||
-- API: /rd/sample
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_sample`;
|
||
CREATE TABLE `erp_rd_sample` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT '配方单据编码',
|
||
`bpm_code` varchar(32) DEFAULT NULL COMMENT '配方编号',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '产品物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '产品物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`base_number` decimal(18,4) DEFAULT 1 COMMENT '基数',
|
||
`ver_number` decimal(10,1) DEFAULT NULL COMMENT '版本号',
|
||
`ver_remark` varchar(200) DEFAULT NULL COMMENT '版本说明',
|
||
`colour` varchar(50) DEFAULT NULL COMMENT '颜色',
|
||
`density` decimal(18,4) DEFAULT NULL COMMENT '密度',
|
||
`cost` varchar(50) DEFAULT NULL COMMENT '成本',
|
||
`customer` varchar(100) DEFAULT NULL COMMENT '客户',
|
||
`property` varchar(100) DEFAULT NULL COMMENT '性质',
|
||
`quality_remarks` varchar(500) DEFAULT NULL COMMENT '质量要求',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号(乐观锁)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_sample_code` (`rd_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='样品配方表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.4 样品配方明细 (erp_rd_sample_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_sample_line`;
|
||
CREATE TABLE `erp_rd_sample_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT '关联配方编码',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '原料物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '原料物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`inv_sort_id` bigint DEFAULT NULL COMMENT '分类ID',
|
||
`inv_sort_root` bigint DEFAULT NULL COMMENT '根分类ID',
|
||
`inv_supply_type` varchar(20) DEFAULT NULL COMMENT '供应方式',
|
||
`inv_out_type` varchar(20) DEFAULT NULL COMMENT '领料方式',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`ratio` decimal(18,6) DEFAULT NULL COMMENT '配比(%)',
|
||
`fill` varchar(20) DEFAULT NULL COMMENT '用量方式',
|
||
`order_num` bigint DEFAULT NULL COMMENT '排序号',
|
||
`parent_id` bigint DEFAULT NULL COMMENT '父节点ID',
|
||
`ancestors` varchar(500) DEFAULT NULL COMMENT '祖级列表',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_sample_line_code` (`rd_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='样品配方明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.5 孪生物料表头 (erp_rd_twin)
|
||
-- API: /rd/twin
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_twin`;
|
||
CREATE TABLE `erp_rd_twin` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT '孪生物料编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`title` varchar(200) DEFAULT NULL COMMENT '标题/说明',
|
||
`dynamic_spec` varchar(200) DEFAULT NULL COMMENT '动态规格',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号(乐观锁)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_twin_code` (`rd_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='孪生物料表头(可替换/同色物料)';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.6 孪生物料明细 (erp_rd_twin_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_twin_line`;
|
||
CREATE TABLE `erp_rd_twin_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`rd_code` varchar(32) NOT NULL COMMENT '关联孪生物料编码',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`inv_sort_id` int DEFAULT NULL COMMENT '分类ID',
|
||
`inv_sort_root` int DEFAULT NULL COMMENT '根分类ID',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`colour` varchar(50) DEFAULT NULL COMMENT '颜色',
|
||
`priority` int DEFAULT NULL COMMENT '优先级',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_rd_twin_line_code` (`rd_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='孪生物料明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.7 放量表 (erp_rd_tret)
|
||
-- API: /rd/tret
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_tret`;
|
||
CREATE TABLE `erp_rd_tret` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`sort_id` bigint DEFAULT NULL COMMENT '物料分类ID',
|
||
`sort_code` varchar(32) DEFAULT NULL COMMENT '物料分类编码',
|
||
`sort_name` varchar(100) DEFAULT NULL COMMENT '物料分类名称',
|
||
`f1` decimal(18,6) DEFAULT NULL COMMENT '放量系数1',
|
||
`f2` decimal(18,6) DEFAULT NULL COMMENT '放量系数2',
|
||
`f3` decimal(18,6) DEFAULT NULL COMMENT '放量系数3',
|
||
`f4` decimal(18,6) DEFAULT NULL COMMENT '放量系数4',
|
||
`f5` decimal(18,6) DEFAULT NULL COMMENT '放量系数5',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='放量表(物料分类放量系数)';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 7.8 研发设置 (erp_rd_setting)
|
||
-- API: /rd/setting
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_rd_setting`;
|
||
CREATE TABLE `erp_rd_setting` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`inv_sort_id` bigint DEFAULT NULL COMMENT '分类ID',
|
||
`inv_sort_root` bigint DEFAULT NULL COMMENT '根分类ID',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`enable_color` varchar(1) DEFAULT 'N' COMMENT '启用颜色管理(Y/N)',
|
||
`enable_content` varchar(1) DEFAULT 'N' COMMENT '启用含量管理(Y/N)',
|
||
`json_content` text COMMENT 'JSON配置内容',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='研发设置';
|
||
|
||
-- =====================================================
|
||
-- 第八部分: 委外管理模块 - 来源: Swagger API /pu
|
||
-- 新增日期: 2026-02-06
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.1 委外商档案 (erp_pu_supplier)
|
||
-- API: /pu/supplier
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_supplier`;
|
||
CREATE TABLE `erp_pu_supplier` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`code` varchar(32) NOT NULL COMMENT '委外商编码',
|
||
`name` varchar(100) NOT NULL COMMENT '委外商名称',
|
||
`nick` varchar(50) DEFAULT NULL COMMENT '委外商简称',
|
||
`supplier_type` varchar(20) DEFAULT NULL COMMENT '委外商类型',
|
||
`address` varchar(200) DEFAULT NULL COMMENT '地址',
|
||
`contact` varchar(50) DEFAULT NULL COMMENT '联系人',
|
||
`tel` varchar(20) DEFAULT NULL COMMENT '电话',
|
||
`bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行',
|
||
`bank_account` varchar(30) DEFAULT NULL COMMENT '银行账号',
|
||
`tax_no` varchar(30) DEFAULT NULL COMMENT '税号',
|
||
`status` varchar(20) DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_supplier_code` (`code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外商档案';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.2 委外订单表头 (erp_pu_order)
|
||
-- API: /pu/order
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_order`;
|
||
CREATE TABLE `erp_pu_order` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '委外订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`supplier` varchar(100) DEFAULT NULL COMMENT '委外商名称',
|
||
`supplier_id` varchar(32) DEFAULT NULL COMMENT '委外商ID',
|
||
`contract` varchar(50) DEFAULT NULL COMMENT '合同号',
|
||
`mp_order_code` varchar(32) DEFAULT NULL COMMENT '关联计划单编码',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`inv_quantity` decimal(18,4) DEFAULT NULL COMMENT '数量',
|
||
`inv_sort_id` varchar(32) DEFAULT NULL COMMENT '物料分类ID',
|
||
`inv_sort_root` varchar(32) DEFAULT NULL COMMENT '物料根分类',
|
||
`unit_code` varchar(20) DEFAULT NULL COMMENT '计量单位编码',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位名称',
|
||
`drawing_no` varchar(50) DEFAULT NULL COMMENT '图纸号',
|
||
`processing_fee` decimal(18,2) DEFAULT NULL COMMENT '加工费',
|
||
`shipping_fee` decimal(18,2) DEFAULT NULL COMMENT '运费',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已完成数量',
|
||
`wo_code` varchar(32) DEFAULT NULL COMMENT '上游工单编码',
|
||
`wo_quantity` decimal(18,4) DEFAULT NULL COMMENT '工单数量',
|
||
`wo_date` datetime DEFAULT NULL COMMENT '工单日期',
|
||
`wo_type` varchar(20) DEFAULT NULL COMMENT '工单类型',
|
||
`wo_type_id` varchar(32) DEFAULT NULL COMMENT '工单类型ID',
|
||
`wo_invoice` varchar(50) DEFAULT NULL COMMENT '上游单据',
|
||
`wo_invoice_id` varchar(32) DEFAULT NULL COMMENT '上游单据ID',
|
||
`wo_unique_id` varchar(32) DEFAULT NULL COMMENT '上游主键',
|
||
`wo_config` varchar(50) DEFAULT NULL COMMENT '工单配置',
|
||
`duration` bigint DEFAULT NULL COMMENT '加工周期(天)',
|
||
`arrange_date` datetime DEFAULT NULL COMMENT '排期日期',
|
||
`need_date` datetime DEFAULT NULL COMMENT '需求日期',
|
||
`pp_date` datetime DEFAULT NULL COMMENT '计划日期',
|
||
`salesman` varchar(50) DEFAULT NULL COMMENT '销售员',
|
||
`item` varchar(100) DEFAULT NULL COMMENT '物料项',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_order_code` (`pu_code`),
|
||
KEY `idx_pu_order_pp` (`pp_number`),
|
||
KEY `idx_pu_order_supplier` (`supplier_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外订单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.3 委外订单明细 (erp_pu_order_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_order_line`;
|
||
CREATE TABLE `erp_pu_order_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '委外订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`inv_in_type` varchar(20) DEFAULT NULL COMMENT '物料类型',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) DEFAULT NULL COMMENT '数量',
|
||
`piece` decimal(18,4) DEFAULT NULL COMMENT '件数',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已完成数量',
|
||
`need_date` datetime DEFAULT NULL COMMENT '需求日期',
|
||
`arrange_date` datetime DEFAULT NULL COMMENT '排期日期',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_order_line_code` (`pu_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外订单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.4 委外入库单表头 (erp_pu_checkin)
|
||
-- API: /pu/checkin
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_checkin`;
|
||
CREATE TABLE `erp_pu_checkin` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`supplier` varchar(100) DEFAULT NULL COMMENT '委外商名称',
|
||
`supplier_id` varchar(32) DEFAULT NULL COMMENT '委外商ID',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '入库仓库',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_checkin_code` (`pu_code`),
|
||
KEY `idx_pu_checkin_supplier` (`supplier_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外入库单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.5 委外入库单明细 (erp_pu_checkin_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_checkin_line`;
|
||
CREATE TABLE `erp_pu_checkin_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '入库单编码',
|
||
`pu_product_code` varchar(32) DEFAULT NULL COMMENT '委外到货单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`inv_code` varchar(32) DEFAULT NULL COMMENT '物料编码',
|
||
`inv_name` varchar(100) DEFAULT NULL COMMENT '物料名称',
|
||
`inv_attribute` varchar(200) DEFAULT NULL COMMENT '物料属性',
|
||
`unit_name` varchar(20) DEFAULT NULL COMMENT '计量单位',
|
||
`quantity` decimal(18,4) DEFAULT NULL COMMENT '入库数量',
|
||
`wi_quantity` decimal(18,4) DEFAULT 0 COMMENT '已入库数量',
|
||
`batch_number` varchar(50) DEFAULT NULL COMMENT '批次号',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '仓库',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_checkin_line_code` (`pu_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外入库单明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.6 委外发料单表头 (erp_pu_pick)
|
||
-- API: /pu/pick
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_pick`;
|
||
CREATE TABLE `erp_pu_pick` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '发料单编码',
|
||
`pu_order_code` varchar(32) DEFAULT NULL COMMENT '关联委外订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`supplier` varchar(100) DEFAULT NULL COMMENT '委外商名称',
|
||
`supplier_id` varchar(32) DEFAULT NULL COMMENT '委外商ID',
|
||
`mp_order_code` varchar(32) DEFAULT NULL COMMENT '关联计划单编码',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '发料仓库',
|
||
`gather_type` varchar(20) DEFAULT NULL COMMENT '汇总方式',
|
||
`beltline` varchar(100) DEFAULT NULL COMMENT '生产线',
|
||
`beltline_id` varchar(32) DEFAULT NULL COMMENT '生产线ID',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_pick_code` (`pu_code`),
|
||
KEY `idx_pu_pick_order` (`pu_order_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外发料单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.7 委外退料单表头 (erp_pu_unpick)
|
||
-- API: /pu/unpick (结构同发料单)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_unpick`;
|
||
CREATE TABLE `erp_pu_unpick` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '退料单编码',
|
||
`pu_order_code` varchar(32) DEFAULT NULL COMMENT '关联委外订单编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`supplier` varchar(100) DEFAULT NULL COMMENT '委外商名称',
|
||
`supplier_id` varchar(32) DEFAULT NULL COMMENT '委外商ID',
|
||
`warehouse` varchar(100) DEFAULT NULL COMMENT '退料仓库',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_unpick_code` (`pu_code`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外退料单表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 8.8 委外发票表头 (erp_pu_fapiao)
|
||
-- API: /pu/fapiao
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_pu_fapiao`;
|
||
CREATE TABLE `erp_pu_fapiao` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`pu_code` varchar(32) NOT NULL COMMENT '发票单据编码',
|
||
`pp_number` varchar(50) DEFAULT NULL COMMENT '跟单编号',
|
||
`supplier` varchar(100) DEFAULT NULL COMMENT '委外商名称',
|
||
`supplier_id` varchar(32) DEFAULT NULL COMMENT '委外商ID',
|
||
`tax_number` varchar(30) DEFAULT NULL COMMENT '纳税人识别号',
|
||
`vat_code` varchar(30) DEFAULT NULL COMMENT '发票代码',
|
||
`vat_no` varchar(30) DEFAULT NULL COMMENT '发票号码',
|
||
`vat_date` datetime DEFAULT NULL COMMENT '开票日期',
|
||
`vat_kind` varchar(20) DEFAULT NULL COMMENT '发票种类',
|
||
`vat_type` varchar(20) DEFAULT NULL COMMENT '发票类型',
|
||
`vat_amount` decimal(18,2) DEFAULT NULL COMMENT '发票金额(不含税)',
|
||
`vat_tax` decimal(18,2) DEFAULT NULL COMMENT '税额',
|
||
`vat_total` decimal(18,2) DEFAULT NULL COMMENT '价税合计',
|
||
`vat_rate` varchar(10) DEFAULT NULL COMMENT '税率',
|
||
`vat_status` varchar(20) DEFAULT NULL COMMENT '发票状态',
|
||
`entry_type` varchar(20) DEFAULT NULL COMMENT '入账类型',
|
||
`fd_period` int DEFAULT NULL COMMENT '财务期间',
|
||
`file_pdf` varchar(500) DEFAULT NULL COMMENT 'PDF附件',
|
||
`file_xml` varchar(500) DEFAULT NULL COMMENT 'XML附件',
|
||
`file_ofd` varchar(500) DEFAULT NULL COMMENT 'OFD附件',
|
||
`bred_no` varchar(50) DEFAULT NULL COMMENT '红冲发票号',
|
||
`bred_reason` varchar(200) DEFAULT NULL COMMENT '红冲原因',
|
||
`bred_vouch` int DEFAULT NULL COMMENT '红冲凭证',
|
||
`wi_amount` decimal(18,2) DEFAULT 0 COMMENT '已核销金额',
|
||
`wi_amount_r` decimal(18,2) DEFAULT 0 COMMENT '已核销金额(含税)',
|
||
`wi_tax_r` decimal(18,2) DEFAULT 0 COMMENT '已核销税额',
|
||
`invoice_date` datetime DEFAULT NULL COMMENT '单据日期',
|
||
`invoice_status` varchar(20) DEFAULT '开立' COMMENT '单据状态',
|
||
`invoice_type` varchar(20) DEFAULT NULL COMMENT '单据类型',
|
||
`work_type` varchar(20) DEFAULT NULL COMMENT '业务类型',
|
||
`work_status` varchar(20) DEFAULT '正常' COMMENT '业务状态',
|
||
`work_dept` varchar(50) DEFAULT NULL COMMENT '业务部门',
|
||
`work_staff` varchar(50) DEFAULT NULL COMMENT '业务人员',
|
||
`form_config` varchar(50) DEFAULT NULL COMMENT '表单配置',
|
||
`user_oper` varchar(50) DEFAULT NULL COMMENT '操作员',
|
||
`user_check` varchar(50) DEFAULT NULL COMMENT '审核员',
|
||
`check_date` datetime DEFAULT NULL COMMENT '审核日期',
|
||
`version` bigint DEFAULT 0 COMMENT '版本号',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`remarks` varchar(500) DEFAULT NULL COMMENT '备注2',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_date` datetime DEFAULT NULL COMMENT '制单日期',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_date` datetime DEFAULT NULL COMMENT '修改日期',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_pu_fapiao_code` (`pu_code`),
|
||
KEY `idx_pu_fapiao_supplier` (`supplier_id`),
|
||
KEY `idx_pu_fapiao_vat` (`vat_no`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='委外发票表头';
|
||
|
||
-- =====================================================
|
||
-- 第九部分: 财务管理模块(基础表) - 来源: Swagger API /fd
|
||
-- 新增日期: 2026-02-06
|
||
-- 说明: 仅包含核心基础表,完整财务表结构需后续补充
|
||
-- =====================================================
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.1 财务期间 (erp_fd_period)
|
||
-- API: /fd/period
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_period`;
|
||
CREATE TABLE `erp_fd_period` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`period_code` varchar(20) NOT NULL COMMENT '期间编码(如202601)',
|
||
`period_name` varchar(50) DEFAULT NULL COMMENT '期间名称',
|
||
`year` int NOT NULL COMMENT '年份',
|
||
`month` int NOT NULL COMMENT '月份',
|
||
`start_date` date NOT NULL COMMENT '开始日期',
|
||
`end_date` date NOT NULL COMMENT '结束日期',
|
||
`status` varchar(20) DEFAULT 'OPEN' COMMENT '状态(OPEN/CLOSED)',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
UNIQUE KEY `uk_fd_period` (`period_code`, `tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='财务期间';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.2 会计科目 (erp_fd_ledger)
|
||
-- API: /fd/ledger
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_ledger`;
|
||
CREATE TABLE `erp_fd_ledger` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`ledger_code` varchar(32) NOT NULL COMMENT '科目编码',
|
||
`ledger_name` varchar(100) NOT NULL COMMENT '科目名称',
|
||
`parent_id` bigint DEFAULT NULL COMMENT '上级科目ID',
|
||
`ledger_type` varchar(20) DEFAULT NULL COMMENT '科目类型',
|
||
`balance_direction` varchar(10) DEFAULT 'DEBIT' COMMENT '余额方向(DEBIT/CREDIT)',
|
||
`is_leaf` varchar(1) DEFAULT 'Y' COMMENT '是否末级(Y/N)',
|
||
`enable_flag` char(1) DEFAULT 'Y' COMMENT '启用状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
UNIQUE KEY `uk_fd_ledger_code` (`ledger_code`, `tenant_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会计科目';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.3 会计凭证表头 (erp_fd_voucher)
|
||
-- API: /fd/voucher
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_voucher`;
|
||
CREATE TABLE `erp_fd_voucher` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`voucher_code` varchar(32) NOT NULL COMMENT '凭证编号',
|
||
`voucher_date` date NOT NULL COMMENT '凭证日期',
|
||
`period_id` bigint DEFAULT NULL COMMENT '期间ID',
|
||
`voucher_type` varchar(20) DEFAULT NULL COMMENT '凭证类型',
|
||
`total_debit` decimal(18,2) DEFAULT 0 COMMENT '借方合计',
|
||
`total_credit` decimal(18,2) DEFAULT 0 COMMENT '贷方合计',
|
||
`status` varchar(20) DEFAULT 'DRAFT' COMMENT '状态(DRAFT/APPROVED)',
|
||
`preparer` varchar(50) DEFAULT NULL COMMENT '制单人',
|
||
`reviewer` varchar(50) DEFAULT NULL COMMENT '审核人',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_fd_voucher_code` (`voucher_code`),
|
||
KEY `idx_fd_voucher_date` (`voucher_date`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会计凭证表头';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.4 会计凭证明细 (erp_fd_voucher_line)
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_voucher_line`;
|
||
CREATE TABLE `erp_fd_voucher_line` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`voucher_id` bigint NOT NULL COMMENT '凭证ID',
|
||
`ledger_id` bigint NOT NULL COMMENT '科目ID',
|
||
`ledger_code` varchar(32) DEFAULT NULL COMMENT '科目编码',
|
||
`ledger_name` varchar(100) DEFAULT NULL COMMENT '科目名称',
|
||
`summary` varchar(200) DEFAULT NULL COMMENT '摘要',
|
||
`debit_amount` decimal(18,2) DEFAULT 0 COMMENT '借方金额',
|
||
`credit_amount` decimal(18,2) DEFAULT 0 COMMENT '贷方金额',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_fd_voucher_line_vid` (`voucher_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会计凭证明细';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.5 应收账款表头 (erp_fd_receivable)
|
||
-- API: /fd/receivable
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_receivable`;
|
||
CREATE TABLE `erp_fd_receivable` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`receivable_code` varchar(32) NOT NULL COMMENT '应收单号',
|
||
`client_id` bigint DEFAULT NULL COMMENT '客户ID',
|
||
`client_name` varchar(100) DEFAULT NULL COMMENT '客户名称',
|
||
`receivable_date` date DEFAULT NULL COMMENT '应收日期',
|
||
`due_date` date DEFAULT NULL COMMENT '到期日',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '应收总额',
|
||
`received_amount` decimal(18,2) DEFAULT 0 COMMENT '已收金额',
|
||
`balance_amount` decimal(18,2) DEFAULT 0 COMMENT '余额',
|
||
`status` varchar(20) DEFAULT 'DRAFT' COMMENT '状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_fd_receivable_code` (`receivable_code`),
|
||
KEY `idx_fd_receivable_client` (`client_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应收账款';
|
||
|
||
-- ---------------------------------------------------
|
||
-- 9.6 应付账款表头 (erp_fd_payable)
|
||
-- API: /fd/payable
|
||
-- ---------------------------------------------------
|
||
DROP TABLE IF EXISTS `erp_fd_payable`;
|
||
CREATE TABLE `erp_fd_payable` (
|
||
`unique_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`tenant_id` varchar(20) NOT NULL COMMENT '租户ID',
|
||
`payable_code` varchar(32) NOT NULL COMMENT '应付单号',
|
||
`vendor_id` bigint DEFAULT NULL COMMENT '供应商ID',
|
||
`vendor_name` varchar(100) DEFAULT NULL COMMENT '供应商名称',
|
||
`payable_date` date DEFAULT NULL COMMENT '应付日期',
|
||
`due_date` date DEFAULT NULL COMMENT '到期日',
|
||
`total_amount` decimal(18,2) DEFAULT 0 COMMENT '应付总额',
|
||
`paid_amount` decimal(18,2) DEFAULT 0 COMMENT '已付金额',
|
||
`balance_amount` decimal(18,2) DEFAULT 0 COMMENT '余额',
|
||
`status` varchar(20) DEFAULT 'DRAFT' COMMENT '状态',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志',
|
||
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`unique_id`),
|
||
KEY `idx_fd_payable_code` (`payable_code`),
|
||
KEY `idx_fd_payable_vendor` (`vendor_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应付账款';
|
||
|
||
SET FOREIGN_KEY_CHECKS = 1;
|