| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ltkj.common.annotation.RepeatSubmit; |
| | | import com.ltkj.common.core.domain.AjaxResult; |
| | | import com.ltkj.common.core.domain.entity.SysDept; |
| | | import com.ltkj.common.core.domain.entity.SysUser; |
| | | import com.ltkj.common.core.redis.RedisCache; |
| | | import com.ltkj.common.enums.DataSourceType; |
| | |
| | | import com.ltkj.hosp.mapper.TestMapper; |
| | | import com.ltkj.hosp.service.*; |
| | | import com.ltkj.hosp.sqlDomain.*; |
| | | import com.ltkj.hosp.vo.ProFcListVo; |
| | | import com.ltkj.hosp.vodomain.CsProVo; |
| | | import com.ltkj.hosp.vodomain.UpdateOrderRemarkVo; |
| | | import com.ltkj.mall.mallOrderUtils.TjConstants; |
| | |
| | | } |
| | | |
| | | |
| | | @PostMapping("/newaddOrderYcXmJyByTjh") |
| | | @ApiOperation(value = "总检医生页面新增异常项目建议(单个)") |
| | | public AjaxResult newaddOrderYcXmJyByTjh(@RequestBody TjOrderYcxm ycxm) { |
| | | |
| | | ycxm.setJynr(JSONUtil.toJsonStr(ycxm.getMap())); |
| | | ycxmService.saveOrUpdate(ycxm); |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 初审 |
| | | */ |
| | |
| | | //同步检验 |
| | | 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 jytbfs = configService.selectConfigByKey("jytbfs"); |
| | | AjaxResult result; |
| | | if (StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){ |
| | | 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); |
| | | result = controller.Getlabreportinfo(map); |
| | | }else{ |
| | | result = ltkjHysqdService.getAsyncDataByPro("体检中心", order.getCardId(), "''", 100, 1); |
| | | } |
| | | |
| | | String result1 = getAjaxResult(result); |
| | | JSONObject object = getJSONObject(result1); |
| | | String code = object.getStr("ResultCode"); |
| | |
| | | hysqd.setShrxm(jsonObject.getStr("JYYSQM")); |
| | | hysqd.setJybgjg(jsonObject.getStr("JYBGJG")); |
| | | if (ltkjHysqdService.save(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; |
| | | if(StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){ |
| | | 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")); |
| | | 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("")); |
| | | ltkjHybgdService.save(bgd); |
| | | 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()); |
| | | 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()); |
| | | ltkjHybgdService.save(bgd); |
| | | } |
| | | } |
| | | }else { |
| | | saveHybgdPro(hysqd); |
| | | } |
| | | |
| | | } |
| | | } |
| | | //同步化验项目 |
| | |
| | | String resultMsg = ""; |
| | | if (null != baoGaoDans && !baoGaoDans.isEmpty()) { |
| | | 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 jytbfs = configService.selectConfigByKey("jytbfs"); |
| | | AjaxResult result; |
| | | if (StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){ |
| | | 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); |
| | | result = controller.Getlabreportinfo(map); |
| | | }else { |
| | | result = ltkjHysqdService.getAsyncDataByPro("体检中心", order.getCardId(), "''", 100, 1); |
| | | } |
| | | log.info("检验项目查询返回值: " + JSONUtil.toJsonStr(result)); |
| | | |
| | | String result1 = getAjaxResult(result); |
| | | JSONObject object = getJSONObject(result1); |
| | | String code = object.getStr("ResultCode"); |
| | |
| | | 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")); |
| | | hysqd.setTmh(jsonObject.getStr("JYBGID"));// 检验报告 ID |
| | | 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"));// 检验报告结果 |
| | | hysqd.setCreateTime(new Date()); |
| | | QueryWrapper<LtkjHysqd> queryWrapper = new QueryWrapper<>(hysqd); |
| | | List<LtkjHysqd> list = ltkjHysqdService.list(queryWrapper); |
| | | if (list.isEmpty()) |
| | | isInsertHysqd = true; |
| | | if (isInsertHysqd) { |
| | | saveHysqd(hysqd); |
| | | } else { |
| | | saveHybgd(hysqd); |
| | | if(StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){ |
| | | if (isInsertHysqd) { |
| | | saveHysqd(hysqd); |
| | | } else { |
| | | saveHybgd(hysqd); |
| | | } |
| | | }else { |
| | | if (isInsertHysqd) { |
| | | saveHysqdPro(hysqd); |
| | | } else { |
| | | saveHybgdPro(hysqd); |
| | | } |
| | | } |
| | | } |
| | | } else { |
| | |
| | | /*同步检查 his存储过程*/ |
| | | String jctbfs = configService.selectConfigByKey("jctbfs"); |
| | | AjaxResult results = null; |
| | | if (jctbfs.equalsIgnoreCase("Y")) { |
| | | if (StrUtil.isBlank(jctbfs) || jctbfs.equalsIgnoreCase("Y")) { |
| | | results = service.getHISDataNew("Getexamreportinfo", maps); |
| | | } else { |
| | | results = jcsqdService.getTjJcProByHisCall("体检中心", order.getCardId(), "''", 100, 1, "'1'"); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | } |
| | | log.info("检查项目查询返回值: " + results.toString()); |
| | | log.info("检查项目查询返回值: " + JSONUtil.toJsonStr(results)); |
| | | if (Integer.parseInt(results.get("code").toString()) == 200) { |
| | | List<Map<String, Object>> datas = (List<Map<String, Object>>) results.get("data"); |
| | | if (null != datas && !datas.isEmpty()) { |
| | |
| | | jcbgd.setSqsj(objectMap.get("SQRQSJ").toString()); |
| | | jcbgd.setCreateTime(new Date()); |
| | | jcbgdService.save(jcbgd); |
| | | |
| | | } |
| | | jcsqdService.saveLtkjExamJcsqd(order.getCardId()); |
| | | // List<LtkjExamJcsqd> jcsqdList = jcsqdService.getLtkjJcsqdByTjh(order.getCardId()); |
| | | // jcycxmService.deletedByTjh(order.getTjNumber()); |
| | | // if(!jcsqdList.isEmpty()){ |
| | | // for (LtkjExamJcsqd jcsqd : jcsqdList) { |
| | | // if(StringUtil.isNotBlank(jcsqd.getJgzt())){ |
| | | // String[] split = jcsqd.getJgzt().replaceAll("\n", "").split("。|;|;|,|,"); |
| | | // for (String jg : split) { |
| | | // if(StringUtil.isNotBlank(jg) && !jg.contains("未见异常") |
| | | // && !jg.contains("未见明显异常") && !jg.contains("未见占位") && !jg.contains("未见") |
| | | // && !jg.contains("未见明显")&& !jg.contains("正常")&& !jg.contains("双侧椎间孔无狭窄")){ |
| | | // TjJcycxm jcycxm=new TjJcycxm(); |
| | | // jcycxm.setTjh(order.getTjNumber()); |
| | | // jcycxm.setYqid("jczyy"); |
| | | // String[] split1 = jcsqd.getJcxmid().split(";"); |
| | | // jcycxm.setProId(split1[0]); |
| | | // jcycxm.setProName(jcsqd.getJcxmmc()); |
| | | // jcycxm.setCreateTime(new Date()); |
| | | // jcycxm.setJcjg(jg); |
| | | // jcycxmService.save(jcycxm); |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | configController.tjjcycxm(tjNumber, "0"); |
| | | testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId); |
| | | } else { |
| | | resultMsg += "\n检查项目暂时未出结果,请稍后同步!!!"; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* LambdaQueryWrapper<TjXdtgmdjg> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjXdtgmdjg::getTjh, tjNumber); |
| | | List<TjXdtgmdjg> list = xdtgmdjgService.list(wq); |
| | | if (null != list && !list.isEmpty()) { |
| | | for (TjXdtgmdjg xdtgmdjg : list) { |
| | | pictureController.saveTjXdtgmdjgByJcbgd(xdtgmdjg); |
| | | } |
| | | }*/ |
| | | |
| | | if (StrUtil.isBlank(resultMsg)) |
| | | return AjaxResult.success("同步成功"); |
| | |
| | | private void saveHysqd(LtkjHysqd hysqd) { |
| | | if (ltkjHysqdService.save(hysqd)) { |
| | | saveHybgd(hysqd); |
| | | } |
| | | } |
| | | |
| | | private void saveHysqdPro(LtkjHysqd hysqd) { |
| | | if (ltkjHysqdService.save(hysqd)) { |
| | | saveHybgdPro(hysqd); |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | private void saveHybgdPro(LtkjHysqd hysqd) { |
| | | List<Map<String, Object>> mapList = ltkjHysqdService.getAsyncJybgdByPro(hysqd.getTmh()); |
| | | log.info("usp_his_getlabdetailinfolttj 返回->\n{}",JSONUtil.toJsonStr(mapList)); |
| | | for (Map<String, Object> map : mapList) { |
| | | JSONObject js = JSONUtil.parseObj(map); |
| | | 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.setCreateTime(new Date()); |
| | | QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd); |
| | | List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper); |
| | | if (list.isEmpty()) |
| | | ltkjHybgdService.save(bgd); |
| | | } |
| | | List<Map<String, Object>> mapList1 = ltkjHysqdService.getAsyncJybgdWswByPro(hysqd.getTmh()); |
| | | log.info("usp_his_getlabgermrepinfolttj 返回->\n{}",JSONUtil.toJsonStr(mapList1)); |
| | | for (Map<String, Object> map : mapList1) { |
| | | JSONObject js = JSONUtil.parseObj(map); |
| | | 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()); |
| | | QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd); |
| | | List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper); |
| | | if (list.isEmpty()) |
| | | ltkjHybgdService.save(bgd); |
| | | } |
| | | } |
| | | |
| | | //将方法返回值解析成json格式 |
| | | public JSONObject getJSONObject(String builder) { |
| | | String Response = JSONUtil.parseObj(builder).getStr("Response"); |
| | |
| | | @ApiParam(value = "单位") @RequestParam(required = false) Long compId, |
| | | @ApiParam(value = "姓名)") @RequestParam(required = false) String name, |
| | | @ApiParam(value = "开始时间") @RequestParam(required = false) String beginTime, |
| | | @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime) { |
| | | @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime, |
| | | @ApiParam(value = "体检类型") @RequestParam(required = false) String tjCategory) { |
| | | // String config = configService.selectConfigByKey("tj_confirm"); |
| | | // DateTime beginTimes = null; |
| | | // DateTime endTimes = null; |
| | |
| | | if (name == null) name = ""; |
| | | if (beginTime == null) beginTime = ""; |
| | | if (endTime == null) endTime = ""; |
| | | return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name)); |
| | | return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name,tjCategory)); |
| | | } |
| | | |
| | | |
| | |
| | | // @PreAuthorize("@ss.hasPermi('check:check:getTjdetailList')") |
| | | public AjaxResult getTjdetailList(@ApiParam(value = "体检tjNumber") @RequestParam String tjNumber, |
| | | @ApiParam(value = "总检建议") @RequestParam(required = false) String advice, |
| | | @ApiParam(value = "审核状态0待审核1已审核") @RequestParam Integer checkStatus) { |
| | | @ApiParam(value = "审核状态0待审核1已审核") @RequestParam Integer checkStatus, |
| | | @ApiParam(value = "职业结论") @RequestParam(required = false) String zhiyeJl, |
| | | @ApiParam(value = "职业结果") @RequestParam(required = false) String zhiyeJg) { |
| | | |
| | | String config = configService.selectConfigByKey("sfjcwjhyqxm"); |
| | | if (null != config && config.equalsIgnoreCase("Y")) { |
| | |
| | | tjOrder.setCheckTime(date); |
| | | tjOrder.setStatus(401); |
| | | tjOrder.setFinishTime(date); |
| | | if (StrUtil.isNotBlank(zhiyeJl)) |
| | | tjOrder.setZhiyeJl(zhiyeJl); |
| | | if (StrUtil.isNotBlank(zhiyeJg)) |
| | | tjOrder.setZhiyeJg(zhiyeJg); |
| | | if (orderService.updateById(tjOrder)) { |
| | | TjCustomer customer = customerService.getById(tjOrder.getUserId()); |
| | | if (null != customer) { |
| | |
| | | parent.put("parentId", remark.getProsId()); |
| | | parent.put("xmlb", remark.getXmlb()); |
| | | parent.put("", remark.getXmlb()); |
| | | parent.put("zhiyejl",one.getZhiyeJl()); |
| | | parent.put("zhiyejg", one.getZhiyeJg()); |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | |
| | | } catch (NumberFormatException ignored) { |
| | | } |
| | | } else { |
| | | tjOrderDetail.setYcbz(""); |
| | | // tjOrderDetail.setYcbz(""); |
| | | if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阴")) |
| | | tjOrderDetail.setYcbz(""); |
| | | |
| | | if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阳")) |
| | | tjOrderDetail.setYcbz("↑"); |
| | | tjOrderDetail.setProResult(tjOrderDetail.getProResult()); |
| | | } |
| | | |
| | |
| | | @GetMapping("/getzongjianyishengchakanyichangxiangmu") |
| | | @ApiOperation(value = "总检查看异常项目接口") |
| | | public AjaxResult getzongjianyishengchakanyichangxiangmu(@RequestParam String tjNum) { |
| | | long l = System.currentTimeMillis(); |
| | | if (StrUtil.isNotBlank(tjNum)) { |
| | | TjOrder one = orderService.getOrderByTjNum(tjNum); |
| | | try { |
| | | if (StrUtil.isNotBlank(tjNum)) { |
| | | TjOrder one = orderService.getOrderByTjNum(tjNum); |
| | | |
| | | if (one == null) { |
| | | return AjaxResult.error("暂无数据!!"); |
| | | if (one == null) { |
| | | return AjaxResult.error("暂无数据!!"); |
| | | } |
| | | yichangxiangmu(tjNum); |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, tjNum); |
| | | List<TjOrderYcxm> list = ycxmService.list(wq); |
| | | if (null != list && !list.isEmpty()) { |
| | | Collections.reverse(list); |
| | | return getOrderYcxmList(list); |
| | | } else { |
| | | return zongjianyishengchakanyichangxiangmu(tjNum); |
| | | } |
| | | } |
| | | String yqbm = configService.selectConfigByKey("common_api_service_hospbm"); |
| | | jcycxmService.deletedByTjh(tjNum); |
| | | configController.zongjianshengchengyichangxiangmu(tjNum, yqbm); |
| | | return AjaxResult.error(); |
| | | } catch (Exception ex) { |
| | | //throw new RuntimeException(ex); |
| | | log.error(ex.getMessage()); |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | | |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, tjNum); |
| | | List<TjOrderYcxm> list = ycxmService.list(wq); |
| | | if (null != list && !list.isEmpty()) { |
| | | Collections.reverse(list); |
| | | Map<String, List<TjOrderYcxm>> map = list.stream().collect(Collectors.groupingBy(TjOrderYcxm::getParentName)); |
| | | List<Map<String, Object>> maps = new ArrayList<>(); |
| | | for (Map.Entry<String, List<TjOrderYcxm>> entry : map.entrySet()) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderYcxm ycxm : entry.getValue()) { |
| | | TjOrderDetail detail = new TjOrderDetail(); |
| | | detail.setOrderDetailId(Long.valueOf(ycxm.getId())); |
| | | detail.setProName(ycxm.getJcxm()); |
| | | detail.setProResult(ycxm.getJcjg()); |
| | | detail.setStanId(ycxm.getCkfw()); |
| | | detail.setProAdvice(ycxm.getDw()); |
| | | List<Map<String, Object>> btnrlist = new ArrayList<>(); |
| | | String jynr = ycxm.getJynr(); |
| | | JSONArray array = JSONUtil.parseArray(jynr); |
| | | for (Object object : array) { |
| | | Map<String, Object> objectMap = new HashMap<>(); |
| | | JSONObject jsonObject = (JSONObject) object; |
| | | String bt = jsonObject.getStr("bt"); |
| | | String nr = jsonObject.getStr("nr"); |
| | | objectMap.put("bt", bt); |
| | | objectMap.put("nr", nr); |
| | | if (null != bt || null != nr) btnrlist.add(objectMap); |
| | | private static AjaxResult getOrderYcxmList(List<TjOrderYcxm> list) { |
| | | try { |
| | | List<Map<String, Object>> maps = getYcxmMapList(list); |
| | | if (!maps.isEmpty()) { |
| | | List<Map<String, Object>> collect1 = maps.stream() |
| | | .sorted((map1, map2) -> map2.get("proName").toString().compareTo(map1.get("proName").toString())) |
| | | .collect(Collectors.toList()); |
| | | return AjaxResult.success(collect1); |
| | | } |
| | | return AjaxResult.success(maps); |
| | | } catch (Exception ex) { |
| | | // throw new RuntimeException(ex); |
| | | log.error(ex.getMessage()); |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | | |
| | | private static List<Map<String, Object>> getYcxmMapList(List<TjOrderYcxm> list) { |
| | | try { |
| | | Map<String, List<TjOrderYcxm>> map = list.stream().collect(Collectors.groupingBy(TjOrderYcxm::getParentName)); |
| | | List<Map<String, Object>> maps = new ArrayList<>(); |
| | | for (Map.Entry<String, List<TjOrderYcxm>> entry : map.entrySet()) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderYcxm ycxm : entry.getValue()) { |
| | | TjOrderDetail detail = new TjOrderDetail(); |
| | | detail.setOrderDetailId(Long.valueOf(ycxm.getId())); |
| | | detail.setProName(ycxm.getJcxm()); |
| | | detail.setProResult(ycxm.getJcjg()); |
| | | detail.setStanId(ycxm.getCkfw()); |
| | | detail.setProAdvice(ycxm.getDw()); |
| | | List<Map<String, Object>> btnrlist = new ArrayList<>(); |
| | | String jynr = ycxm.getJynr(); |
| | | JSONArray array = JSONUtil.parseArray(jynr); |
| | | for (Object object : array) { |
| | | Map<String, Object> objectMap = new HashMap<>(); |
| | | JSONObject jsonObject = (JSONObject) object; |
| | | String bt = jsonObject.getStr("bt"); |
| | | String nr = jsonObject.getStr("nr"); |
| | | objectMap.put("bt", bt); |
| | | objectMap.put("nr", nr); |
| | | if (null != bt || null != nr) btnrlist.add(objectMap); |
| | | } |
| | | detail.setAdvices(btnrlist); |
| | | dels.add(detail); |
| | | } |
| | | |
| | | parent.put("proName", entry.getKey()); |
| | | parent.put("jyjc", entry.getValue().get(0).getJyjc()); |
| | | parent.put("sone", dels); |
| | | maps.add(parent); |
| | | } |
| | | return maps; |
| | | } catch (NumberFormatException ex) { |
| | | // throw new RuntimeException(ex); |
| | | log.error(ex.getMessage()); |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | private AjaxResult zongjianyishengchakanyichangxiangmu(String tjNumber) { |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | try { |
| | | List<TjOrderYcxm> tjOrderYcxms = new ArrayList<>(); |
| | | TjOrder order = orderService.getOrderByTjNum(tjNumber); |
| | | String xb= customerService.getSexByTjh(tjNumber); |
| | | if (null != order) { |
| | | List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, tjNumber); |
| | | List<TjOrderYcxm> ycxmList = ycxmService.list(wq); |
| | | if (null != remarkList && !remarkList.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) { |
| | | if (!tjOrderDetail.getDeptId().equals("2")) { |
| | | String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", ""); |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | , replacedAll, |
| | | tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber |
| | | ,replacedAll |
| | | , tjOrderDetail.getProResult()); |
| | | |
| | | |
| | | if (null != maps && !maps.isEmpty()) { |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | |
| | | } else { |
| | | String[] split = tjOrderDetail.getProResult().split("[。,,::.\\s]+"); |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", "").replaceAll(" ","") |
| | | .replaceAll("症","").replaceAll("[0-9]", ""); |
| | | Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if (null != bt || null != nr) mapList.add(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } |
| | | if (null == ycxmList || ycxmList.isEmpty()) { |
| | | TjOrderYcxm ycxm = new TjOrderYcxm(); |
| | | ycxm.setTjh(tjNumber); |
| | | ycxm.setParentName(remark.getProName()); |
| | | ycxm.setJcxm(tjOrderDetail.getProName()); |
| | | ycxm.setJcjg(tjOrderDetail.getProResult()); |
| | | ycxm.setCkfw(tjOrderDetail.getStanId()); |
| | | ycxm.setDw(tjOrderDetail.getProAdvice()); |
| | | ycxm.setJynr(JSONUtil.toJsonStr(tjOrderDetail.getAdvices())); |
| | | ycxm.setJyjc(remark.getJyjc()); |
| | | if (ycxmService.save(ycxm)) { |
| | | tjOrderYcxms.add(ycxm); |
| | | } |
| | | } |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | } |
| | | if (!dels.isEmpty()) { |
| | | parent.put("proName", remark.getProName()); |
| | | parent.put("jyjc", remark.getJyjc()); |
| | | parent.put("sone", dels); |
| | | list.add(parent); |
| | | } |
| | | } |
| | | detail.setAdvices(btnrlist); |
| | | dels.add(detail); |
| | | } |
| | | if (!tjOrderYcxms.isEmpty()) { |
| | | Collections.reverse(tjOrderYcxms); |
| | | return getOrderYcxmList(tjOrderYcxms); |
| | | } |
| | | |
| | | parent.put("proName", entry.getKey()); |
| | | parent.put("jyjc", entry.getValue().get(0).getJyjc()); |
| | | parent.put("sone", dels); |
| | | maps.add(parent); |
| | | } |
| | | List<Map<String, Object>> mapList = zongjianyishengchakanyichangxiangmu(tjNum); |
| | | } |
| | | return AjaxResult.success(list); |
| | | } catch (Exception ex) { |
| | | // throw new RuntimeException(ex); |
| | | log.error(ex.getMessage()); |
| | | return AjaxResult.success(list); |
| | | } |
| | | } |
| | | |
| | | private void yichangxiangmu(String tjNumber) { |
| | | try { |
| | | List<TjOrderYcxm> tjOrderYcxmList= ycxmService.selectListByTjh(tjNumber); |
| | | String xb= customerService.getSexByTjh(tjNumber); |
| | | if(null !=tjOrderYcxmList && !tjOrderYcxmList.isEmpty()){ |
| | | |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | TjOrder order = orderService.getOrderByTjNum(tjNumber); |
| | | if (null != order) { |
| | | List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | if (null != remarkList && !remarkList.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) { |
| | | if (!tjOrderDetail.getDeptId().equals("2")) { |
| | | |
| | | String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", ""); |
| | | |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | ,replacedAll, |
| | | tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber |
| | | , replacedAll |
| | | , tjOrderDetail.getProResult()); |
| | | |
| | | |
| | | List<Map<String, Object>> collect = mapList.stream() |
| | | if (null != maps && !maps.isEmpty()) { |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | |
| | | } else { |
| | | String[] split = tjOrderDetail.getProResult().split("。|,|,"); |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", ""); |
| | | Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if (null != bt || null != nr) mapList.add(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | } |
| | | if (!dels.isEmpty()) { |
| | | parent.put("proName", remark.getProName()); |
| | | parent.put("jyjc", remark.getJyjc()); |
| | | parent.put("sone", dels); |
| | | list.add(parent); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | List<Map<String, Object>> maps = getYcxmMapList(tjOrderYcxmList); |
| | | List<Map<String, Object>> collect = list.stream() |
| | | .filter(b -> maps.stream() |
| | | .noneMatch(a -> a.get("proName").equals(b.get("proName")))) // 过滤掉在 maps 中存在的相同元素 |
| | | .collect(Collectors.toList()); |
| | | if (!collect.isEmpty()) { |
| | | maps.addAll(collect); |
| | | } |
| | | if (!maps.isEmpty()) { |
| | | List<Map<String, Object>> collect1 = maps.stream() |
| | | .sorted((map1, map2) -> map2.get("proName").toString().compareTo(map1.get("proName").toString())) |
| | | .collect(Collectors.toList()); |
| | | System.out.println("总检查看异常项目接口总耗时:" + (System.currentTimeMillis() - l)); |
| | | return AjaxResult.success(collect1); |
| | | } |
| | | System.out.println("总检查看异常项目接口总耗时:" + (System.currentTimeMillis() - l)); |
| | | |
| | | return AjaxResult.success(maps); |
| | | } else { |
| | | List<Map<String, Object>> mapList = zongjianyishengchakanyichangxiangmu(tjNum); |
| | | System.out.println("总检查看异常项目接口总耗时:" + (System.currentTimeMillis() - l)); |
| | | return AjaxResult.success(mapList); |
| | | if(!collect.isEmpty()){ |
| | | for (Map<String, Object> map : collect) { |
| | | for (TjOrderDetail detail : (List<TjOrderDetail>) map.get("sone")) { |
| | | TjOrderYcxm ycxm = new TjOrderYcxm(); |
| | | ycxm.setTjh(tjNumber); |
| | | ycxm.setParentName(map.get("proName").toString()); |
| | | ycxm.setJcxm(detail.getProName()); |
| | | ycxm.setJcjg(detail.getProResult()); |
| | | ycxm.setCkfw(detail.getStanId()); |
| | | ycxm.setDw(detail.getProAdvice()); |
| | | ycxm.setJynr(JSONUtil.toJsonStr(detail.getAdvices())); |
| | | ycxm.setJyjc(map.get("jyjc").toString()); |
| | | ycxmService.save(ycxm); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } catch (Exception ex) { |
| | | log.error(ex.getMessage()); |
| | | } |
| | | return AjaxResult.error(); |
| | | } |
| | | |
| | | @GetMapping("/delzongjianyishengchakanyichangxiangmu") |
| | |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | /*private List<Map<String, Object>> zongjianyishengchakanyichangxiangmu(String tjNumber) { |
| | | // asyncService.updateCheckType(tjNumber); |
| | | |
| | | List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | if (null != remarkList && !remarkList.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if(null !=tjOrderDetail.getProId()&& null !=tjOrderDetail.getYcbz()){ |
| | | if(!tjOrderDetail.getDeptId().equals("2")){ |
| | | List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | ,"",tjOrderDetail.getYcbz().replaceAll(" ", ""),tjNumber |
| | | ,tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]","") |
| | | ,tjOrderDetail.getProResult()); |
| | | if(null !=maps && !maps.isEmpty()){ |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | }else { |
| | | String[] split = tjOrderDetail.getProResult().split("。|,|,"); |
| | | List<Map<String,Object>> mapList=new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", ""); |
| | | // Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s); |
| | | Map<String,Object> maps= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(),s,"0"); |
| | | if(null !=maps && !maps.isEmpty()){ |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if(null !=bt || null !=nr) mapList.add(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } |
| | | |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | } |
| | | if(!dels.isEmpty()){ |
| | | parent.put("proName",remark.getProName()); |
| | | parent.put("jyjc",remark.getJyjc()); |
| | | parent.put("sone",dels); |
| | | list.add(parent); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | return list; |
| | | }*/ |
| | | |
| | | private List<Map<String, Object>> zongjianyishengchakanyichangxiangmu(String tjNumber) { |
| | | // asyncService.updateCheckType(tjNumber); |
| | | |
| | | String xb= customerService.getSexByTjh(tjNumber); |
| | | |
| | | List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | if (null != remarkList && !remarkList.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) { |
| | | if (!tjOrderDetail.getDeptId().equals("2")) { |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | , tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测 ◆]", "").replaceAll("\\[.*?\\]", "") |
| | | , tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber |
| | | , tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "") |
| | | .replaceAll("[ 测定检测 ◆]", "").replaceAll("\\[.*?\\]", "") |
| | | , tjOrderDetail.getProResult()); |
| | | |
| | | |
| | | if (null != maps && !maps.isEmpty()) { |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | |
| | | } else { |
| | | String[] split = tjOrderDetail.getProResult().split("。|,|,"); |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", ""); |
| | | // Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s); |
| | | Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if (null != bt || null != nr) mapList.add(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } |
| | | |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | } |
| | | if (!dels.isEmpty()) { |
| | | parent.put("proName", remark.getProName()); |
| | | parent.put("jyjc", remark.getJyjc()); |
| | | parent.put("sone", dels); |
| | | list.add(parent); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | @GetMapping("/chushenyemianchakanxiangmujieguo") |
| | | @ApiOperation(value = "初审页面查看项目结果接口") |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查询复查项目列表 |
| | | * @param tjNum 体检号 |
| | | * @param type 复查状态 0未复查状态 1复查状态 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getFcList") |
| | | public AjaxResult getFcList(@RequestParam("tjNum") String tjNum,@RequestParam("type") Integer type){ |
| | | TjOrder order = orderService.getOrderByTjNum(tjNum); |
| | | if (order == null) |
| | | return AjaxResult.error(); |
| | | List<ProFcListVo> list = detailService.getFcList(order.getOrderId(),type); |
| | | return AjaxResult.success(list); |
| | | } |
| | | |
| | | /** |
| | | * 复查项目提交 |
| | | * @param json |
| | | * @return |
| | | */ |
| | | @PostMapping("/UpdFcPro") |
| | | public AjaxResult updFcPro(@RequestBody String json) { |
| | | return detailService.updFcPro(json); |
| | | } |
| | | |
| | | |
| | | |
| | | @GetMapping("/zongjianyishengHuiFuyichangxiangmu") |
| | | @ApiOperation(value = "总检恢复异常项目接口") |
| | | public AjaxResult zongjianyishengHuiFuyichangxiangmu(@RequestParam String tjNum) { |
| | | |
| | | List<TjOrderYcxm> list = ycxmService.zongjianyishengHuiFuyichangxiangmu(tjNum); |
| | | return AjaxResult.success(list); |
| | | } |
| | | |
| | | |
| | | @GetMapping("/zongjianyishengHuiFuyichangxiangmuanniu") |
| | | @ApiOperation(value = "总检恢复异常项目按钮接口") |
| | | public AjaxResult zongjianyishengHuiFuyichangxiangmuanniu(@RequestParam String id) { |
| | | |
| | | int a = ycxmService.zongjianyishengHuiFuyichangxiangmuanniu(id); |
| | | return AjaxResult.success(a); |
| | | } |
| | | |
| | | |
| | | @GetMapping("/zongjianyishengCheDiShanChuyichangxiangmuanniu") |
| | | @ApiOperation(value = "总检彻底删除异常项目按钮接口") |
| | | public AjaxResult zongjianyishengCheDiShanChuyichangxiangmuanniu(@RequestParam String id) { |
| | | |
| | | int a = ycxmService.zongjianyishengCheDiShanChuyichangxiangmuanniu(id); |
| | | return AjaxResult.success(a); |
| | | } |
| | | |
| | | |
| | | |
| | | @GetMapping("/csymxmxzqtyybcjk") |
| | | @ApiOperation(value = "初审页面项目选择其他原因保存接口") |
| | | @Transactional |
| | | public AjaxResult csymxmxzqtyybcjk(@RequestParam @ApiParam("体检号") String tjNum,@RequestParam @ApiParam("项目ID") String proId, |
| | | @RequestParam @ApiParam("原因") String yy) { |
| | | |
| | | try { |
| | | String czydm = SecurityUtils.getUsername(); |
| | | String czy = SecurityUtils.getLoginUser().getUser().getNickName(); |
| | | TjProject tjProject = projectService.getById(proId); |
| | | if(null != tjProject){ |
| | | SysDept dept = deptService.getById(tjProject.getDeptId()); |
| | | |
| | | LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderRemark::getTjNumber, tjNum); |
| | | wq.eq(TjOrderRemark::getProId, proId); |
| | | TjOrderRemark remark = orderRemarkService.getOne(wq); |
| | | remark.setType(1); |
| | | if (orderRemarkService.updateById(remark)) { |
| | | orderRemarkService.csymxmxzqtyybcjk(tjNum,proId,yy,dept.getOrgType(),czy,czydm); |
| | | return AjaxResult.success(); |
| | | } |
| | | } |
| | | } catch (Exception ex) { |
| | | log.error(ex.getMessage()); |
| | | throw new RuntimeException(ex); |
| | | } |
| | | return AjaxResult.error(); |
| | | } |
| | | |
| | | |
| | | } |