From 00cea953da01737987e6db24fc32cca1cbe1331c Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期二, 15 七月 2025 17:58:36 +0800 Subject: [PATCH] zjh20250715-1 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 817 +++++++++++++++++++++++++++++++++------------------------ 1 files changed, 469 insertions(+), 348 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 b6508b4..081d0c2 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 @@ -126,7 +126,7 @@ private ITbTransitionService transitionService; @Resource private ISysConfigService configService; -// @Value("${path.filePath}") + // @Value("${path.filePath}") // private String value; @Resource private ITjOrderRemarkService remarkService; @@ -482,8 +482,8 @@ TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { order.setTjCustomerSex(tjCustomer.getCusSex()); - if(null !=tjCustomer.getCusBrithday()) - order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); + if (null != tjCustomer.getCusBrithday()) + order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setTjCustomerName(tjCustomer.getCusName()); order.setTjCustomerPhone(tjCustomer.getCusPhone()); order.setTjCusIdCard(tjCustomer.getCusIdcard()); @@ -550,7 +550,7 @@ TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { order.setTjCustomerSex(tjCustomer.getCusSex()); - if(null !=tjCustomer.getCusBrithday()) + if (null != tjCustomer.getCusBrithday()) order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setTjCustomerName(tjCustomer.getCusName()); order.setTjCustomerPhone(tjCustomer.getCusPhone()); @@ -843,23 +843,21 @@ } - - @PostMapping("/exportOrderList") @ApiOperation(value = "瀵煎嚭浣撴璁板綍鍒楄〃") public void exportOrderList(@ApiParam(value = "椤电爜鏁�(榛樿1)") @RequestParam(defaultValue = "1") Integer pageNum, - @ApiParam(value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam(defaultValue = "10") Integer pageSize, - @ApiParam(value = "鐘舵��") @RequestParam(required = false) Integer zt, - @ApiParam(value = "浣撴鍙�)") @RequestParam(required = false) String tjNum, - @ApiParam(value = "濮撳悕)") @RequestParam(required = false) String name, - @ApiParam(value = "椤圭洰鍚�)") @RequestParam(required = false) String xmmc, - @ApiParam(value = "鐧昏寮�濮嬫椂闂�") @RequestParam(required = false) Date djbeginTime, - @ApiParam(value = "鐧昏缁撴潫鏃堕棿") @RequestParam(required = false) Date djendTime, - @ApiParam(value = "鎶ュ憡寮�濮嬫椂闂�") @RequestParam(required = false) Date bgbeginTime, - @ApiParam(value = "鎶ュ憡缁撴潫鏃堕棿") @RequestParam(required = false) Date bgendTime, - @ApiParam(value = "鍗曚綅") @RequestParam(required = false) String dw, - @ApiParam(value = "褰撳墠椤垫垨鍏ㄩ儴鏁版嵁") @RequestParam(required = false) String dqyorqbsj, - HttpServletResponse response) { + @ApiParam(value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam(defaultValue = "10") Integer pageSize, + @ApiParam(value = "鐘舵��") @RequestParam(required = false) Integer zt, + @ApiParam(value = "浣撴鍙�)") @RequestParam(required = false) String tjNum, + @ApiParam(value = "濮撳悕)") @RequestParam(required = false) String name, + @ApiParam(value = "椤圭洰鍚�)") @RequestParam(required = false) String xmmc, + @ApiParam(value = "鐧昏寮�濮嬫椂闂�") @RequestParam(required = false) Date djbeginTime, + @ApiParam(value = "鐧昏缁撴潫鏃堕棿") @RequestParam(required = false) Date djendTime, + @ApiParam(value = "鎶ュ憡寮�濮嬫椂闂�") @RequestParam(required = false) Date bgbeginTime, + @ApiParam(value = "鎶ュ憡缁撴潫鏃堕棿") @RequestParam(required = false) Date bgendTime, + @ApiParam(value = "鍗曚綅") @RequestParam(required = false) String dw, + @ApiParam(value = "褰撳墠椤垫垨鍏ㄩ儴鏁版嵁") @RequestParam(required = false) String dqyorqbsj, + HttpServletResponse response) { List<Long> cusIds = null; if (null != name) { LambdaQueryWrapper<TjCustomer> wqq = new LambdaQueryWrapper<>(); @@ -983,10 +981,10 @@ wq.orderByDesc(TjOrder::getCreateTime); - List<TjOrder> list =null; - if(StringUtil.isNotBlank(dqyorqbsj) && dqyorqbsj.equals("1")){ + List<TjOrder> list = null; + if (StringUtil.isNotBlank(dqyorqbsj) && dqyorqbsj.equals("1")) { list = tjOrderService.list(wq); - }else { + } else { Page<TjOrder> page2 = tjOrderService.page(page1, wq); list = page2.getRecords(); } @@ -1188,7 +1186,7 @@ } String pacId = transitionService.getTbTransitionPacIdByCusIdAndPac(String.valueOf(tjCustomer.getCusIdcard())); - if (StringUtil.isNotBlank(tjOrder.getPacId()) && StringUtil.isNotBlank(pacId) ) { + if (StringUtil.isNotBlank(tjOrder.getPacId()) && StringUtil.isNotBlank(pacId)) { tjOrder.setPacId(pacId); } //鍒ゆ柇灏忕▼搴忎笂棰勭害鏄惁浠橀挶 @@ -1209,30 +1207,29 @@ if (!result.get("code").toString().equals("200")) { hisApiMethod.ZfHisApiMethod(tjOrder.getCardId()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - }else { + } else { tjOrderService.tjQiandaodengji(tjOrder.getTjNumber()); } return result; } - }catch (Exception e){ + } catch (Exception e) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); log.error(String.valueOf(e)); - } - finally { + } finally { lock.unlock(); } return AjaxResult.error(); } -// @Transactional(propagation = Propagation.REQUIRES_NEW, isolation = Isolation.READ_COMMITTED) @Transactional(propagation = Propagation.REQUIRED) // 鍏变韩浜嬪姟 - public AjaxResult processOrderWithTransaction(TjOrder tjOrder, TjCustomer tjCustomer, TjReservation tjReservation, TjFlowingWater tjFlowingWater, MallOrder mallOrder, SysUser sysUser) { + public AjaxResult processOrderWithTransaction(TjOrder tjOrder, TjCustomer tjCustomer, + TjReservation tjReservation, TjFlowingWater tjFlowingWater, MallOrder mallOrder, SysUser sysUser) { //鑾峰彇鎷兼帴鍓嶇紑 String sfkqtjhqz = configService.selectConfigByKey("sfkqtjhqz"); String makeLisTmhPrefix = ""; - if(sfkqtjhqz.equalsIgnoreCase("Y")){ - makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + if (sfkqtjhqz.equalsIgnoreCase("Y")) { + makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); } //鐢熸垚浣撴鍙� @@ -1242,33 +1239,33 @@ // String tjNumber = idUtils.getTjNumber(); String tjNumber = null; - int a =0; - while (tjNumber ==null){ - if(a>3){ + int a = 0; + while (tjNumber == null) { + if (a > 3) { throw new RuntimeException("鍓嶆柟鎷ユ尋,璇风◢绛�!!!"); } try { String newTjNumberRedisLockAndMysql = idUtils.getNewTjNumberRedisLockAndMysql(); - if (StringUtil.isNotBlank(makeLisTmhPrefix)){ - String tjh= makeLisTmhPrefix + newTjNumberRedisLockAndMysql; - int countByTjNum = tjOrderService.getOrderCountByTjNum(tjh); - if(countByTjNum==0){ - tjNumber=tjh; - } - }else { + if (StringUtil.isNotBlank(makeLisTmhPrefix)) { + String tjh = makeLisTmhPrefix + newTjNumberRedisLockAndMysql; + int countByTjNum = tjOrderService.getOrderCountByTjNum(tjh); + if (countByTjNum == 0) { + tjNumber = tjh; + } + } else { int countByTjNum = tjOrderService.getOrderCountByTjNum(newTjNumberRedisLockAndMysql); - if(countByTjNum==0){ - tjNumber=newTjNumberRedisLockAndMysql; + if (countByTjNum == 0) { + tjNumber = newTjNumberRedisLockAndMysql; } } } catch (Exception e) { log.error(e.getMessage()); - }finally { + } finally { a++; } } - if(StringUtil.isBlank(tjNumber)) return AjaxResult.error("鐧昏澶辫触 閲嶆柊鎿嶄綔"); + if (StringUtil.isBlank(tjNumber)) return AjaxResult.error("鐧昏澶辫触 閲嶆柊鎿嶄綔"); tjOrder.setTjNumber(tjNumber); @@ -1374,7 +1371,7 @@ /*璋冪敤his鎺ュ彛*/ String config = configService.selectConfigByKey("sfkqdyhis"); if (null != config && config.equals("Y")) { - if(tjCustomer.getPationId().equals("0")){ + if (tjCustomer.getPationId().equals("0")) { AjaxResult result = controller.Outpincreateapply(tjCustomer); String result1 = getAjaxResult(result); JSONObject object = getJSONObject(result1); @@ -1405,12 +1402,12 @@ // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs try { if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { - log.info("璋冪敤his寮�鍚� 杩涘叆涓嶆敹璐规柟娉� 璇ヤ綋妫�浜哄憳涓嶆敹璐�:"+tjOrder.getTjNumber()); + log.info("璋冪敤his寮�鍚� 杩涘叆涓嶆敹璐规柟娉� 璇ヤ綋妫�浜哄憳涓嶆敹璐�:" + tjOrder.getTjNumber()); // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 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")){ + if (!ajaxResult.get("code").toString().equals("200")) { throw new IllegalStateException("鍥綋鐢宠鍗曞彂閫佸け璐�!" + result.get("msg").toString()); // return ajaxResult; } @@ -1423,17 +1420,18 @@ // addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); log.info("璋冪敤his寮�鍚� 杩涘叆涓嶆敹璐规柟娉� 璇ユ柟娉曟墽琛屽畬姣�"); } else { - log.info("璋冪敤his寮�鍚� 杩涘叆鏀惰垂鏂规硶 璇ヤ綋妫�浜哄憳鏀惰垂:"+tjOrder.getTjNumber()); + log.info("璋冪敤his寮�鍚� 杩涘叆鏀惰垂鏂规硶 璇ヤ綋妫�浜哄憳鏀惰垂:" + tjOrder.getTjNumber()); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); String isUseMx = configService.selectConfigByKey("jcxhis_is_use_mx"); if (isUseMx.equalsIgnoreCase("Y")) hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); - else hisApiMethod.tijianshenqingJinchuanNew(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); + else + hisApiMethod.tijianshenqingJinchuanNew(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); } } catch (Exception e) { - log.error("鍙戠敓閿欒 ->{}"+String.valueOf(e),e.getMessage()); + log.error("鍙戠敓閿欒 ->{}" + String.valueOf(e), e.getMessage()); throw new IllegalStateException(); } return AjaxResult.success(tjNumber); @@ -1531,10 +1529,10 @@ // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs - log.info("绛惧埌鐧昏鎺ュ彛璇ヤ汉鍛�: "+tjOrder.getTjNumber()+" 鐨勪綋妫�绫诲瀷鏄�:"+tjOrder.getTjType()); + log.info("绛惧埌鐧昏鎺ュ彛璇ヤ汉鍛�: " + tjOrder.getTjNumber() + " 鐨勪綋妫�绫诲瀷鏄�:" + tjOrder.getTjType()); if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { try { - log.info(tjOrder.getTjNumber()+"绛惧埌鐧昏杩涘叆鏈敹璐规柟娉�"); + log.info(tjOrder.getTjNumber() + "绛惧埌鐧昏杩涘叆鏈敹璐规柟娉�"); // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 tjFlowingWater.setPayStasus(1L); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); @@ -1544,7 +1542,7 @@ List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); xdPictureService.saveBatch(xdPictureList); List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); - log.info(tjOrder.getTjNumber()+"绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); + log.info(tjOrder.getTjNumber() + "绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟" + detailList.size()); addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); return AjaxResult.success(tjNumber); } catch (Exception e) { @@ -1553,11 +1551,11 @@ } } else { try { - log.info(tjOrder.getTjNumber()+"else绛惧埌鐧昏杩涘叆鏀惰垂鏂规硶"); + log.info(tjOrder.getTjNumber() + "else绛惧埌鐧昏杩涘叆鏀惰垂鏂规硶"); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); isRequestCommonHisApi(tjOrder, tjCustomer, tjFlowingWater); } catch (Exception e) { - log.error("processOrderWithTransaction 鏂规硶寮傚父"+e.getMessage()); + log.error("processOrderWithTransaction 鏂规硶寮傚父" + e.getMessage()); throw new RuntimeException("璋冪敤鍏叡鏂规硶澶辫触 寮哄埗瑙﹀彂鍥炴粴"); // return AjaxResult.error(); } @@ -1573,6 +1571,311 @@ // TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); throw new RuntimeException("浣撴璁板綍淇濆瓨澶辫触 寮哄埗瑙﹀彂鍥炴粴"); } + + + @PostMapping("/addPlOrderAndDetail") + @ApiOperation(value = "浣撴鎵归噺绛惧埌鐧昏鎺ュ彛") +// @Transactional //(鍒囨崲鏁版嵁搴撳嚭閿欙紝鎵�浠ユ敞閲�) + public AjaxResult addPlOrderAndDetail(@RequestBody QianDaoDto daoDto, HttpServletResponse response) { + SysUser sysUser = UserHoder.getLoginUser().getUser(); + List<String> cusIds = daoDto.getCusIds(); + ArrayList<String> tjNumbers = new ArrayList<>(); + ArrayList<String> errTjh = new ArrayList<>(); + if (null != cusIds && !cusIds.isEmpty()) { +// ExecutorService threadPools = Executors.newFixedThreadPool(cusIds.size()); + for (String cusId : cusIds) { + + try { + getAjaxResults(cusId); + } catch (Exception e) { + + } + } + LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); + wq.in(TjCustomer::getCusIdcard, cusIds); + List<Long> list = tjCustomerService.list(wq).stream().map(TjCustomer::getCusId).collect(Collectors.toList()); + if (!list.isEmpty()) { +// ExecutorService threadPool = Executors.newFixedThreadPool(list.size()); + ThreadPoolTaskExecutor executor = threadPoolConfig.threadPoolTaskExecutor(); + for (Long aLong : list) { + Future<AjaxResult> future = executor.submit(new Callable<AjaxResult>() { + @Override + public AjaxResult call() throws Exception { + return getAjaxResult(aLong, sysUser, daoDto.getTjCategory()); + } + }); + try { + AjaxResult result = future.get(); + String code = result.get("code").toString(); + if (code.equals("200")) { + String tjNumber = result.get("tjNumber").toString(); + tjNumbers.add(tjNumber); + } else { + String userId = result.get("userId").toString(); + errTjh.add(userId); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + } + // TODO 鍥犱负鏈変綋妫�鍙蜂細鏌ュ嚭绌烘暟鎹� 鍏堜娇鐢ㄦ鏁版嵁 鎵撳嵃瀵艰瘖鍗� + Map<String, Object> map = new HashMap<>(); + if (!tjNumbers.isEmpty()) { + map.put("tjh", tjNumbers); + } + map.put("errtjh", errTjh); + return AjaxResult.success("鎿嶄綔鎴愬姛", map); + } +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error(); + } + + @Transactional + public AjaxResult getAjaxResult(Long userId, SysUser sysUser, String tjCategory) throws IOException { + + LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); + wq.eq(TjCustomer::getCusId, userId); + TjCustomer tjCustomer = tjCustomerService.getOne(wq); + if (tjCustomer == null) return AjaxResult.error("璇ュ鎴锋湭鐧昏鎴栦笉瀛樺湪"); + TjOrder tjOrder = new TjOrder(); + Date date = new Date(); + tjOrder.setCreateTime(date); + tjOrder.setUpdateTime(date); + tjOrder.setCreateBy(sysUser.getNickName()); + tjOrder.setUpdateBy(sysUser.getNickName()); + tjOrder.setUserId(userId); + tjOrder.setTjCategory(tjCategory); + LambdaQueryWrapper<TjReservation> wq1 = new LambdaQueryWrapper<>(); + wq1.eq(TjReservation::getIdCard, tjCustomer.getCusIdcard()); + wq1.eq(TjReservation::getIsExpire, 2); + TjReservation tjReservation = tjReservationService.getOne(wq1); + MallOrder mallOrder = null; + if (tjReservation != null) { + tjOrder.setReservationId(tjReservation.getId()); + mallOrder = mallOrderService.getOne(new LambdaQueryWrapper<MallOrder>().eq(MallOrder::getReservationId, tjReservation.getId())); + if (null != tjReservation.getTeamNo()) tjOrder.setTeamNo(tjReservation.getTeamNo()); + if (null != tjReservation.getCompanyId()) tjOrder.setFirmId(tjReservation.getCompanyId()); + if (null != tjReservation.getCompany()) tjOrder.setFirmName(tjReservation.getCompany()); + if (null != tjReservation.getDepartment()) tjOrder.setFirmDeptName(tjReservation.getDepartment()); + if (null != tjReservation.getJobNo()) tjOrder.setFirmWorkId(tjReservation.getJobNo()); + if (null != tjReservation.getPacId()) tjOrder.setPacId(tjReservation.getPacId()); + if (null != tjReservation.getTjCategory()) tjOrder.setTjCategory(tjReservation.getTjCategory()); + if (null != tjReservation.getGroupingId()) { + tjOrder.setGroupId(tjReservation.getGroupingId()); + tjOrder.setFirmDeptId(tjReservation.getPacId()); + } + tjReservation.setIsExpire(1); + tjReservationService.updateById(tjReservation); + if (null != tjReservation.getTeamNo()) { + tjOrder.setTjType("1"); + } else { + tjOrder.setTjType("2"); + } + + if (StringUtil.isBlank(tjOrder.getFirmId())) { + tjOrder.setFirmId("0"); + } + + + //鑾峰彇鎷兼帴鍓嶇紑 + String sfkqtjhqz = configService.selectConfigByKey("sfkqtjhqz"); + String makeLisTmhPrefix = ""; + if (sfkqtjhqz.equalsIgnoreCase("Y")) { + makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + } + + String tjNumber = idUtils.getNewTjNumberRedisLockAndMysql(); + if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; + + tjOrder.setTjNumber(tjNumber); + if (null != tjOrder.getPhoto()) { + File file = new File(tjOrder.getPhoto()); + if (file.isFile()) { + FileInputStream fileInputStream = new FileInputStream(file); + byte[] bytes = new byte[fileInputStream.available()]; + fileInputStream.read(bytes); // 璇诲彇鍒� byte 閲岄潰 + fileInputStream.close(); + // 寰楀埌鏂囦欢 涔嬪悗杞垚beye 鐒跺悗浣跨敤base64杞爜 + String encode = Base64.encode(bytes); + tjOrder.setPhoto(encode); + } + } + if (null == tjOrder.getPacId() && null != transitionService.getTbTransitionPacIdByCusIdAndPac(tjCustomer.getCusIdcard())) { + tjOrder.setPacId(transitionService.getTbTransitionPacIdByCusIdAndPac(tjCustomer.getCusIdcard())); + } + //鍒ゆ柇灏忕▼搴忎笂棰勭害鏄惁浠橀挶 + if (null != mallOrder) tjOrder.setMallOrderId(String.valueOf(mallOrder.getId())); + tjOrder.setStatus(TjConstants.TJ_BEGIN); + tjOrder.setCardId(tjCustomer.getCardId()); + tjOrder.setTjType("1"); + + if (tjOrderService.save(tjOrder)) { + + //淇濆瓨鏀惰揣鍦板潃 + if ("2".equals(tjOrder.getGetType())) { + final TjReportGetAddress address = tjOrder.getAddAddress(); + if (address != null) { + address.setTjNumber(tjNumber); + tjReportGetAddressService.save(address); + } + } + Long cusNumber = tjCustomer.getCusNumber(); + cusNumber += 1; + tjCustomer.setCusNumber(cusNumber); +// BigDecimal discount = BigDecimal.valueOf(Double.parseDouble(tjOrder.getTjFlowingWater().getDiscount())).divide(BigDecimal.valueOf(10)); + TjFlowingWater tjFlowingWater = new TjFlowingWater(); + tjFlowingWater.setCreateTime(date); + tjFlowingWater.setCreateTime(date); + tjFlowingWater.setUpdateTime(date); + tjFlowingWater.setCreateBy(sysUser.getNickName()); + tjFlowingWater.setUpdateBy(sysUser.getNickName()); + BigDecimal bigDecimal = tbTransitionMapper.sumTbTransitionOrdPriceByTjNumIsNull(tjCustomer.getCusIdcard()); + tjFlowingWater.setCopeWith(bigDecimal); + BigDecimal bigDecimal1 = tbTransitionMapper.sumTbTransitionNowPriceByTjNumIsNull(tjCustomer.getCusIdcard()); + tjFlowingWater.setPaidIn(bigDecimal1); + tjFlowingWater.setDiscount(String.valueOf(10)); + tjFlowingWater.setPayStasus(1L); + tjFlowingWater.setPayType(3L); + + tjFlowingWater.setPayStasus(0L); + if ("1".equals(tjOrder.getTjType())) { + if (tjReservation.getPayType() == 1) { + tjFlowingWater.setPayStasus(3L); + } + } + + //璋冪敤SQL server鎷垮彇鏀惰垂鎯呭喌 + //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 + String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); + String isPay = configService.selectConfigByKey("isPay"); + if ("Y".equals(getInfoFromSqlData)) { + LtkjMiddleHead middleHead = headService.getMiddleHeadByPartId(tjCustomer.getCardId()); + if (null != middleHead) { + tjFlowingWater.setPayStasus(1L); + } + } + tjFlowingWater.setOrderId(tjOrder.getOrderId()); + Date date1 = new Date(System.currentTimeMillis()); + String s1 = sysUser.getUserName() + new SimpleDateFormat("yyMMddHHmmssSSS").format(date1); + tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "").toUpperCase() + s1); + + if (isPay.equals("true")) { + if (null != mallOrder) { + if (mallOrder.getOrderStatus().equals(201L)) { + tjFlowingWater.setCopeWith(mallOrder.getActualPrice()); + tjFlowingWater.setPaidIn(mallOrder.getActualPrice()); + tjFlowingWater.setDiscount(String.valueOf(1)); + tjFlowingWater.setPayStasus(1L); + tjFlowingWater.setPayType(3L); + MallCheckLog checkLog = new MallCheckLog(); + checkLog.setCheckBy(sysUser.getNickName()); + checkLog.setUserId(mallOrder.getUserId()); + checkLog.setConsignee(mallOrder.getConsignee()); + checkLog.setIdCard(mallOrder.getIdCard()); + checkLog.setOrderId(String.valueOf(mallOrder.getId())); + checkLog.setOrderSn(mallOrder.getOrderSn()); + checkLog.setCheckTime(new Date()); + checkLog.setShipSn("HX" + s1); + mallCheckLogService.save(checkLog); + mallOrder.setOrderStatus(301L); + mallOrderService.updateById(mallOrder); + } + } + } + if (tjFlowingWaterService.save(tjFlowingWater)) { + tjOrder.setTjSerialNumber(String.valueOf(tjFlowingWater.getTjSerialNumber())); + tjOrderService.updateById(tjOrder); + } + transitionService.updateTbTransitionTjNumByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber()); + tjCustomer.setCardId(tjOrder.getTjNumber()); + tjCustomerService.updateById(tjCustomer); + transitionService.updateCardIdByTjNumAndIdCard(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), tjOrder.getTjNumber()); + tjOrder.setCardId(tjOrder.getTjNumber()); + tjOrderService.updateById(tjOrder); + + /*璋冪敤his鎺ュ彛*/ + String config = configService.selectConfigByKey("sfkqdyhis"); + if (null != config && config.equals("Y")) { + if (tjCustomer.getPationId().equals("0")) { + AjaxResult result = controller.Outpincreateapply(tjCustomer); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (code.equals("0")) { + JSONArray resultDatass = object.getJSONArray("ResultData"); + Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0); + if (null != resultData && !resultData.isEmpty()) { + String pationid = resultData.get("PationId").toString(); + if (null != pationid) { + tjCustomer.setPationId(pationid); + tjCustomerService.updateById(tjCustomer); + } + } + } + } + AjaxResult result = hisApiMethod.HisApiMethods(tjCustomer, tjOrder); + if (!result.get("code").toString().equals("200")) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + Object jzh = result.get("jzh"); + if (null != jzh && null != jzh.toString()) { + hisApiMethod.ZfHisApiMethod(jzh.toString()); + } + log.info("鎵归噺绛惧埌 璇ョ櫥璁颁汉鎸傚彿澶辫触, 灏辫瘖鍙蜂负: " + tjOrder.getCardId()); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error().put("userId", userId); + } + log.info("鎵归噺绛惧埌 璇ョ櫥璁颁汉鐨刪is灏辫瘖鍙锋槸: " + tjOrder.getCardId()); + // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs + try { + if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + log.info("鎵归噺绛惧埌 璋冪敤his寮�鍚� 杩涘叆涓嶆敹璐规柟娉� 璇ヤ綋妫�浜哄憳涓嶆敹璐�:" + tjOrder.getTjNumber()); + // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 + tjFlowingWater.setPayStasus(1L); + newSaveextracted(tjOrder, tjCustomer, new BigDecimal("10"), 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")) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error().put("userId", userId); + } + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); + List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); + xdPictureService.saveBatch(xdPictureList); + log.info("鎵归噺绛惧埌 璋冪敤his寮�鍚� 杩涘叆涓嶆敹璐规柟娉� 璇ユ柟娉曟墽琛屽畬姣�"); + } + } catch (Exception e) { + log.error("鎵归噺绛惧埌鍙戠敓閿欒 ->{}" + String.valueOf(e), e.getMessage()); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error().put("userId", userId); } + } else { + if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 + tjFlowingWater.setPayStasus(1L); + tjOrder.setTjFlowingWater(tjFlowingWater); + newSaveextracted(tjOrder, tjCustomer, BigDecimal.valueOf(10), sysUser, tjReservation, tjFlowingWater); + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); + List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); + xdPictureService.saveBatch(xdPictureList); + List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); + } + } + + tjCustomer.setCardId("0"); + tjCustomerService.updateById(tjCustomer); + return AjaxResult.success().put("tjNumber", tjNumber); + } + } + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error().put("userId", userId); + } + + + // @Transactional(propagation = Propagation.REQUIRES_NEW, isolation = Isolation.READ_COMMITTED) @Transactional(propagation = Propagation.REQUIRED) // 鍏变韩浜嬪姟 public void isRequestCommonHisApi(TjOrder tjOrder, TjCustomer tjCustomer, TjFlowingWater tjFlowingWater) { @@ -1657,7 +1960,7 @@ String format = DateUtil.format(date, "yyMMddHHmmssSSS"); for (TjOrderDetail detail : detailList) { int i = samplingService.isExistProId(order.getTjNumber(), String.valueOf(detail.getProId())); - if(i>0) continue; + if (i > 0) continue; TjSampling sampling = new TjSampling(); if (null == projectService.getById(detail.getProId())) continue; TjProject project = projectService.getById(detail.getProId()); @@ -1739,18 +2042,17 @@ } - @GetMapping("/addCaiYangDengJi") @ApiOperation(value = "鎵嬪姩娣诲姞閲囨牱璁板綍鎺ュ彛") - public AjaxResult addCaiYangDengJi(@RequestParam("tjNum") String tjNum){ + public AjaxResult addCaiYangDengJi(@RequestParam("tjNum") String tjNum) { try { TjOrder order = tjOrderService.getOrderByTjNum(tjNum); - if(null !=order){ + if (null != order) { Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); SysUser sysUser = userService.getById(userId); List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId()); - log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); + log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟" + detailList.size()); addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser, null); } } catch (NumberFormatException e) { @@ -1760,74 +2062,13 @@ return AjaxResult.success(); } - - @PostMapping("/addPlOrderAndDetail") - @ApiOperation(value = "浣撴鎵归噺绛惧埌鐧昏鎺ュ彛") -// @Transactional //(鍒囨崲鏁版嵁搴撳嚭閿欙紝鎵�浠ユ敞閲�) - public AjaxResult addPlOrderAndDetail(@RequestBody QianDaoDto daoDto, HttpServletResponse response) { - SysUser sysUser = UserHoder.getLoginUser().getUser(); - List<String> cusIds = daoDto.getCusIds(); - ArrayList<String> tjNumbers = new ArrayList<>(); - ArrayList<String> errTjh = new ArrayList<>(); - if (null != cusIds && !cusIds.isEmpty()) { - ExecutorService threadPools = Executors.newFixedThreadPool(cusIds.size()); - for (String cusId : cusIds) { - - try { - getAjaxResults(cusId); - } catch (Exception e) { - - } - } - LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); - wq.in(TjCustomer::getCusIdcard, cusIds); - List<Long> list = tjCustomerService.list(wq).stream().map(TjCustomer::getCusId).collect(Collectors.toList()); - if (!list.isEmpty()) { -// ExecutorService threadPool = Executors.newFixedThreadPool(list.size()); - ThreadPoolTaskExecutor executor = threadPoolConfig.threadPoolTaskExecutor(); - for (Long aLong : list) { - Future<AjaxResult> future = executor.submit(new Callable<AjaxResult>() { - @Override - public AjaxResult call() throws Exception { - return getAjaxResult(aLong, sysUser, daoDto.getTjCategory()); - } - }); - try { - AjaxResult result = future.get(); - String code = result.get("code").toString(); - if (code.equals("200")) { - String tjNumber = result.get("tjNumber").toString(); - tjNumbers.add(tjNumber); - }else { - String userId = result.get("userId").toString(); - errTjh.add(userId); - } - } catch (InterruptedException | ExecutionException e) { -// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - e.printStackTrace(); - } - } - threadPools.shutdown(); - } - // TODO 鍥犱负鏈変綋妫�鍙蜂細鏌ュ嚭绌烘暟鎹� 鍏堜娇鐢ㄦ鏁版嵁 鎵撳嵃瀵艰瘖鍗� - Map<String,Object> map=new HashMap<>(); - if (!tjNumbers.isEmpty()) { - map.put("tjh",tjNumbers); - } - map.put("errtjh",errTjh); - return AjaxResult.success("鎿嶄綔鎴愬姛",map); - } -// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return AjaxResult.error(); - } - @GetMapping("/signOrderInfo") - public AjaxResult signOrderInfo(@RequestParam("tjNum") String tjNum){ + public AjaxResult signOrderInfo(@RequestParam("tjNum") String tjNum) { List<Map<String, Object>> djdInfos = tjOrderService.selectDjdInfo(tjNum); Map<String, Object> userInfo = tjOrderService.selectDjdUserInfo(tjNum); HashMap<String, Object> hashMap = new HashMap<>(); - hashMap.put("djd",djdInfos); - hashMap.put("user",userInfo); + hashMap.put("djd", djdInfos); + hashMap.put("user", userInfo); return AjaxResult.success(hashMap); } @@ -1886,14 +2127,6 @@ wq.eq(TjReservation::getIsExpire, 2); TjReservation tjReservation = tjReservationService.getOne(wq); if (tjReservation != null) { -/* if (DateUtil.endOfDay(new Date()).before(tjReservation.getReservationTime())) { -// return AjaxResult.error("鏈埌棰勭害鏃堕棿"); - } - if (null != tjReservation.getReservationTime() && DateUtil.endOfDay(tjReservation.getReservationTime()).before(new Date())) { - tjReservation.setIsExpire(1); - tjReservationService.updateById(tjReservation); -// return AjaxResult.error("瀵逛笉璧锋偍鐨勯绾﹀凡瓒呮椂璇烽噸鏂伴绾�"); - }*/ try { LambdaQueryWrapper<TjCustomer> qw = new LambdaQueryWrapper<>(); qw.eq(TjCustomer::getCusIdcard, cusIdcard); @@ -1941,11 +2174,11 @@ } catch (Exception e) { throw new RuntimeException(e); } - }else { + } else { throw new RuntimeException(); } - }else { + } else { throw new RuntimeException(); } } @@ -1972,199 +2205,6 @@ testMapper.saveTjProByCusId(customer.getCardId(), customer.getCusIdcard()); } DynamicDataSourceContextHolder.clearDataSourceType(); - } - - @Transactional - public AjaxResult getAjaxResult(Long userId, SysUser sysUser, String tjCategory) throws IOException { - - LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); - wq.eq(TjCustomer::getCusId, userId); - TjCustomer tjCustomer = tjCustomerService.getOne(wq); - if (tjCustomer == null) return AjaxResult.error("璇ュ鎴锋湭鐧昏鎴栦笉瀛樺湪"); - TjOrder tjOrder = new TjOrder(); - Date date = new Date(); - tjOrder.setCreateTime(date); - tjOrder.setUpdateTime(date); - tjOrder.setCreateBy(sysUser.getNickName()); - tjOrder.setUpdateBy(sysUser.getNickName()); - tjOrder.setUserId(userId); - tjOrder.setTjCategory(tjCategory); - LambdaQueryWrapper<TjReservation> wq1 = new LambdaQueryWrapper<>(); - wq1.eq(TjReservation::getIdCard, tjCustomer.getCusIdcard()); - wq1.eq(TjReservation::getIsExpire, 2); - TjReservation tjReservation = tjReservationService.getOne(wq1); - MallOrder mallOrder = null; - if (tjReservation != null) { - tjOrder.setReservationId(tjReservation.getId()); - mallOrder = mallOrderService.getOne(new LambdaQueryWrapper<MallOrder>().eq(MallOrder::getReservationId, tjReservation.getId())); - if (null != tjReservation.getTeamNo()) tjOrder.setTeamNo(tjReservation.getTeamNo()); - if (null != tjReservation.getCompanyId()) tjOrder.setFirmId(tjReservation.getCompanyId()); - if (null != tjReservation.getCompany()) tjOrder.setFirmName(tjReservation.getCompany()); - if (null != tjReservation.getDepartment()) tjOrder.setFirmDeptName(tjReservation.getDepartment()); - if (null != tjReservation.getJobNo()) tjOrder.setFirmWorkId(tjReservation.getJobNo()); - if (null != tjReservation.getPacId()) tjOrder.setPacId(tjReservation.getPacId()); - if (null != tjReservation.getTjCategory()) tjOrder.setTjCategory(tjReservation.getTjCategory()); - if (null != tjReservation.getGroupingId()) { - tjOrder.setGroupId(tjReservation.getGroupingId()); - tjOrder.setFirmDeptId(tjReservation.getPacId()); - } - tjReservation.setIsExpire(1); - tjReservationService.updateById(tjReservation); - if (null != tjReservation.getTeamNo()) { - tjOrder.setTjType("1"); - } else{ - tjOrder.setTjType("2"); - } - - if (StringUtil.isBlank(tjOrder.getFirmId())) { - tjOrder.setFirmId("0"); - } - - - //鑾峰彇鎷兼帴鍓嶇紑 - String sfkqtjhqz = configService.selectConfigByKey("sfkqtjhqz"); - String makeLisTmhPrefix = ""; - if(sfkqtjhqz.equalsIgnoreCase("Y")){ - makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); - } - - String tjNumber = idUtils.getNewTjNumberRedisLockAndMysql(); - if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; - - tjOrder.setTjNumber(tjNumber); - if (null != tjOrder.getPhoto()) { - File file = new File(tjOrder.getPhoto()); - if (file.isFile()) { - FileInputStream fileInputStream = new FileInputStream(file); - byte[] bytes = new byte[fileInputStream.available()]; - fileInputStream.read(bytes); // 璇诲彇鍒� byte 閲岄潰 - fileInputStream.close(); - // 寰楀埌鏂囦欢 涔嬪悗杞垚beye 鐒跺悗浣跨敤base64杞爜 - String encode = Base64.encode(bytes); - tjOrder.setPhoto(encode); - } - } - if (tjOrder.getFirmId() == null) { - tjOrder.setFirmId("0"); - } - if (null == tjOrder.getPacId() && null != transitionService.getTbTransitionPacIdByCusIdAndPac(String.valueOf(tjOrder.getUserId()))) { - tjOrder.setPacId(transitionService.getTbTransitionPacIdByCusIdAndPac(String.valueOf(tjOrder.getUserId()))); - } - //鍒ゆ柇灏忕▼搴忎笂棰勭害鏄惁浠橀挶 - if (null != mallOrder) tjOrder.setMallOrderId(String.valueOf(mallOrder.getId())); - tjOrder.setStatus(TjConstants.TJ_BEGIN); - tjOrder.setCardId(tjCustomer.getCardId()); - tjOrder.setTjType("1"); - - if (tjOrderService.save(tjOrder)) { - - //淇濆瓨鏀惰揣鍦板潃 - if ("2".equals(tjOrder.getGetType())) { - final TjReportGetAddress address = tjOrder.getAddAddress(); - if (address != null) { - address.setTjNumber(tjNumber); - tjReportGetAddressService.save(address); - } - } - Long cusNumber = tjCustomer.getCusNumber(); - cusNumber += 1; - tjCustomer.setCusNumber(cusNumber); -// BigDecimal discount = BigDecimal.valueOf(Double.parseDouble(tjOrder.getTjFlowingWater().getDiscount())).divide(BigDecimal.valueOf(10)); - TjFlowingWater tjFlowingWater = new TjFlowingWater(); - tjFlowingWater.setCreateTime(date); - tjFlowingWater.setCreateTime(date); - tjFlowingWater.setUpdateTime(date); - tjFlowingWater.setCreateBy(sysUser.getNickName()); - tjFlowingWater.setUpdateBy(sysUser.getNickName()); -// BigDecimal bigDecimal = tbTransitionMapper.sumTbTransitionOrdPriceByTjNum(tjOrder.getTjNumber()); - BigDecimal bigDecimal = tbTransitionMapper.sumTbTransitionOrdPriceByTjNumIsNull(tjCustomer.getCusIdcard()); - tjFlowingWater.setCopeWith(bigDecimal); -// BigDecimal bigDecimal1 = tbTransitionMapper.sumTbTransitionNowPriceByTjNum(tjOrder.getTjNumber()); - BigDecimal bigDecimal1 = tbTransitionMapper.sumTbTransitionNowPriceByTjNumIsNull(tjCustomer.getCusIdcard()); - tjFlowingWater.setPaidIn(bigDecimal1); - tjFlowingWater.setDiscount(String.valueOf(10)); - tjFlowingWater.setPayStasus(1L); - tjFlowingWater.setPayType(3L); - - tjFlowingWater.setPayStasus(0L); - if ("1".equals(tjOrder.getTjType())) { - if (tjReservation.getPayType() == 1) { - tjFlowingWater.setPayStasus(3L); - } - } - - //璋冪敤SQL server鎷垮彇鏀惰垂鎯呭喌 - //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 - String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); - String isPay = configService.selectConfigByKey("isPay"); - if ("Y".equals(getInfoFromSqlData)) { - LtkjMiddleHead middleHead = headService.getMiddleHeadByPartId(tjCustomer.getCardId()); - if (null != middleHead) { - tjFlowingWater.setPayStasus(1L); - } - } - tjFlowingWater.setOrderId(tjOrder.getOrderId()); - Date date1 = new Date(System.currentTimeMillis()); - String s1 = sysUser.getUserName() + new SimpleDateFormat("yyMMddHHmmssSSS").format(date1); - tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "").toUpperCase() + s1); - - if (isPay.equals("true")) { - if (null != mallOrder) { - if (mallOrder.getOrderStatus().equals(201L)) { - tjFlowingWater.setCopeWith(mallOrder.getActualPrice()); - tjFlowingWater.setPaidIn(mallOrder.getActualPrice()); - tjFlowingWater.setDiscount(String.valueOf(1)); - tjFlowingWater.setPayStasus(1L); - tjFlowingWater.setPayType(3L); - MallCheckLog checkLog = new MallCheckLog(); - checkLog.setCheckBy(sysUser.getNickName()); - checkLog.setUserId(mallOrder.getUserId()); - checkLog.setConsignee(mallOrder.getConsignee()); - checkLog.setIdCard(mallOrder.getIdCard()); - checkLog.setOrderId(String.valueOf(mallOrder.getId())); - checkLog.setOrderSn(mallOrder.getOrderSn()); - checkLog.setCheckTime(new Date()); - checkLog.setShipSn("HX" + s1); - mallCheckLogService.save(checkLog); - mallOrder.setOrderStatus(301L); - mallOrderService.updateById(mallOrder); - } - } - } - if (tjFlowingWaterService.save(tjFlowingWater)) { - tjOrder.setTjSerialNumber(String.valueOf(tjFlowingWater.getTjSerialNumber())); - tjOrderService.updateById(tjOrder); - } - transitionService.updateTbTransitionTjNumByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber()); - tjCustomer.setCardId(tjOrder.getTjNumber()); - tjCustomerService.updateById(tjCustomer); - transitionService.updateCardIdByTjNumAndIdCard(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), tjOrder.getTjNumber()); - tjOrder.setCardId(tjOrder.getTjNumber()); - tjOrderService.updateById(tjOrder); - -// asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater); - - if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { - // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 - tjFlowingWater.setPayStasus(1L); - tjOrder.setTjFlowingWater(tjFlowingWater); - newSaveextracted(tjOrder, tjCustomer, BigDecimal.valueOf(10), sysUser, tjReservation, tjFlowingWater); - tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), - sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); - List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); - xdPictureService.saveBatch(xdPictureList); - List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); - addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); - } - - tjCustomer.setCardId("0"); - tjCustomerService.updateById(tjCustomer); - return AjaxResult.success().put("tjNumber", tjNumber); - } - } - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return AjaxResult.error().put("userId",userId); } @@ -2256,9 +2296,9 @@ //琛ュ樊浠� List<Map<String, Object>> cjMaps = transitionService.addTbhuoquxiangmuchajia(pacId.toString(), cusId); if (null != cjMaps && !cjMaps.isEmpty()) { - log.info("璇ュ椁�"+pacId+"涓湁宸环:"+cjMaps.size()+"涓�"); + log.info("璇ュ椁�" + pacId + "涓湁宸环:" + cjMaps.size() + "涓�"); for (Map<String, Object> cjMap : cjMaps) { - log.info("娣诲姞涓存椂琛ㄥ椁愭暟鎹椂鎵�閫夌殑宸环涓�:"+ cjMap.get("cj").toString()); + log.info("娣诲姞涓存椂琛ㄥ椁愭暟鎹椂鎵�閫夌殑宸环涓�:" + cjMap.get("cj").toString()); transitionService.buxiangmuchajia(cusId, pacId.toString(), cjMap.get("xmid").toString(), new BigDecimal(cjMap.get("cj").toString())); } } @@ -2909,10 +2949,12 @@ for (TbTransition tbTransition : list) { if (tbTransition.getParentProId().toString().equals(project.getProId().toString())) { JSONObject obj = JSONUtil.createObj(); + TjOrderRemark remark = remarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, tbTransition.getParentProId().toString()); obj.putOpt("index", index++); obj.putOpt("parent_pro_name", tbTransition.getParentProName()); obj.putOpt("price", tbTransition.getOrdPrice()); obj.putOpt("ks", dept.getDeptName()); + if(null !=remark) obj.putOpt("sfzt", remark.getSfbz()); huiZong.add(obj); } } @@ -2988,7 +3030,7 @@ tjFlowingWater.setPayType(4L); tjFlowingWaterService.updateById(tjFlowingWater); remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); - // asyncService.addTjChargingStandard(tjOrder, transitionService.getTbTransitionListByCusId(tjCustomer.getCusIdcard(), tjOrder.getCardId()), sysUser); + // asyncService.addTjChargingStandard(tjOrder, transitionService.getTbTransitionListByCusId(tjCustomer.getCusIdcard(), tjOrder.getCardId()), sysUser); List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); xdPictureService.saveBatch(xdPictureList); } @@ -3389,7 +3431,7 @@ tjCustomer.setCusNumber(cusNumber); tjCustomerService.updateById(tjCustomer); tjOrderService.removeById(order.getOrderId()); - return AjaxResult.success("鎾ら攢鎴愬姛"); + return AjaxResult.success("鎾ら攢鎴愬姛"); } return AjaxResult.error("浣撴璁板綍涓嶅瓨鍦�!"); } @@ -3697,13 +3739,13 @@ // return AjaxResult.success(); } - try { - extracted(dto, order); - } catch (Exception e) { - log.info("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�"); - return AjaxResult.error("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�!"); - } - return AjaxResult.success("鎾ら攢鎴愬姛"); + try { + extracted(dto, order); + } catch (Exception e) { + log.info("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�"); + return AjaxResult.error("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�!"); + } + return AjaxResult.success("鎾ら攢鎴愬姛"); } return AjaxResult.error("鏈壘鍒颁綋妫�璁板綍"); } @@ -3881,7 +3923,7 @@ @GetMapping("/chushenyemianyijianjiekou") - @ApiOperation(value = "鍒濆椤甸潰寮冩鎺ュ彛") + @ApiOperation(value = "鍒濆椤甸潰宸叉鎺ュ彛") @Transactional public AjaxResult chushenyemianyijianjiekou(@RequestParam String tjNUm, @RequestParam String proId) { LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>(); @@ -3889,6 +3931,20 @@ wq.eq(TjOrderRemark::getProId, proId); TjOrderRemark remark = remarkService.getOne(wq); remark.setType(1); + remarkService.updateById(remark); + return AjaxResult.success("鎿嶄綔鎴愬姛!"); + } + + + @GetMapping("/chushenyemianchexiaojiekou") + @ApiOperation(value = "鍒濆椤甸潰鎾ら攢鎺ュ彛") + @Transactional + public AjaxResult chushenyemianchexiaojiekou(@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(0); remarkService.updateById(remark); return AjaxResult.success("鎿嶄綔鎴愬姛!"); } @@ -4107,16 +4163,16 @@ BigDecimal dxzj = transitionService.getTbTransitionPriceAndOrdPrice(dto.getCusIdCard(), dto.getParentProId()); BigDecimal yhj = dto.getYhj(); - log.info("鍓嶇浼犻�掔殑浠锋牸锛歿}",yhj.toString()); + log.info("鍓嶇浼犻�掔殑浠锋牸锛歿}", yhj.toString()); BigDecimal cj = yhj.subtract(dxzj); - log.info("璁$畻鐨勫樊浠凤細{}",cj.toString()); + log.info("璁$畻鐨勫樊浠凤細{}", cj.toString()); for (TbTransition transition : list) { BigDecimal result = transition.getNowPrice().add(cj); - log.info("琛ヤ笂宸环鍓嶇殑浠锋牸涓猴細{}",transition.getNowPrice().toString()); - if (result.compareTo(BigDecimal.ZERO)>0 && !flag && cj.compareTo(BigDecimal.ZERO) != 0){ + log.info("琛ヤ笂宸环鍓嶇殑浠锋牸涓猴細{}", transition.getNowPrice().toString()); + if (result.compareTo(BigDecimal.ZERO) > 0 && !flag && cj.compareTo(BigDecimal.ZERO) != 0) { transition.setNowPrice(result); transitionService.updateById(transition); - log.info("淇敼 琛ヤ笂宸环鍚庣殑浠锋牸涓猴細{}",result.toString()); + log.info("淇敼 琛ヤ笂宸环鍚庣殑浠锋牸涓猴細{}", result.toString()); flag = true; break; } @@ -4128,7 +4184,6 @@ } - @PostMapping("/huifuyuyuejilu") @ApiOperation(value = "浣撴璁板綍椤甸潰鎭㈠棰勭害璁板綍鎺ュ彛") @Transactional @@ -4137,7 +4192,7 @@ if (null != tjNUms && !tjNUms.isEmpty()) { for (String tjNUm : tjNUms) { TjOrder order = tjOrderService.getOrderByTjNum(tjNUm); - if(null !=order && StringUtil.isNotBlank(order.getReservationId())){ + if (null != order && StringUtil.isNotBlank(order.getReservationId())) { //杩欓噷鍒犻櫎鐨勬槸杩欎釜浜烘墍鏈夐」鐩寘鎷ˉ褰曢」鐩� tjOrderService.deleteTjOrderByOrderId(order.getOrderId()); tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId())); @@ -4147,7 +4202,7 @@ tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId()); TjReservation reservation = tjReservationService.getById(order.getReservationId()); - if(null !=reservation){ + if (null != reservation) { reservation.setIsExpire(2); tjReservationService.updateById(reservation); transitionService.updateTbTransitionByTjNum(tjNUm); @@ -4160,7 +4215,6 @@ } return AjaxResult.error(); } - @PostMapping("/addBlTransition") @@ -4199,5 +4253,72 @@ } return AjaxResult.success(); } + + + @GetMapping("/piliangqiandaofasong") + @ApiOperation(value = "鏍规嵁瀹㈡埛浣撴鍙锋垨鍏朵粬鎸傚彿骞剁粰lispacs鍙戦�佽姹傛帴鍙�") + @Transactional + public AjaxResult piliangqiandaofasong(@RequestParam(required = false) @ApiParam(value = "浣撴鍙�") String tjNum) { + SysUser sysUser = UserHoder.getLoginUser().getUser(); + Date date = new Date(); + if (StringUtil.isNotBlank(tjNum)) { + TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNum); + piliangqiandaofasongmethod(tjOrder, date, sysUser); + } else { + + List<TjOrder> list = tjOrderService.getOrderListBypiliangqiandaofasong(); + if (null != list && !list.isEmpty()) { + for (TjOrder order : list) { + piliangqiandaofasongmethod(order, date, sysUser); + } + } + } + + return AjaxResult.success("鎿嶄綔鎴愬姛!"); + } + + private void piliangqiandaofasongmethod(TjOrder tjOrder, Date date, SysUser sysUser) { + if (null != tjOrder) { + TjCustomer tjCustomer = tjCustomerService.getById(tjOrder.getUserId()); + if (tjCustomer.getPationId().equals("0")) { + AjaxResult result = controller.Outpincreateapply(tjCustomer); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (code.equals("0")) { + JSONArray resultDatass = object.getJSONArray("ResultData"); + Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0); + if (null != resultData && !resultData.isEmpty()) { + String pationid = resultData.get("PationId").toString(); + if (null != pationid) { + tjCustomer.setPationId(pationid); + tjCustomerService.updateById(tjCustomer); + } + } + } + } + AjaxResult result = hisApiMethod.HisApiMethods(tjCustomer, tjOrder); + if (!result.get("code").toString().equals("200")) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + Object jzh = result.get("jzh"); + if (null != jzh && null != jzh.toString()) { + hisApiMethod.ZfHisApiMethod(jzh.toString()); + } + log.info("鎵归噺绛惧埌 璇ョ櫥璁颁汉鎸傚彿澶辫触, 灏辫瘖鍙蜂负: " + tjOrder.getCardId()); + throw new IllegalStateException("鎸傚彿澶辫触!" + result.get("msg").toString()); + } + log.info("鎵归噺绛惧埌 璇ョ櫥璁颁汉鐨刪is灏辫瘖鍙锋槸: " + tjOrder.getCardId()); + // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs + try { + AjaxResult ajaxResult = hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date, "yyyy-MM-dd HH:mm:ss"), tjOrder, sysUser, result); + if (!ajaxResult.get("code").toString().equals("200")) { + throw new IllegalStateException("鎵归噺绛惧埌 鍥綋鐢宠鍗曞彂閫佸け璐�!" + result.get("msg").toString()); + } + } catch (Exception e) { + log.error("鎵归噺绛惧埌鍙戠敓閿欒 ->{}" + String.valueOf(e), e.getMessage()); + } + } + } + } -- Gitblit v1.8.0