瀏覽代碼

化验细项同义词转换

zhoutg 3 年之前
父節點
當前提交
8380dd927b

+ 119 - 0
doc/024.20220112正则数据修改/med2021_init.sql

@@ -0,0 +1,119 @@
+USE `med_2021`;
+
+-- ----------------------------
+-- Table structure for kl_regular_config
+-- ----------------------------
+DROP TABLE IF EXISTS `kl_regular_config`;
+CREATE TABLE `kl_regular_config` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `stand_name` varchar(255) DEFAULT NULL COMMENT '标准名',
+  `rules_code` varchar(255) DEFAULT NULL COMMENT '正则编码',
+  `rules_name` varchar(255) DEFAULT NULL COMMENT '正则名称',
+  `rules_tepy` int(11) DEFAULT NULL COMMENT '正则类型',
+  `rules_value` varchar(255) DEFAULT NULL COMMENT '正则式',
+  `remark` varchar(255) DEFAULT NULL,
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=97 DEFAULT CHARSET=utf8 COMMENT='正则表';
+
+-- ----------------------------
+-- Records of kl_regular_config
+-- ----------------------------
+INSERT INTO `kl_regular_config` VALUES ('1', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钾测定', 'JCD', '钾测定', '1', '(钾测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('2', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血小板计数', 'XXBJS', '血小板计数', '1', '(血小板)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('3', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血小板计数', 'XXBJS', '血小板计数', '1', '(血小板计数)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('4', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血小板计数', 'XXBJS', '血小板计数', '1', '(血小板数)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('5', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血浆凝血酶原时间测定(PT)', 'XJNXMYSJCE', '血浆凝血酶原时间测定(PT)', '1', '(血浆凝血酶原时间测定\\(PT\\))\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('6', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血浆凝血酶原时间测定(PT)', 'XJNXMYSJCE', '血浆凝血酶原时间测定(PT)', '1', '(血浆凝血酶原时间测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('7', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血浆凝血酶原时间测定(PT)', 'XJNXMYSJCE', '血浆凝血酶原时间测定(PT)', '1', '(凝血酶原时间)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('8', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血浆凝血酶原时间测定(PT)', 'XJNXMYSJCE', '血浆凝血酶原时间测定(PT)', '1', '(凝血酶原时间检测)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('9', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血浆凝血酶原时间测定(PT)', 'XJNXMYSJCE', '血浆凝血酶原时间测定(PT)', '1', '(凝血酶原)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('10', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '活化部分凝血活酶时间测定(APTT)', 'HHBFNXM', '活化部分凝血活酶时间测定(APTT)', '1', '(活化部分凝血活酶时间测定\\(APTT\\))\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('11', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '活化部分凝血活酶时间测定(APTT)', 'HHBFNXM', '活化部分凝血活酶时间测定(APTT)', '1', '(APTT)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('12', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '活化部分凝血活酶时间测定(APTT)', 'HHBFNXM', '活化部分凝血活酶时间测定(APTT)', '1', '(活化部分凝血活酶时间测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('13', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '活化部分凝血活酶时间测定(APTT)', 'HHBFNXM', '活化部分凝血活酶时间测定(APTT)', '1', '(活化部分凝血活酶时间)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('14', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '活化部分凝血活酶时间测定(APTT)', 'HHBFNXM', '活化部分凝血活酶时间测定(APTT)', '1', '(凝血活酶)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('15', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血氧饱和度(SAT)', 'XYBHD', '血氧饱和度(SAT)', '1', '(血氧饱和度\\(SAT\\))\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('16', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血氧饱和度(SAT)', 'XYBHD', '血氧饱和度(SAT)', '1', '(血氧饱和度)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('17', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血氧饱和度(SAT)', 'XYBHD', '血氧饱和度(SAT)', '1', '(SAT)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('18', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(血肌酐测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('19', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(血肌酐)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('20', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(肌酐)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('21', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(肌酐值)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('22', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(血肌酐值)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('23', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(Cr)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('24', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(Cre)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('26', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血肌酐测定', 'XJGCD', '血肌酐测定', '1', '(scr)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('27', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '肾小球滤过率(GFR)测定', 'SXQGL', '肾小球滤过率(GFR)测定', '1', '(肾小球滤过率\\(GFR\\)测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '肾小球滤过率(GFR)测定', 'SXQGL', '肾小球滤过率(GFR)测定', '1', '(肾小球滤过率)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('29', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '肾小球滤过率(GFR)测定', 'SXQGL', '肾小球滤过率(GFR)测定', '1', '(GFR)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('30', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钾测定', 'JCD', '钾测定', '1', '(钾离子)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('31', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钾测定', 'JCD', '钾测定', '1', '(血清钾)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('32', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钾测定', 'JCD', '钾测定', '1', '(血钾)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('33', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '国际标准化比值(INR)', 'GJBZH', '国际标准化比值(INR)', '1', '(国际标准化比值\\(INR\\))\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('34', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '国际标准化比值(INR)', 'GJBZH', '国际标准化比值(INR)', '1', '(国际标准化比值)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('36', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '国际标准化比值(INR)', 'GJBZH', '国际标准化比值(INR)', '1', '(国际标准化比值测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('37', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '国际标准化比值(INR)', 'GJBZH', '国际标准化比值(INR)', '1', '(国际标准化比值\\(INR\\)测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '国际标准化比值(INR)', 'GJBZH', '国际标准化比值(INR)', '1', '(inr)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘比醇', '2', '(\\、碘比醇过敏)|(无碘比醇过敏)|(否认碘比醇过敏)¥(碘比醇过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('40', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘剂', '2', '(\\、碘剂过敏)|(无碘剂过敏)|(否认碘剂过敏)¥(碘剂过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘制剂', '2', '(\\、碘制剂过敏)|(无碘制剂过敏)|(否认碘制剂过敏)¥(碘制剂过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘制品', '2', '(\\、碘制品过敏)|(无碘制品过敏)|(否认碘制品过敏)¥(碘制品过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘类', '2', '(\\、碘类过敏)|(无碘类过敏)|(否认碘类过敏)¥(碘类过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('44', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘化X射线', '2', '(\\、碘化X射线过敏)|(无碘化X射线过敏)|(否认碘化X射线过敏)¥(碘化X射线过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '六氟化硫微泡', null, '六氟化硫微泡', '2', '(\\、六氟化硫微泡过敏)|(无六氟化硫微泡过敏)|(否认六氟化硫微泡过敏)¥(六氟化硫微泡过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('46', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '六氟化硫微泡', null, '微泡剂', '2', '(\\、微泡剂过敏)|(无微泡剂过敏)|(否认微泡剂过敏)¥(微泡剂过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('47', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '六氟化硫微泡', null, '微泡造影剂', '2', '(\\、微泡造影剂过敏)|(无微泡造影剂过敏)|(否认微泡造影剂过敏)¥(微泡造影剂过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('48', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钆贝葡胺', null, '钆贝葡胺', '2', '(\\、钆贝葡胺过敏)|(无钆贝葡胺过敏)|(否认钆贝葡胺过敏)¥(钆贝葡胺过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('49', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '钆贝葡胺', null, '钆对比剂', '2', '(\\、钆对比剂过敏)|(无钆对比剂过敏)|(否认钆对比剂过敏)¥(钆对比剂过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('50', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '利多卡因', null, '利多卡因', '2', '(\\、利多卡因过敏)|(无利多卡因过敏)|(否认利多卡因过敏)|(\\、盐酸利多卡因过敏)|(无盐酸利多卡因过敏)|(否认盐酸利多卡因过敏)|(盐酸利多卡因过敏)¥(利多卡因过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '利多卡因', null, '盐酸利多卡因', '2', '(\\、盐酸利多卡因过敏)|(无盐酸利多卡因过敏)|(否认盐酸利多卡因过敏)¥(盐酸利多卡因过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '丁卡因', null, '丁卡因', '2', '(\\、丁卡因过敏)|(无丁卡因过敏)|(否认丁卡因过敏)|(\\、盐酸丁卡因过敏)|(无盐酸丁卡因过敏)|(否认盐酸丁卡因过敏)|(盐酸丁卡因过敏)¥(丁卡因过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '丁卡因', null, '盐酸丁卡因', '2', '(\\、盐酸丁卡因过敏)|(无盐酸丁卡因过敏)|(否认盐酸丁卡因过敏)¥(盐酸丁卡因过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '丙泊酚', null, '丙泊酚', '2', '(\\、丙泊酚过敏)|(无丙泊酚过敏)|(否认丙泊酚过敏)¥(丙泊酚过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('55', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '丙泊酚', null, '双异丙酚', '2', '(\\、双异丙酚过敏)|(无双异丙酚过敏)|(否认双异丙酚过敏)¥(双异丙酚过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '丙泊酚', null, '异丙酚', '2', '(\\、异丙酚过敏)|(无异丙酚过敏)|(否认异丙酚过敏)¥(异丙酚过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '依托咪酯', null, '依托咪酯', '2', '(\\、依托咪酯过敏)|(无依托咪酯过敏)|(否认依托咪酯过敏)¥(依托咪酯过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '依托咪酯', null, '乙苄咪唑', '2', '(\\、乙苄咪唑过敏)|(无乙苄咪唑过敏)|(否认乙苄咪唑过敏)¥(乙苄咪唑过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '依托咪酯', null, '甲苄咪酯', '2', '(\\、甲苄咪酯过敏)|(无甲苄咪酯过敏)|(否认甲苄咪酯过敏)¥(甲苄咪酯过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '依托咪酯', null, '甲苄咪唑', '2', '(\\、甲苄咪唑过敏)|(无甲苄咪唑过敏)|(否认甲苄咪唑过敏)¥(甲苄咪唑过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('61', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '依托咪酯', null, '乙咪酯', '2', '(\\、乙咪酯过敏)|(无乙咪酯过敏)|(否认乙咪酯过敏)¥(乙咪酯过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('62', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '咪达唑仑', null, '咪达唑仑', '2', '(\\、咪达唑仑过敏)|(无咪达唑仑过敏)|(否认咪达唑仑过敏)¥(咪达唑仑过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('63', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '咪达唑仑', null, '咪唑安定', '2', '(\\、咪唑安定过敏)|(无咪唑安定过敏)|(否认咪唑安定过敏)¥(咪唑安定过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('64', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '咪达唑仑', null, '咪唑二氮卓', '2', '(\\、咪唑二氮卓过敏)|(无咪唑二氮卓过敏)|(否认咪唑二氮卓过敏)¥(咪唑二氮卓过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('65', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '罗库溴铵', null, '罗库溴铵', '2', '(\\、罗库溴铵过敏)|(无罗库溴铵过敏)|(否认罗库溴铵过敏)¥(罗库溴铵过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('66', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '罗库溴铵', null, '爱可松', '2', '(\\、爱可松过敏)|(无爱可松过敏)|(否认爱可松过敏)¥(爱可松过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('67', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '罗库溴铵', null, '溴化物', '2', '(\\、溴化物过敏)|(无溴化物过敏)|(否认溴化物过敏)¥(溴化物过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('68', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '维库溴铵', null, '维库溴铵', '2', '(\\、维库溴铵过敏)|(无维库溴铵过敏)|(否认维库溴铵过敏)¥(维库溴铵过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('69', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '维库溴铵', null, '溴化凡寇罗宁', '2', '(\\、溴化凡寇罗宁过敏)|(无溴化凡寇罗宁过敏)|(否认溴化凡寇罗宁过敏)¥(溴化凡寇罗宁过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('70', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '复方苯海拉明', null, '复方苯海拉明', '2', '(\\、复方苯海拉明过敏)|(无复方苯海拉明过敏)|(否认复方苯海拉明过敏)¥(复方苯海拉明过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('71', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '复方苯海拉明', null, '抗组胺', '2', '(\\、抗组胺过敏)|(无抗组胺过敏)|(否认抗组胺过敏)¥(抗组胺过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('72', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '复方苯海拉明', null, '抗组织胺', '2', '(\\、抗组织胺过敏)|(无抗组织胺过敏)|(否认抗组织胺过敏)¥(抗组织胺过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('73', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '新斯的明', null, '新斯的明', '2', '(\\、新斯的明过敏)|(无新斯的明过敏)|(否认新斯的明过敏)¥(新斯的明过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('74', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '新斯的明', null, '醋甲胆碱', '2', '(\\、醋甲胆碱过敏)|(无醋甲胆碱过敏)|(否认醋甲胆碱过敏)¥(醋甲胆碱过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('75', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '新斯的明', null, '乙酰甲胆碱', '2', '(\\、乙酰甲胆碱过敏)|(无乙酰甲胆碱过敏)|(否认乙酰甲胆碱过敏)¥(乙酰甲胆碱过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('76', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '新斯的明', null, '乙酰胆碱', '2', '(\\、乙酰胆碱过敏)|(无乙酰胆碱过敏)|(否认乙酰胆碱过敏)¥(乙酰胆碱过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('77', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '腺苷', null, '腺苷', '2', '(\\、腺苷过敏)|(无腺苷过敏)|(否认腺苷过敏)¥(腺苷过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('78', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '腺苷', null, '腺苷酸', '2', '(\\、腺苷酸过敏)|(无腺苷酸过敏)|(否认腺苷酸过敏)¥(腺苷酸过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('79', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '孟鲁司特', null, '孟鲁司特', '2', '(\\、孟鲁司特过敏)|(无孟鲁司特过敏)|(否认孟鲁司特过敏)¥(孟鲁司特过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('80', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '孟鲁司特', null, '白三烯', '2', '(\\、白三烯过敏)|(无白三烯过敏)|(否认白三烯过敏)¥(白三烯过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('81', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '尘螨', null, '尘螨', '2', '(\\、尘螨过敏)|(无尘螨过敏)|(否认尘螨过敏)¥(尘螨过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('82', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '尘螨', null, '灰尘', '2', '(\\、灰尘过敏)|(无灰尘过敏)|(否认灰尘过敏)¥(灰尘过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('83', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '尘螨', null, '尘螨类', '2', '(\\、尘螨类过敏)|(无尘螨类过敏)|(否认尘螨类过敏)¥(尘螨类过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('84', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '花粉', null, '花粉', '2', '(\\、花粉过敏)|(无花粉过敏)|(否认花粉过敏)¥(花粉过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('85', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '花粉', null, '花朵', '2', '(\\、花朵过敏)|(无花朵过敏)|(否认花朵过敏)¥(花朵过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('86', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '花粉', null, '花粉性', '2', '(\\、花粉性过敏)|(无花粉性过敏)|(否认花粉性过敏)¥(花粉性过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('87', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '花粉', null, '花粉类', '2', '(\\、花粉类过敏)|(无花粉类过敏)|(否认花粉类过敏)¥(花粉类过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('88', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '动物皮毛', null, '动物皮毛', '2', '(\\、动物皮毛过敏)|(无动物皮毛过敏)|(否认动物皮毛过敏)¥(动物皮毛过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('89', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '动物皮毛', null, '皮毛', '2', '(\\、皮毛过敏)|(无皮毛过敏)|(否认皮毛过敏)|(\\、动物皮毛过敏)|(无动物皮毛过敏)|(否认动物皮毛过敏)|(动物皮毛过敏)¥(皮毛过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('90', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '头孢呋辛酯', null, '头孢呋辛酯', '2', '(\\、头孢过敏)|(无头孢过敏)|(否认头孢过敏)¥(头孢过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('91', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '海鲜', null, '海鲜', '2', '(\\、海鲜过敏)|(无海鲜过敏)|(否认海鲜过敏)¥(海鲜过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('92', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '碘比醇', null, '碘', '2', '(\\、碘过敏)|(无碘过敏)|(否认碘过敏)|(西地碘过敏)¥(碘过敏)', null);
+INSERT INTO `kl_regular_config` VALUES ('93', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '心率', 'XL', '心率', '3', '(心率)\\s*(\\d+\\.?\\d+|\\d+)\\s*(次\\/分)?', null);
+INSERT INTO `kl_regular_config` VALUES ('94', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '体温', 'TW', '体温', '4', '(体温)\\s*(\\d+\\.?\\d+|\\d+)\\s*(℃|摄氏度)?', null);
+INSERT INTO `kl_regular_config` VALUES ('95', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血红蛋白测定(Hb)', 'XHDBCD', '血红蛋白测定', '1', '(血红蛋白测定)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);
+INSERT INTO `kl_regular_config` VALUES ('96', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '血红蛋白测定(Hb)', 'XHDBCD', '血红蛋白', '1', '(血红蛋白)\\s*[(\\-|\\+)?\\d+(\\.\\d+)?$]+', null);

+ 19 - 0
src/main/java/com/diagbot/dto/LibConceptDTO.java

@@ -0,0 +1,19 @@
+package com.diagbot.dto;
+
+import lombok.Data;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2021-06-10 19:51
+ */
+@Data
+public class LibConceptDTO {
+
+    // 原词
+    private String name;
+    // 标准词
+    private String conceptName;
+    // 类型
+    private Integer libType;
+}

+ 58 - 16
src/main/java/com/diagbot/facade/CommonFacade.java

@@ -5,6 +5,7 @@ import com.diagbot.biz.push.entity.Lis;
 import com.diagbot.client.CRFServiceClient;
 import com.diagbot.client.StandConvertServiceClient;
 import com.diagbot.dto.BillMsg;
+import com.diagbot.dto.LibConceptDTO;
 import com.diagbot.dto.RuleDTO;
 import com.diagbot.dto.RuleExtDTO;
 import com.diagbot.dto.StandConvertCrfBatchDTO;
@@ -33,10 +34,12 @@ import com.diagbot.rule.CommonRule;
 import com.diagbot.util.AgeUtil;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.CoreUtil;
+import com.diagbot.util.ExtUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.RedisUtil;
 import com.diagbot.util.ReflectUtil;
 import com.diagbot.util.StringUtil;
+import com.diagbot.vo.LibConceptVO;
 import com.diagbot.vo.NeoPushVO;
 import com.diagbot.vo.RuleVO;
 import com.diagbot.vo.SearchData;
@@ -52,11 +55,11 @@ import com.diagbot.vo.neoPushEntity.PresentPushVo;
 import com.diagbot.vo.neoPushEntity.Symptom;
 import com.google.common.collect.Lists;
 import org.apache.commons.beanutils.BeanUtils;
+import org.apache.commons.collections.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
-
 import java.lang.reflect.Method;
 import java.math.BigDecimal;
 import java.util.ArrayList;
@@ -89,6 +92,8 @@ public class CommonFacade {
     StandConvertServiceClient standConvertServiceClient;
     @Value("${StandConvert.rate}")
     String standConvertRate;
+    @Autowired
+    KlLibraryInfoFacade klLibraryInfoFacade;
 
     /**
      * 组装好label
@@ -693,22 +698,53 @@ public class CommonFacade {
         // 【所有化验】
         List<Lis> lisList = wordCrfDTO.getLis();
         if (ListUtil.isNotEmpty(lisList)) {
-            lisHisNameList.addAll(lisList
-                    .stream()
-                    .filter(i -> StringUtil.isNotBlank(i.getName()) || StringUtil.isNotBlank(i.getUniqueName()))
+            lisHisNameList.addAll(lisList.stream()
+                    .filter(i -> StringUtil.isNotBlank(i.getName()) && StringUtil.isBlank(i.getUniqueName()))
                     .map(i -> i.getName())
                     .collect(Collectors.toList()));
         }
-        lisHisNameList = lisHisNameList
-                .stream()
-                .distinct()
-                .collect(Collectors.toList());
+        List<Lis> lisOrderList = wordCrfDTO.getLisOrder();
+        if (ListUtil.isNotEmpty(lisOrderList)) {
+            lisHisNameList.addAll(lisOrderList.stream()
+                    .filter(i -> StringUtil.isNotBlank(i.getName()) && StringUtil.isBlank(i.getUniqueName()))
+                    .map(i -> i.getName())
+                    .collect(Collectors.toList()));
+        }
+        // 去重
+        lisHisNameList = lisHisNameList.stream().distinct().collect(Collectors.toList());
         if (ListUtil.isNotEmpty(lisHisNameList)) {
             Map<String, Map<String, Map<String, List<String>>>> lisConfigMap = mappingConfigFacade.groupByHisNameWithName(lisHisNameList, ConceptTypeEnum.LisPack.getKey(), wordCrfDTO.getHospitalId());
             setListProperty(wordCrfDTO, "lis", ConceptTypeEnum.LisPack.getKey(), "UniqueName", lisConfigMap);
             setListProperty(wordCrfDTO, "lisOrder", ConceptTypeEnum.LisPack.getKey(), "UniqueName", lisConfigMap);
         }
 
+        // 化验细项如果映射没找到,因为大数据同义词转换问题多,现走标准词和同义词关系
+        List<String> lisConvertList = Lists.newArrayList();
+        if (ListUtil.isNotEmpty(lisList)) {
+            for (Lis lis : lisList) {
+                if (StringUtil.isNotBlank(lis.getName()) && StringUtil.isNotBlank(lis.getDetailName())
+                        && StringUtil.isBlank(lis.getUniqueName())) {
+                    lisConvertList.add(lis.getDetailName());
+                }
+            }
+            if (ListUtil.isNotEmpty(lisConvertList)) {
+                LibConceptVO libConceptVO = new LibConceptVO();
+                libConceptVO.setLibTypeList(Lists.newArrayList(LexiconEnum.LisSubName.getKey()));
+                libConceptVO.setNameList(lisConvertList);
+                List<LibConceptDTO> libConceptList = klLibraryInfoFacade.convertLibConceptFac(libConceptVO);
+                Map<String, String> libConceptMap = ExtUtil.getKeyValue(libConceptList, "name", "conceptName");
+                for (Lis lis : lisList) {
+                    if (StringUtil.isNotBlank(lis.getName()) && StringUtil.isNotBlank(lis.getDetailName())
+                            && StringUtil.isBlank(lis.getUniqueName())) {
+                        if (MapUtils.isNotEmpty(libConceptMap) && libConceptMap.containsKey(lis.getDetailName())) {
+                            lis.setUniqueName(libConceptMap.get(lis.getDetailName()));
+                        } else { // 如果标准词、同义词关系还是找不到,用细项给uniqueName赋值
+                            lis.setUniqueName(lis.getDetailName());
+                        }
+                    }
+                }
+            }
+        }
     }
 
     /**
@@ -725,12 +761,6 @@ public class CommonFacade {
         ReflectUtil.setProperty(obj, listProperty, newList);
     }
 
-    public <T> void setListProperty(Object obj, String listProperty, Integer type, String propertyName, Map<String, Map<String, Map<String, List<String>>>> configMap) {
-        Object tList = CoreUtil.getFieldValue(obj, listProperty);
-        List<T> newList = convertStandName((List) tList, type, propertyName, configMap);
-        ReflectUtil.setProperty(obj, listProperty, newList);
-    }
-
     /**
      * 标准名称转换
      *
@@ -780,6 +810,12 @@ public class CommonFacade {
         return retList;
     }
 
+    public <T> void setListProperty(Object obj, String listProperty, Integer type, String propertyName, Map<String, Map<String, Map<String, List<String>>>> configMap) {
+        Object tList = CoreUtil.getFieldValue(obj, listProperty);
+        List<T> newList = convertStandName((List) tList, type, propertyName, configMap);
+        ReflectUtil.setProperty(obj, listProperty, newList);
+    }
+
     /**
      * 标准名称转换
      *
@@ -853,12 +889,18 @@ public class CommonFacade {
                             }
                         }
                     } else {
-                        setUniqueNameNoMapping(item, propertyName, name, hisDetailName);
+                        // 化验细项如果没有找到映射,由于大数据同义词转换效果差关闭,通过标准词和同义词关系进行转换
+                        if (!(type.equals(ConceptTypeEnum.LisPack.getKey()) && StringUtil.isNotBlank(hisDetailName))) {
+                            setUniqueNameNoMapping(item, propertyName, name, hisDetailName);
+                        }
                         retList.add(item);
                     }
                 } else {
-                    setUniqueNameNoMapping(item, propertyName, name, hisDetailName);
+                    if (!(type.equals(ConceptTypeEnum.LisPack.getKey()) && StringUtil.isNotBlank(hisDetailName))) {
+                        setUniqueNameNoMapping(item, propertyName, name, hisDetailName);
+                    }
                     retList.add(item);
+
                 }
             }
         } catch (Exception e) {

+ 7 - 4
src/main/java/com/diagbot/facade/KlLibraryInfoFacade.java

@@ -1,12 +1,12 @@
 package com.diagbot.facade;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.diagbot.dto.TermConceptDTO;
-import com.diagbot.entity.KlLibraryInfo;
+import com.diagbot.dto.LibConceptDTO;
 import com.diagbot.service.impl.KlLibraryInfoServiceImpl;
-import com.diagbot.vo.TermMatchingVO;
+import com.diagbot.vo.LibConceptVO;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
  * @Description:
  * @author: gaodm
@@ -15,4 +15,7 @@ import org.springframework.stereotype.Component;
 @Component
 public class KlLibraryInfoFacade extends KlLibraryInfoServiceImpl {
 
+    public List<LibConceptDTO> convertLibConceptFac(LibConceptVO libConceptVO) {
+        return convertLibConcept(libConceptVO);
+    }
 }

+ 5 - 1
src/main/java/com/diagbot/mapper/KlLibraryInfoMapper.java

@@ -1,8 +1,10 @@
 package com.diagbot.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.LibConceptDTO;
 import com.diagbot.dto.TermConceptDTO;
 import com.diagbot.entity.KlLibraryInfo;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.vo.LibConceptVO;
 import com.diagbot.vo.TermMatchingListVO;
 import com.diagbot.vo.TermMatchingVO;
 
@@ -21,4 +23,6 @@ public interface KlLibraryInfoMapper extends BaseMapper<KlLibraryInfo> {
     TermConceptDTO getConcept(TermMatchingVO termMatchingVO);
 
     List<TermConceptDTO> getConceptList(TermMatchingListVO termMatchingListVO);
+
+    List<LibConceptDTO> convertLibConcept(LibConceptVO libConceptVO);
 }

+ 4 - 0
src/main/java/com/diagbot/service/KlLibraryInfoService.java

@@ -1,8 +1,10 @@
 package com.diagbot.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.LibConceptDTO;
 import com.diagbot.dto.TermConceptDTO;
 import com.diagbot.entity.KlLibraryInfo;
+import com.diagbot.vo.LibConceptVO;
 import com.diagbot.vo.TermMatchingListVO;
 import com.diagbot.vo.TermMatchingVO;
 
@@ -20,4 +22,6 @@ public interface KlLibraryInfoService extends IService<KlLibraryInfo> {
     TermConceptDTO getConcept(TermMatchingVO termMatchingVO);
 
     List<TermConceptDTO> getConceptList(TermMatchingListVO termMatchingListVO);
+
+    List<LibConceptDTO> convertLibConcept(LibConceptVO libConceptVO);
 }

+ 7 - 0
src/main/java/com/diagbot/service/impl/KlLibraryInfoServiceImpl.java

@@ -1,10 +1,12 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.LibConceptDTO;
 import com.diagbot.dto.TermConceptDTO;
 import com.diagbot.entity.KlLibraryInfo;
 import com.diagbot.mapper.KlLibraryInfoMapper;
 import com.diagbot.service.KlLibraryInfoService;
+import com.diagbot.vo.LibConceptVO;
 import com.diagbot.vo.TermMatchingListVO;
 import com.diagbot.vo.TermMatchingVO;
 import org.springframework.stereotype.Service;
@@ -30,4 +32,9 @@ public class KlLibraryInfoServiceImpl extends ServiceImpl<KlLibraryInfoMapper, K
     public List<TermConceptDTO> getConceptList(TermMatchingListVO termMatchingListVO) {
         return baseMapper.getConceptList(termMatchingListVO);
     }
+
+    @Override
+    public List<LibConceptDTO> convertLibConcept(LibConceptVO libConceptVO) {
+        return baseMapper.convertLibConcept(libConceptVO);
+    }
 }

+ 21 - 1
src/main/java/com/diagbot/util/ExtUtil.java

@@ -103,10 +103,11 @@ public class ExtUtil {
      * @param keyProperty
      * @param valueProperty
      * @param <K>
+     * @param <R>
      * @param <V>
      * @return
      */
-    public static <K, V> Map<K, V> getKeyValue(List<V> list, String keyProperty, String valueProperty) {
+    public static <K, R, V> Map<K, R> getKeyValue(List<V> list, String keyProperty, String valueProperty) {
         if (ListUtil.isEmpty(list)) {
             return new LinkedHashMap<>();
         }
@@ -114,6 +115,25 @@ public class ExtUtil {
                 v -> ReflectUtil.getProperty(v, valueProperty), (v1, v2) -> (v2), LinkedHashMap::new));
     }
 
+    /**
+     * 以Map形式返回所有的key,值固定
+     *
+     * @param list
+     * @param keyProperty
+     * @param r
+     * @param <K>
+     * @param <R>
+     * @param <V>
+     * @return
+     */
+    public static <K, R, V> Map<K, R> getKeyMap(List<V> list, String keyProperty, R r) {
+        if (ListUtil.isEmpty(list)) {
+            return new LinkedHashMap<>();
+        }
+        return list.stream().collect(Collectors.toMap(k -> ReflectUtil.getProperty(k, keyProperty),
+                v -> r, (v1, v2) -> (v2), LinkedHashMap::new));
+    }
+
     /**
      * 去除重复元素——主要用于字符串
      *

+ 19 - 0
src/main/java/com/diagbot/vo/LibConceptVO.java

@@ -0,0 +1,19 @@
+package com.diagbot.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2021-06-10 19:51
+ */
+@Data
+public class LibConceptVO {
+
+    // 类型列表
+    private List<Integer> libTypeList;
+    // 输入词列表
+    private List<String> nameList;
+}

+ 26 - 0
src/main/resources/mapper/KlLibraryInfoMapper.xml

@@ -156,4 +156,30 @@
         </if>
         ) t
     </select>
+
+    <select id="convertLibConcept" resultType="com.diagbot.dto.LibConceptDTO">
+        SELECT
+            a. NAME,
+            b.lib_name conceptName
+        FROM
+            kl_library_info a,
+            kl_concept b
+        WHERE
+            a.is_deleted = 'N'
+            AND b.is_deleted = 'N'
+            AND b.`status` = 1
+            AND a.concept_id = b.id
+        <if test="libTypeList != null and libTypeList.size() > 0">
+            AND b.lib_type in
+            <foreach collection="libTypeList" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        <if test="nameList != null and nameList.size() > 0">
+            AND a. NAME in
+            <foreach collection="nameList" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+    </select>
 </mapper>