From 6c4c2e31ddbcbf4a5f9472a29f621b360ce4713b Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期四, 25 七月 2024 15:31:42 +0800 Subject: [PATCH] 增加同步api接口 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java | 237 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 237 insertions(+), 0 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java index 5a5ff9c..a854c91 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java @@ -1,5 +1,6 @@ package com.ltkj.web.controller.system; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; @@ -574,6 +575,242 @@ return AjaxResult.error("鏈煡鍒拌浜哄憳浣撴璁板綍"); } + /** + * 鍚屾sql server鏁版嵁鍒版湰鍦版暟鎹簱鏁版嵁鎺ュ彛 + */ + @GetMapping ("/dataSynchronizationApi") + @ApiOperation (value = "鍚屾sql server鏁版嵁鍒版湰鍦版暟鎹簱鏁版嵁鎺ュ彛") + @RepeatSubmit +// @Transactional + public AjaxResult dataSynchronizationApi(@RequestParam String tjNumber) { + if (true){ + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + return AjaxResult.success("tjNumber="+tjNumber); + } + + //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 + final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); + + final String sfkqdyhis = configService.selectConfigByKey("sfkqdyhis"); + TjOrder order = orderService.getOrderByTjNum(tjNumber); + if (null != order) { + + //寮�鍚瓧鍏稿脊绐� + if ("Y".equals(getInfoFromSqlData)) { + tbhyxm(order); + //鍚屾鍖栭獙椤圭洰 + testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); + //鍚屾妫�鏌ラ」鐩� + testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); + asyncService.updateCheckType(order.getTjNumber()); + + } + //寮�鍚拰his瀵规帴 + if (null != sfkqdyhis && sfkqdyhis.equals("Y")) { + List<String> baoGaoDans = ltkjHybgdService.getJianYanBaoGaoDan(order.getCardId()); + List<String> jianChaBaoGaoDan = ltkjHybgdService.getJianChaBaoGaoDan(order.getCardId()); + //鍚屾妫�楠� + if (null != baoGaoDans && baoGaoDans.size() > 0) { + Date dates = new Date(); + Map<String, Object> map = new HashMap<>(); + map.put("his_registration_id", order.getCardId()); + map.put("ksbm", ""); + map.put("pationid", ""); + map.put("ksrq", DateUtil.format(DateUtil.beginOfDay(order.getCreateTime()), "yyyy-MM-dd HH:mm:ss")); + map.put("jsrq", DateUtil.format(DateUtil.endOfDay(dates), "yyyy-MM-dd HH:mm:ss")); + map.put("pagecount", 10); + map.put("page", 1); + AjaxResult result = controller.Getlabreportinfo(map); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (null == code || !code.equals("0")) { + return AjaxResult.error("鍖栭獙椤圭洰鏆傛椂鏈嚭缁撴灉,璇风◢鍚庡悓姝�!!!"); + } + JSONArray data = object.getJSONArray("ResultData"); + for (Object datum : data) { + JSONObject jsonObject = (JSONObject) datum; + boolean isInsertHysqd = false; + LtkjHysqd hysqd = new LtkjHysqd(); + hysqd.setTjh(order.getCardId()); + hysqd.setTmh(jsonObject.getStr("JYBGID")); + hysqd.setBbbh(jsonObject.getStr("BBDM")); + hysqd.setBbmc(jsonObject.getStr("BBMC")); + hysqd.setXmid(jsonObject.getStr("JYXMDM")); + hysqd.setXmmc(jsonObject.getStr("JYXMMC")); + hysqd.setSqsj(jsonObject.getStr("SQRQ")); + hysqd.setSqys(jsonObject.getStr("SQRBH")); + hysqd.setJgsj(jsonObject.getStr("JYBGRQ")); + hysqd.setSqrxm(jsonObject.getStr("SQRXM")); + hysqd.setSqdh(jsonObject.getStr("SQDBH")); + hysqd.setShrdm(jsonObject.getStr("JYYSBH")); + hysqd.setShrxm(jsonObject.getStr("JYYSQM")); + hysqd.setJybgjg(jsonObject.getStr("JYBGJG")); + List<LtkjHysqd> list = ltkjHysqdService.listByMap(BeanUtil.beanToMap(hysqd)); + if (list.isEmpty()) + isInsertHysqd = true; + if (isInsertHysqd){ + saveHysqd(hysqd); + }else { + saveHybgd(hysqd); + } + } + //鍚屾鍖栭獙椤圭洰 + testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); + } + /*鍚屾妫�鏌� his鎺ュ彛*/ + if (null != jianChaBaoGaoDan && jianChaBaoGaoDan.size() > 0) { + Map<String, Object> maps = new HashMap<>(); + maps.put("his_registration_id", order.getCardId()); + maps.put("ksbm", "浣撴涓績"); + maps.put("pagecount", 100); + maps.put("page", 1); + LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Getexamreportinfo"); + HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper); + /*鍚屾妫�鏌� his瀛樺偍杩囩▼*/ + AjaxResult results = jcsqdService.getTjJcProByHisCall("浣撴涓績", order.getCardId(), "''", 100, 1, "'1'"); + DynamicDataSourceContextHolder.clearDataSourceType(); + log.info("妫�鏌ラ」鐩煡璇㈣繑鍥炲��: " + results.toString()); + if (Integer.parseInt(results.get("code").toString()) == 200) { + List<Map<String, Object>> datas = (List<Map<String, Object>>) results.get("data"); + if (null != datas && datas.size() > 0) { + for (Map<String, Object> objectMap : datas) { + //淇濆瓨鍏ュ弬鍑哄弬 + service.save(JSONUtil.parseObj(objectMap), "Getexamreportinfo", hisApiConfig, JSONUtil.toJsonStr(maps)); + LtkjExamJcbgd jcbgd = new LtkjExamJcbgd(); + jcbgd.setTjh(order.getCardId()); + if (null != objectMap.get("JCBGID") || !objectMap.get("JCBGID").equals("")) + jcbgd.setTmh(objectMap.get("JCBGID").toString()); + if (null != objectMap.get("JCXMDM") || !objectMap.get("JCXMDM").equals("")) + jcbgd.setXmdm(objectMap.get("JCXMDM").toString()); + if (null != objectMap.get("JCXMMC") || !objectMap.get("JCXMMC").equals("")) + jcbgd.setXmmc(objectMap.get("JCXMMC").toString()); + if (null != objectMap.get("JCXMJG") || !objectMap.get("JCXMJG").equals("")) + jcbgd.setBgNr(objectMap.get("JCXMJG").toString()); + if (null != objectMap.get("reporturl") || !objectMap.get("reporturl").equals("")) + jcbgd.setBgUrl(objectMap.get("reporturl").toString()); + if (null != objectMap.get("SHYSQM") || !objectMap.get("SHYSQM").equals("")) + jcbgd.setShysxm(objectMap.get("SHYSQM").toString()); + if (null != objectMap.get("SHYSBH") || !objectMap.get("SHYSBH").equals("")) + jcbgd.setShysdm(objectMap.get("SHYSBH").toString()); + if (null != objectMap.get("YXZD") || !objectMap.get("YXZD").equals("")) + jcbgd.setYxzd(objectMap.get("YXZD").toString()); + if (null != objectMap.get("YXBX") || !objectMap.get("YXBX").equals("")) { + if (objectMap.get("YXBX").toString().equals("null")) { + jcbgd.setYxbx("鏈寮傚父"); + } else { + jcbgd.setYxbx(objectMap.get("YXBX").toString()); + } + } + if (null != objectMap.get("SJJLSJ") || !objectMap.get("SJJLSJ").equals("")) + jcbgd.setZdsj(objectMap.get("SJJLSJ").toString()); + if (null != objectMap.get("JCBW") || !objectMap.get("JCBW").equals("")) + jcbgd.setJcbw(objectMap.get("JCBW").toString()); + if (null != objectMap.get("SQRQSJ") || !objectMap.get("SQRQSJ").equals("")) + jcbgd.setSqsj(objectMap.get("SQRQSJ").toString()); + List<LtkjExamJcbgd> list = jcbgdService.listByMap(BeanUtil.beanToMap(jcbgd)); + if (list.isEmpty()) + jcbgdService.save(jcbgd); + } + List<LtkjExamJcbgd> list = jcsqdService.queryLtkjExamJcsqdByTjh(order.getCardId()); + if (list.isEmpty()) + jcsqdService.saveLtkjExamJcsqd(order.getCardId()); + testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); + }else { + return AjaxResult.error("妫�鏌ラ」鐩殏鏃舵湭鍑虹粨鏋�,璇风◢鍚庡悓姝�!!!"); + } + } + } + return AjaxResult.success("鍚屾鎴愬姛"); + } + //鍖栭獙 + testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); + //妫�鏌� + jcsqdService.saveLtkjExamJcsqd(order.getCardId()); + return AjaxResult.success("鍚屾鎴愬姛"); + } + return AjaxResult.error("鏈煡鍒拌浜哄憳浣撴璁板綍"); + } + + private void saveHysqd(LtkjHysqd hysqd) { + if (ltkjHysqdService.save(hysqd)) { + saveHybgd(hysqd); + } + } + + private void saveHybgd(LtkjHysqd hysqd) { + Map<String, Object> hashMap = new HashMap<>(); + hashMap.put("jybgid", hysqd.getTmh()); + AjaxResult bgdres = controller.Getlabdetailinfo(hashMap); + String result2 = getAjaxResult(bgdres); + JSONObject object1 = getJSONObject(result2); + String code1 = object1.getStr("ResultCode"); + if (null != code1 && code1.equals("0")) { + JSONArray datas = object1.getJSONArray("ResultData"); + for (Object o : datas) { + JSONObject js = (JSONObject) o; +// ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(jsonObject.getStr("JYBGID")); + LtkjHybgd bgd = new LtkjHybgd(); + bgd.setTmh(hysqd.getTmh()); + bgd.setJcxmid(js.getStr("JCZBDM")); + bgd.setJcxm(js.getStr("JCZBMC")); + bgd.setTdh(js.getStr("")); + bgd.setJyjg(js.getStr("JCZBJG")); + bgd.setJgdw(js.getStr("JLDW")); + bgd.setFwzdz(js.getStr("")); + bgd.setFwzgz(js.getStr("")); + bgd.setFwz(js.getStr("CKZFW")); + bgd.setJysj(js.getStr("BGRQ")); + bgd.setJyys(js.getStr("JCRBH")); + bgd.setShsj(js.getStr("BGRQ")); + bgd.setShsj(js.getStr("BGRQ")); + bgd.setShys(js.getStr("SHRBH")); + bgd.setShysmc(js.getStr("SHRXM")); + bgd.setYcbz(js.getStr("YCTS")); +// bgd.setTpurl(js.getStr("")); + List<LtkjHybgd> list = ltkjHybgdService.listByMap(BeanUtil.beanToMap(bgd)); + if (list.isEmpty()) + ltkjHybgdService.save(bgd); + } + } + + Map<String, Object> fbhashMap = new HashMap<>(); + fbhashMap.put("jybgid", hysqd.getTmh()); + AjaxResult fbres = controller.Getlabgermrepinfo(fbhashMap); + String ajaxResult = getAjaxResult(fbres); + JSONObject fbobject = getJSONObject(ajaxResult); + String fbcode = fbobject.getStr("ResultCode"); + if (null != fbcode && fbcode.equals("0")) { + JSONArray datas = fbobject.getJSONArray("ResultData"); + for (Object o : datas) { + JSONObject js = (JSONObject) o; + LtkjHybgd bgd = new LtkjHybgd(); + bgd.setTmh(hysqd.getTmh()); + bgd.setJcxmid(hysqd.getXmid()); + bgd.setJcxm(hysqd.getXmmc()); + bgd.setTdh(js.getStr("")); + bgd.setJyjg(js.getStr("JCJG")); + bgd.setJgdw("/"); + bgd.setFwzdz("/"); + bgd.setFwzgz("/"); + bgd.setFwz("/"); + bgd.setJysj(js.getStr("BGRQ")); + bgd.setJyys(hysqd.getSqrxm()); + bgd.setShsj(js.getStr("BGRQ")); + bgd.setShys(hysqd.getShrdm()); + bgd.setShysmc(hysqd.getShrxm()); + List<LtkjHybgd> list = ltkjHybgdService.listByMap(BeanUtil.beanToMap(bgd)); + if (list.isEmpty()) + ltkjHybgdService.save(bgd); + } + } + } + //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 public JSONObject getJSONObject(String builder) { String Response = JSONUtil.parseObj(builder).getStr("Response"); -- Gitblit v1.8.0