From 5f4847d23506f10f76bc5ba493880bb3b87df12c Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 12 十二月 2024 18:55:15 +0800 Subject: [PATCH] zjh202412012 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 171 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 149 insertions(+), 22 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java index 0eb3160..80648ee 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java @@ -23,6 +23,7 @@ import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.crypto.symmetric.DES; import cn.hutool.extra.pinyin.PinyinUtil; @@ -43,10 +44,7 @@ import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.core.redis.RedisCache; import com.ltkj.common.enums.DataSourceType; -import com.ltkj.common.utils.AgeResult; -import com.ltkj.common.utils.DateUtils; -import com.ltkj.common.utils.PDFDocumentUtil; -import com.ltkj.common.utils.SecurityUtils; +import com.ltkj.common.utils.*; import com.ltkj.framework.config.MatchUtils; import com.ltkj.framework.config.ThreadPoolConfig; import com.ltkj.framework.config.UserHoder; @@ -73,9 +71,8 @@ import com.ltkj.mall.mallOrderUtils.TjConstants; import com.ltkj.mall.service.IMallCheckLogService; import com.ltkj.mall.service.IMallOrderService; -import com.ltkj.system.service.ISysConfigService; -import com.ltkj.system.service.ISysDeptService; -import com.ltkj.system.service.ISysUserService; +import com.ltkj.system.domain.TjDjdDyjl; +import com.ltkj.system.service.*; import com.ltkj.web.controller.his.*; import com.ltkj.web.controller.lis.LisApiMethod; import com.ltkj.web.controller.pacs.PacsApiMethodService; @@ -219,7 +216,16 @@ private TjSamplingMapper tjSamplingMapper; @Autowired private ITjGroupingProService groupingProService; - + @Autowired + private ITjDjdDyjlService djdDyjlService; + @Autowired + private IdUtils idUtils; + @Autowired + private LtkjJybbzdService jybbzdService; + @Autowired + private LisJyflhbService lisJyflhbService; + @Autowired + private ISysDictDataService sysDictDataService; //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 public JSONObject getJSONObject(String builder) { String Response = JSONUtil.parseObj(builder).getStr("Response"); @@ -454,6 +460,8 @@ order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName()); } } + TjDjdDyjl dycs = djdDyjlService.getDjdDyCsByTjNum(order.getTjNumber()); + if(null !=dycs)order.setDycs(Math.toIntExact(dycs.getDycs())); } collect = list.stream().skip((long) (pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); } @@ -512,6 +520,8 @@ order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName()); } } + TjDjdDyjl dycs = djdDyjlService.getDjdDyCsByTjNum(order.getTjNumber()); + if(null !=dycs)order.setDycs(Math.toIntExact(dycs.getDycs())); } } map.put("list", list); @@ -946,7 +956,7 @@ tjReservationService.updateById(tjReservation); if (null != tjReservation.getTeamNo() && tjOrder.getTjType().equals("1")) { tjOrder.setTjType("1"); - } else if (tjOrder.getTjType().equals("2")){ + } else if (tjOrder.getTjType().equals("2")) { tjOrder.setTjType("2"); } } @@ -987,6 +997,7 @@ AjaxResult result = processOrderWithTransaction(tjOrder, tjCustomer, tjReservation, tjFlowingWater, mallOrder, sysUser); if (!result.get("code").toString().equals("200")) TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + tjOrderService.tjQiandaodengji(tjOrder.getTjNumber()); return result; } } finally { @@ -1000,7 +1011,9 @@ //鐢熸垚浣撴鍙� String tjNumber = (SecurityUtils.getUsername() + new SimpleDateFormat("yyMMddHHmmss").format(new Date())); tjOrder.setTjNumber(tjNumber); + BigDecimal discount = BigDecimal.valueOf(Double.parseDouble(tjOrder.getTjFlowingWater().getDiscount())); + tjOrder.setDiscount(discount.toString()); if (tjOrderService.save(tjOrder)) { //淇濆瓨鏀惰揣鍦板潃 if ("2".equals(tjOrder.getGetType())) { @@ -1013,7 +1026,6 @@ Long cusNumber = tjCustomer.getCusNumber(); cusNumber += 1; tjCustomer.setCusNumber(cusNumber); - BigDecimal discount = BigDecimal.valueOf(Double.parseDouble(tjOrder.getTjFlowingWater().getDiscount())); if ("1".equals(tjOrder.getTjType())) { if (null != tjReservation && tjReservation.getPayType() == 1) { @@ -1111,7 +1123,7 @@ if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult; tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - }else { + } else { hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); } // hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); @@ -1133,12 +1145,104 @@ if ("2".equals(tjOrder.getTjType())) { //asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser,null); } + // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs + if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 + tjFlowingWater.setPayStasus(1L); + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); +// AjaxResult ajaxResult = hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder, sysUser, result); +// if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult; + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + + List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser,null); + + } +// pacsApiMethodService.OrderAdd(tjCustomer,tjOrder); return AjaxResult.success(tjNumber); } TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error(); } + + public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) { + if (null != detailList && detailList1) { + Date date = new Date(); + String format = DateUtil.format(date, "yyMMddHHmmssSSS"); + for (TjOrderDetail detail : detailList) { + TjSampling sampling = new TjSampling(); + if (null == projectService.getById(detail.getProId())) continue; + TjProject project = projectService.getById(detail.getProId()); + Long proParentId = project.getProParentId(); + String dictLabel = sysDictDataService.selectDictLabel("sys_dict_specimen", project.getSpecimenType()); + if (null != proParentId && proParentId == 0) { + sampling.setJyxh(idUtils.generateLisID()); + sampling.setSpecimenTypeCode(project.getSpecimenType()); + sampling.setSpecimenType(dictLabel); + sampling.setJyxmdm(project.getProId().toString()); + } else { + TjProject project1 = projectService.getById(proParentId); + sampling.setJyxh(idUtils.generateLisID()); + + sampling.setSpecimenTypeCode(project1.getSpecimenType()); + sampling.setSpecimenType(dictLabel); + sampling.setJyxmdm(project.getProId().toString()); + + } + sampling.setSamplingNumber(format); + sampling.setTjNum(order.getTjNumber()); + sampling.setCusId(String.valueOf(order.getUserId())); + if (tjCustomerService.getById(String.valueOf(order.getUserId())) != null) { + sampling.setCusName(tjCustomerService.getById(String.valueOf(order.getUserId())).getCusName()); + } + sampling.setApplicationTime(date); + sampling.setTjTime(order.getCreateTime()); + sampling.setProId(String.valueOf(detail.getProId())); + sampling.setProName(projectService.getById(detail.getProId()).getProName()); + sampling.setCreateBy(sysUser.getNickName()); + sampling.setCreateTime(date); + sampling.setUpdateBy(sysUser.getNickName()); + sampling.setUpdateTime(date); + sampling.setCreateId(String.valueOf(sysUser.getUserId())); + sampling.setUpdateId(String.valueOf(sysUser.getUserId())); + sampling.setJxbz(jxbz); + samplingService.save(sampling); + } + } + String config = configService.selectConfigByKey("sfkqdyhis"); + if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))){ + AjaxResult ajaxResult = lisApiMethod.getJyFlHb(); + if (ajaxResult.get("code").toString().equals("200")){ + String str = ajaxResult.get("data").toString(); + str = str.replace("=", ":"); + JSONArray array = JSONUtil.parseArray(str); + for (Object o : array) { + JSONObject object = (JSONObject) o; + LisJyflhb lisJyflhb = new LisJyflhb(); + lisJyflhb.setHbhxm(object.getStr("hbhxm")); + lisJyflhb.setFlmc(object.getStr("flmc")); + lisJyflhb.setMc(object.getStr("mc")); + lisJyflhb.setFlbm(object.getStr("flbm")); + LambdaQueryWrapper<LisJyflhb> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(LisJyflhb::getFlbm,lisJyflhb.getFlbm()); + LisJyflhb jyflhb = lisJyflhbService.getOne(wrapper); + if (jyflhb == null) { + lisJyflhb.setId(IdUtil.getSnowflake().nextId()); + lisJyflhbService.save(lisJyflhb); + }else { + lisJyflhb.setId(jyflhb.getId()); + lisJyflhbService.updateById(lisJyflhb); + } + } + } + + } + } + @PostMapping("/addPlOrderAndDetail") @@ -1614,6 +1718,11 @@ transitionService.deletedTbTransitionListByCusIdAndPac(cusId, cardId); List<TjPackageProject> ppList = tjPackageProjectService.getTjPackageProjectListByPacId(String.valueOf(pacId)); if (null != ppList && !ppList.isEmpty()) { + String string = transitionService.panduantaocanshifouchongfu(cusId,pacId); + if(!StringUtils.isBlank(string)){ + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("鎿嶄綔澶辫触! 浠ヤ笅椤圭洰宸插瓨鍦�: "+string); + } transitionService.saveRedisTransitionByPacId(cusId, cardId, pacId); } } @@ -1830,6 +1939,7 @@ } } } + remarkService.updateRemark(tjNumber); asyncService.tjGoutAsync(domainVos, sysUser, list); TjCustomer customer = tjCustomerService.selectTjCustomerByCusId(tjOrder.getUserId()); @@ -1866,6 +1976,7 @@ }*/ return AjaxResult.success("绛剧鎴愬姛锛�"); } else { + remarkService.updateRemark(tjNumber); return getAjaxResult(tjNumber); } } @@ -2341,7 +2452,7 @@ 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()) { @@ -2406,7 +2517,7 @@ 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) { @@ -2517,7 +2628,8 @@ public AjaxResult shengchengbgmoban(String tjNumber, TjOrder tjOrder, TjCustomer tjCustomer, TjReportTemplate reportTemplate) throws Exception { - AjaxResult ajaxResult = hisPDFUtil.hisPDF(tjOrder, tjCustomer, reportTemplate); +// AjaxResult ajaxResult = hisPDFUtil.hisPDF(tjOrder, tjCustomer, reportTemplate); + AjaxResult ajaxResult = hisPDFUtil.hisPDFNew(tjOrder, tjCustomer, reportTemplate); if (!ajaxResult.get("code").toString().equals("200")) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); } else { @@ -2526,7 +2638,7 @@ TjReport tjReport = new TjReport(); tjReport.setTjNumber(String.valueOf(tjNumber)); tjReport.setPath(urlValue + outputFileName1); - String outputPath1 = value + "\\"; + String outputPath1 = value + File.separator; String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); tjReport.setReport(pdfBinary); tjReport.setType("浣撴鎶ュ憡"); @@ -2669,6 +2781,7 @@ // if (null != payByTjNum) { // return AjaxResult.error("璇ョ敤鎴峰凡鏀惰垂涓嶅彲鎾ら攢绛惧埌!"); // } + if(null !=order.getFinishTime()) return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲鎾ら攢!!!"); tjOrderService.deleteTjOrderByOrderId(order.getOrderId()); tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId())); remarkService.deletedOrderRemarkByTjNum(tjNum); @@ -2679,7 +2792,7 @@ customer.setCardId("0"); tjCustomerService.updateById(customer); String configByKey = configService.selectConfigByKey("sfkqdyhis"); - tjSamplingMapper.deleteByTjNumAndCusId(tjNum,order.getUserId()); + tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId()); if (configByKey.equals("Y")) { HashMap<String, Object> hisRequestParams = new HashMap<>(); @@ -2951,7 +3064,7 @@ HashMap<String, Object> hisRequestParams = new HashMap<>(); hisRequestParams.put("patientId", order.getCardId()); AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams); - log.info("queryPay ->{}",JSONUtil.toJsonStr(queryPay)); + log.info("queryPay ->{}", JSONUtil.toJsonStr(queryPay)); if (Integer.parseInt(queryPay.get("code").toString()) == 200) { List<Map<String, String>> data = (List<Map<String, String>>) queryPay.get("data"); log.info("data鐨勬暟鎹槸" + JSONUtil.toJsonStr(data)); @@ -2979,13 +3092,13 @@ boolean b = hisApiMethod.ZfBlXm(dto.getBldhs(), order); if (!b) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); log.info("鎾ら攢澶辫触,璋冪敤浣滃簾鍑虹幇澶辫触"); return AjaxResult.error("鎾ら攢澶辫触,璋冪敤浣滃簾鍑虹幇澶辫触"); } } try { - extracted(dto,order); + extracted(dto, order); } catch (Exception e) { log.info("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�"); return AjaxResult.error("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�!"); @@ -2995,8 +3108,8 @@ return AjaxResult.error(); } -// @Transactional(propagation =Propagation.REQUIRES_NEW) - public void extracted(TjProBlDto dto,TjOrder order) { + // @Transactional(propagation =Propagation.REQUIRES_NEW) + public void extracted(TjProBlDto dto, TjOrder order) { for (String bldh : dto.getBldhs()) { remarkService.deleteTjOrderDetailByjxbz(bldh); tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh); @@ -3004,7 +3117,7 @@ transitionService.deleteTjOrderDetailByjxbz(bldh); blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, dto.getTjh()).eq(TjProBl::getBldh, bldh)); } - tjSamplingMapper.deleteByTjNumAndCusIdAndJxbz(dto.getTjh(),order.getUserId(),dto.getBldhs()); + tjSamplingMapper.deleteByTjNumAndCusIdAndJxbz(dto.getTjh(), order.getUserId(), dto.getBldhs()); } @@ -3023,5 +3136,19 @@ } + @GetMapping("/chushenyemianqijianjiekou") + @ApiOperation(value = "鍒濆椤甸潰寮冩鎺ュ彛") + @Transactional + public AjaxResult chushenyemianqijianjiekou(@RequestParam String tjNUm,@RequestParam String proId) { + LambdaQueryWrapper<TjOrderRemark> wq=new LambdaQueryWrapper<>(); + wq.eq(TjOrderRemark::getTjNumber,tjNUm); + wq.eq(TjOrderRemark::getProId,proId); + TjOrderRemark remark = remarkService.getOne(wq); + remark.setType(1); + remarkService.updateById(remark); + return AjaxResult.success("鎿嶄綔鎴愬姛!"); + } + + } -- Gitblit v1.8.0