feat(contract): 新增合同发票管理功能

实现合同发票的增删改查功能,包括:
1. 添加ContractInvoiceVo实体类及相关ViewModel
2. 创建合同发票数据库表CONTRACT_INVOICE
3. 实现前后端发票管理服务ContractInvoiceService
4. 开发发票管理界面及标签页
5. 添加发票表格单元格组件
6. 完善销售订单表结构,增加客户联系人字段
7. 更新pom.xml版本至0.0.122-SNAPSHOT

修复销售订单界面搜索字段命名不一致问题
This commit is contained in:
2025-10-16 15:47:33 +08:00
parent cf0a7e18ea
commit 71a358fa77
28 changed files with 1274 additions and 40 deletions

View File

@@ -0,0 +1,37 @@
CREATE TABLE supplier_ms.CONTRACT_INVOICE (
ID INT NOT NULL AUTO_INCREMENT,
CODE VARCHAR(50) NULL,
NAME VARCHAR(200) NULL,
CONTRACT_ID INT NULL,
INVOICE_ID INT NULL,
AMOUNT DOUBLE NULL,
SETUP_PERSON_ID INT NULL,
SETUP_DATE DATE NULL,
UPDATE_PERSON_ID INT NULL,
UPDATE_DATE DATE NULL,
REMARK VARCHAR(500) NULL,
PRIMARY KEY (ID),
INDEX FK_CONTRACT_INVOICE_CONTRACT_idx (CONTRACT_ID ASC) VISIBLE,
INDEX FK_CONTRACT_INVOICE_INVOICE_idx (INVOICE_ID ASC) VISIBLE,
INDEX FK_CONTRACT_INVOICE_SETUP_PERSON_idx (SETUP_PERSON_ID ASC) VISIBLE,
INDEX FK_CONTRACT_INVOICE_UPDATE_PERSON_idx (UPDATE_PERSON_ID ASC) VISIBLE,
CONSTRAINT FK_CONTRACT_INVOICE_CONTRACT
FOREIGN KEY (CONTRACT_ID)
REFERENCES supplier_ms.CONTRACT (ID)
ON DELETE CASCADE
ON UPDATE NO ACTION,
CONSTRAINT FK_CONTRACT_INVOICE_INVOICE
FOREIGN KEY (INVOICE_ID)
REFERENCES supplier_ms.INVOICE (ID)
ON DELETE SET NULL
ON UPDATE NO ACTION,
CONSTRAINT FK_CONTRACT_INVOICE_SETUP_PERSON
FOREIGN KEY (SETUP_PERSON_ID)
REFERENCES supplier_ms.EMPLOYEE (ID)
ON DELETE SET NULL
ON UPDATE NO ACTION,
CONSTRAINT FK_CONTRACT_INVOICE_UPDATE_PERSON
FOREIGN KEY (UPDATE_PERSON_ID)
REFERENCES supplier_ms.EMPLOYEE (ID)
ON DELETE SET NULL
ON UPDATE NO ACTION);

View File

@@ -0,0 +1,37 @@
CREATE TABLE supplier_ms.CONTRACT_SALES_ORDER (
ID INT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
CONTRACT_ID INT NOT NULL COMMENT '合同ID',
EMPLOYEE_ID INT COMMENT '业务员ID',
CODE VARCHAR(50) COMMENT '单据编号',
REF_ID INT COMMENT '引用ID',
TAX_RATE FLOAT COMMENT '税率',
CUSTOMER_ID INT COMMENT '客户ID',
CUSTOMER_PERSON_ID INT COMMENT '客户联系人ID',
CUSTOMER_ADDRESS VARCHAR(255) COMMENT '客户地址',
MAKER_ID INT COMMENT '制单人ID',
MAKER_DATE DATE COMMENT '制单日期',
VERIFIER_ID INT COMMENT '审核人ID',
VERIFIED_DATE DATE COMMENT '审核日期',
MODIFIER_ID INT COMMENT '修改人ID',
MODIFIED_DATE DATE COMMENT '修改日期',
CLOSER_ID INT COMMENT '关闭人ID',
CLOSED_DATE DATE COMMENT '关闭日期',
DESCRIPTION TEXT COMMENT '备注',
PRIMARY KEY (ID),
INDEX IDX_SALES_ORDER_CONTRACT (CONTRACT_ID),
INDEX IDX_SALES_ORDER_EMPLOYEE (EMPLOYEE_ID),
INDEX IDX_SALES_ORDER_CUSTOMER (CUSTOMER_ID),
INDEX IDX_SALES_ORDER_CUSTOMER_PERSON (CUSTOMER_PERSON_ID),
INDEX IDX_SALES_ORDER_MAKER (MAKER_ID),
INDEX IDX_SALES_ORDER_VERIFIER (VERIFIER_ID),
INDEX IDX_SALES_ORDER_MODIFIER (MODIFIER_ID),
INDEX IDX_SALES_ORDER_CLOSER (CLOSER_ID),
CONSTRAINT FK_SALES_ORDER_CONTRACT FOREIGN KEY (CONTRACT_ID) REFERENCES supplier_ms.CONTRACT (ID) ON DELETE CASCADE ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_EMPLOYEE FOREIGN KEY (EMPLOYEE_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_CUSTOMER FOREIGN KEY (CUSTOMER_ID) REFERENCES supplier_ms.COMPANY (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_CUSTOMER_PERSON FOREIGN KEY (CUSTOMER_PERSON_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_MAKER FOREIGN KEY (MAKER_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_VERIFIER FOREIGN KEY (VERIFIER_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_MODIFIER FOREIGN KEY (MODIFIER_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION,
CONSTRAINT FK_SALES_ORDER_CLOSER FOREIGN KEY (CLOSER_ID) REFERENCES supplier_ms.EMPLOYEE (ID) ON DELETE SET NULL ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='销售订单表';