【update】ASMS同步国标数据的处理

This commit is contained in:
fengchenchen
2024-03-20 15:19:47 +08:00
parent 3720d162e6
commit c18d038143
2 changed files with 93 additions and 3 deletions
+59
View File
@@ -6,3 +6,62 @@ ALTER TABLE `laws_overseas_standard` MODIFY COLUMN `country_or_region` varchar(5
-- 20240319 夏工开发的标签管理 需要增加新的生成逻辑。
INSERT INTO `sys_fill_rule` (`id`, `rule_name`, `rule_code`, `rule_class`, `rule_params`, `update_by`, `update_time`, `create_by`, `create_time`) VALUES ('1202787665403065860', '标签编码生成', 'label_tree_node', 'com.jero.modules.laws.labeldatabase.rule.LabelTreeRule', NULL, 'admin', '2019-12-09 10:36:54', 'admin', '2019-12-06 11:11:31');
-- ASMS 对接 国标数据的处理
-- 1、删除系统中同步的带 长横杠 且没有体系数据的标准 20240320
SELECT laws.standard_name, laws.id, laws.standard_number , node.node_code
FROM laws_domestic_standard AS laws
LEFT JOIN laws_node_relation AS node
ON laws.id = node.unique_relation_flag
WHERE laws.standard_number LIKE '%—%' AND laws.del_flag != 1 AND node.node_code IS NULL
DELETE laws
FROM laws_domestic_standard AS laws
LEFT JOIN laws_node_relation AS node
ON laws.id = node.unique_relation_flag
WHERE laws.standard_number LIKE '%—%' AND laws.del_flag != 1 AND node.node_code IS NULL;
-- 2、删除 ASMS系统中同步的带 长横杠 有体系数据 且 系统中有 短横杠的 标准数据 20240320
DELETE
FROM
laws_domestic_standard
WHERE
standard_number IN (
SELECT
standard_number
FROM
(
SELECT REPLACE
( laws.standard_number, '', '-' ) AS standard_number
FROM
laws_domestic_standard AS laws
LEFT JOIN laws_node_relation AS node ON laws.id = node.unique_relation_flag
WHERE
laws.standard_number LIKE '%—%'
AND laws.del_flag != 1
) AS tmp
);
-- 3、代替、被代替 引用被引用 数据的处理. 可以在3执行之前对 代替、被代替 引用、被应用的数据做处理 20240320
UPDATE laws_replaced_standard
SET replaced = REPLACE ( replaced, '-', '' )
WHERE
replaced IN ( SELECT * FROM ( SELECT standard_number FROM laws_domestic_standard WHERE standard_number LIKE '%-%' ) AS tmp );
UPDATE laws_replaced_standard
SET replaced_by = REPLACE ( replaced_by, '-', '' )
WHERE
replaced_by IN ( SELECT * FROM ( SELECT standard_number FROM laws_domestic_standard WHERE standard_number LIKE '%-%' ) AS tmp );
-- 4、将所有国标数据中的 标准号修改成 长横杆 20240320
UPDATE laws_domestic_standard
SET standard_number = REPLACE ( standard_number, '-', '' )
WHERE
standard_number IN ( SELECT * FROM ( SELECT standard_number FROM laws_domestic_standard WHERE standard_number LIKE '%-%' ) AS tmp );