| | |
| | | import cn.hutool.json.JSONArray; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.alibaba.druid.sql.visitor.functions.If; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.ltkj.common.core.domain.AjaxResult; |
| | |
| | | import com.ltkj.common.utils.IdUtils; |
| | | import com.ltkj.common.utils.StringUtils; |
| | | import com.ltkj.framework.config.MatchUtils; |
| | | import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; |
| | | import com.ltkj.hosp.domain.*; |
| | | import com.ltkj.hosp.hisDto.*; |
| | | import com.ltkj.hosp.mapper.TjSamplingMapper; |
| | |
| | | import com.ltkj.web.controller.lis.LisApiMethod; |
| | | import com.ltkj.web.controller.pacs.PacsApiMethodService; |
| | | import com.ltkj.web.controller.system.SamplingServiceApi; |
| | | import jodd.util.StringUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Async; |
| | |
| | | private ITjProAdvicerulesService tjProAdvicerulesService; |
| | | |
| | | |
| | | |
| | | @Override |
| | | public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { |
| | | long l = System.currentTimeMillis(); |
| | |
| | | redisCache.deleteObject(tjCustomer.getCusIdcard() + "cusId"); |
| | | if (null != tbTransitionList && tbTransitionList.size() > 0) { |
| | | |
| | | tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); |
| | | |
| | | //修改每项的原价现价 |
| | | for (TbTransition transition : tbTransitionList) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { |
| | | |
| | | tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId())); |
| | | boolean b = tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), |
| | | String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); |
| | | if (!b) { |
| | | List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId())); |
| | | if (null != proList && !proList.isEmpty()) { |
| | |
| | | if (null != tjReservation && tjReservation.getPayType() == 1) { |
| | | tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), |
| | | sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); |
| | | orderRemarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString()); |
| | | orderRemarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); |
| | | } |
| | | } |
| | | if (tjFlowingWater.getPayStasus() == 1) { |
| | | tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), |
| | | sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); |
| | | orderRemarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString()); |
| | | orderRemarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); |
| | | } |
| | | if (tjFlowingWater.getDiscount() == null) { |
| | | transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), new BigDecimal(10), tjOrder.getTjNumber()); |
| | |
| | | transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), BigDecimal.valueOf(Long.parseLong(tjFlowingWater.getDiscount())), tjOrder.getTjNumber()); |
| | | } |
| | | |
| | | tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); |
| | | // List<TjOrderDetail> list = tjOrderDetailService.getTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId())); |
| | | // if (list != null) { |
| | | // for (TjOrderDetail tjOrderDetail : list) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void collectFees(TjOrder order, List<TjConsumables> list2, List<TbTransition> tbTransitionList, SysUser sysUser, String discount) { |
| | | // orderRemarkService.deletedOrderRemarkByTjNum(order.getTjNumber()); |
| | | // redisCache.deleteObject("getOrderDetailByProParentId" + order.getTjNumber()); |
| | |
| | | } |
| | | |
| | | List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId()); |
| | | addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser,null); |
| | | addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser, null); |
| | | List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(order.getTjNumber()); |
| | | xdPictureService.saveBatch(xdPictureList); |
| | | } |
| | | |
| | | public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) { |
| | | public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser, String jxbz) { |
| | | String lis_tmh_prefix = sysConfigService.selectConfigByKey("make_lis_tmh_prefix"); |
| | | String config = configService.selectConfigByKey("sfkqdyhis"); |
| | | Boolean lisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); |
| | |
| | | samplingService.save(sampling); |
| | | } |
| | | } |
| | | if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))){ |
| | | if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))) { |
| | | AjaxResult ajaxResult = lisApiMethod.getJyFlHb(); |
| | | if (ajaxResult.get("code").toString().equals("200")){ |
| | | if (ajaxResult.get("code").toString().equals("200")) { |
| | | String str = ajaxResult.get("data").toString(); |
| | | str = str.replace("=", ":"); |
| | | JSONArray array = JSONUtil.parseArray(str); |
| | |
| | | lisJyflhb.setMc(object.getStr("mc")); |
| | | lisJyflhb.setFlbm(object.getStr("flbm")); |
| | | LambdaQueryWrapper<LisJyflhb> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(LisJyflhb::getFlbm,lisJyflhb.getFlbm()); |
| | | wrapper.eq(LisJyflhb::getFlbm, lisJyflhb.getFlbm()); |
| | | LisJyflhb jyflhb = lisJyflhbService.getOne(wrapper); |
| | | if (jyflhb == null) { |
| | | lisJyflhb.setId(IdUtil.getSnowflake().nextId()); |
| | | lisJyflhbService.save(lisJyflhb); |
| | | }else { |
| | | } else { |
| | | lisJyflhb.setId(jyflhb.getId()); |
| | | lisJyflhbService.updateById(lisJyflhb); |
| | | } |
| | |
| | | } |
| | | |
| | | } |
| | | if (StrUtil.isNotBlank(jxbz)){ |
| | | tjSamplingMapper.updateUserIdByTjNumAndJxbz(order.getTjNumber(),sysUser.getNickName(), String.valueOf(sysUser.getUserId()),jxbz); |
| | | }else { |
| | | tjSamplingMapper.updateUserIdByTjNum(order.getTjNumber(),sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | if (StrUtil.isNotBlank(jxbz)) { |
| | | tjSamplingMapper.updateUserIdByTjNumAndJxbz(order.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), jxbz); |
| | | } else { |
| | | tjSamplingMapper.updateUserIdByTjNum(order.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void abandonCheck(String tjNumber, TjOrder tjOrder, List<TjOrderDetail> list, SysUser sysUser) { |
| | | for (TjOrderDetail tjOrderDetail : list) { |
| | | LambdaQueryWrapper<TjProject> wq1 = new LambdaQueryWrapper<>(); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | public void updateOrdeltile(List<TjOrderDetail> tjOrderDetailList, SysUser sysUser, TjOrder order,TjOrderRemark orderRemark) { |
| | | String deptname=""; |
| | | TjProject tjProject = projectService.getById(orderRemark.getProId()); |
| | | if(null !=tjProject){ |
| | | SysDept dept = deptService.getById(tjProject.getDeptId()); |
| | | if(dept.getParentId()!=100L){ |
| | | deptname= deptService.getprentks(dept.getParentId().toString()); |
| | | }else { |
| | | deptname=dept.getDeptName(); |
| | | } |
| | | //@Async("async") |
| | | public void updateOrdeltile(List<TjOrderDetail> tjOrderDetailList, SysUser sysUser, TjOrder order, TjOrderRemark orderRemark) { |
| | | |
| | | try { |
| | | String deptname = ""; |
| | | TjProject tjProject = projectService.getById(orderRemark.getProId()); |
| | | if (null != tjProject) { |
| | | SysDept dept = deptService.getById(tjProject.getDeptId()); |
| | | if (dept.getParentId() != 100L) { |
| | | deptname = deptService.getprentks(dept.getParentId().toString()); |
| | | } else { |
| | | deptname = dept.getDeptName(); |
| | | } |
| | | |
| | | StringBuilder ssyszys = new StringBuilder(); |
| | | StringBuilder ssyszyjgs = new StringBuilder(); |
| | | List<Map<String, Object>> jianyilis=new ArrayList<>(); |
| | | for (TjOrderDetail detail : tjOrderDetailList) { |
| | | detail.setTjStatus(1L); |
| | | LambdaQueryWrapper<TjStandard> wq0 = new LambdaQueryWrapper<>(); |
| | | wq0.eq(TjStandard::getProId, detail.getProId()); |
| | | detail.setUpdateBy(sysUser.getNickName()); |
| | | detail.setUpdateTime(new Date()); |
| | | detail.setCreateId(String.valueOf(sysUser.getUserId())); |
| | | detail.setUpdateId(String.valueOf(sysUser.getUserId())); |
| | | tjOrderDetailService.updateById(detail); |
| | | |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, order.getTjNumber()); |
| | | wq.eq(TjOrderYcxm::getJcxm, detail.getProName()); |
| | | if (detail.getExceptionDesc() == 1) { |
| | | |
| | | if(!detail.getProName().contains("舒张压") && !detail.getProName().contains("收缩压")){ |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(detail.getProId().toString() |
| | | , detail.getProName().replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", ""), "", order.getTjNumber() |
| | | , detail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "") |
| | | , detail.getProResult()); |
| | | |
| | | |
| | | for (TjOrderDetail detail : tjOrderDetailList) { |
| | | detail.setTjStatus(1L); |
| | | LambdaQueryWrapper<TjStandard> wq0 = new LambdaQueryWrapper<>(); |
| | | wq0.eq(TjStandard::getProId, detail.getProId()); |
| | | detail.setUpdateBy(sysUser.getNickName()); |
| | | detail.setUpdateTime(new Date()); |
| | | detail.setCreateId(String.valueOf(sysUser.getUserId())); |
| | | detail.setUpdateId(String.valueOf(sysUser.getUserId())); |
| | | tjOrderDetailService.updateById(detail); |
| | | try { |
| | | LambdaQueryWrapper<TjOrderYcxm> wq=new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh,order.getTjNumber()); |
| | | wq.eq(TjOrderYcxm::getJcxm,detail.getProName()); |
| | | TjOrderYcxm ycxm = ycxmService.getOne(wq); |
| | | if(null !=ycxm){ |
| | | ycxm.setJcjg(detail.getProResult()); |
| | | List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(detail.getProId().toString() |
| | | ,"","",order.getTjNumber() |
| | | ,detail.getProName().replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]","") |
| | | ,detail.getProResult()); |
| | | String[] split = detail.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> mapss = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname, s, "0"); |
| | | if (null != mapss && !mapss.isEmpty()) { |
| | | Object bt = mapss.get("bt"); |
| | | Object nr = mapss.get("nr"); |
| | | if (null != bt || null != nr) { |
| | | |
| | | String[] split = detail.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> mapss= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname,s,"0"); |
| | | if(null !=mapss && !mapss.isEmpty()){ |
| | | Object bt = mapss.get("bt"); |
| | | Object nr = mapss.get("nr"); |
| | | if(null !=bt || null !=nr){ |
| | | } |
| | | mapList.add(mapss); |
| | | } |
| | | } |
| | | TjOrderYcxm ycxm = ycxmService.getOne(wq); |
| | | if (null != ycxm) { |
| | | ycxm.setJcjg(detail.getProResult()); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | ycxm.setJynr(JSONUtil.toJsonStr(maps)); |
| | | } |
| | | if (!mapList.isEmpty()) { |
| | | ycxm.setJynr(JSONUtil.toJsonStr(mapList)); |
| | | } |
| | | ycxmService.updateById(ycxm); |
| | | }else { |
| | | TjOrderYcxm orderYcxm =new TjOrderYcxm(); |
| | | orderYcxm.setTjh(order.getTjNumber()); |
| | | orderYcxm.setParentName(tjProject.getProName()); |
| | | orderYcxm.setJcxm(detail.getProName()); |
| | | orderYcxm.setJcjg(detail.getProResult()); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | orderYcxm.setJynr(JSONUtil.toJsonStr(maps)); |
| | | } |
| | | if (!mapList.isEmpty()) { |
| | | orderYcxm.setJynr(JSONUtil.toJsonStr(mapList)); |
| | | } |
| | | orderYcxm.setJyjc("0"); |
| | | ycxmService.save(orderYcxm); |
| | | } |
| | | }else { |
| | | |
| | | } mapList.add(mapss); |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(detail.getProId().toString() |
| | | , detail.getProName().replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", ""), "", order.getTjNumber() |
| | | , detail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "") |
| | | , detail.getProResult()); |
| | | |
| | | |
| | | String[] split = detail.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> mapss = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname, s, "0"); |
| | | if (null != mapss && !mapss.isEmpty()) { |
| | | Object bt = mapss.get("bt"); |
| | | Object nr = mapss.get("nr"); |
| | | if (null != bt || null != nr) { |
| | | |
| | | } |
| | | mapList.add(mapss); |
| | | } |
| | | } |
| | | |
| | | if (null != maps && !maps.isEmpty()) { |
| | | jianyilis.addAll(maps); |
| | | } |
| | | if (!mapList.isEmpty()) { |
| | | jianyilis.addAll(mapList); |
| | | } |
| | | ssyszys.append(detail.getProName()).append("/"); |
| | | ssyszyjgs.append(detail.getProResult()).append("/"); |
| | | |
| | | } |
| | | }else { |
| | | if(detail.getProName().contains("舒张压") || detail.getProName().contains("收缩压")){ |
| | | ssyszys.append(detail.getProName()).append("/"); |
| | | ssyszyjgs.append(detail.getProResult()).append("/"); |
| | | |
| | | } |
| | | ycxmService.remove(wq); |
| | | } |
| | | } |
| | | |
| | | if(null != maps && !maps.isEmpty()){ |
| | | ycxm.setJynr(JSONUtil.toJsonStr(maps)); |
| | | } |
| | | if( !mapList.isEmpty()){ |
| | | ycxm.setJynr(JSONUtil.toJsonStr(mapList)); |
| | | } |
| | | ycxmService.updateById(ycxm); |
| | | if(detail.getExceptionDesc()==0)ycxmService.remove(wq); |
| | | } |
| | | } catch (Exception e) { |
| | | if(StrUtil.isNotBlank(ssyszys.toString())){ |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, order.getTjNumber()); |
| | | wq.like(TjOrderYcxm::getJcxm,"舒张压"); |
| | | ycxmService.remove(wq); |
| | | TjOrderYcxm orderYcxm =new TjOrderYcxm(); |
| | | orderYcxm.setTjh(order.getTjNumber()); |
| | | orderYcxm.setParentName(tjProject.getProName()); |
| | | orderYcxm.setJcxm(ssyszys.toString().replaceFirst("/$", "")); |
| | | orderYcxm.setJcjg(ssyszyjgs.toString().replaceFirst("/$", "")); |
| | | orderYcxm.setJynr(JSONUtil.toJsonStr(jianyilis)); |
| | | orderYcxm.setJyjc("0"); |
| | | ycxmService.save(orderYcxm); |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error(String.valueOf(e)); |
| | | } |
| | | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void updateOrdeltile2(TjOrderDetail detail, SysUser sysUser) { |
| | | // for (TjOrderDetail detail : tjOrderDetailList) { |
| | | detail.setTjStatus(1L); |
| | |
| | | } |
| | | |
| | | @Override |
| | | // @Async("async") |
| | | // //@Async("async") |
| | | // @Transactional |
| | | public Boolean iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser,String jxbz) { |
| | | public Boolean iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser, String jxbz) { |
| | | Date dates = new Date(); |
| | | final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | tjFlowingWater.setJxbz(jxbz); |
| | | tjFlowingWaterService.updateById(tjFlowingWater); |
| | | |
| | | TjProBl proBl=new TjProBl(); |
| | | TjProBl proBl = new TjProBl(); |
| | | proBl.setTjh(order.getTjNumber()); |
| | | proBl.setBldh(jxbz); |
| | | proBl.setBlsj(date); |
| | |
| | | |
| | | String config = configService.selectConfigByKey("sfkqdyhis"); |
| | | |
| | | List<TjProject> projectList=new ArrayList<>(); |
| | | List<TjProject> projectList = new ArrayList<>(); |
| | | |
| | | // ArrayList<TjOrderDetail> tjOrderDetails = new ArrayList<>(); |
| | | for (String tjProId : tjProIds) { |
| | |
| | | //如果该项目存在 则 不保存 |
| | | |
| | | TjOrderDetail orderDetail = tjOrderDetailService.getTjOrderDetailByOrderId(String.valueOf(tjFlowingWater.getOrderId()), tjProId); |
| | | if(null !=orderDetail) continue; |
| | | if (null != orderDetail) continue; |
| | | |
| | | TjProject projects = projectService.selectTjProjectByProId(Long.valueOf(tjProId)); |
| | | if (null != projects) { |
| | | TjProject projectss = projectService.getById(projects.getProParentId()); |
| | | if (null != projectss && projectss.getProParentId()==0L) { |
| | | if (null != projectss && projectss.getProParentId() == 0L) { |
| | | projectList.add(projectss); |
| | | } |
| | | } |
| | |
| | | |
| | | } |
| | | |
| | | List<TbTransition> tbTransitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(customer.getCusIdcard(),tjProId); |
| | | List<TbTransition> tbTransitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(customer.getCusIdcard(), tjProId); |
| | | if (null != tbTransitionList && !tbTransitionList.isEmpty()) { |
| | | for (TbTransition transition : tbTransitionList) { |
| | | transitionService.updateTbTransitionById(transition.getId().toString(),jxbz,order.getTjNumber(),order.getCardId(), |
| | | transitionService.updateTbTransitionById(transition.getId().toString(), jxbz, order.getTjNumber(), order.getCardId(), |
| | | transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); |
| | | } |
| | | } |
| | |
| | | |
| | | ArrayList<TjProject> jianChaProjects = new ArrayList<>(); |
| | | |
| | | if(!projectList.isEmpty()){ |
| | | if (!projectList.isEmpty()) { |
| | | List<TjProject> list = projectList.stream().distinct().collect(Collectors.toList()); |
| | | for (TjProject project : list) { |
| | | TjOrderRemark tjOrderRemark = new TjOrderRemark(); |
| | |
| | | detail1.setJxbz(jxbz); |
| | | tjOrderDetailService.save(detail1); |
| | | // tjOrderDetails.add(detail1); |
| | | if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJcDeptIds().contains(project.getDeptId().toString())) { |
| | | if (null != project.getHisXmbm()) { |
| | | jianChaProjects.add(project); |
| | | } |
| | | if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJcDeptIds().contains(project.getDeptId().toString())) { |
| | | if (null != project.getHisXmbm()) { |
| | | jianChaProjects.add(project); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // TODO 和签到登记一样 只有配置中的以及收费类型为体检票时才增加到采样管理表 |
| | | if(config.equalsIgnoreCase("Y")){ |
| | | if (config.equalsIgnoreCase("Y")) { |
| | | // if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) { |
| | | List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); |
| | | addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); |
| | | List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); |
| | | addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); |
| | | // } |
| | | AjaxResult result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, tjFlowingWater.getPayType() == 6L); |
| | | if (!result.get("code").toString().equals("200")) |
| | | return false; |
| | | }else { |
| | | AjaxResult result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, tjFlowingWater.getPayType() == 6L); |
| | | if (!result.get("code").toString().equals("200")) |
| | | return false; |
| | | } else { |
| | | List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); |
| | | addCaiYangDengJiByDiaoYongShiTu(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); |
| | | } |
| | |
| | | return true; |
| | | } |
| | | |
| | | public void addCaiYangDengJiByDiaoYongShiTu(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) { |
| | | public void addCaiYangDengJiByDiaoYongShiTu(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser, String jxbz) { |
| | | String lis_tmh_prefix = sysConfigService.selectConfigByKey("make_lis_tmh_prefix"); |
| | | if (null != detailList && detailList1) { |
| | | Date date = new Date(); |
| | |
| | | } |
| | | } |
| | | String config = configService.selectConfigByKey("sfkqdyhis"); |
| | | if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))){ |
| | | if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))) { |
| | | AjaxResult ajaxResult = lisApiMethod.getJyFlHb(); |
| | | if (ajaxResult.get("code").toString().equals("200")){ |
| | | if (ajaxResult.get("code").toString().equals("200")) { |
| | | String str = ajaxResult.get("data").toString(); |
| | | str = str.replace("=", ":"); |
| | | JSONArray array = JSONUtil.parseArray(str); |
| | |
| | | lisJyflhb.setMc(object.getStr("mc")); |
| | | lisJyflhb.setFlbm(object.getStr("flbm")); |
| | | LambdaQueryWrapper<LisJyflhb> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(LisJyflhb::getFlbm,lisJyflhb.getFlbm()); |
| | | wrapper.eq(LisJyflhb::getFlbm, lisJyflhb.getFlbm()); |
| | | LisJyflhb jyflhb = lisJyflhbService.getOne(wrapper); |
| | | if (jyflhb == null) { |
| | | lisJyflhb.setId(IdUtil.getSnowflake().nextId()); |
| | | lisJyflhbService.save(lisJyflhb); |
| | | }else { |
| | | } else { |
| | | lisJyflhb.setId(jyflhb.getId()); |
| | | lisJyflhbService.updateById(lisJyflhb); |
| | | } |
| | |
| | | } |
| | | |
| | | } |
| | | if (StrUtil.isNotBlank(jxbz)){ |
| | | tjSamplingMapper.updateUserIdByTjNumAndJxbz(order.getTjNumber(),sysUser.getNickName(), String.valueOf(sysUser.getUserId()),jxbz); |
| | | }else { |
| | | tjSamplingMapper.updateUserIdByTjNum(order.getTjNumber(),sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | if (StrUtil.isNotBlank(jxbz)) { |
| | | tjSamplingMapper.updateUserIdByTjNumAndJxbz(order.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), jxbz); |
| | | } else { |
| | | tjSamplingMapper.updateUserIdByTjNum(order.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | //体检对his申请单调用方法 |
| | |
| | | // return AjaxResult.success(); |
| | | // } |
| | | |
| | | public AjaxResult tijianbulushenqing(TjCustomer customer, String date,String cardId,String jxbz,ArrayList<TjProject> jianChaProjects,Boolean isTuanTiPiao) { |
| | | public AjaxResult tijianbulushenqing(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { |
| | | TjOrder order = orderService.getOrderByCardId(cardId); |
| | | if(null !=order){ |
| | | if (null != order) { |
| | | String dept = configService.selectConfigByKey("request_default_dept"); |
| | | String ysbm = configService.selectConfigByKey("request_default_ysbm"); |
| | | String ysmc = configService.selectConfigByKey("request_default_ysmc"); |
| | | String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); |
| | | List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(),cardId,jxbz); |
| | | List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); |
| | | Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); |
| | | List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos =new ArrayList<>(); |
| | | List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); |
| | | if (useLisAndPacsRegister && isTuanTiPiao) { |
| | | // 检查申请 |
| | | pacsReg(order, customer, jianChaProjects); |
| | | LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(TjSampling::getTjNum,order.getTjNumber()); |
| | | wrapper.eq(TjSampling::getJxbz,jxbz); |
| | | wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); |
| | | wrapper.eq(TjSampling::getJxbz, jxbz); |
| | | List<TjSampling> list = tjSamplingService.list(wrapper); |
| | | log.info("采样数据 ->{}",JSONUtil.toJsonStr(list)); |
| | | if (!list.isEmpty()){ |
| | | log.info("采样数据 ->{}", JSONUtil.toJsonStr(list)); |
| | | if (!list.isEmpty()) { |
| | | Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); |
| | | log.info("分组后 ->{}",JSONUtil.toJsonStr(listMap)); |
| | | log.info("分组后 ->{}", JSONUtil.toJsonStr(listMap)); |
| | | ArrayList<String> ids = new ArrayList<>(); |
| | | for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { |
| | | log.info("key ->{},val ->{}",entry.getKey(),entry.getValue()); |
| | | log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); |
| | | // Lis标本代码 |
| | | String specimenTypeCode = entry.getKey(); |
| | | List<TjSampling> samplings = entry.getValue(); |
| | | if (samplings.size() >= 2){ |
| | | if (samplings.size() >= 2) { |
| | | // 进行合并 |
| | | List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); |
| | | // log.info("提取id ->{}",stringList); |
| | |
| | | } |
| | | } |
| | | if (stringList.size() > 1) { |
| | | String id = tjSamplingService.mergeCaiYangApi(stringList,lis_tmh_prefix); |
| | | String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); |
| | | ids.add(id); |
| | | }else { |
| | | } else { |
| | | ids.add(stringList.get(0)); |
| | | } |
| | | }else { |
| | | } else { |
| | | ids.add(samplings.get(0).getId()); |
| | | } |
| | | } |
| | |
| | | if (!confirmed) |
| | | return AjaxResult.error("处理失败"); |
| | | } |
| | | }else { |
| | | } else { |
| | | List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); |
| | | //检验申请 |
| | | if (null != detailList && !detailList.isEmpty()) { |
| | |
| | | wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); |
| | | // wq.groupBy(TjProject::getHisXmbm); |
| | | // wq.in(TjProject::getDeptId, "241", "317"); |
| | | wq.in(TjProject::getDeptId,deptService.getJyDeptIds()); |
| | | wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); |
| | | List<TjProject> projects = projectService.list(wq); |
| | | if (null != projects && !projects.isEmpty()) { |
| | | List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); |
| | | List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); |
| | | Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); |
| | | if (!isNull.isEmpty()) |
| | | listMap.put("",isNull); |
| | | listMap.put("", isNull); |
| | | for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { |
| | | OutpintestapplyDto dto = new OutpintestapplyDto(); |
| | | dto.setHisRegistrationId(cardId); |
| | |
| | | List<TjProject> value = entry.getValue(); |
| | | for (TjProject project : value) { |
| | | LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(TjProject::getProParentId,project.getProId()); |
| | | wrapper.eq(TjProject::getProParentId, project.getProId()); |
| | | List<TjProject> list = projectService.list(wrapper); |
| | | for (TjProject tjProject : list) { |
| | | if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { |
| | |
| | | } |
| | | if (!outpinmedicXms.isEmpty()) { |
| | | outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { |
| | | OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); |
| | | OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); |
| | | detilsDto.setYpbm(i.getYpbm()); |
| | | detilsDto.setPcbm(i.getPcbm()); |
| | | detilsDto.setSl(i.getSl()); |
| | |
| | | if (null != detailList && !detailList.isEmpty()) { |
| | | LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); |
| | | wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); |
| | | wq.in(TjProject::getDeptId,deptService.getJcDeptIds()); |
| | | wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); |
| | | List<TjProject> projects = projectService.list(wq); |
| | | List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); |
| | | if (!proIds.isEmpty()){ |
| | | if (!proIds.isEmpty()) { |
| | | QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); |
| | | wrapper4.select("sum(sl) as sl","pro_id" |
| | | ,"pro_parent_id","pro_name","his_xmbm","his_xmmc" |
| | | ,"pro_price"); |
| | | wrapper4.in("pro_parent_id",proIds); |
| | | wrapper4.select("sum(sl) as sl", "pro_id" |
| | | , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" |
| | | , "pro_price"); |
| | | wrapper4.in("pro_parent_id", proIds); |
| | | wrapper4.groupBy("his_xmbm"); |
| | | projects = projectService.list(wrapper4); |
| | | if (null != projects && !projects.isEmpty()) { |
| | |
| | | List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); |
| | | if (!outpinmedicXms.isEmpty()) { |
| | | outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { |
| | | OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); |
| | | OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); |
| | | detilsDto.setYpbm(i.getYpbm()); |
| | | detilsDto.setPcbm(i.getPcbm()); |
| | | detilsDto.setSl(i.getSl()); |
| | |
| | | if (null != detailList && !detailList.isEmpty()) { |
| | | LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); |
| | | wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); |
| | | wq.in(TjProject::getDeptId,deptService.getCzDeptIds()); |
| | | wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); |
| | | List<TjProject> projects = projectService.list(wq); |
| | | List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); |
| | | if (!proIds.isEmpty()){ |
| | | if (!proIds.isEmpty()) { |
| | | QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); |
| | | wrapper4.select("sum(sl) as sl","pro_id" |
| | | ,"pro_parent_id","pro_name","his_xmbm","his_xmmc" |
| | | ,"pro_price"); |
| | | wrapper4.in("pro_parent_id",proIds); |
| | | wrapper4.select("sum(sl) as sl", "pro_id" |
| | | , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" |
| | | , "pro_price"); |
| | | wrapper4.in("pro_parent_id", proIds); |
| | | wrapper4.groupBy("his_xmbm"); |
| | | projects = projectService.list(wrapper4); |
| | | if (null != projects && !projects.isEmpty()) { |
| | |
| | | List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); |
| | | if (!outpinmedicXms.isEmpty()) { |
| | | outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { |
| | | OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); |
| | | OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); |
| | | detilsDto.setYpbm(i.getYpbm()); |
| | | detilsDto.setPcbm(i.getPcbm()); |
| | | detilsDto.setSl(i.getSl()); |
| | |
| | | } |
| | | |
| | | //药品申请 |
| | | if(!outpinmedicapplyDetilsDtos.isEmpty()){ |
| | | OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); |
| | | if (!outpinmedicapplyDetilsDtos.isEmpty()) { |
| | | OutpinmedicapplyDto dto1 = new OutpinmedicapplyDto(); |
| | | dto1.setHisRegistrationId(cardId); |
| | | dto1.setSfzh(customer.getCusIdcard()); |
| | | dto1.setSqysbm(ysbm); |
| | | dto1.setMzksbm(dept); |
| | | dto1.setSjrq(date); |
| | | dto1.setCzybm(ysbm); |
| | | dto1.setCzyksbm(dept); |
| | | dto1.setCflxbm("A"); |
| | | dto1.setYfbm("1"); |
| | | String yfbm = configService.selectConfigByKey("chufang_yfbm"); |
| | | String mzzd = configService.selectConfigByKey("chufang_mzzd"); |
| | | String czybm = configService.selectConfigByKey("chufang_czybm"); |
| | | String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); |
| | | String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); |
| | | if (czybm.equalsIgnoreCase("N")) |
| | | dto1.setCzybm(ysbm); |
| | | else dto1.setCzybm(czybm); |
| | | if (czyksbm.equalsIgnoreCase("N")) |
| | | dto1.setCzyksbm(dept); |
| | | else dto1.setCzyksbm(dept); |
| | | dto1.setCflxbm(cflxbm); |
| | | if (yfbm.equalsIgnoreCase("N")) |
| | | dto1.setYfbm("1"); |
| | | else dto1.setYfbm(yfbm); |
| | | dto1.setFyts("1"); |
| | | dto1.setMzzd(""); |
| | | if (mzzd.equalsIgnoreCase("N")) |
| | | dto1.setMzzd(""); |
| | | else dto1.setMzzd(mzzd); |
| | | dto1.setDetails(outpinmedicapplyDetilsDtos); |
| | | AjaxResult result = controller.Outpinmedicapply(dto1); |
| | | String result1 = getAjaxResult(result); |
| | | JSONObject object = getJSONObject(result1); |
| | | String code = object.getStr("ResultCode"); |
| | | if(null !=code && code.equals("0")){ |
| | | if (null != code && code.equals("0")) { |
| | | JSONObject resultData = object.getJSONObject("ResultData"); |
| | | // Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); |
| | | String cfh = resultData.getStr("cfh"); |
| | | log.info("药品申请后的处方号是: "+cfh+" outpinmedicapplyDetilsDtos 里面的值为: "+outpinmedicapplyDetilsDtos.toString()); |
| | | log.info("药品申请后的处方号是: " + cfh + " outpinmedicapplyDetilsDtos 里面的值为: " + outpinmedicapplyDetilsDtos.toString()); |
| | | for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { |
| | | TjCf cf=new TjCf(); |
| | | TjCf cf = new TjCf(); |
| | | cf.setJxbz(jxbz); |
| | | cf.setCardId(cardId); |
| | | cf.setSfzh(customer.getCusIdcard()); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void dockerSetCustomerLisByRedis(List<Long> ksproList, String ksId) { |
| | | |
| | | List<TjCustomer> yjAjaxResult = getYjAjaxResult(ksproList); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void dockerSetYjCustomerByRedis(Long orderId, Long ksId) { |
| | | //已检(单个存入)0未检,1已检 |
| | | getDgYjAjaxResult(orderId, ksId); |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void dockerSetWjCustomerByRedis(Long orderId, Long ksId) { |
| | | |
| | | //未检(单个存入)0未检,1已检 |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void checkSetCustomerLisByRedis(String config) { |
| | | List<TjCustomer> wsResult = getWsResult(config); |
| | | List<TjCustomer> ysResult = getYsResult(config); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void wCScheckSetCustomerLisByRedis(List<TjOrder> orderList) { |
| | | List<TjCustomer> customerList = new ArrayList<>(); |
| | | if (null != orderList && orderList.size() > 0) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void yCScheckSetCustomerLisByRedis(List<TjOrder> orderList) { |
| | | List<TjCustomer> customerList = new ArrayList<>(); |
| | | if (null != orderList && orderList.size() > 0) { |
| | |
| | | |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void tjRefund(List<TjProject> refundPros, String tjNum) { |
| | | for (TjProject refundPro : refundPros) { |
| | | LambdaQueryWrapper<TjProject> wq0 = new LambdaQueryWrapper<>(); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void saveSampling() { |
| | | redisCache.setCacheMapValue("sampling", "yqs", getYWqsResult(0)); |
| | | redisCache.setCacheMapValue("sampling", "wqs", getYWqsResult(1)); |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void tjGoutAsync(List<QjDomainVo> domainVos, SysUser sysUser, Set<String> list) { |
| | | Integer day = 0; |
| | | for (QjDomainVo domainVo : domainVos) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void addRedisTransitionPac(String cusId, Long pacId, List<TjPackageProject> ppList) { |
| | | for (TjPackageProject tjPackageProject : ppList) { |
| | | TjProject project = projectService.getById(tjPackageProject.getProId()); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | public void saveRedisTransitionByPacId(String cusId,String cardId, Long pacId, List<Long> proIds) { |
| | | //@Async("async") |
| | | public void saveRedisTransitionByPacId(String cusId, String cardId, Long pacId, List<Long> proIds) { |
| | | if (null != pacId) { |
| | | transitionService.saveRedisTransitionByPacId(cusId,cardId ,pacId); |
| | | transitionService.saveRedisTransitionByPacId(cusId, cardId, pacId); |
| | | } |
| | | if (null != proIds && proIds.size() > 0) { |
| | | saveRedisTransitionByProId(cusId,cardId, proIds); |
| | | saveRedisTransitionByProId(cusId, cardId, proIds); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void addRedisTransitionPro(String cusId, List<Long> proIds) { |
| | | for (Long proId : proIds) { |
| | | if (null != transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId)) && transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId)).size() > 0) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getTjPackageList() { |
| | | |
| | | //男人 |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void addNewReservationConfirm(List<TjReservation> rightList) { |
| | | if (null != rightList && rightList.size() > 0) { |
| | | for (TjReservation reservation : rightList) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void saveNewReservationConfirm(List<TjReservation> rightList) { |
| | | if (null != rightList && rightList.size() > 0) { |
| | | if (null != rightList && !rightList.isEmpty()) { |
| | | //创建线程池 |
| | | ExecutorService threadPool = Executors.newFixedThreadPool(rightList.size()); |
| | | // ExecutorService threadPool = Executors.newFixedThreadPool(rightList.size()); |
| | | for (TjReservation reservation : rightList) { |
| | | //删除之前的数据 |
| | | transitionService.deletedTbTransitionByCusId(reservation.getIdCard()); |
| | | //获取线程 |
| | | threadPool.execute(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | try { |
| | | // transitionService.saveTemoTransitionByGroupingId(reservation.getIdCard(), reservation.getGroupingId()); |
| | | transitionService.ttsaveTemoTransitionByGroupingId(reservation.getIdCard(),"0",reservation.getGroupingId()); |
| | | |
| | | threadPool.shutdown(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | }); |
| | | transitionService.ttsaveTemoTransitionByGroupingId(reservation.getIdCard(), "0", reservation.getGroupingId()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void updateCheckType(String tjNum) { |
| | | redisCache.setCacheMapValue("updateCheckType" + tjNum, tjNum, getAjaxResult(tjNum)); |
| | | redisCache.setHashKeyExpireTime("updateCheckType" + tjNum, 7L, TimeUnit.DAYS); |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getPrintOrderList(List<TjOrder> list) { |
| | | |
| | | redisCache.setCacheMapValue("getPrintOrderList", "0", extracted(0, list)); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getDictSfxms() { |
| | | List<DictSfxm> dictSfxm = getDictSfxm(); |
| | | redisCache.setCacheObject("getDictSfxms", dictSfxm); |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getOrderDetailByProParentId(String tjNumber, Map<String, Object> map, String proParentId) { |
| | | if (null != map && !map.isEmpty()) { |
| | | redisCache.setCacheMapValue("getOrderDetailByProParentId" + tjNumber, proParentId, map); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getLineChart() { |
| | | redisCache.setCacheObject("getLineChart", getLineCharts()); |
| | | } |
| | | |
| | | @Override |
| | | @Async("async") |
| | | //@Async("async") |
| | | public void getPieChart() { |
| | | redisCache.setCacheObject("getPieChart", getPieCharts()); |
| | | } |
| | |
| | | } |
| | | |
| | | List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId()); |
| | | addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser,null); |
| | | addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser, null); |
| | | } |
| | | |
| | | |
| | | |
| | | //首页饼状图登记人数接口 |
| | | private AjaxResult getPieCharts() { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | |
| | | Date date=new Date(); |
| | | Date date = new Date(); |
| | | |
| | | //获取体检登记数 |
| | | LambdaQueryWrapper<TjOrder> wq0 = new LambdaQueryWrapper<>(); |
| | | wq0.between(TjOrder::getCreateTime,DateUtil.offsetMonth(date,-1),date); |
| | | wq0.between(TjOrder::getCreateTime, DateUtil.offsetMonth(date, -1), date); |
| | | List<TjOrder> orderCountList = orderService.list(wq0); |
| | | if (null != orderCountList && !orderCountList.isEmpty()) { |
| | | List<PieChartVo> pieChartVoList = getTjorderCountMap(orderCountList); |
| | |
| | | } |
| | | //获取体检异常数 |
| | | LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.between(TjOrder::getCreateTime,DateUtil.offsetMonth(date,-1),date); |
| | | wq1.between(TjOrder::getCreateTime, DateUtil.offsetMonth(date, -1), date); |
| | | // wq1.isNotNull(TjOrder::getFinishTime); |
| | | // wq1.eq(TjOrder::getCheckStatus, 1); |
| | | List<TjOrder> orderList = orderService.list(wq1); |
| | | if (null !=orderList && !orderList.isEmpty()) { |
| | | if (null != orderList && !orderList.isEmpty()) { |
| | | // List<TjOrder> orderList = orderAbnormalCountList.stream().distinct().collect(Collectors.toList()); |
| | | List<PieChartVo> pieChartVoList = getTjorderAbnormalCountMap(orderList); |
| | | map.put("tjyc", pieChartVoList); |
| | |
| | | wq.eq(TjOrderDetail::getExceptionDesc, 1); |
| | | List<TjOrderDetail> list = tjOrderDetailService.list(wq); |
| | | int count = hysqdService.getHyYcXmCount(tjOrder.getCardId()); |
| | | if ((null != list && !list.isEmpty()) || (count>0)) { |
| | | if ((null != list && !list.isEmpty()) || (count > 0)) { |
| | | TjCustomer customer = tjCustomerService.getById(tjOrder.getUserId()); |
| | | if (null != customer) { |
| | | int age = DateUtil.ageOfNow(customer.getCusBrithday()); |
| | |
| | | } |
| | | |
| | | //临时表添加单项 |
| | | public void saveRedisTransitionByProId(String cusId,String cardId, List<Long> proIds) { |
| | | public void saveRedisTransitionByProId(String cusId, String cardId, List<Long> proIds) { |
| | | for (Long proId : proIds) { |
| | | TjProject project = projectService.selectTjProjectByProId(proId); |
| | | if(null !=project){ //&& (!project.getProName().contains("静脉采血")|| !project.getProName().contains("费")) |
| | | if (null != project) { //&& (!project.getProName().contains("静脉采血")|| !project.getProName().contains("费")) |
| | | List<TbTransition> transitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId)); |
| | | if (null == transitionList || transitionList.size() == 0) { |
| | | transitionService.saveRedisTransitionByProId(cusId,cardId, proId); |
| | | transitionService.saveRedisTransitionByProId(cusId, cardId, proId); |
| | | } |
| | | } |
| | | // if(null !=project) transitionService.saveRedisTransitionByProId(cusId,cardId, proId); |