| | |
| | | |
| | | |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.hutool.extra.pinyin.PinyinUtil; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | |
| | | allPrice = tbTransitionMapper.getLisPriceByTjNumAndParentProId(tjOrder.getTjNumber(), sampling.getProId()); |
| | | } |
| | | lisSaveSqdxxDto.setFyje(allPrice.toString()); |
| | | lisSaveSqdxxDto.setYbbm(sampling.getSpecimenTypeCode()); |
| | | // lisSaveSqdxxDto.setYbbm(sampling.getSpecimenTypeCode()); |
| | | lisSaveSqdxxDto.setYbbm(sampling.getYb()); |
| | | |
| | | if (sampling.getIsMerge() == 1){ |
| | | LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); |
| | |
| | | List<TjSampling> list = tjSamplingService.list(wrapper); |
| | | for (TjSampling tjSampling : list) { |
| | | TjProject project = projectService.getById(tjSampling.getProId()); |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(tjSampling.getJyxmdm()); |
| | | dto.setXmmc(tjSampling.getProName()); |
| | | dtos.add(dto); |
| | | if (StrUtil.isBlank(tjSampling.getJyxmdm())){ |
| | | LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>(); |
| | | wrapper1.eq(TjProject::getProParentId,project.getProId()); |
| | | List<TjProject> projects = projectService.list(wrapper1); |
| | | for (TjProject tjProject : projects) { |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(tjProject.getLisXmbm()); |
| | | dto.setXmmc(tjProject.getProName()); |
| | | dtos.add(dto); |
| | | } |
| | | }else { |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(tjSampling.getJyxmdm()); |
| | | dto.setXmmc(tjSampling.getProName()); |
| | | dtos.add(dto); |
| | | } |
| | | |
| | | OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); |
| | | detailsDto.setMxfyxmbm(project.getHisXmbm()); |
| | |
| | | } |
| | | }else { |
| | | TjProject project = projectService.getById(sampling.getProId()); |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(sampling.getJyxmdm()); |
| | | dto.setXmmc(sampling.getProName()); |
| | | dtos.add(dto); |
| | | if (StrUtil.isBlank(sampling.getJyxmdm())){ |
| | | LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>(); |
| | | wrapper1.eq(TjProject::getProParentId,project.getProId()); |
| | | List<TjProject> projects = projectService.list(wrapper1); |
| | | for (TjProject tjProject : projects) { |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(tjProject.getLisXmbm()); |
| | | dto.setXmmc(tjProject.getProName()); |
| | | dtos.add(dto); |
| | | } |
| | | }else { |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(sampling.getJyxmdm()); |
| | | dto.setXmmc(sampling.getProName()); |
| | | dtos.add(dto); |
| | | } |
| | | |
| | | OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); |
| | | detailsDto.setMxfyxmbm(project.getHisXmbm()); |
| | |
| | | } |
| | | } |
| | | |
| | | public Boolean save(Map<String, List<TjProject>> listMap,TjOrder tjOrder,TjCustomer tjCustomer){ |
| | | boolean flag = true; |
| | | for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { |
| | | String jyxh = idUtils.generateLisID(configService.selectConfigByKey("make_lis_tmh_prefix")); |
| | | String dept = configService.selectConfigByKey("request_default_dept"); |
| | | String ysbm = configService.selectConfigByKey("request_default_ysbm"); |
| | | AtomicInteger xh = new AtomicInteger(); |
| | | LisSaveSqdxxDto lisSaveSqdxxDto = new LisSaveSqdxxDto(); |
| | | lisSaveSqdxxDto.setJyxh(jyxh); |
| | | lisSaveSqdxxDto.setBah(tjOrder.getCardId()); |
| | | lisSaveSqdxxDto.setBrxm(tjCustomer.getCusName()); |
| | | lisSaveSqdxxDto.setBrdm(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "")); |
| | | lisSaveSqdxxDto.setXb(tjCustomer.getCusSex() == 1 ? "2" : "1"); |
| | | lisSaveSqdxxDto.setCsrq(DateFormatUtils.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd")); |
| | | AgeResult ageResult = DateUtils.calculateAge(tjCustomer.getCusBrithday()); |
| | | lisSaveSqdxxDto.setNl(String.valueOf(ageResult.getAge())); |
| | | lisSaveSqdxxDto.setNldw(String.valueOf(ageResult.getUnit())); |
| | | lisSaveSqdxxDto.setSfzh(tjCustomer.getCusIdcard()); |
| | | lisSaveSqdxxDto.setLxdh(tjCustomer.getCusPhone()); |
| | | lisSaveSqdxxDto.setJtzz(""); |
| | | Date date = new Date(); |
| | | lisSaveSqdxxDto.setSqrq(DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:ss")); |
| | | lisSaveSqdxxDto.setCyrq(""); |
| | | lisSaveSqdxxDto.setLczd(""); |
| | | lisSaveSqdxxDto.setBz(""); |
| | | lisSaveSqdxxDto.setKsbm(dept); |
| | | lisSaveSqdxxDto.setSqys(ysbm); |
| | | lisSaveSqdxxDto.setKfbz("1"); |
| | | List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); |
| | | ArrayList<LisSaveSqdxxJyxmlistDto> dtos = new ArrayList<>(); |
| | | |
| | | BigDecimal allPrice = tbTransitionMapper.getLisPriceByTjNumAndInProId(tjOrder.getTjNumber(), entry.getValue().stream().map(TjProject::getProId).collect(Collectors.toList())); |
| | | |
| | | lisSaveSqdxxDto.setFyje(allPrice.toString()); |
| | | // lisSaveSqdxxDto.setYbbm(entry.getKey()); |
| | | String s = entry.getKey(); |
| | | lisSaveSqdxxDto.setYbbm(s.substring(s.indexOf("_") + 1)); |
| | | |
| | | |
| | | for (TjProject tjProject : entry.getValue()) { |
| | | LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto(); |
| | | dto.setXh(String.valueOf(xh.getAndIncrement() + 1)); |
| | | dto.setJyxm(tjProject.getLisXmbm()); |
| | | dto.setXmmc(tjProject.getProName()); |
| | | dtos.add(dto); |
| | | } |
| | | |
| | | |
| | | lisSaveSqdxxDto.setJyxmlist(dtos); |
| | | log.info("检验申请参数 ->{}", JSONUtil.toJsonStr(lisSaveSqdxxDto)); |
| | | AjaxResult ajaxResult = lisApiMethodService.saveSqdxx(lisSaveSqdxxDto); |
| | | log.info("Lis请求返回 ->{}", JSONUtil.toJsonStr(ajaxResult)); |
| | | String result = ajaxResult.get("data").toString(); |
| | | JSONObject object = JSONUtil.parseObj(result); |
| | | String code = object.getStr("ResultCode"); |
| | | if (!code.equals("1")) { |
| | | log.error("请求失败 ->{}", lisSaveSqdxxDto); |
| | | flag = false; |
| | | break; |
| | | } |
| | | } |
| | | return flag; |
| | | } |
| | | |
| | | /** |
| | | * 获取检验结果 |
| | | * @param cardId |