| | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import lombok.var; |
| | | import org.aspectj.weaver.AjAttribute; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static com.ltkj.framework.datasource.DynamicDataSourceContextHolder.log; |
| | | import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save; |
| | | import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.setClipRect; |
| | | |
| | |
| | | @RestController |
| | | @RequestMapping ("/check") |
| | | @Api (tags = "总检医师相关接口") |
| | | @Slf4j |
| | | public class TjCheckController { |
| | | @Resource |
| | | private ITjOrderService orderService; |
| | |
| | | private HisApiMethodService controller; |
| | | @Autowired |
| | | private HisApiGetMethodService service; |
| | | |
| | | @Autowired |
| | | private HisApiConfigService hisApiConfigService; |
| | | |
| | | @GetMapping ("/getOperationPermissionsByTjNum") |
| | | @ApiOperation (value = "(初审页面 和 医生页面)根据体检号获取是否可操作权限接口 true可操作 反之不可") |
| | |
| | | @GetMapping ("/dataSynchronization") |
| | | @ApiOperation (value = "同步sql server数据到本地数据库数据接口") |
| | | @RepeatSubmit |
| | | @Transactional |
| | | // @Transactional |
| | | public AjaxResult dataSynchronization(@RequestParam String tjNumber) { |
| | | |
| | | //根据配置调取存储过程 将临时表数据存入预约表2023.12.12 |
| | | final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); |
| | | |
| | |
| | | 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()); |
| | |
| | | JSONObject object = getJSONObject(result1); |
| | | String code = object.getStr("ResultCode"); |
| | | if (null == code || !code.equals("0")) { |
| | | return AjaxResult.error("化验项目暂时无结果,请稍后同步!!!"); |
| | | return AjaxResult.error("化验项目暂时未出结果,请稍后同步!!!"); |
| | | } |
| | | JSONArray data = object.getJSONArray("ResultData"); |
| | | // int size = data.size(); |
| | | // if(size>0){ |
| | | // |
| | | // } |
| | | |
| | | for (Object datum : data) { |
| | | JSONObject jsonObject = (JSONObject) datum; |
| | | LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(order.getCardId(), jsonObject.getStr("JYBGID")); |
| | |
| | | |
| | | } |
| | | } |
| | | //同步化验项目 |
| | | 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); |
| | | AjaxResult results = service.getHISDataNew("Getexamreportinfo", maps); |
| | | // AjaxResult results = service.getHISDataNew("Getexamreportinfo", maps); |
| | | |
| | | 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){ |
| | | if (null != datas && datas.size() > 0) { |
| | | jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId()); |
| | | jcbgdService.deletedLtkjJcbgdByTjhAndTmh(order.getCardId()); |
| | | for (Map<String, Object> objectMap : datas) { |
| | | LtkjExamJcsqd jybgid = jcsqdService.getLtkjJcsqdByTjhAndTmh(order.getCardId(), objectMap.get("JCBGID").toString()); |
| | | if (null != jybgid) { |
| | | jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId(), objectMap.get("JCBGID").toString()); |
| | | jcbgdService.deletedLtkjJcbgdByTjhAndTmh(jybgid.getTmh()); |
| | | } |
| | | LtkjExamJcbgd jcbgd=new LtkjExamJcbgd(); |
| | | //保存入参出参 |
| | | // service.save((JSONObject)objectMap,"Getexamreportinfo",hisApiConfig,JSONUtil.toJsonStr(maps)); |
| | | 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("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("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("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("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("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("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("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("YXZD") || !objectMap.get("YXZD").equals("")) |
| | | jcbgd.setYxzd(objectMap.get("YXZD").toString()); |
| | | |
| | | if(null !=objectMap.get("YXBX") || !objectMap.get("YXBX").equals("")) |
| | | jcbgd.setYxbx(objectMap.get("YXBX").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("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()); |
| | | |
| | | jcbgdService.save(jcbgd); |
| | | } |
| | | jcsqdService.saveLtkjExamJcsqd(order.getCardId()); |
| | | testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); |
| | | }else { |
| | | return AjaxResult.error("检查项目暂时未出结果,请稍后同步!!!"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //同步化验项目 |
| | | 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()); |
| | | |
| | | return AjaxResult.success("同步成功"); |
| | | |
| | | |
| | | //同步检查项目给redis缓存现在不用了 |
| | | // asyncService.updateCheckType(order.getTjNumber()); |
| | | } |
| | | //化验 |
| | | testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); |
| | | //检查 |
| | | jcsqdService.saveLtkjExamJcsqd(order.getCardId()); |
| | | return AjaxResult.success("同步成功"); |
| | | } |
| | | return AjaxResult.error(); |
| | | return AjaxResult.error("未查到该人员体检记录"); |
| | | } |
| | | |
| | | //将方法返回值解析成json格式 |