80 lines
4.4 KiB
SQL
80 lines
4.4 KiB
SQL
-- 首付款管理 / 汇票付款
|
|
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;
|