Merge branch 'master' into feature/20261104-bfi-project-contract-ref-v2

This commit is contained in:
刘泉佳
2026-11-05 00:23:00 +08:00
21 changed files with 665 additions and 86 deletions
+1 -1
View File
@@ -303,7 +303,7 @@ CREATE TABLE `blade_dept` (
`dept_name` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '部门名',
`full_name` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '部门全称',
`dept_code` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组织编码',
`kingdee_dept_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '金蝶部门代码',
`kingdee_dept_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '金蝶公司代码',
`contract_code_prefix` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合同编码前缀',
`contract_initial_serial` int NULL DEFAULT NULL COMMENT '合同初始流水号',
`short_name` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组织简称',
@@ -0,0 +1,11 @@
-- 金蝶公司代码改回组织(平台公司)维护:业务部门配置仅作展示镜像
-- 1)用平台公司组织上的金蝶编码回填业务部门配置展示字段
UPDATE `blade_business_dept_config` c
INNER JOIN `blade_dept` d ON d.id = c.platform_company_id AND d.is_deleted = 0
SET c.kingdee_company_code = d.kingdee_dept_code
WHERE d.kingdee_dept_code IS NOT NULL
AND d.kingdee_dept_code != '';
-- 2)字段注释改为组织回填展示口径
ALTER TABLE `blade_business_dept_config`
MODIFY COLUMN `kingdee_company_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '金蝶公司代码(来自平台公司组织,仅展示)';
@@ -0,0 +1,44 @@
-- 客商评分双模式与下次评定日期:评分记录增加评估方式/下次评定日期,档案主表增加下次评定日期供列表展示
-- 幂等可重复执行;排序规则 utf8mb4_general_ci
-- ① 评分记录:评估方式 online/offline
SET @score_mode_col := (
SELECT COUNT(1) FROM information_schema.columns
WHERE table_schema = DATABASE()
AND table_name = 'blade_customer_credit_score'
AND column_name = 'evaluate_mode'
);
SET @score_mode_sql := IF(@score_mode_col = 0,
'ALTER TABLE `blade_customer_credit_score` ADD COLUMN `evaluate_mode` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT ''online'' COMMENT ''评估方式:online线上评估,offline线下评估'' AFTER `quantification_id`',
'SELECT 1');
PREPARE score_mode_stmt FROM @score_mode_sql;
EXECUTE score_mode_stmt;
DEALLOCATE PREPARE score_mode_stmt;
-- ② 评分记录:下次评定日期
SET @score_next_col := (
SELECT COUNT(1) FROM information_schema.columns
WHERE table_schema = DATABASE()
AND table_name = 'blade_customer_credit_score'
AND column_name = 'next_evaluate_date'
);
SET @score_next_sql := IF(@score_next_col = 0,
'ALTER TABLE `blade_customer_credit_score` ADD COLUMN `next_evaluate_date` date NULL DEFAULT NULL COMMENT ''下次评定日期'' AFTER `score_date`',
'SELECT 1');
PREPARE score_next_stmt FROM @score_next_sql;
EXECUTE score_next_stmt;
DEALLOCATE PREPARE score_next_stmt;
-- ③ 客商档案:下次评定日期(审批通过后由评分写回)
SET @archive_next_col := (
SELECT COUNT(1) FROM information_schema.columns
WHERE table_schema = DATABASE()
AND table_name = 'blade_customer_archive'
AND column_name = 'next_evaluate_date'
);
SET @archive_next_sql := IF(@archive_next_col = 0,
'ALTER TABLE `blade_customer_archive` ADD COLUMN `next_evaluate_date` date NULL DEFAULT NULL COMMENT ''下次评定日期'' AFTER `business_end_date`',
'SELECT 1');
PREPARE archive_next_stmt FROM @archive_next_sql;
EXECUTE archive_next_stmt;
DEALLOCATE PREPARE archive_next_stmt;
@@ -0,0 +1,3 @@
-- 组织表:平台公司金蝶编码字段注释由「金蝶部门代码」改为「金蝶公司代码」(字段名不变)
ALTER TABLE `blade_dept`
MODIFY COLUMN `kingdee_dept_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '金蝶公司代码';
@@ -0,0 +1,25 @@
-- 金蝶分录仓储大类(A102-2/A302-2/A103-1 分录拆分按费用项档案分类编码判定仓储大类,无名称关键字兜底)。
-- ① 业务字典 fee_category 新增子项 A05 仓储;② 费用项档案仓储类费用项归入 A05(分类生效前提)。
-- id 由 UUID_SHORT() 动态生成,幂等可重复执行。
-- 排序规则:utf8mb4_general_ci(与业务表一致)
-- ① 业务字典 fee_category 新增子项:A05 仓储
INSERT INTO blade_dict_biz (id, tenant_id, parent_id, code, dict_key, dict_value, sort, remark, is_sealed, status, is_deleted)
SELECT UUID_SHORT(), '000000',
(SELECT id FROM blade_dict_biz WHERE code = 'fee_category' AND dict_key = '-1' AND tenant_id = '000000' AND is_deleted = 0 LIMIT 1),
'fee_category', 'A05', '仓储', 1, '金蝶分录仓储大类', 0, 1, 0
WHERE NOT EXISTS (
SELECT 1 FROM blade_dict_biz
WHERE code = 'fee_category' AND dict_key = 'A05' AND tenant_id = '000000' AND is_deleted = 0
);
-- ② 费用项档案:仓储类费用项归入 A05(已执行则更新 0 行,幂等)
-- 执行前请先核对命中清单,避免把名称含「保管」但非仓储的费用项误归仓:
-- SELECT id, name, fee_category FROM blade_fee_item
-- WHERE is_deleted = 0 AND fee_category <> 'A05'
-- AND (name LIKE '%仓储%' OR name LIKE '%堆存%' OR name LIKE '%保管%');
UPDATE blade_fee_item
SET fee_category = 'A05'
WHERE is_deleted = 0
AND fee_category <> 'A05'
AND (name LIKE '%仓储%' OR name LIKE '%堆存%' OR name LIKE '%保管%');