From 565e1f145e128053d0f5a91be158e89c1dbc50af Mon Sep 17 00:00:00 2001 From: ZhangYingJie Date: Tue, 22 Apr 2025 17:16:38 +0800 Subject: [PATCH] dev --- .../clinic/server/common/util/HttpUtil.java | 75 ++++++++++- ...cialChineseMedicinalGranulaController.java | 23 ++++ .../SocialChronicDiseaseController.java | 19 +++ .../social/SocialDirectoryController.java | 11 -- .../SocialChineseMedicinalGranulaService.java | 14 +- .../social/SocialChronicDiseaseService.java | 17 ++- .../service/social/SocialDiagnoseService.java | 13 +- .../social/SocialDirectoryService.java | 122 +----------------- .../SocialIcpcDoctorDiagnoseService.java | 6 +- ...SocialIcpcExaminationTreatmentService.java | 6 +- .../social/SocialIcpcSelfPayingService.java | 6 +- .../service/social/SocialItemService.java | 24 ++-- .../SocialTcmDiseaseCatalogueService.java | 8 +- .../social/SocialTcmSyndromeService.java | 8 +- src/main/resources/application.yml | 4 +- .../clinic/server/ServerApplicationTests.java | 2 +- 16 files changed, 195 insertions(+), 163 deletions(-) create mode 100644 src/main/java/com/syjiaer/clinic/server/controller/social/SocialChineseMedicinalGranulaController.java create mode 100644 src/main/java/com/syjiaer/clinic/server/controller/social/SocialChronicDiseaseController.java diff --git a/src/main/java/com/syjiaer/clinic/server/common/util/HttpUtil.java b/src/main/java/com/syjiaer/clinic/server/common/util/HttpUtil.java index b8d2502..eb8477d 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/util/HttpUtil.java +++ b/src/main/java/com/syjiaer/clinic/server/common/util/HttpUtil.java @@ -14,13 +14,11 @@ import java.io.*; import java.net.URL; import java.net.URLConnection; import java.nio.file.Files; +import java.nio.file.Path; import java.nio.file.Paths; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; -import java.util.HashMap; -import java.util.Map; -import java.util.Random; -import java.util.UUID; +import java.util.*; import java.util.logging.Logger; @Slf4j @@ -28,6 +26,8 @@ import java.util.logging.Logger; public class HttpUtil { @Autowired private Config config; + @Autowired + private FileUtil fileUtil; private Logger logger = Logger.getLogger(HttpUtil.class.getName()); @@ -85,6 +85,73 @@ public class HttpUtil { return output; } + public List download(String version_name, int type) { + Map input = new HashMap<>(); + input.put("ver", version_name); + String infno = String.valueOf(type); + System.out.println("上个版本号:" + version_name); + JSONObject result = null; + try { + result = callBackMsgId(infno, "data", input); + } catch (Exception e) { + return null; + } + + String filename = result.getString("filename"); + String file_qury_no = result.getString("file_qury_no"); + String fixmedins_code = config.get("social", "fixmedinsCode"); + String path = ""; + try { + // 创建临时目录 + Path tempDir = Files.createTempDirectory("temp"); + path = tempDir.toString(); + } catch (Exception e) { + throw new MessageException("创建临时下载目录失败"); + } + Map input_dw = new HashMap<>(); + input_dw.put("file_qury_no", file_qury_no); + input_dw.put("fixmedins_code", fixmedins_code); + input_dw.put("filename", filename); + System.out.println("文件地址:" + path + "/" + filename); + callToFile("9102", "fsDownloadIn", input_dw, path + "/" + filename); + List file_list = fileUtil.unzip(path, filename); + List read_list = fileUtil.readToList(file_list); + List tab_list = new ArrayList<>(); + //将read_list中的每一行按tab分割,存入tab_list中 + for (String s : read_list) { + String[] line_array = s.split("\t"); + for (int j = 0; j < line_array.length; j++) { + if (line_array[j].equals("null")) { + line_array[j] = ""; + } + } + tab_list.add(line_array); + } + return tab_list; + } + public JSONArray download2(String pre_version_name, int type) { + Integer[] type_list = {1361, 1362, 1363}; + //判断type在数组中 + if (!Arrays.asList(type_list).contains(type)) { + throw new MessageException("参数 type 不能为空"); + } + Map input = new HashMap<>(); + input.put("ver", pre_version_name); + String infno = String.valueOf(type); + logger.info("上个版本号:" + pre_version_name); + JSONObject result = null; + try { + result = callBackMsgId(infno, "data", input); + } catch (Exception e) { + return null; + } + if (result == null || result.getJSONArray("result") == null || result.getJSONArray("result").isEmpty()) { + throw new MessageException("获取数据失败"); + } + JSONArray jsonArray = result.getJSONArray("result"); + return jsonArray + } + private JSONArray postArray(String posturl, String params) { String result = ""; try { diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChineseMedicinalGranulaController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChineseMedicinalGranulaController.java new file mode 100644 index 0000000..9fbab14 --- /dev/null +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChineseMedicinalGranulaController.java @@ -0,0 +1,23 @@ +package com.syjiaer.clinic.server.controller.social; + +import com.syjiaer.clinic.server.common.exception.MessageException; +import com.syjiaer.clinic.server.controller.BaseController; +import com.syjiaer.clinic.server.service.social.SocialChineseMedicinalGranulaService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/social/recipe") +public class SocialChineseMedicinalGranulaController extends BaseController { + @Autowired + private SocialChineseMedicinalGranulaService socialChineseMedicinalGranulaService; + @RequestMapping("download") + public String download() { + String version = parmsUtil.getString("version"); + if (version == null || version.isEmpty()) { + throw new MessageException("version版本不能为空"); + } + return socialChineseMedicinalGranulaService.download(version); + } +} diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChronicDiseaseController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChronicDiseaseController.java new file mode 100644 index 0000000..132c835 --- /dev/null +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialChronicDiseaseController.java @@ -0,0 +1,19 @@ +package com.syjiaer.clinic.server.controller.social; + +import com.syjiaer.clinic.server.common.vo.Result; +import com.syjiaer.clinic.server.service.social.SocialChronicDiseaseService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/social/disease") +public class SocialChronicDiseaseController { + @Autowired + private SocialChronicDiseaseService socialChronicDiseaseService; + @RequestMapping("download") + public Result download() { +// return socialChronicDiseaseService.download(); + return null; + } +} diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialDirectoryController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialDirectoryController.java index 2d1746a..a70126f 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialDirectoryController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialDirectoryController.java @@ -60,17 +60,6 @@ public class SocialDirectoryController extends BaseController { return success(socialDirectoryService.download(ver, type)); } - @PostMapping("download2") - public Result download2() { - Map parms = getParms(); - String ver = (String) parms.get("ver"); - int type = (Integer) parms.get("type"); - if (ver == null || ver.trim().isEmpty()) { - // 处理参数为空的情况,这里假设返回一个错误结果 - return error("参数 ver 不能为空"); - } - return success(socialDirectoryService.download2(ver, type)); - } @RequestMapping("column_list") public Result get_column_list() { diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialChineseMedicinalGranulaService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialChineseMedicinalGranulaService.java index b012dad..83bfa94 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialChineseMedicinalGranulaService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialChineseMedicinalGranulaService.java @@ -2,29 +2,29 @@ package com.syjiaer.clinic.server.service.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialChineseMedicinalGranula; -import com.syjiaer.clinic.server.entity.social.SocialTcmDiseaseCatalogue; import com.syjiaer.clinic.server.mapper.social.SocialChineseMedicinalGranulaMapper; -import lombok.experimental.Accessors; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; @Service public class SocialChineseMedicinalGranulaService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialChineseMedicinalGranulaMapper socialChineseMedicinalGranulaMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, int type, String version_name) { - DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); + public String download(String version_name) { + List tabList = httpUtil.download(version_name, 1320); List code_list = new ArrayList<>(); List list = new ArrayList<>(); - for (String[] line_array : tab_list) { + for (String[] line_array : tabList) { String flag = line_array[28]; if (!flag.equals("1")) { continue; @@ -51,7 +51,7 @@ public class SocialChineseMedicinalGranulaService { queryWrapper.in("social_code", code_list); socialChineseMedicinalGranulaMapper.delete(queryWrapper); socialChineseMedicinalGranulaMapper.insert(list, 100); - socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size()); + socialDirectoryVersionService.setSocialDirectoryVersion(1320, version_name, list.get(0).getVersionName(), list.size()); return list.get(0).getVersionName(); } } diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialChronicDiseaseService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialChronicDiseaseService.java index 5d2704b..59d2758 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialChronicDiseaseService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialChronicDiseaseService.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.service.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialChronicDisease; import com.syjiaer.clinic.server.entity.social.SocialDiagnose; import com.syjiaer.clinic.server.entity.social.SocialTcmDiseaseCatalogue; @@ -12,20 +13,25 @@ import org.springframework.stereotype.Service; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; @Service public class SocialChronicDiseaseService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialChronicDiseaseMapper socialChronicDiseaseMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, int type, String version_name) { + public Map download(String version_name) { + List tabList = httpUtil.download(version_name, 1309); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List code_list = new ArrayList<>(); List list = new ArrayList<>(); - for (String[] line_array : tab_list) { + for (String[] line_array : tabList) { String flag = line_array[5]; if (!flag.equals("1")) { continue; @@ -44,7 +50,10 @@ public class SocialChronicDiseaseService { queryWrapper.in("social_code", code_list); socialChronicDiseaseMapper.delete(queryWrapper); socialChronicDiseaseMapper.insert(list, 100); - socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size()); - return list.get(0).getVersionName(); + socialDirectoryVersionService.setSocialDirectoryVersion(1309, version_name, list.get(0).getVersionName(), list.size()); + Map hashMap = new HashMap<>(); + hashMap.put("current_version_name", list.get(0).getVersionName()); + hashMap.put("pre_version_name", version_name); + return hashMap; } } diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialDiagnoseService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialDiagnoseService.java index 1e95b39..967ad17 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialDiagnoseService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialDiagnoseService.java @@ -1,8 +1,11 @@ package com.syjiaer.clinic.server.service.social; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; import com.syjiaer.clinic.server.common.util.DictoryUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; +import com.syjiaer.clinic.server.entity.social.SocialChronicDisease; import com.syjiaer.clinic.server.entity.social.SocialDiagnose; import com.syjiaer.clinic.server.entity.social.SocialItem; import com.syjiaer.clinic.server.mapper.social.SocialDiagnoseMapper; @@ -19,14 +22,18 @@ import java.util.Map; @Service public class SocialDiagnoseService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialDiagnoseMapper socialDiagnoseMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, int type, String version_name) { + public String download(int type, String version_name) { + List tab_list = httpUtil.download(version_name, type); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List list = new ArrayList<>(); + List codeList = new ArrayList<>(); for (String[] line_array : tab_list) { String flag = line_array[18]; if (!flag.equals("1")) { @@ -44,7 +51,11 @@ public class SocialDiagnoseService { socialDiagnose.setCreateDatetime(LocalDateTime.parse(line_array[20], dateTimeFormatter)); socialDiagnose.setUpdateDatetime(LocalDateTime.parse(line_array[21], dateTimeFormatter)); list.add(socialDiagnose); + codeList.add(socialDiagnose.getSocialCode()); } + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("social_code", codeList); + socialDiagnoseMapper.delete(queryWrapper); socialDiagnoseMapper.insert(list, 100); socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size()); return list.get(0).getVersionName(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialDirectoryService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialDirectoryService.java index c12beba..b21c33e 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialDirectoryService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialDirectoryService.java @@ -20,8 +20,6 @@ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; -import java.nio.file.Files; -import java.nio.file.Path; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; @@ -78,54 +76,12 @@ public class SocialDirectoryService extends BaseService { */ @Transactional(rollbackFor = Exception.class) public Map download(String version_name, int type) { - Integer[] type_list = {1301, 1302, 1305, 1306, 1307, 1309, 1314, 1315, 1320, 1321}; + Integer[] type_list = {1301, 1302, 1306}; //判断type在数组中 if (!Arrays.asList(type_list).contains(type)) { throw new MessageException("参数type不正确"); } - Map input = new HashMap<>(); - input.put("ver", version_name); - String infno = String.valueOf(type); - System.out.println("上个版本号:" + version_name); - JSONObject result = null; - try { - result = httpUtil.callBackMsgId(infno, "data", input); - } catch (Exception e) { - return null; - } - - String filename = result.getString("filename"); - String file_qury_no = result.getString("file_qury_no"); - String fixmedins_code = config.get("social", "fixmedinsCode"); - String path = ""; - try { - // 创建临时目录 - Path tempDir = Files.createTempDirectory("temp"); - path = tempDir.toString(); - } catch (Exception e) { - throw new MessageException("创建临时下载目录失败"); - } - Map input_dw = new HashMap<>(); - input_dw.put("file_qury_no", file_qury_no); - input_dw.put("fixmedins_code", fixmedins_code); - input_dw.put("filename", filename); - System.out.println("文件地址:" + path + "/" + filename); - httpUtil.callToFile("9102", "fsDownloadIn", input_dw, path + "/" + filename); - List file_list = fileUtil.unzip(path, filename); - List read_list = fileUtil.readToList(file_list); - List tab_list = new ArrayList<>(); - //将read_list中的每一行按tab分割,存入tab_list中 - for (String s : read_list) { - String[] line_array = s.split("\t"); - for (int j = 0; j < line_array.length; j++) { - if (line_array[j].equals("null")) { - line_array[j] = ""; - } - } - tab_list.add(line_array); - } - - + List tab_list = httpUtil.download(version_name, type); //清楚原有的code int batchSize = 100; for (int i = 0; i < tab_list.size(); i += batchSize) { @@ -139,42 +95,15 @@ public class SocialDirectoryService extends BaseService { queryWrapper.in("code", code_list); socialDirectoryMapper.delete(queryWrapper); } - String current_version_name = ""; - switch (type) { - case 1301: - case 1302: - case 1306: - current_version_name = insertSocialDirectorys(version_name, type, infno, tab_list); - break; - case 1305: - case 1321: - current_version_name = socialItemService.download(tab_list, infno, type, version_name); - break; - case 1307: - current_version_name = socialDiagnoseService.download(tab_list, type, version_name); - break; - case 1309: - current_version_name = socialChronicDiseaseService.download(tab_list, type, version_name); - break; - case 1314: - current_version_name = socialTcmDiseaseCatalogueService.download(tab_list, type, version_name); - break; - case 1315: - current_version_name = socialTcmSyndromeService.download(tab_list, type, version_name); - break; - case 1320: - current_version_name = socialChineseMedicinalGranulaService.download(tab_list, type, version_name); - default: - break; - } + String current_version_name = insertSocialDirectorys(version_name, type, tab_list); Map hashMap = new HashMap<>(); hashMap.put("current_version_name", current_version_name); hashMap.put("pre_version_name", version_name); return hashMap; } - private String insertSocialDirectorys(String version_name, int type, String infno, List tab_list) { - Map title_map = dictoryUtil.getTitleMap(infno); + private String insertSocialDirectorys(String version_name, int type, List tab_list) { + Map title_map = dictoryUtil.getTitleMap(String.valueOf(type)); List list = new ArrayList<>(); HashMap tmp_map = new HashMap<>(); for (String[] line_array : tab_list) { @@ -227,47 +156,6 @@ public class SocialDirectoryService extends BaseService { return list.get(0).getVersionName(); } - @Transactional(rollbackFor = Exception.class) - public Map download2(String pre_version_name, int type) { - Integer[] type_list = {1361, 1362, 1363}; - //判断type在数组中 - if (!Arrays.asList(type_list).contains(type)) { - throw new MessageException("参数 type 不能为空"); - } - Map input = new HashMap<>(); - input.put("ver", pre_version_name); - String infno = String.valueOf(type); - logger.info("上个版本号:" + pre_version_name); - JSONObject result = null; - try { - result = httpUtil.callBackMsgId(infno, "data", input); - } catch (Exception e) { - return null; - } - if (result == null || result.getJSONArray("result") == null || result.getJSONArray("result").isEmpty()) { - throw new MessageException("获取数据失败"); - } - JSONArray jsonArray = result.getJSONArray("result"); - String versionName = ""; - switch (type) { - case 1361: - versionName = socialIcpcDoctorDiagnoseService.download(jsonArray, pre_version_name); - break; - case 1362: - versionName = socialIcpcExaminationTreatmentService.download(jsonArray, pre_version_name); - break; - case 1363: - versionName = socialIcpcSelfPayingService.download(jsonArray, pre_version_name); - break; - default: - break; - } - Map hashMap = new HashMap<>(); - hashMap.put("current_version_name", versionName); - hashMap.put("pre_version_name", pre_version_name); - return hashMap; - } - /* * 搜索接口 * @param keyword 关键字 diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcDoctorDiagnoseService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcDoctorDiagnoseService.java index 36456ed..797be7f 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcDoctorDiagnoseService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcDoctorDiagnoseService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialIcpcDoctorDiagnose; import com.syjiaer.clinic.server.mapper.social.SocialIcpcDoctorDiagnoseMapper; import org.springframework.beans.factory.annotation.Autowired; @@ -17,12 +18,15 @@ import java.util.List; @Service public class SocialIcpcDoctorDiagnoseService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialIcpcDoctorDiagnoseMapper socialIcpcDoctorDiagnoseMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(JSONArray jsonArray, String pre_version_name) { + public String download(String pre_version_name) { + JSONArray jsonArray = httpUtil.download2("icpc_doctor_diagnose", 1361); List code_list = new ArrayList<>(); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List list = new ArrayList<>(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcExaminationTreatmentService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcExaminationTreatmentService.java index 8432be7..d8a7551 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcExaminationTreatmentService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcExaminationTreatmentService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialIcpcDoctorDiagnose; import com.syjiaer.clinic.server.entity.social.SocialIcpcExaminationTreatment; import com.syjiaer.clinic.server.mapper.social.SocialIcpcExaminationTreatmentMapper; @@ -18,11 +19,14 @@ import java.util.List; @Service public class SocialIcpcExaminationTreatmentService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialIcpcExaminationTreatmentMapper socialIcpcExaminationTreatmentMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(JSONArray jsonArray, String pre_version_name) { + public String download(String pre_version_name) { + JSONArray jsonArray = httpUtil.download2(pre_version_name, 1362); List code_list = new ArrayList<>(); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List list = new ArrayList<>(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcSelfPayingService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcSelfPayingService.java index 4b550ed..5e1c5ab 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcSelfPayingService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialIcpcSelfPayingService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialIcpcDoctorDiagnose; import com.syjiaer.clinic.server.entity.social.SocialIcpcSelfPaying; import com.syjiaer.clinic.server.mapper.social.SocialIcpcSelfPayingMapper; @@ -17,12 +18,15 @@ import java.util.ArrayList; import java.util.List; @Service public class SocialIcpcSelfPayingService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialIcpcSelfPayingMapper socialIcpcSelfPayingMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(JSONArray jsonArray, String pre_version_name) { + public String download(String pre_version_name) { + JSONArray jsonArray = httpUtil.download2(pre_version_name, 1363); List code_list = new ArrayList<>(); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List list = new ArrayList<>(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialItemService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialItemService.java index 0e86dda..6d09db1 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialItemService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialItemService.java @@ -1,9 +1,12 @@ package com.syjiaer.clinic.server.service.social; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; import com.syjiaer.clinic.server.common.util.DictoryUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.common.util.StringUtil; +import com.syjiaer.clinic.server.entity.social.SocialChineseMedicinalGranula; import com.syjiaer.clinic.server.entity.social.SocialDirectory; import com.syjiaer.clinic.server.entity.social.SocialDirectoryVersion; import com.syjiaer.clinic.server.entity.social.SocialItem; @@ -22,42 +25,45 @@ import java.util.*; @Service public class SocialItemService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialItemMapper socialItemMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, String info, int type, String version_name) { + public String download(int type, String version_name) { + List tab_list = httpUtil.download(version_name, type); List list = new ArrayList<>(); - DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); + String value = String.valueOf(type); + List codeList = new ArrayList<>(); for (String[] line_array : tab_list) { String flag = ""; SocialItem socialItem = new SocialItem(); - if (info.equals("1305")) { + if (value.equals("1305")) { flag = line_array[6]; String code = line_array[0]; socialItem.setSocialCode(code); socialItem.setName(line_array[9]); socialItem.setVersionName(line_array[16]); socialItem.setUnit(line_array[1]); -// socialItem.setCreateDatetime(LocalDateTime.parse(line_array[11], dateTimeFormatter)); -// socialItem.setUpdateDatetime(LocalDateTime.parse(line_array[12], dateTimeFormatter)); - }else if (info.equals("1321")) { + }else if (value.equals("1321")) { flag = line_array[13]; String code = line_array[2]; socialItem.setSocialCode(code); socialItem.setName(line_array[6]); socialItem.setVersionName(line_array[21]); socialItem.setUnit(line_array[10]); -// socialItem.setCreateDatetime(LocalDateTime.parse(line_array[27], dateTimeFormatter)); -// socialItem.setUpdateDatetime(LocalDateTime.parse(line_array[28], dateTimeFormatter)); } if (!flag.equals("1")) { continue; } + codeList.add(socialItem.getSocialCode()); list.add(socialItem); } - System.out.println(list); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("social_code", codeList); + socialItemMapper.delete(queryWrapper); socialItemMapper.insert(list, 100); socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size()); return list.get(0).getVersionName(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmDiseaseCatalogueService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmDiseaseCatalogueService.java index 02f6e3d..66f35af 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmDiseaseCatalogueService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmDiseaseCatalogueService.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.service.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialChronicDisease; import com.syjiaer.clinic.server.entity.social.SocialTcmDiseaseCatalogue; import com.syjiaer.clinic.server.mapper.social.SocialTcmDiseaseCatalogueMapper; @@ -15,15 +16,18 @@ import java.util.List; @Service public class SocialTcmDiseaseCatalogueService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialTcmDiseaseCatalogueMapper socialTcmDiseaseCatalogueMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, int type, String version_name) { + public String download(int type, String version_name) { + List tabList = httpUtil.download(version_name, type); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List code_list = new ArrayList<>(); List list = new ArrayList<>(); - for (String[] line_array : tab_list) { + for (String[] line_array : tabList) { String flag = line_array[8]; if (!flag.equals("1")) { continue; diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmSyndromeService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmSyndromeService.java index f31aafe..e70a514 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmSyndromeService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialTcmSyndromeService.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.service.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.util.DateUtil; +import com.syjiaer.clinic.server.common.util.HttpUtil; import com.syjiaer.clinic.server.entity.social.SocialTcmDiseaseCatalogue; import com.syjiaer.clinic.server.entity.social.SocialTcmSyndrome; import com.syjiaer.clinic.server.mapper.social.SocialTcmSyndromeMapper; @@ -15,15 +16,18 @@ import java.util.List; @Service public class SocialTcmSyndromeService { + @Autowired + private HttpUtil httpUtil; @Autowired private SocialTcmSyndromeMapper socialTcmSyndromeMapper; @Autowired private SocialDirectoryVersionService socialDirectoryVersionService; - public String download(List tab_list, int type, String version_name) { + public String download(int type, String version_name) { + List tabList = httpUtil.download(version_name, type); DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT); List code_list = new ArrayList<>(); List list = new ArrayList<>(); - for (String[] line_array : tab_list) { + for (String[] line_array : tabList) { String flag = line_array[8]; if (!flag.equals("1")) { continue; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 4a52d88..01e1331 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -3,9 +3,9 @@ spring: name: server datasource: driver-class-name: org.postgresql.Driver - url: jdbc:postgresql://dev.jizhiweb.cn:15321/syjiaer_clinic + url: jdbc:postgresql://localhost:5432/syjiaer_clinic username: postgres - password: i7L0BS91pADGuy7z + password: 123456 hikari: maximum-pool-size: 10 minimum-idle: 5 diff --git a/src/test/java/com/syjiaer/clinic/server/ServerApplicationTests.java b/src/test/java/com/syjiaer/clinic/server/ServerApplicationTests.java index 297e8a5..db40b8e 100644 --- a/src/test/java/com/syjiaer/clinic/server/ServerApplicationTests.java +++ b/src/test/java/com/syjiaer/clinic/server/ServerApplicationTests.java @@ -15,7 +15,7 @@ class ServerApplicationTests { private SocialDirectoryService socialDirectoryService; @Test void contextLoads() { - Map download = socialDirectoryService.download("0", 1320); + Map download = socialDirectoryService.download("0", 1315); System.out.println(download); }