From 33de5e90c14e44e1639c961a48e338c1da3d5624 Mon Sep 17 00:00:00 2001 From: zjh <zjh@888> Date: 星期三, 26 六月 2024 16:51:56 +0800 Subject: [PATCH] zjh 本地 2024/06/26 --2 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java | 708 ++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 483 insertions(+), 225 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 7332e0d..f9779ba 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 @@ -2,9 +2,14 @@ import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; 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.SysUser; import com.ltkj.common.core.redis.RedisCache; @@ -12,6 +17,7 @@ import com.ltkj.common.utils.SecurityUtils; import com.ltkj.common.utils.StringUtils; import com.ltkj.framework.config.MatchUtils; +import com.ltkj.framework.config.UserHoder; import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; import com.ltkj.hosp.domain.*; import com.ltkj.hosp.mapper.TestMapper; @@ -23,9 +29,11 @@ import com.ltkj.system.service.ISysConfigService; import com.ltkj.system.service.ISysDeptService; import com.ltkj.system.service.ISysUserService; +import com.ltkj.web.controller.his.HisApiMethodService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import lombok.var; import org.aspectj.weaver.AjAttribute; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; @@ -33,10 +41,12 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save; +import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.setClipRect; /** * @Author: 瑗垮畨璺嘲绉戞妧鏈夐檺鍏徃/璧典匠璞� @@ -80,10 +90,8 @@ private TestMapper testMapper; @Resource private TjvLtkjvtjpatService tjvLtkjvtjpatService; - @Resource private LtkjMiddleDetailService middleDetailService; - @Resource private LtkjMiddleHeadService headService; @Resource @@ -94,6 +102,9 @@ private LtkjHybgdService ltkjHybgdService; @Resource private LtkjHysqdService ltkjHysqdService; + @Autowired + private HisApiMethodService controller; + @GetMapping("/getOperationPermissionsByTjNum") @@ -125,82 +136,89 @@ @ApiParam(value = "寮�濮嬫椂闂�") @RequestParam(required = false) String beginTime, @ApiParam(value = "缁撴潫鏃堕棿") @RequestParam(required = false) String endTime) { - DateTime beginTimes = null; - DateTime endTimes = null; - if (null != beginTime && null != endTime) { - beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); - endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); - } - //鍒濆鍖栦綋妫�璁㈠崟琛� - List<TjOrder> orderList = null; - List<TjCustomer> customerList = new ArrayList<>(); - Map<String, Object> map = new HashMap<>(); - - if (checkStatus == 0) - asyncService.wCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes)); - if (checkStatus == 1) - asyncService.yCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes)); - - //鏍规嵁濮撳悕鏌ヨ - if (null != name && !"".equals(name)) { - List<TjCustomer> list = customerService.getTjCustomerList(name); - if (null != list && list.size() > 0) { - List<TjCustomer> lists = new ArrayList<>(); - for (TjCustomer customer : list) { - orderList = orderService.getCsTjOrderListByCusId(customer.getCusId()); - if (null != orderList && orderList.size() > 0) { - for (TjOrder tjOrder : orderList) { - customer.setTjNumber(tjOrder.getTjNumber()); - customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); - customer.setOrderId(tjOrder.getOrderId()); - customer.setTjTime(tjOrder.getCreateTime()); - customer.setFinishTime(tjOrder.getFinishTime()); - customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); - customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); - customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); - customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); - if (tjOrder.getFirmId().equals("0")) { - customer.setTjCompName(null); - } else { - customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); - } - lists.add(customer); - } - } - } - List<TjCustomer> customers = null; - if (lists.size() > 0) { - customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - } - map.put("customers", customers); - map.put("total", lists.size()); - return AjaxResult.success(map); - } - return AjaxResult.success("鏆傛棤鏁版嵁"); - } - - //鏉′欢鏌ヨ - if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { - orderList = orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); - return getResult(page, pageSize, orderList, customerList, map); - } - - List<TjCustomer> customers = null; - if (checkStatus == 0) { - customers = redisCache.getCacheMapValue("cScheck", "ws"); - } - if (checkStatus == 1) { - customers = redisCache.getCacheMapValue("cScheck", "ys"); - } - if (customers != null && customers.size() > 0) { - List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - map.put("customers", customerLists); - map.put("total", customers.size()); - return AjaxResult.success(map); - } else { - orderList = orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); - return getResult(page, pageSize, orderList, customerList, map); - } +// DateTime beginTimes = null; +// DateTime endTimes = null; +// if (null != beginTime && null != endTime) { +// beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); +// endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); +// } +// //鍒濆鍖栦綋妫�璁㈠崟琛� +// List<TjOrder> orderList = null; +// List<TjCustomer> customerList = new ArrayList<>(); +// Map<String, Object> map = new HashMap<>(); +// +// if (checkStatus == 0) +// asyncService.wCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes)); +// if (checkStatus == 1) +// asyncService.yCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes)); +// +// //鏍规嵁濮撳悕鏌ヨ +// if (null != name && !"".equals(name)) { +// List<TjCustomer> list = customerService.getTjCustomerList(name); +// if (null != list && list.size() > 0) { +// List<TjCustomer> lists = new ArrayList<>(); +// for (TjCustomer customer : list) { +// orderList = orderService.getCsTjOrderListByCusId(customer.getCusId()); +// if (null != orderList && orderList.size() > 0) { +// for (TjOrder tjOrder : orderList) { +// customer.setTjNumber(tjOrder.getTjNumber()); +// customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); +// customer.setOrderId(tjOrder.getOrderId()); +// customer.setTjTime(tjOrder.getCreateTime()); +// customer.setFinishTime(tjOrder.getFinishTime()); +// customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); +// customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); +// customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); +// customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); +// if (tjOrder.getFirmId().equals("0")) { +// customer.setTjCompName(null); +// } else { +// customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); +// } +// lists.add(customer); +// } +// } +// } +// List<TjCustomer> customers = null; +// if (lists.size() > 0) { +// customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// } +// map.put("customers", customers); +// map.put("total", lists.size()); +// return AjaxResult.success(map); +// } +// return AjaxResult.success("鏆傛棤鏁版嵁"); +// } +// +// //鏉′欢鏌ヨ +// if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { +// orderList = orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// return getResult(page, pageSize, orderList, customerList, map); +// } +// +// List<TjCustomer> customers = null; +// if (checkStatus == 0) { +// customers = redisCache.getCacheMapValue("cScheck", "ws"); +// } +// if (checkStatus == 1) { +// customers = redisCache.getCacheMapValue("cScheck", "ys"); +// } +// if (customers != null && customers.size() > 0) { +// List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// map.put("customers", customerLists); +// map.put("total", customers.size()); +// return AjaxResult.success(map); +// } else { +// orderList = orderService.getCsTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// return getResult(page, pageSize, orderList, customerList, map); +// } + String value = String.valueOf(compId); + if (tjNumber == null) tjNumber = ""; + if (compId == null) value = ""; + if (name == null) name = ""; + if (beginTime == null) beginTime = ""; + if (endTime == null) endTime = ""; + return AjaxResult.success(orderService.getCsCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name)); } @@ -210,27 +228,37 @@ @GetMapping("/cSWebGetProByTjNumAndOrderId") @ApiOperation(value = "(鍒濆椤甸潰)鐐瑰嚮浣撴浜哄憳灞曠ず浣撴椤圭洰鎺ュ彛") public AjaxResult cSWebGetProByTjNumAndOrderId(@ApiParam(value = "浣撴鍙�") @RequestParam String tjNumber) { - List<TjOrderRemark> orderRemarkList = orderRemarkService.getTjOrderRemarkListByTjNum(tjNumber); - List<CsProVo> list = new ArrayList<>(); - if (null != orderRemarkList && orderRemarkList.size() > 0) { - for (TjOrderRemark remark : orderRemarkList) { - CsProVo vo = new CsProVo(); - vo.setDeptName(deptService.getById(remark.getDeptId()).getDeptName()); - vo.setProName(projectService.getById(remark.getProId()).getProName()); - vo.setType(remark.getType()); - if (null != remark.getDoctorName()) { - vo.setDoctorName(userService.getById(remark.getDoctorName()).getNickName()); - vo.setBcdoctorName(userService.getById(remark.getDoctorName()).getNickName()); - } - vo.setSffs("缁熸敹"); - vo.setIsPay("宸叉敹璐�"); - vo.setQdcreateTime(remark.getCreateTime()); - vo.setBcupdateTime(remark.getUpdateTime()); - vo.setZhupdateTime(remark.getUpdateTime()); - list.add(vo); - } +// List<TjOrderRemark> orderRemarkList = orderRemarkService.getTjOrderRemarkListByTjNum(tjNumber); +// List<CsProVo> list = new ArrayList<>(); +// if (null != orderRemarkList && orderRemarkList.size() > 0) { +// for (TjOrderRemark remark : orderRemarkList) { +// CsProVo vo = new CsProVo(); +// vo.setDeptName(deptService.getById(remark.getDeptId()).getDeptName()); +// vo.setProName(projectService.getById(remark.getProId()).getProName()); +// vo.setType(remark.getType()); +// if (null != remark.getDoctorName()) { +// vo.setDoctorName(userService.getById(remark.getDoctorName()).getNickName()); +// vo.setBcdoctorName(userService.getById(remark.getDoctorName()).getNickName()); +// } +// vo.setSffs("缁熸敹"); +// vo.setIsPay("宸叉敹璐�"); +// vo.setQdcreateTime(remark.getCreateTime()); +// vo.setBcupdateTime(remark.getUpdateTime()); +// vo.setZhupdateTime(remark.getUpdateTime()); +// list.add(vo); +// } +// List<CsProVo> list1 = orderRemarkService.cSWebGetProByTjNumAndOrderId(tjNumber); +// Collections.sort(list, new Comparator<CsProVo>() { +// @Override +// public int compare(CsProVo o1, CsProVo o2) { +// return o1.getType() - o2.getType(); +// } +// }); +// } - Collections.sort(list, new Comparator<CsProVo>() { + List<CsProVo> list = orderRemarkService.cSWebGetProByTjNumAndOrderId(tjNumber); + if (null != list && list.size() > 0) { + list.sort(new Comparator<CsProVo>() { @Override public int compare(CsProVo o1, CsProVo o2) { return o1.getType() - o2.getType(); @@ -251,17 +279,15 @@ @ApiParam(value = "鐘舵�� 0鍚屾剰 1鎷掔粷 榛樿鍚屾剰") @RequestParam(defaultValue = "0") Integer status, @ApiParam(value = "椹冲洖鐞嗙敱") @RequestParam(required = false) String remark) { int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); - if (num > 0) return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘瀹℃牳!"); + if (num > 0) return AjaxResult.error("璇锋鏌ユ槸鍚﹀瓨鍦ㄦ湭妫�鎴栧欢鏈熼」鐩�"); if (null != tjNumber) { Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); SysUser sysUser = userService.getById(userId); - LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); - wq1.eq(TjOrder::getTjNumber, tjNumber); - TjOrder tjOrder = orderService.getOne(wq1); + TjOrder tjOrder = orderService.getOrderByTjNum(tjNumber); if (null != tjOrder) { tjOrder.setConfirmTime(new DateTime()); tjOrder.setConfirmDoctor(sysUser.getNickName()); - tjOrder.setConfirmStatus(remark); + tjOrder.setConfirmStatus(String.valueOf(status)); if (status == 0) { tjOrder.setStatus(TjConstants.TJ_CHECK); asyncService.updateCheckType(tjNumber); @@ -291,41 +317,171 @@ */ @GetMapping("/dataSynchronization") @ApiOperation(value = "鍚屾sql server鏁版嵁鍒版湰鍦版暟鎹簱鏁版嵁鎺ュ彛") + @RepeatSubmit + @Transactional public AjaxResult dataSynchronization(@RequestParam String 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)) { - List<LtkjHysqd> one = testMapper.getHysqdByTmh(tjNumber); - if (one != null) { - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - ltkjHysqdService.saveBatch(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - for (LtkjHysqd ltkjHysqd : one) { + tbhyxm(order); + // List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber); +// if (one2 != null && one2.size() > 0) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// ltkjExamJcsqdService.saveBatch(one2); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// for (LtkjExamJcsqd ltkjExamJcsqd : one2) { +// List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh()); +// if (one3 != null && one3.size() > 0) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// ltkjExamJcbgdService.saveBatch(one3); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// } +// } +// } + //鍚屾鍖栭獙椤圭洰 + 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()); + if(null !=baoGaoDans && baoGaoDans.size()>0){ + +// List<LtkjHysqd> one = testMapper.getHysqdByTmh(order.getCardId()); +// if (one != null && one.size() > 0) { +// for (LtkjHysqd ltkjHysqd : one) { +// ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh()); +// ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(ltkjHysqd.getTmh()); +// } +// } +// for (String baoGaoDan : baoGaoDans) { +// 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(order.getCreateTime()), "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; + LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(order.getCardId(), jsonObject.getStr("JYBGID")); + if(null !=jybgid){ + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(order.getCardId(),jsonObject.getStr("JYBGID")); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(jybgid.getTmh()); + } + 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")); + 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")){ + return AjaxResult.error("鍖栭獙椤圭洰鏆傛椂鏃犵粨鏋�,璇风◢鍚庡悓姝�!!!"); + } + 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.setYcbz(js.getStr("YCTS")); +// bgd.setTpurl(js.getStr("")); + ltkjHybgdService.save(bgd); + } + } + } +// } + //鍚屾鍖栭獙椤圭洰 + 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("鍚屾鎴愬姛"); + } + return AjaxResult.error(); + } + + //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 + public JSONObject getJSONObject(String builder) { + String Response = JSONUtil.parseObj(builder).getStr("Response"); + return JSONUtil.parseObj(Response); + } + + //鑾峰彇鏂规硶杩斿洖鍊间俊鎭� + public String getAjaxResult(AjaxResult result) { + return result.get("data").toString(); + } + + private void tbhyxm(TjOrder order) { + List<LtkjHysqd> one = testMapper.getHysqdByTmh(order.getCardId()); + if (one != null && one.size() > 0) { + for (LtkjHysqd ltkjHysqd : one) { + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh()); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(ltkjHysqd.getTmh()); + LtkjHysqd hysqd = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh()); + if (hysqd == null) { + ltkjHysqdService.save(ltkjHysqd); + DynamicDataSourceContextHolder.clearDataSourceType(); List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh()); - if (one1 != null) { + if (one1 != null && one1.size() > 0) { DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); ltkjHybgdService.saveBatch(one1); DynamicDataSourceContextHolder.clearDataSourceType(); } } } - - List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber); - if (one2 != null) { - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - ltkjExamJcsqdService.saveBatch(one2); - DynamicDataSourceContextHolder.clearDataSourceType(); - for (LtkjExamJcsqd ltkjExamJcsqd : one2) { - List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh()); - if (one3 != null) { - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - ltkjExamJcbgdService.saveBatch(one3); - DynamicDataSourceContextHolder.clearDataSourceType(); - } - } - } } - return AjaxResult.success("鍚屾鎴愬姛"); } @@ -343,96 +499,103 @@ @ApiParam(value = "濮撳悕)") @RequestParam(required = false) String name, @ApiParam(value = "寮�濮嬫椂闂�") @RequestParam(required = false) String beginTime, @ApiParam(value = "缁撴潫鏃堕棿") @RequestParam(required = false) String endTime) { + // String config = configService.selectConfigByKey("tj_confirm"); +// DateTime beginTimes = null; +// DateTime endTimes = null; +// if (null != beginTime && null != endTime) { +// beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); +// endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); +// } +// asyncService.checkSetCustomerLisByRedis(config); +// //鍒濆鍖栦綋妫�璁㈠崟琛� +// List<TjOrder> orderList = null; +// List<TjCustomer> customerList = new ArrayList<>(); +// Map<String, Object> map = new HashMap<>(); +// +// //濮撳悕鏌ヨ +// if (null != name && !"".equals(name)) { +// List<TjCustomer> list = customerService.getTjCustomerList(name); +// if (null != list && list.size() > 0) { +// List<TjCustomer> lists = new ArrayList<>(); +// for (TjCustomer customer : list) { +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId()); +// } else { +// orderList = orderService.getTjOrderListByCusId(customer.getCusId()); +// } +// if (null != orderList && orderList.size() > 0) { +// for (TjOrder tjOrder : orderList) { +// customer.setTjNumber(tjOrder.getTjNumber()); +// customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); +// customer.setOrderId(tjOrder.getOrderId()); +// customer.setTjTime(tjOrder.getFinishTime()); +// customer.setFinishTime(tjOrder.getFinishTime()); +// customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); +// customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); +// customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); +// customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); +// customer.setTjCategory(tjOrder.getTjCategory()); +// if (tjOrder.getFirmId().equals("0")) { +// customer.setTjCompName(null); +// } else { +// customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); +// } +// lists.add(customer); +// } +// } +// } +// List<TjCustomer> customers = null; +// if (lists.size() > 0) { +// customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// } +// map.put("customers", customers); +// map.put("total", lists.size()); +// return AjaxResult.success(map); +// } +// return AjaxResult.success("鏆傛棤鏁版嵁"); +// } +// +// //鏉′欢鏌ヨ +// if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { +// //鍒ゆ柇鏄惁寮�鍚垵瀹� +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } else { +// orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } +// return getResult(page, pageSize, orderList, customerList, map); +// } +// +// List<TjCustomer> customers = null; +// if (null != checkStatus && checkStatus == 0) { +// customers = redisCache.getCacheMapValue("check", "ws"); +// } +// if (null != checkStatus && checkStatus == 1) { +// customers = redisCache.getCacheMapValue("check", "ys"); +// } +// if (customers != null && customers.size() > 0) { +//// asyncService.addRedis(customers); +// List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// map.put("customers", customerLists); +// map.put("total", customers.size()); +// return AjaxResult.success(map); +// } else { +// //鍒ゆ柇鏄惁寮�鍚垵瀹� +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } else { +// orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } +// return getResult(page, pageSize, orderList, customerList, map); +// } - String config = configService.selectConfigByKey("tj_confirm"); - DateTime beginTimes = null; - DateTime endTimes = null; - if (null != beginTime && null != endTime) { - beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); - endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); - } - asyncService.checkSetCustomerLisByRedis(config); - //鍒濆鍖栦綋妫�璁㈠崟琛� - List<TjOrder> orderList = null; - List<TjCustomer> customerList = new ArrayList<>(); - Map<String, Object> map = new HashMap<>(); - - //濮撳悕鏌ヨ - if (null != name && !"".equals(name)) { - List<TjCustomer> list = customerService.getTjCustomerList(name); - if (null != list && list.size() > 0) { - List<TjCustomer> lists = new ArrayList<>(); - for (TjCustomer customer : list) { - if ("Y".equals(config)) { - orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId()); - } else { - orderList = orderService.getTjOrderListByCusId(customer.getCusId()); - } - if (null != orderList && orderList.size() > 0) { - for (TjOrder tjOrder : orderList) { - customer.setTjNumber(tjOrder.getTjNumber()); - customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); - customer.setOrderId(tjOrder.getOrderId()); - customer.setTjTime(tjOrder.getFinishTime()); - customer.setFinishTime(tjOrder.getFinishTime()); - customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); - customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); - customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); - customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); - customer.setTjCategory(tjOrder.getTjCategory()); - if (tjOrder.getFirmId().equals("0")) { - customer.setTjCompName(null); - } else { - customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); - } - lists.add(customer); - } - } - } - List<TjCustomer> customers = null; - if (lists.size() > 0) { - customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - } - map.put("customers", customers); - map.put("total", lists.size()); - return AjaxResult.success(map); - } - return AjaxResult.success("鏆傛棤鏁版嵁"); - } - - //鏉′欢鏌ヨ - if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { - //鍒ゆ柇鏄惁寮�鍚垵瀹� - if ("Y".equals(config)) { - orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); - } else { - orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); - } - return getResult(page, pageSize, orderList, customerList, map); - } - - List<TjCustomer> customers = null; - if (null != checkStatus && checkStatus == 0) { - customers = redisCache.getCacheMapValue("check", "ws"); - } - if (null != checkStatus && checkStatus == 1) { - customers = redisCache.getCacheMapValue("check", "ys"); - } - if (customers != null && customers.size() > 0) { -// asyncService.addRedis(customers); - List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); - map.put("customers", customerLists); - map.put("total", customers.size()); - return AjaxResult.success(map); - } else { - //鍒ゆ柇鏄惁寮�鍚垵瀹� - if ("Y".equals(config)) { - orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); - } else { - orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); - } - return getResult(page, pageSize, orderList, customerList, map); - } + String value = String.valueOf(compId); + if (tjNumber == null) tjNumber = ""; + if (compId == null) value = ""; + 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)); } /** @@ -470,9 +633,10 @@ if (null != customer) { customer.setCusNumber(customer.getCusNumber() + 1); if (customerService.updateById(customer)) { - LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); - wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); - transitionService.remove(wqq); +// LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); +// wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); +// wqq.eq(TbTransition::getCardId, customer.getCardId()); +// transitionService.remove(wqq); asyncService.updateCheckType(tjNumber); return AjaxResult.success("鎿嶄綔鎴愬姛"); } @@ -488,18 +652,18 @@ /** - * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏 + * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�旈潪鍖栭獙椤圭洰 * * @param tjNumber * @return */ @GetMapping("/updateCheckType") - @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏") + @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�旈潪鍖栭獙椤圭洰") public AjaxResult updateCheckType(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) { - if (redisCache.hasKey("updateCheckType" + tjNumber)) { - List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber); - return AjaxResult.success(cacheMapValue); - } +// if (redisCache.hasKey("updateCheckType" + tjNumber)) { +// List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber); +// return AjaxResult.success(cacheMapValue); +// } return getAjaxResult(tjNumber); } @@ -521,6 +685,16 @@ Map<String, Object> parent = new HashMap<>(); parent.put("checkAdvice", one.getCheckAdvice()); TjProject project = projectService.selectTjProjectByProId(remark.getProId()); + //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛� + if ("N".equals(project.getNeedReport())) { + continue; + } + + //鍒ゆ柇璇ラ」鐩槸鍚︽楠岀椤圭洰 2024/2/28g + if (project.getDeptId() == 241) { + continue; + } + if (null != project) { parent.put("parent", project.getProName()); parent.put("parentId", project.getProId().toString()); @@ -568,7 +742,91 @@ } else { return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁"); } -// } + } + return AjaxResult.success(list); + } + return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁锛�"); + } + + + /** + * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�斿寲楠岄」鐩� + * + * @param tjNumber + * @return + */ + @GetMapping("/updateCheckTypeHuaYan") + @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�斿寲楠岄」鐩�") + public AjaxResult updateCheckTypeHuaYan(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) { +// asyncService.updateCheckType(tjNumber); + List<Map<String, Object>> list = new ArrayList<>(); + TjOrder one = orderService.getOrderByTjNum(tjNumber); + + if (one == null) { + return AjaxResult.error("鏆傛棤鏁版嵁锛侊紒"); + } + final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); + if(null !=getInfoFromSqlData && getInfoFromSqlData.equals("Y")) + tbhyxm(one); +// TjCustomer customer = customerService.getById(one.getUserId()); + List<TjOrderRemark> remarkList = orderRemarkService.addHuaYanTable(tjNumber); + List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanTable(tjNumber); + + + if (null != remarkList && remarkList.size() > 0) { + for (TjOrderRemark remark : remarkList) { + Map<String, Object> parent = new HashMap<>(); + parent.put("checkAdvice", one.getCheckAdvice()); + parent.put("parent", remark.getProName()); + parent.put("parentId", remark.getProId().toString()); + List<TjOrderDetail> dels=new ArrayList<>(); + if (null != tjOrderDetails && tjOrderDetails.size() > 0) { + for (TjOrderDetail tjOrderDetail : tjOrderDetails) { + if(remark.getProId().equals(tjOrderDetail.getProId())){ + String ckfw = tjOrderDetail.getStanId(); + if (StrUtil.isNotBlank(ckfw)) { + try { + Integer.parseInt(tjOrderDetail.getYcbz()); + String[] split = ckfw.split("-"); + BigDecimal min = new BigDecimal(split[0]); + BigDecimal max = new BigDecimal(split[1]); + String proResult = tjOrderDetail.getProResult(); + BigDecimal jyjgval = new BigDecimal(proResult); + if (jyjgval.compareTo(min) < 0) { + tjOrderDetail.setYcbz("鈫�"); + } else if (jyjgval.compareTo(max) > 0) { + tjOrderDetail.setYcbz("鈫�"); + }else { + tjOrderDetail.setYcbz(""); + } + } catch (NumberFormatException ignored) { } + } + if(null !=tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().equals("")){ + tjOrderDetail.setProResult(tjOrderDetail.getProResult()+" ["+tjOrderDetail.getYcbz()+"]"); + } + dels.add(tjOrderDetail); + } + } + String summary = remark.getSummary(); + if (null != summary) { + String[] split = summary.split(";"); + parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(split)); + } else { + parent.put("parentAdvice", null); + } + if(dels.size()==0){ + continue; + } + parent.put("sons", dels); + parent.put("remark", remark.getRemark()); + if (remark.getDoctorName() != null && null != userService.getById(remark.getDoctorName())) { + parent.put("doctorName", userService.getById(remark.getDoctorName()).getNickName()); + } + + list.add(parent); + } else { + return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁"); + } } return AjaxResult.success(list); } -- Gitblit v1.8.0