✨ 新增导入结算单,并修复运单超管组织过滤与计量单位软删恢复
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -9,8 +9,16 @@ ALTER TABLE `blade_customer_archive`
|
||||
|
||||
CREATE INDEX idx_kingdee_status ON blade_customer_archive (kingdee_status);
|
||||
|
||||
-- 列表「同步金蝶」按钮权限(审批通过后推送失败的重推入口;parent_id 通过菜单 code 关联,避免写死 id)
|
||||
-- 列表「同步金蝶」按钮权限(审批通过且未推送/推送失败时可点;parent_id 通过菜单 code 关联)
|
||||
INSERT INTO blade_menu (id, parent_id, code, name, alias, path, source, sort, category, action, is_open, component, remark, is_deleted)
|
||||
SELECT 2075431800000000001, m.id, 'customer_archive_sync', '同步金蝶', 'customer_archive_sync', '', '', 1, 2, 0, 1, '', '', 0
|
||||
SELECT 2077600000000000011, m.id, 'customer_archive_sync', '同步金蝶', 'customer_archive_sync', '', '', 10, 2, 0, 1, NULL, '', 0
|
||||
FROM blade_menu m
|
||||
WHERE m.code = 'customer_archive' AND m.is_deleted = 0;
|
||||
WHERE m.code = 'customer_archive' AND m.is_deleted = 0
|
||||
LIMIT 1
|
||||
ON DUPLICATE KEY UPDATE
|
||||
parent_id = VALUES(parent_id),
|
||||
name = VALUES(name),
|
||||
alias = VALUES(alias),
|
||||
sort = VALUES(sort),
|
||||
category = VALUES(category),
|
||||
is_deleted = 0;
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
-- 修复「同步金蝶」按钮菜单:按 code 幂等补齐/纠正,避免权限勾了但不生效
|
||||
-- 执行后需:角色重新勾选「同步金蝶」→ 用户重新登录
|
||||
|
||||
INSERT INTO blade_menu (id, parent_id, code, name, alias, path, source, sort, category, action, is_open, component, remark, is_deleted)
|
||||
SELECT 2077600000000000011, m.id, 'customer_archive_sync', '同步金蝶', 'customer_archive_sync', '', '', 10, 2, 0, 1, NULL, '', 0
|
||||
FROM blade_menu m
|
||||
WHERE m.code = 'customer_archive' AND m.is_deleted = 0
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM blade_menu x WHERE x.code = 'customer_archive_sync' AND x.is_deleted = 0
|
||||
)
|
||||
LIMIT 1;
|
||||
|
||||
UPDATE blade_menu child
|
||||
INNER JOIN blade_menu parent ON parent.code = 'customer_archive' AND parent.is_deleted = 0
|
||||
SET
|
||||
child.parent_id = parent.id,
|
||||
child.name = '同步金蝶',
|
||||
child.alias = 'customer_archive_sync',
|
||||
child.category = 2,
|
||||
child.sort = 10,
|
||||
child.is_deleted = 0
|
||||
WHERE child.code = 'customer_archive_sync';
|
||||
@@ -0,0 +1,60 @@
|
||||
-- 导入结算单批次表 + 菜单
|
||||
CREATE TABLE IF NOT EXISTS `blade_settlement_import_batch` (
|
||||
`id` bigint NOT NULL COMMENT '主键',
|
||||
`tenant_id` varchar(12) NOT NULL DEFAULT '000000' COMMENT '租户ID',
|
||||
`batch_no` varchar(64) NOT NULL COMMENT '批次号 DJS+yyyyMMdd+序号',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`project_name` varchar(200) DEFAULT NULL COMMENT '项目名称',
|
||||
`settlement_type` varchar(30) NOT NULL COMMENT 'receivable/payable',
|
||||
`settlement_bill_type` varchar(20) NOT NULL DEFAULT 'formal' COMMENT '结算单类型 formal/pre',
|
||||
`customer_contract_id` bigint DEFAULT NULL COMMENT '客户合同ID',
|
||||
`customer_contract_name` varchar(200) DEFAULT NULL COMMENT '客户合同名称',
|
||||
`customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称',
|
||||
`carrier_contract_id` bigint DEFAULT NULL COMMENT '承运商合同ID',
|
||||
`carrier_contract_name` varchar(200) DEFAULT NULL COMMENT '承运商合同名称',
|
||||
`carrier_name` varchar(200) DEFAULT NULL COMMENT '承运商名称',
|
||||
`waybill_mode` varchar(20) DEFAULT 'new' COMMENT '运单模式 new/history',
|
||||
`import_status` varchar(32) NOT NULL COMMENT 'draft/completed/voided',
|
||||
`waybill_count` int DEFAULT 0 COMMENT '运单数量',
|
||||
`detail_count` int DEFAULT 0 COMMENT '明细数量',
|
||||
`formal_settlement_id` bigint DEFAULT NULL COMMENT '正式结算单ID',
|
||||
`formal_settlement_no` varchar(100) DEFAULT NULL COMMENT '正式结算单号',
|
||||
`pre_settlement_id` bigint DEFAULT NULL COMMENT '预结算单ID',
|
||||
`pre_settlement_no` varchar(100) DEFAULT NULL COMMENT '预结算单号',
|
||||
`fee_item_names_json` longtext COMMENT '动态费用列名JSON数组',
|
||||
`remark` varchar(200) DEFAULT NULL COMMENT '备注',
|
||||
`waybill_import_batch_id` bigint DEFAULT NULL COMMENT '关联底层运单导入批次,可空',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`status` int DEFAULT 1 COMMENT '业务状态',
|
||||
`is_deleted` int DEFAULT 0 COMMENT '是否已删除',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_settlement_import_batch_no` (`tenant_id`,`batch_no`),
|
||||
KEY `idx_settlement_import_project` (`project_id`),
|
||||
KEY `idx_settlement_import_formal` (`formal_settlement_id`),
|
||||
KEY `idx_settlement_import_pre` (`pre_settlement_id`),
|
||||
KEY `idx_settlement_import_waybill_batch` (`waybill_import_batch_id`),
|
||||
KEY `idx_settlement_import_create_time` (`create_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='导入结算单批次';
|
||||
|
||||
-- 已建表环境增量字段(列已存在可忽略报错)
|
||||
ALTER TABLE `blade_settlement_import_batch` ADD COLUMN `settlement_bill_type` varchar(20) NOT NULL DEFAULT 'formal' COMMENT '结算单类型 formal/pre' AFTER `settlement_type`;
|
||||
ALTER TABLE `blade_settlement_import_batch` ADD COLUMN `pre_settlement_id` bigint DEFAULT NULL COMMENT '预结算单ID' AFTER `formal_settlement_no`;
|
||||
ALTER TABLE `blade_settlement_import_batch` ADD COLUMN `pre_settlement_no` varchar(100) DEFAULT NULL COMMENT '预结算单号' AFTER `pre_settlement_id`;
|
||||
ALTER TABLE `blade_settlement_import_batch` ADD KEY `idx_settlement_import_pre` (`pre_settlement_id`);
|
||||
|
||||
-- 运单关联导入结算批次(可选,若列已存在可忽略报错)
|
||||
ALTER TABLE `blade_waybill` ADD COLUMN `settlement_import_batch_id` bigint DEFAULT NULL COMMENT '导入结算单批次ID';
|
||||
ALTER TABLE `blade_waybill` ADD KEY `idx_waybill_settlement_import_batch_id` (`settlement_import_batch_id`);
|
||||
|
||||
INSERT INTO `blade_menu` (`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`) VALUES
|
||||
(2090000000000002080,2090000000000001000,'settlement_import','导入结算单','settlement_import','/settlement/settlement-import','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0),
|
||||
(2090000000000002081,2090000000000002080,'settlement_import_view','查看','settlement_import_view','','',1,2,0,1,NULL,'',0),
|
||||
(2090000000000002082,2090000000000002080,'settlement_import_add','新增','settlement_import_add','','',2,2,0,1,NULL,'',0),
|
||||
(2090000000000002083,2090000000000002080,'settlement_import_detail','详情','settlement_import_detail','','',3,2,0,1,NULL,'',0),
|
||||
(2090000000000002084,2090000000000002080,'settlement_import_void','作废','settlement_import_void','','',4,2,0,1,NULL,'',0),
|
||||
(2090000000000002085,2090000000000002080,'settlement_import_template','下载模板','settlement_import_template','','',5,2,0,1,NULL,'',0)
|
||||
ON DUPLICATE KEY UPDATE `name`=VALUES(`name`),`path`=VALUES(`path`),`is_deleted`=0;
|
||||
Reference in New Issue
Block a user