From 9cc2f53b11205309754c2451be061ef5fc337f32 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 13 五月 2025 13:57:18 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/test/SqlCleanerWithComment.java | 116 +++++++++++++++++++ smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java | 2 smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml | 19 +++ smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml | 9 + smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java | 2 smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml | 12 - ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 10 ruoyi-admin/src/main/resources/application-druid.yml | 8 ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java | 72 ++++++----- ruoyi-common/src/main/java/com/ruoyi/common/enums/MsgLSEnum.java | 32 ++++ ruoyi-admin/src/main/java/com/ruoyi/web/test/MQTest.java | 9 + smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java | 7 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java | 4 13 files changed, 239 insertions(+), 63 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java index 24c13c4..88d4670 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java @@ -316,7 +316,13 @@ iServiceOutPathService.updateServiceOutPath(serviceOutPath); sendMagParam.setPhone(serviceSubtask.getPhone()); sendMagParam.setUrl(ip + ":" + req_path + "/sf?p=" + format); - sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌闅忚璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�"); + if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愭櫙瀹佺暡鏃忚嚜娌诲幙浜烘皯鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愪附姘翠腑鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else + sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌闅忚璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�"); + } else if (type == 2) { //闂埜锛堥棶棰橈級 ServiceOutPath serviceOutPath = new ServiceOutPath(); @@ -334,7 +340,12 @@ // sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"); sendMagParam.setPhone(serviceSubtask.getPhone()); sendMagParam.setUrl(ip + ":" + req_path + "/wt?p=" + format); - sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�"); + if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愭櫙瀹佺暡鏃忚嚜娌诲幙浜烘皯鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愪附姘翠腑鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else + sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�"); } else if (type == 3) { //瀹f暀 ServiceOutPath serviceOutPath = new ServiceOutPath(); @@ -352,7 +363,12 @@ // sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"); sendMagParam.setPhone(serviceSubtask.getPhone()); sendMagParam.setUrl(ip + ":" + req_path + "/xj?p=" + format); - sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愭櫙瀹佺暡鏃忚嚜娌诲幙浜烘皯鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) { + sendMagParam.setContent("銆愪附姘翠腑鍖婚櫌銆戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); + } else + sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�"); } //鐭俊杩橀渶瑕佹ā鏉� String s = null; @@ -364,10 +380,10 @@ s = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req)); } else if (visitHosp == 2) { //涓芥按鐨勭煭淇″彂閫佹柟寮� - String address = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid()); + Map<String, String> map = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid()); String token = LSHospTokenUtil.getToken(serviceSubtask.getOrgid()); - log.error("-----------token鐨勫�间负锛歿}",token); - if (StringUtils.isEmpty(address)) { + log.error("-----------token鐨勫�间负锛歿}", token); + if (ObjectUtils.isNotEmpty(map) && StringUtils.isEmpty(map.get("address"))) { ServiceSubtask ss = new ServiceSubtask(); ss.setResult("error"); ss.setRemark("鐭俊鍙戦�佸け璐�,璇ユ満鏋勬病鏈夐厤缃煭淇″湴鍧�"); @@ -377,8 +393,8 @@ serviceSubtaskMapper.updateServiceSubtask(ss); continue; } - log.error("---------mq涓芥按鐭俊鍙戦�佸叆鍙俛ddress锛歿}, sendMagParam:{}, orgid:{}-------", address, sendMagParam, serviceSubtask.getOrgid()); - String dxCode = getDXCode(address, sendMagParam.getPhone(), sendMagParam.getContent(), "", "", MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()),token); + log.error("---------mq涓芥按鐭俊鍙戦�佸叆鍙俛ddress锛歿}, sendMagParam:{}, orgid:{}-------", map.get("address"), sendMagParam, serviceSubtask.getOrgid()); + String dxCode = getDXCode(map.get("address"), sendMagParam.getPhone(), sendMagParam.getContent(), map.get("sendPersonId"), map.get("sendPersonName"), MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()), token); log.error("---------涓芥按鐭俊鍙戦�佺粨鏋滐細{}-------", dxCode); ObjectMapper objectMapper = new ObjectMapper(); Map<String, Object> textParam = objectMapper.readValue(dxCode, Map.class); @@ -390,17 +406,28 @@ } } if (s.equals("true")) { + //鍦ㄥ瓙浠诲姟琛ㄩ噷璁板綍涓�涓� + log.error("serviceSubtask淇濆瓨鎴愬姛浜嗗悧锛燂細{}",s); + String uuid = UUID.randomUUID().toString(); + serviceSubtask.setResult("success"); + serviceSubtask.setRemark("鐭俊鍙戦�佹垚鍔�"); + serviceSubtask.setGuid(uuid); + serviceSubtask.setSendstate(3L); + serviceSubtask.setFinishtime(new Date()); + serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); + + //浠诲姟鍙戦�佽褰� ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); + serviceSubtaskRecord.setUuid(uuid); serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); - serviceSubtaskRecord.setPreachform("4"); + serviceSubtaskRecord.setPreachform("5"); serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); + serviceSubtaskRecord.setResult("success"); serviceSubtaskRecord.setRemark("鐭俊鍙戦�佹垚鍔�"); - lssubIds.add(serviceSubtask.getId()); serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - continue; + log.error("serviceSubtaskRecord淇濆瓨鎴愬姛浜嗗悧锛燂細{}",serviceSubtaskRecord); } } catch (Exception e) { ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); @@ -418,26 +445,7 @@ continue; } - //鍦ㄥ瓙浠诲姟琛ㄩ噷璁板綍涓�涓� - String uuid = UUID.randomUUID().toString(); - serviceSubtask.setResult("success"); - serviceSubtask.setRemark("鐭俊鍙戦�佹垚鍔�"); - serviceSubtask.setGuid(uuid); - serviceSubtask.setSendstate(3L); - serviceSubtask.setFinishtime(new Date()); - serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); - serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId()); - serviceSubtaskRecord.setUuid(uuid); - serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); - serviceSubtaskRecord.setPreachform("5"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult("success"); - serviceSubtaskRecord.setRemark("鐭俊鍙戦�佹垚鍔�"); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); } if (CollectionUtils.isEmpty(lssubIds)) { //濡傛灉鈥滀复鏃跺瓙浠诲姟鈥濅负绌猴紝璇存槑鍏ㄥ彂閫佸畬浜� @@ -706,7 +714,7 @@ } - private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap,String token) { + private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap, String token) { Map<String, Object> map = new LinkedHashMap<>(); Map<String, Object> YeWuXX = new LinkedHashMap<>(); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/test/MQTest.java b/ruoyi-admin/src/main/java/com/ruoyi/web/test/MQTest.java index 619c540..1a2ce25 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/test/MQTest.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/test/MQTest.java @@ -1,9 +1,11 @@ package com.ruoyi.web.test; +import com.alibaba.fastjson2.JSONObject; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.utils.file.FileUploadUtils; import com.ruoyi.common.utils.file.FileUtils; +import com.ruoyi.common.utils.http.HttpUtils; import com.smartor.domain.ServiceSubtaskDetail; import com.smartor.domain.ThiedInhospInfo; import io.swagger.models.auth.In; @@ -16,7 +18,9 @@ import java.nio.file.Files; import java.security.MessageDigest; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -50,8 +54,9 @@ @Test public void bb() { - int i = 61 /60; - System.out.println(i); + String wxCode="{\"code\":\"0\",\"succ\":true}"; + Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class); + System.out.println(map); } public void aa(MultipartFile file) throws IOException { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/test/SqlCleanerWithComment.java b/ruoyi-admin/src/main/java/com/ruoyi/web/test/SqlCleanerWithComment.java new file mode 100644 index 0000000..78d630f --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/test/SqlCleanerWithComment.java @@ -0,0 +1,116 @@ +package com.ruoyi.web.test; + +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import java.util.*; +import java.util.regex.*; + +public class SqlCleanerWithComment { + public static void main(String[] args) { + String inputFilePath = "C:\\Users\\86176\\Desktop\\smartor_lisui_jg.sql"; // 鍘熷 MySQL 寤鸿〃鏂囦欢 + String outputFilePath = "C:\\Users\\86176\\Desktop\\smartor_lisui_jg_gs.sql"; // 杈撳嚭 openGauss 鍏煎寤鸿〃鏂囦欢 + + try { + // 璇诲彇 SQL 鏂囦欢鍐呭锛堝吋瀹� JDK 8锛� + String originalSql = new String(Files.readAllBytes(Paths.get(inputFilePath)), StandardCharsets.UTF_8); + + // 鑾峰彇琛ㄥ悕 + String tableName = getTableName(originalSql); + + // 鎻愬彇 COMMENT 瀛楁娉ㄩ噴 + Map<String, String> fieldComments = extractFieldComments(originalSql); + + // 鎻愬彇 AUTO_INCREMENT = <鏁板瓧> 鐨勫�� + Pattern autoIncrementPattern = Pattern.compile("AUTO_INCREMENT = (\\d+)"); + Matcher matcher = autoIncrementPattern.matcher(originalSql); + String autoIncrementValue = null; + if (matcher.find()) { + autoIncrementValue = matcher.group(1); // 鑾峰彇 AUTO_INCREMENT 鍚庣殑鏁板瓧 + } + + // 娓呯悊 MySQL 璇硶鐗规�э細瀛楁灏鹃儴灞炴�� + String cleanedSql = originalSql + .replaceAll("(CHARACTER SET\\s+\\w+|COLLATE\\s+\\w+|DEFAULT\\s+[^,\\n]+|COMMENT\\s+'.*?')", "") + .replaceAll("\\s+NULL(?!\\s|,)", "") + .replaceAll("\\s{2,}", " ") + .replaceAll(",\\s*\\)", "\n)") + .replaceAll("(?i)ENGINE\\s*=\\s*\\w+", "") + .replaceAll("(?i)CHARACTER SET\\s*=\\s*\\w+", "") + .replaceAll("(?i)COLLATE\\s*=\\s*\\w+", "") + .replaceAll("(?i)COMMENT\\s*=\\s*'.*?'", "") + .replaceAll("(?i)ROW_FORMAT\\s*=\\s*\\w+", "") + .replaceAll("(?i)\\bdatetime\\b", "timestamp") + .replaceAll("(?i)\\btinyint\\b", "smallint") // 鏇挎崲 tinyint + .replaceAll("AUTO_INCREMENT = \\d+", "") + .replaceAll("USING BTREE", "") + .replaceAll("longtext", "text") + .replaceAll("(?i)(CREATE TABLE)\\s+`([a-zA-Z_][a-zA-Z0-9_]*)`", "$1 \"public\".\"$2\"") // 鍙湪琛ㄥ悕涓婂姞 "public" + .replaceAll("`", "\"") + .trim(); + + // 鏋勯�� COMMENT ON COLUMN 璇彞 + StringBuilder commentSql = new StringBuilder(); + for (Map.Entry<String, String> entry : fieldComments.entrySet()) { + commentSql.append(String.format( + "COMMENT ON COLUMN \"%s\".\"%s\" IS '%s';\n", + tableName, entry.getKey(), entry.getValue() + )); + } + + // 鏇挎崲 SERIAL 鐨勮嚜澧炲瓧娈碉紝纭繚 openGauss 鐨勫吋瀹规�� + cleanedSql = cleanedSql.replaceAll("int NOT NULL AUTO_INCREMENT", "SERIAL NOT NULL"); + + // 濡傛灉鎵惧埌浜� AUTO_INCREMENT 鍊硷紝娣诲姞 ALTER SEQUENCE 鏉ヨ缃嚜澧炶捣濮嬪�� + if (autoIncrementValue != null) { + cleanedSql += "\n\n-- Adjust the sequence for 'id' field starting value\n"; + cleanedSql += "ALTER SEQUENCE ivr_liba_template_id_seq RESTART WITH " + autoIncrementValue + ";"; + } + + // 鎻愬彇骞剁Щ闄� INDEX 瀛愬彞锛堝寘鎷� ASC/DESC/USING BTREE 绛夛級 + Pattern indexPattern = Pattern.compile("INDEX\\s+\"(\\w+)\"\\s*\\(\\s*\"(\\w+)\"(?:\\s+(ASC|DESC))?\\s*\\)", Pattern.CASE_INSENSITIVE); + Matcher indexMatcher = indexPattern.matcher(originalSql); + StringBuilder indexStatements = new StringBuilder(); + + while (indexMatcher.find()) { + String indexName = indexMatcher.group(1); + String columnName = indexMatcher.group(2); + // 绉婚櫎 ASC/DESC锛岀洿鎺ヤ娇鐢ㄥ垪鍚嶅垱寤虹储寮� + indexStatements.append("CREATE INDEX ") + .append(indexName) + .append("_idx ON \"public\".\"") + .append(tableName) + .append("\" (\"") + .append(columnName) + .append("\");\n"); + } + + // 鍚堝苟寤鸿〃璇彞 + 娉ㄩ噴璇彞 + 绱㈠紩璇彞 + String finalOutput = cleanedSql + "\n\n" + commentSql.toString() + indexStatements.toString(); + + // 鍐欏叆杈撳嚭鏂囦欢 + Files.write(Paths.get(outputFilePath), finalOutput.getBytes(StandardCharsets.UTF_8)); + System.out.println("鉁� 杞崲瀹屾垚锛佽緭鍑烘枃浠朵负锛�" + outputFilePath); + } catch (IOException e) { + System.err.println("鉂� 鏂囦欢璇诲彇/鍐欏叆澶辫触: " + e.getMessage()); + } + } + + // 鎻愬彇琛ㄥ悕 + private static String getTableName(String sql) { + Pattern pattern = Pattern.compile("CREATE TABLE\\s+\"[^\"]+\"\\.\"([^\"]+)\"", Pattern.CASE_INSENSITIVE); + Matcher matcher = pattern.matcher(sql); + return matcher.find() ? matcher.group(1) : "unknown_table"; + } + + // 鎻愬彇瀛楁娉ㄩ噴 + private static Map<String, String> extractFieldComments(String sql) { + Map<String, String> comments = new LinkedHashMap<>(); + Pattern pattern = Pattern.compile("\"(\\w+)\"\\s+\\w+(\\([^)]*\\))?[^\\n]*?COMMENT\\s+'([^']+)'", Pattern.CASE_INSENSITIVE); + Matcher matcher = pattern.matcher(sql); + while (matcher.find()) { + comments.put(matcher.group(1), matcher.group(3)); + } + return comments; + } +} diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml index afc6c72..0d58ebf 100644 --- a/ruoyi-admin/src/main/resources/application-druid.yml +++ b/ruoyi-admin/src/main/resources/application-druid.yml @@ -24,10 +24,10 @@ # driverClassName: com.mysql.cj.jdbc.Driver # 鍏徃浜� -# url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 -# username: hxsoft -# password: Hxerp2000 -# driverClassName: com.mysql.cj.jdbc.Driver + # url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + # username: hxsoft + # password: Hxerp2000 + # driverClassName: com.mysql.cj.jdbc.Driver # 浠庡簱鏁版嵁婧� slave: diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/MsgLSEnum.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/MsgLSEnum.java index 187782b..b5caa6b 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/MsgLSEnum.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/MsgLSEnum.java @@ -16,19 +16,23 @@ * XiaoXiMC 鐭俊鍙戦�� */ public enum MsgLSEnum { - ZYY("47231022633110211A2101", "https://9.0.124.104:13011/mediinfo-grus-fuwuzxwg/api/esb/lyraAsyncRun", "1400360867068907520", "涓芥按甯備腑鍖婚櫌"), - JN("47255004333112711A1001", null, "1400361376454545408", "鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�"); + ZYY("47231022633110211A2101", "https://9.0.124.104:13011/mediinfo-grus-fuwuzxwg/api/esb/lyraAsyncRun", "1400360867068907520", "涓芥按甯備腑鍖婚櫌", "2361", "閮戠弽鎱�"), + JN("47255004333112711A1001", null, "1400361376454545408", "鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�", "", ""); private String orgid; private String address; private String ZuHuID; private String ZuHuMC; + private String sendPersonId; + private String sendPersonName; - MsgLSEnum(String orgid, String address, String ZuHuID, String ZuHuMC) { + MsgLSEnum(String orgid, String address, String ZuHuID, String ZuHuMC, String sendPersonId, String sendPersonName) { this.orgid = orgid; this.ZuHuID = ZuHuID; this.ZuHuMC = ZuHuMC; this.address = address; + this.sendPersonId = sendPersonId; + this.sendPersonName = sendPersonName; } public static Map<String, Object> getHeaderByCode(String orgid) { @@ -58,12 +62,16 @@ return map; } - public static String getAddressByCode(String orgid) { + public static Map<String, String> getAddressByCode(String orgid) { MsgLSEnum[] organEnums = values(); + Map<String, String> map = new HashMap<>(); for (int i = 0; i < organEnums.length; i++) { MsgLSEnum organEnum = organEnums[i]; if (organEnum.getOrgid().equals(orgid)) { - return organEnum.getAddress(); + map.put("address", organEnum.getAddress()); + map.put("sendPersonId", organEnum.getSendPersonId()); + map.put("sendPersonName", organEnum.getSendPersonName()); + return map; } } return null; @@ -101,5 +109,19 @@ ZuHuMC = zuHuMC; } + public String getSendPersonId() { + return sendPersonId; + } + public void setSendPersonId(String sendPersonId) { + this.sendPersonId = sendPersonId; + } + + public String getSendPersonName() { + return sendPersonName; + } + + public void setSendPersonName(String sendPersonName) { + this.sendPersonName = sendPersonName; + } } diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java index c6478e7..e253663 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java @@ -484,9 +484,9 @@ isSuccess = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req)); } else if (visitHosp == 2) { //涓芥按鐨勭煭淇″彂閫佹柟寮� - String address = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid()); + Map<String, String> map = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid()); String token = LSHospTokenUtil.getToken(serviceSubtask.getOrgid()); - if (StringUtils.isEmpty(address)) { + if (ObjectUtils.isNotEmpty(map) && StringUtils.isEmpty(map.get("address"))) { ServiceSubtask ss = new ServiceSubtask(); ss.setResult("error"); ss.setRemark("鐭俊鍙戦�佸け璐�,璇ユ満鏋勬病鏈夐厤缃煭淇″湴鍧�"); @@ -496,8 +496,8 @@ serviceSubtaskMapper.updateServiceSubtask(ss); continue; } - log.error("---------涓芥按鐭俊鍙戦�佸叆鍙俛ddress锛歿}, sendMagParam:{}, orgid:{}-------", address,sendMagParam,serviceSubtask.getOrgid()); - String dxCode = getDXCode(address, sendMagParam.getPhone(), sendMagParam.getContent(), "", "", MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()),token); + log.error("---------涓芥按鐭俊鍙戦�佸叆鍙俛ddress锛歿}, sendMagParam:{}, orgid:{}-------", map.get("address"), sendMagParam, serviceSubtask.getOrgid()); + String dxCode = getDXCode(map.get("address"), sendMagParam.getPhone(), sendMagParam.getContent(), map.get("sendPersonId"), map.get("sendPersonName"), MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()), token); log.error("---------涓芥按鐭俊鍙戦�佺粨鏋滐細{}-------", dxCode); ObjectMapper objectMapper = new ObjectMapper(); Map<String, Object> textParam = objectMapper.readValue(dxCode, Map.class); @@ -846,7 +846,7 @@ return key; } - private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap,String token) { + private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap, String token) { Map<String, Object> map = new LinkedHashMap<>(); Map<String, Object> YeWuXX = new LinkedHashMap<>(); diff --git a/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java b/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java index c5e0a27..ddd332c 100644 --- a/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java +++ b/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java @@ -64,4 +64,6 @@ public int deletePatMedOuthospByIds(Long[] ids); PatMedRes selectPatMedOuthospCount(PatMedReq patMedReq); + + public List<PatMedRes> getDeptRanking(PatMedReq patMedReq); } diff --git a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java index 333713d..5a6356a 100644 --- a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java +++ b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java @@ -1,9 +1,6 @@ package com.smartor.mapper; -import com.smartor.domain.ServiceSubtask; -import com.smartor.domain.ServiceSubtaskCount; -import com.smartor.domain.ServiceSubtaskCountReq; -import com.smartor.domain.ServiceSubtaskVO; +import com.smartor.domain.*; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -78,4 +75,6 @@ public List<ServiceSubtask> getSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq); + public List<PatMedRes> getDeptRanking(PatMedReq patMedReq); + } diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java index 93d6c7f..6e325ed 100644 --- a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java @@ -482,7 +482,7 @@ @Override public List<PatMedRes> getDeptRanking(PatMedReq patMedReq) { - return patMedInhospMapper.getDeptRanking(patMedReq); + return serviceSubtaskMapper.getDeptRanking(patMedReq); } @Override diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java index 6050ec9..43f79a7 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java @@ -364,11 +364,11 @@ //鑾峰彇涓婃鐨勯棶绛旂粨鏋� ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(serviceSubTaskQueryReq.getSubId()); + map.put("upScriptResult", null); + map.put("upTaskName", null); if (ObjectUtils.isNotEmpty(serviceSubtask) && serviceSubtask.getUpid() != null) { Map<String, Object> scriptInfoByCondition2 = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom()); Map<String, Object> map1 = getMap(scriptInfoByCondition2, Long.valueOf(serviceSubtask.getUpid()), serviceSubTaskQueryReq.getPatid()); - map.put("upScriptResult", null); - map.put("upTaskName", null); if (!map1.isEmpty()) { map.put("upScriptResult", map1.get("scriptResult")); map.put("upTaskName", map1.get("taskName")); diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml index 053c52c..04266b6 100644 --- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml @@ -646,7 +646,7 @@ FROM pat_med_outhosp <where> del_flag=0 - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size() > 0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} @@ -663,7 +663,7 @@ <where> del_flag=0 and inhospstate=0 - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size() > 0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} @@ -678,7 +678,7 @@ <where> del_flag=0 and inhospstate=1 - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size() > 0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} @@ -693,7 +693,7 @@ <where> del_flag=0 and inhospstate=1 - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size() > 0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} @@ -703,8 +703,6 @@ </if> ) AS combined GROUP BY deptname; - - </select> <select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq" resultType="com.smartor.domain.PatMedRes"> @@ -725,7 +723,7 @@ and date_format(endtime,'%y%m%d') >= date_format(#{startDate},'%y%m%d') and date_format(endtime,'%y%m%d') <= date_format(#{endDate},'%y%m%d') </if> - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size() > 0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} diff --git a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml index 71fa63d..7d6c976 100644 --- a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml @@ -279,7 +279,24 @@ del_flag=0 and date_format(admitdate,'%y%m%d') >= date_format(#{startDate},'%y%m%d') and date_format(admitdate,'%y%m%d') <= date_format(#{endDate},'%y%m%d') - <if test="deptcodeList != null"> + <if test="deptcodeList != null and deptcodeList.size()>0"> + and deptcode in + <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> + #{deptcode} + </foreach> + </if> + </where> + </select> + + <select id="getDeptRanking" parameterType="com.smartor.domain.PatMedReq" resultType="com.smartor.domain.PatMedRes"> + SELECT deptname, COUNT(1) AS rc + FROM pat_med_outhosp + <where> + del_flag=0 + <if test="inhospstate != inhospstate"> + and inhospstate= #{inhospstate} + </if> + <if test="deptcodeList != null and deptcodeList.size()>0"> and deptcode in <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> #{deptcode} diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml index 0b716a3..c8d9fb7 100644 --- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml @@ -984,4 +984,13 @@ month, st.service_type, st.id; </select> + <select id="getDeptRanking" parameterType="com.smartor.domain.PatMedReq" resultType="com.smartor.domain.PatMedRes"> + SELECT deptname, + count(1) AS rc + FROM service_subtask + WHERE DATE_FORMAT(finishtime, '%Y-%m-%d') >= #{startDate} + AND DATE_FORMAT(finishtime, '%Y-%m-%d') <= #{endDate} + GROUP BY deptname + </select> + </mapper> -- Gitblit v1.9.3