新增收付款模块
This commit is contained in:
@@ -0,0 +1,113 @@
|
||||
-- 首付款管理 / 汇票台账
|
||||
CREATE TABLE IF NOT EXISTS `blade_bill_ledger` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`bill_no` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '票据号码',
|
||||
`issuer_id` bigint(20) NOT NULL COMMENT '出票单位客商ID',
|
||||
`issuer_name` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '出票单位',
|
||||
`receiver_id` bigint(20) DEFAULT NULL COMMENT '收票单位ID',
|
||||
`receiver_name` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '收票单位',
|
||||
`bill_type` varchar(30) COLLATE utf8mb4_general_ci NOT NULL COMMENT '汇票类型:issued开票、received收票',
|
||||
`face_amount` decimal(18,2) NOT NULL COMMENT '票面金额',
|
||||
`available_balance` decimal(18,2) NOT NULL COMMENT '可用余额',
|
||||
`issue_date` date NOT NULL COMMENT '出票日期',
|
||||
`maturity_date` date NOT NULL COMMENT '到期日期',
|
||||
`available_dept_ids_json` longtext COLLATE utf8mb4_general_ci NOT NULL COMMENT '可用部门ID列表',
|
||||
`available_dept_names` varchar(500) COLLATE utf8mb4_general_ci NOT NULL COMMENT '可用部门名称',
|
||||
`fee_bearer_id` bigint(20) NOT NULL COMMENT '费用承担方客商ID',
|
||||
`fee_bearer_name` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '费用承担方',
|
||||
`confirmed_discount_rate` decimal(8,4) DEFAULT NULL COMMENT '双方确认贴现率(%)',
|
||||
`issuing_bank` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '出票行',
|
||||
`bank_discount_reference_rate` decimal(8,4) DEFAULT NULL COMMENT '银行贴现参考率(%)',
|
||||
`estimated_discount_fee` decimal(18,2) NOT NULL DEFAULT '0.00' COMMENT '预计贴现费用',
|
||||
`attachments_json` longtext COLLATE utf8mb4_general_ci COMMENT '附件JSON',
|
||||
`remark` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_bill_ledger_no` (`tenant_id`,`bill_no`),
|
||||
KEY `idx_bill_ledger_maturity` (`tenant_id`,`maturity_date`),
|
||||
KEY `idx_bill_ledger_parties` (`tenant_id`,`issuer_name`,`receiver_name`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='汇票台账';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_bill_ledger_usage` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`bill_ledger_id` bigint(20) NOT NULL COMMENT '汇票台账ID',
|
||||
`payment_application_id` bigint(20) NOT NULL COMMENT '付款申请ID',
|
||||
`application_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '申请单号',
|
||||
`used_amount` decimal(18,2) NOT NULL COMMENT '使用金额',
|
||||
`use_dept_id` bigint(20) DEFAULT NULL COMMENT '使用部门ID',
|
||||
`use_dept_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '使用部门',
|
||||
`usage_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'approved' COMMENT '状态:approved已使用、released已释放',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_bill_ledger_usage_payment` (`tenant_id`,`payment_application_id`),
|
||||
KEY `idx_bill_ledger_usage_ledger` (`tenant_id`,`bill_ledger_id`,`usage_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='汇票使用记录';
|
||||
|
||||
-- 以下结构升级支持重复执行,兼容前一次已执行 DDL、仅菜单插入失败的场景
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_payment_application` ADD COLUMN `bill_ledger_id` bigint(20) DEFAULT NULL COMMENT ''汇票台账ID'' AFTER `payment_method`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_payment_application'
|
||||
AND COLUMN_NAME = 'bill_ledger_id'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_payment_application` ADD COLUMN `bill_no` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''票据号码'' AFTER `bill_ledger_id`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_payment_application'
|
||||
AND COLUMN_NAME = 'bill_no'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_payment_application` ADD KEY `idx_payment_application_bill_ledger` (`bill_ledger_id`)',
|
||||
'SELECT 1')
|
||||
FROM information_schema.STATISTICS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_payment_application'
|
||||
AND INDEX_NAME = 'idx_payment_application_bill_ledger'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
INSERT INTO `blade_menu`
|
||||
(`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`)
|
||||
VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001280,2090000000000001200,'bill_ledger','汇票台账','bill_ledger','/payment/bill-ledger','',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001281,2090000000000001280,'bill_ledger_view','查看','bill_ledger_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001282,2090000000000001280,'bill_ledger_add','新增','bill_ledger_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001283,2090000000000001280,'bill_ledger_edit','编辑','bill_ledger_edit','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000001284,2090000000000001280,'bill_ledger_delete','删除','bill_ledger_delete','','',4,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`name`=VALUES(`name`),
|
||||
`path`=VALUES(`path`),
|
||||
`component`=VALUES(`component`),
|
||||
`is_deleted`=0;
|
||||
@@ -0,0 +1,79 @@
|
||||
-- 首付款管理 / 汇票付款
|
||||
CREATE TABLE IF NOT EXISTS `blade_bill_payment` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`payment_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '单据号',
|
||||
`bill_ledger_id` bigint(20) NOT NULL COMMENT '汇票台账ID',
|
||||
`bill_no` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '票据号码',
|
||||
`face_amount` decimal(18,2) NOT NULL COMMENT '票面金额',
|
||||
`available_balance` decimal(18,2) NOT NULL COMMENT '可用余额快照',
|
||||
`used_amount` decimal(18,2) NOT NULL COMMENT '本次使用金额',
|
||||
`dept_id` bigint(20) NOT NULL COMMENT '使用部门ID',
|
||||
`dept_name` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '使用部门',
|
||||
`payment_date` date NOT NULL COMMENT '付款日期',
|
||||
`approval_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'draft' COMMENT '单据状态',
|
||||
`current_node` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '当前节点',
|
||||
`current_processor` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '当前处理人',
|
||||
`attachments_json` longtext COLLATE utf8mb4_general_ci COMMENT '附件JSON',
|
||||
`remark` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_bill_payment_no` (`tenant_id`,`payment_no`),
|
||||
KEY `idx_bill_payment_ledger` (`tenant_id`,`bill_ledger_id`),
|
||||
KEY `idx_bill_payment_date` (`tenant_id`,`payment_date`),
|
||||
KEY `idx_bill_payment_status` (`tenant_id`,`approval_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='汇票付款';
|
||||
|
||||
-- 统一汇票台账使用记录:兼容付款申请与独立汇票付款单据
|
||||
ALTER TABLE `blade_bill_ledger_usage`
|
||||
MODIFY COLUMN `payment_application_id` bigint(20) DEFAULT NULL COMMENT '付款申请ID';
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_bill_ledger_usage` ADD COLUMN `bill_payment_id` bigint(20) DEFAULT NULL COMMENT ''汇票付款ID'' AFTER `payment_application_id`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_bill_ledger_usage'
|
||||
AND COLUMN_NAME = 'bill_payment_id'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_bill_ledger_usage` ADD UNIQUE KEY `uk_bill_ledger_usage_bill_payment` (`tenant_id`,`bill_payment_id`)',
|
||||
'SELECT 1')
|
||||
FROM information_schema.STATISTICS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_bill_ledger_usage'
|
||||
AND INDEX_NAME = 'uk_bill_ledger_usage_bill_payment'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
INSERT INTO `blade_menu`
|
||||
(`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`)
|
||||
VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001290,2090000000000001200,'bill_payment','汇票付款','bill_payment','/payment/bill-payment','',7,1,0,1,NULL,'',0),
|
||||
(2090000000000001291,2090000000000001290,'bill_payment_view','查看','bill_payment_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001292,2090000000000001290,'bill_payment_add','新增','bill_payment_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001293,2090000000000001290,'bill_payment_edit','编辑','bill_payment_edit','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000001294,2090000000000001290,'bill_payment_delete','删除','bill_payment_delete','','',4,2,0,1,NULL,'',0),
|
||||
(2090000000000001295,2090000000000001290,'bill_payment_submit','提交审批','bill_payment_submit','','',5,2,0,1,NULL,'',0),
|
||||
(2090000000000001296,2090000000000001290,'bill_payment_approve','审批','bill_payment_approve','','',6,2,0,1,NULL,'',0),
|
||||
(2090000000000001297,2090000000000001290,'bill_payment_void','作废','bill_payment_void','','',7,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`name`=VALUES(`name`),
|
||||
`path`=VALUES(`path`),
|
||||
`component`=VALUES(`component`),
|
||||
`is_deleted`=0;
|
||||
@@ -0,0 +1,187 @@
|
||||
-- 首付款管理 / 开票管理
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`application_no` varchar(100) NOT NULL,
|
||||
`project_id` bigint(20) DEFAULT NULL,
|
||||
`project_name` varchar(100) DEFAULT NULL,
|
||||
`dept_id` bigint(20) DEFAULT NULL,
|
||||
`dept_name` varchar(100) DEFAULT NULL,
|
||||
`issuer_name` varchar(200) DEFAULT NULL,
|
||||
`receiver_customer_id` bigint(20) DEFAULT NULL,
|
||||
`receiver_name` varchar(200) DEFAULT NULL,
|
||||
`invoice_type` varchar(30) NOT NULL,
|
||||
`available_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`application_date` date DEFAULT NULL,
|
||||
`applicant_name` varchar(100) DEFAULT NULL,
|
||||
`undertaking_dept_id` bigint(20) DEFAULT NULL,
|
||||
`undertaking_dept_name` varchar(100) DEFAULT NULL,
|
||||
`department_emails` varchar(320) DEFAULT NULL,
|
||||
`receiver_invoice_info_id` bigint(20) DEFAULT NULL,
|
||||
`taxpayer_no` varchar(20) DEFAULT NULL,
|
||||
`bank_name` varchar(100) DEFAULT NULL,
|
||||
`bank_account` varchar(50) DEFAULT NULL,
|
||||
`registered_address` varchar(200) DEFAULT NULL,
|
||||
`contact_name` varchar(50) DEFAULT NULL,
|
||||
`contact_phone` varchar(11) DEFAULT NULL,
|
||||
`email` varchar(100) DEFAULT NULL,
|
||||
`approval_status` varchar(30) NOT NULL DEFAULT 'draft',
|
||||
`current_node` varchar(100) DEFAULT NULL,
|
||||
`current_processor` varchar(200) DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) DEFAULT NULL,
|
||||
`kingdee_status` varchar(30) NOT NULL DEFAULT 'unsynced',
|
||||
`synced_time` datetime DEFAULT NULL,
|
||||
`attachments_json` longtext,
|
||||
`remark` varchar(200) DEFAULT NULL,
|
||||
`void_reason` varchar(200) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_invoice_application_no` (`tenant_id`,`application_no`),
|
||||
KEY `idx_invoice_application_project` (`project_id`),
|
||||
KEY `idx_invoice_application_status` (`approval_status`),
|
||||
KEY `idx_invoice_application_kingdee` (`kingdee_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application_settlement` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_application_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_no` varchar(100) NOT NULL,
|
||||
`settlement_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`available_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`allocated_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_application_settlement` (`invoice_application_id`,`formal_settlement_id`),
|
||||
KEY `idx_invoice_settlement_formal` (`formal_settlement_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请关联结算单';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application_sheet` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_application_id` bigint(20) NOT NULL,
|
||||
`sheet_no` int(11) NOT NULL,
|
||||
`invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_application_sheet` (`invoice_application_id`,`sheet_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请发票张次';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application_line` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_application_id` bigint(20) NOT NULL,
|
||||
`invoice_sheet_id` bigint(20) NOT NULL,
|
||||
`line_no` int(11) NOT NULL,
|
||||
`goods_category` varchar(100) NOT NULL,
|
||||
`goods_name` varchar(100) NOT NULL,
|
||||
`unit` varchar(30) DEFAULT NULL,
|
||||
`quantity` decimal(18,4) DEFAULT NULL,
|
||||
`unit_price_no_tax` decimal(18,4) DEFAULT NULL,
|
||||
`amount_with_tax` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`tax_rate` decimal(8,4) NOT NULL DEFAULT '0.0000',
|
||||
`tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`remark` varchar(200) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_sheet_line` (`invoice_sheet_id`,`line_no`),
|
||||
KEY `idx_invoice_line_application` (`invoice_application_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请商品行';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application_detail` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_application_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_detail_id` bigint(20) NOT NULL,
|
||||
`line_no` int(11) NOT NULL,
|
||||
`document_no` varchar(100) DEFAULT NULL,
|
||||
`waybill_no` varchar(100) DEFAULT NULL,
|
||||
`vehicle_no` varchar(100) DEFAULT NULL,
|
||||
`departure_address` varchar(500) DEFAULT NULL,
|
||||
`arrival_address` varchar(500) DEFAULT NULL,
|
||||
`actual_departure_time` datetime DEFAULT NULL,
|
||||
`actual_completion_time` datetime DEFAULT NULL,
|
||||
`transport_type` varchar(100) DEFAULT NULL,
|
||||
`cargo_name` varchar(200) DEFAULT NULL,
|
||||
`cargo_type` varchar(100) DEFAULT NULL,
|
||||
`transport_quantity` decimal(18,4) DEFAULT NULL,
|
||||
`quantity_unit` varchar(30) DEFAULT NULL,
|
||||
`mileage` decimal(18,2) DEFAULT NULL,
|
||||
`batch_no` varchar(100) DEFAULT NULL,
|
||||
`freight_amount` decimal(18,2) DEFAULT NULL,
|
||||
`fee_items_json` longtext,
|
||||
`settlement_amount_tax` decimal(18,2) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_application_detail` (`invoice_application_id`,`formal_settlement_detail_id`),
|
||||
KEY `idx_invoice_detail_settlement` (`formal_settlement_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请结算明细快照';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_application_record` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_application_id` bigint(20) NOT NULL,
|
||||
`action_type` varchar(30) NOT NULL,
|
||||
`action_name` varchar(50) NOT NULL,
|
||||
`from_status` varchar(30) DEFAULT NULL,
|
||||
`to_status` varchar(30) DEFAULT NULL,
|
||||
`operator_name` varchar(100) DEFAULT NULL,
|
||||
`reason` varchar(200) DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_record_application` (`invoice_application_id`,`create_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请操作记录';
|
||||
|
||||
INSERT INTO `blade_menu` (`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`) VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001220,2090000000000001200,'invoice_application','开票管理','invoice_application','/payment/invoice-application','',2,1,0,1,NULL,'',0),
|
||||
(2090000000000001221,2090000000000001220,'invoice_application_view','查看','invoice_application_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001222,2090000000000001220,'invoice_application_add','新增','invoice_application_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001223,2090000000000001220,'invoice_application_edit','编辑','invoice_application_edit','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000001224,2090000000000001220,'invoice_application_delete','删除','invoice_application_delete','','',4,2,0,1,NULL,'',0),
|
||||
(2090000000000001225,2090000000000001220,'invoice_application_submit','提交审批','invoice_application_submit','','',5,2,0,1,NULL,'',0),
|
||||
(2090000000000001226,2090000000000001220,'invoice_application_approve','审批','invoice_application_approve','','',6,2,0,1,NULL,'',0),
|
||||
(2090000000000001227,2090000000000001220,'invoice_application_sync','同步金蝶','invoice_application_sync','','',7,2,0,1,NULL,'',0),
|
||||
(2090000000000001228,2090000000000001220,'invoice_application_export','导出','invoice_application_export','','',8,2,0,1,NULL,'',0),
|
||||
(2090000000000001229,2090000000000001220,'invoice_application_void','作废','invoice_application_void','','',9,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE `name`=VALUES(`name`),`path`=VALUES(`path`),`component`=VALUES(`component`),`is_deleted`=0;
|
||||
@@ -0,0 +1,145 @@
|
||||
-- 首付款管理 / 收票管理
|
||||
CREATE TABLE IF NOT EXISTS `blade_kingdee_invoice_pool` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_no` varchar(32) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`invoice_date` date DEFAULT NULL,
|
||||
`invoice_type` varchar(50) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`tax_rate` decimal(8,4) NOT NULL DEFAULT '0.0000',
|
||||
`invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`receiver_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`issuer_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`bank_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`bank_account` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`issuing_bank` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`phone` varchar(50) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`customer_emails` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`department_emails` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`kingdee_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'unsynced',
|
||||
`attachments_json` longtext COLLATE utf8mb4_general_ci,
|
||||
`source_updated_time` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_kingdee_invoice_pool_no` (`tenant_id`,`invoice_no`),
|
||||
KEY `idx_kingdee_invoice_pool_date` (`invoice_date`),
|
||||
KEY `idx_kingdee_invoice_pool_status` (`kingdee_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='金蝶进项发票票据池镜像';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_receipt` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`kingdee_invoice_pool_id` bigint(20) NOT NULL,
|
||||
`invoice_no` varchar(32) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`invoice_date` date DEFAULT NULL,
|
||||
`invoice_type` varchar(50) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`tax_rate` decimal(8,4) NOT NULL DEFAULT '0.0000',
|
||||
`invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`receiver_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`issuer_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`project_id` bigint(20) DEFAULT NULL,
|
||||
`project_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`dept_id` bigint(20) DEFAULT NULL,
|
||||
`dept_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`payer_name` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`payee_name` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`bank_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`bank_account` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`issuing_bank` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`phone` varchar(50) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`customer_emails` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`department_emails` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`approval_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'draft',
|
||||
`current_node` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`current_processor` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`kingdee_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'unsynced',
|
||||
`attachments_json` longtext COLLATE utf8mb4_general_ci,
|
||||
`remark` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`void_reason` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_receipt_pool` (`kingdee_invoice_pool_id`),
|
||||
KEY `idx_invoice_receipt_no` (`tenant_id`,`invoice_no`),
|
||||
KEY `idx_invoice_receipt_project` (`project_id`),
|
||||
KEY `idx_invoice_receipt_date` (`invoice_date`),
|
||||
KEY `idx_invoice_receipt_status` (`approval_status`),
|
||||
KEY `idx_invoice_receipt_kingdee` (`kingdee_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收票登记';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_receipt_settlement` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_receipt_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`settlement_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`received_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`allocated_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_receipt_settlement` (`invoice_receipt_id`,`formal_settlement_id`),
|
||||
KEY `idx_invoice_receipt_formal` (`formal_settlement_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收票登记结算单分摊';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_invoice_receipt_record` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`invoice_receipt_id` bigint(20) NOT NULL,
|
||||
`action_type` varchar(30) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`action_name` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`from_status` varchar(30) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`to_status` varchar(30) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`operator_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`reason` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_invoice_receipt_record` (`invoice_receipt_id`,`create_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收票登记操作记录';
|
||||
|
||||
INSERT INTO `blade_menu`
|
||||
(`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`)
|
||||
VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001240,2090000000000001200,'invoice_receipt','收票管理','invoice_receipt','/payment/invoice-receipt','',3,1,0,1,NULL,'',0),
|
||||
(2090000000000001241,2090000000000001240,'invoice_receipt_view','查看','invoice_receipt_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001242,2090000000000001240,'invoice_receipt_add','新增','invoice_receipt_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001243,2090000000000001240,'invoice_receipt_edit','编辑','invoice_receipt_edit','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000001244,2090000000000001240,'invoice_receipt_delete','删除','invoice_receipt_delete','','',4,2,0,1,NULL,'',0),
|
||||
(2090000000000001245,2090000000000001240,'invoice_receipt_submit','提交审批','invoice_receipt_submit','','',5,2,0,1,NULL,'',0),
|
||||
(2090000000000001246,2090000000000001240,'invoice_receipt_approve','审批','invoice_receipt_approve','','',6,2,0,1,NULL,'',0),
|
||||
(2090000000000001247,2090000000000001240,'invoice_receipt_sync','同步金蝶','invoice_receipt_sync','','',7,2,0,1,NULL,'',0),
|
||||
(2090000000000001248,2090000000000001240,'invoice_receipt_export','导出','invoice_receipt_export','','',8,2,0,1,NULL,'',0),
|
||||
(2090000000000001249,2090000000000001240,'invoice_receipt_void','作废','invoice_receipt_void','','',9,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`name`=VALUES(`name`),
|
||||
`path`=VALUES(`path`),
|
||||
`component`=VALUES(`component`),
|
||||
`is_deleted`=0;
|
||||
@@ -0,0 +1,46 @@
|
||||
-- 首付款管理 / 付款管理
|
||||
CREATE TABLE IF NOT EXISTS `blade_payment_application` (
|
||||
`id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0',
|
||||
`payment_no` varchar(100) NOT NULL, `payment_type` varchar(30) NOT NULL, `settlement_id` bigint(20) DEFAULT NULL, `settlement_no` varchar(100) DEFAULT NULL,
|
||||
`pre_settlement_id` bigint(20) DEFAULT NULL, `pre_settlement_no` varchar(100) DEFAULT NULL, `project_id` bigint(20) DEFAULT NULL, `project_name` varchar(100) DEFAULT NULL,
|
||||
`dept_id` bigint(20) DEFAULT NULL, `dept_name` varchar(100) DEFAULT NULL, `contract_id` bigint(20) DEFAULT NULL, `contract_no` varchar(100) DEFAULT NULL,
|
||||
`contract_name` varchar(100) DEFAULT NULL, `payer_name` varchar(200) DEFAULT NULL, `payee_name` varchar(200) DEFAULT NULL,
|
||||
`settlement_amount` decimal(18,2) DEFAULT NULL, `payable_amount` decimal(18,2) DEFAULT NULL, `bill_type` varchar(30) DEFAULT NULL,
|
||||
`payment_ratio` decimal(8,2) DEFAULT NULL, `applied_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `payment_method` varchar(30) NOT NULL,
|
||||
`receipt_account_id` bigint(20) DEFAULT NULL, `receipt_account_name` varchar(200) DEFAULT NULL, `bank_name` varchar(200) DEFAULT NULL, `bank_account` varchar(100) DEFAULT NULL,
|
||||
`applicant_name` varchar(100) DEFAULT NULL, `apply_date` date DEFAULT NULL, `invoice_status` varchar(30) DEFAULT 'unmatched', `matched_invoice_amount` decimal(18,2) DEFAULT '0.00', `paid_amount` decimal(18,2) DEFAULT '0.00',
|
||||
`approval_status` varchar(30) NOT NULL DEFAULT 'draft', `current_node` varchar(100) DEFAULT NULL, `current_processor` varchar(200) DEFAULT NULL,
|
||||
`kingdee_bill_no` varchar(100) DEFAULT NULL, `kingdee_status` varchar(30) NOT NULL DEFAULT 'unsynced', `attachments_json` longtext, `remark` varchar(200) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`), UNIQUE KEY `uk_payment_application_no` (`tenant_id`,`payment_no`), KEY `idx_payment_application_settlement` (`settlement_id`), KEY `idx_payment_application_apply_date` (`apply_date`), KEY `idx_payment_application_status` (`approval_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='付款申请';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_payment_application_invoice` (
|
||||
`id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0',
|
||||
`payment_application_id` bigint(20) NOT NULL, `line_no` int(11) NOT NULL, `settlement_no` varchar(100) DEFAULT NULL, `invoice_no` varchar(100) DEFAULT NULL, `invoice_date` date DEFAULT NULL,
|
||||
`invoice_type` varchar(30) DEFAULT NULL, `tax_rate` decimal(8,4) DEFAULT NULL, `invoice_amount` decimal(18,2) DEFAULT NULL, `matched_amount` decimal(18,2) DEFAULT NULL, `attachment_json` longtext,
|
||||
PRIMARY KEY (`id`), KEY `idx_payment_invoice_application` (`payment_application_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='付款申请发票明细';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_payment_application_record` (
|
||||
`id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0',
|
||||
`payment_application_id` bigint(20) NOT NULL, `paid_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `paid_date` date DEFAULT NULL, `payment_no` varchar(100) DEFAULT NULL, `voucher_json` longtext, `kingdee_bill_no` varchar(100) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`), KEY `idx_payment_record_application` (`payment_application_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='付款申请付款记录';
|
||||
|
||||
INSERT INTO `blade_menu` (`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`) VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001201,2090000000000001200,'payment_application','付款管理','payment_application','/payment/payment-application','',1,1,0,1,NULL,'',0),
|
||||
(2090000000000001202,2090000000000001201,'payment_application_view','查看','payment_application_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001203,2090000000000001201,'payment_application_add','新增','payment_application_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001204,2090000000000001201,'payment_application_edit','编辑','payment_application_edit','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000001205,2090000000000001201,'payment_application_delete','删除','payment_application_delete','','',4,2,0,1,NULL,'',0),
|
||||
(2090000000000001206,2090000000000001201,'payment_application_submit','提交审批','payment_application_submit','','',5,2,0,1,NULL,'',0),
|
||||
(2090000000000001207,2090000000000001201,'payment_application_approve','审批','payment_application_approve','','',6,2,0,1,NULL,'',0),
|
||||
(2090000000000001208,2090000000000001201,'payment_application_sync','同步金蝶','payment_application_sync','','',7,2,0,1,NULL,'',0),
|
||||
(2090000000000001209,2090000000000001201,'payment_application_export','导出','payment_application_export','','',8,2,0,1,NULL,'',0),
|
||||
(2090000000000001210,2090000000000001201,'payment_application_void','作废','payment_application_void','','',9,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE `name`=VALUES(`name`),`path`=VALUES(`path`),`component`=VALUES(`component`),`is_deleted`=0;
|
||||
@@ -0,0 +1,114 @@
|
||||
-- 首付款管理 / 收款流水
|
||||
CREATE TABLE IF NOT EXISTS `blade_kingdee_receipt_flow` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`receipt_notice_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`payer_name` varchar(200) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`receipt_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`counterparty_name` varchar(200) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`counterparty_account` varchar(100) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`counterparty_bank` varchar(200) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`summary` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`transaction_time` datetime NOT NULL,
|
||||
`detail_serial_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`claimed_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`claim_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'unclaimed',
|
||||
`source_updated_time` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_receipt_flow_serial` (`tenant_id`,`detail_serial_no`),
|
||||
KEY `idx_receipt_flow_notice` (`tenant_id`,`receipt_notice_no`),
|
||||
KEY `idx_receipt_flow_transaction` (`tenant_id`,`transaction_time`),
|
||||
KEY `idx_receipt_flow_status` (`tenant_id`,`claim_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='金蝶收款流水镜像';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_receipt_claim` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`receipt_flow_id` bigint(20) NOT NULL,
|
||||
`claim_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`claimer_id` bigint(20) DEFAULT NULL,
|
||||
`claimer_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`claimer_dept_id` bigint(20) DEFAULT NULL,
|
||||
`claimer_dept_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`claim_date` date DEFAULT NULL,
|
||||
`attachments_json` longtext COLLATE utf8mb4_general_ci,
|
||||
`remark` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_receipt_claim_flow` (`receipt_flow_id`),
|
||||
KEY `idx_receipt_claim_date` (`tenant_id`,`claim_date`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收款流水认领主单';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_receipt_claim_settlement` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`receipt_claim_id` bigint(20) NOT NULL,
|
||||
`receipt_flow_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_id` bigint(20) NOT NULL,
|
||||
`formal_settlement_no` varchar(100) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`settlement_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`claimed_receipt_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`allocated_receipt_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_receipt_claim_settlement` (`receipt_claim_id`,`formal_settlement_id`),
|
||||
KEY `idx_receipt_claim_formal` (`formal_settlement_id`,`status`),
|
||||
KEY `idx_receipt_claim_flow_settlement` (`receipt_flow_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收款认领结算单分摊';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `blade_receipt_flow_record` (
|
||||
`id` bigint(20) NOT NULL,
|
||||
`tenant_id` varchar(12) COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000',
|
||||
`create_user` bigint(20) DEFAULT NULL,
|
||||
`create_dept` bigint(20) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_user` bigint(20) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
`status` int(11) DEFAULT '1',
|
||||
`is_deleted` int(11) DEFAULT '0',
|
||||
`receipt_flow_id` bigint(20) DEFAULT NULL,
|
||||
`receipt_claim_id` bigint(20) DEFAULT NULL,
|
||||
`action_type` varchar(30) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`action_name` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`from_status` varchar(30) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`to_status` varchar(30) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`operation_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
|
||||
`operator_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`content` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_receipt_flow_record_flow` (`receipt_flow_id`,`create_time`),
|
||||
KEY `idx_receipt_flow_record_claim` (`receipt_claim_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='收款流水同步及认领操作记录';
|
||||
|
||||
INSERT INTO `blade_menu`
|
||||
(`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`)
|
||||
VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001260,2090000000000001200,'receipt_flow','收款流水','receipt_flow','/payment/receipt-flow','',4,1,0,1,NULL,'',0),
|
||||
(2090000000000001261,2090000000000001260,'receipt_flow_view','查看','receipt_flow_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001262,2090000000000001260,'receipt_flow_claim','认领','receipt_flow_claim','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000001263,2090000000000001260,'receipt_flow_sync','手动同步流水','receipt_flow_sync','','',3,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`name`=VALUES(`name`),
|
||||
`path`=VALUES(`path`),
|
||||
`component`=VALUES(`component`),
|
||||
`is_deleted`=0;
|
||||
@@ -0,0 +1,107 @@
|
||||
-- 首付款管理 / 认领记录
|
||||
-- 以下结构升级支持重复执行,兼容前一次已执行 DDL、仅菜单插入失败的场景
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `claim_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT ''claimed'' COMMENT ''认领状态:claimed已认领、voided已作废'' AFTER `remark`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'claim_status'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `kingdee_bill_no` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''金蝶认领冲单号'' AFTER `claim_status`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'kingdee_bill_no'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `kingdee_bill_status` varchar(30) COLLATE utf8mb4_general_ci NOT NULL DEFAULT ''none'' COMMENT ''金蝶单据状态'' AFTER `kingdee_bill_no`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'kingdee_bill_status'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `voided_by` bigint(20) DEFAULT NULL COMMENT ''作废人'' AFTER `kingdee_bill_status`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'voided_by'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `voided_by_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''作废人姓名'' AFTER `voided_by`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'voided_by_name'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD COLUMN `voided_time` datetime DEFAULT NULL COMMENT ''作废时间'' AFTER `voided_by_name`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND COLUMN_NAME = 'voided_time'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD KEY `idx_receipt_claim_owner_status` (`tenant_id`,`claimer_id`,`claim_status`,`claim_date`)',
|
||||
'SELECT 1')
|
||||
FROM information_schema.STATISTICS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND INDEX_NAME = 'idx_receipt_claim_owner_status'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_receipt_claim` ADD KEY `idx_receipt_claim_kingdee_status` (`tenant_id`,`kingdee_bill_status`)',
|
||||
'SELECT 1')
|
||||
FROM information_schema.STATISTICS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'blade_receipt_claim' AND INDEX_NAME = 'idx_receipt_claim_kingdee_status'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
UPDATE `blade_receipt_claim`
|
||||
SET `claim_status` = 'claimed',
|
||||
`kingdee_bill_status` = 'none'
|
||||
WHERE `claim_status` IS NULL OR `claim_status` = '';
|
||||
|
||||
INSERT INTO `blade_menu`
|
||||
(`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`)
|
||||
VALUES
|
||||
(2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000001270,2090000000000001200,'receipt_claim_record','认领记录','receipt_claim_record','/payment/receipt-claim-record','',5,1,0,1,NULL,'',0),
|
||||
(2090000000000001271,2090000000000001270,'receipt_claim_record_view','查看','receipt_claim_record_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000001272,2090000000000001270,'receipt_claim_record_void','作废','receipt_claim_record_void','','',2,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`name`=VALUES(`name`),
|
||||
`path`=VALUES(`path`),
|
||||
`component`=VALUES(`component`),
|
||||
`is_deleted`=0;
|
||||
Reference in New Issue
Block a user