From 2a9583fd376451ca77a0400af7f3a02d1b80e7f5 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 24 六月 2025 18:04:34 +0800 Subject: [PATCH] 2025-06-24 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java | 368 ++++++++++++++++++++++++++------------------------- 1 files changed, 188 insertions(+), 180 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java index c4de5ae..2f874d3 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java @@ -45,6 +45,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.NoTransactionException; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; import org.springframework.web.bind.annotation.*; @@ -95,13 +96,20 @@ private ISysDictDataService dictDataService; @Autowired private ISysConfigService configService; + @Autowired + private IDictCompService dictCompService; + @Autowired + private ITjDwDeptService tjDwDeptService; + @Autowired + private ITjDwGroupingService tjDwGroupingService; - @Value("${path.filePath}") - private String value; +// @Value("${path.filePath}") +// private String value; @PostMapping("/importTemplate") @ApiOperation(value = "瀵煎嚭excel琛ㄦā鏉�") public void importTemplate(HttpServletResponse response) { + String value = configService.selectConfigByKey("path_filePath"); //鍘熸潵鐨勪笅杞芥ā鏉胯皟鐢ㄦ帴鍙� try { String base64String = PDFBinaryUtil.getPDFBinary(value + File.separator + "瑗垮畨璺嘲鏈虹數绉戞妧鏈夐檺鍏徃.xls"); @@ -170,7 +178,8 @@ @ApiOperation(value = "鏌ヨ浣撴棰勭害鍒楄〃鎺ュ彛(榛樿)") public TableDataInfo list(TjReservation tjReservation) { startPage(); - tjReservation.setIsExpire(2); +// tjReservation.setIsExpire(2); + if(tjReservation.getIsExpire()==null) tjReservation.setIsExpire(2); List<TjReservation> list = tjReservationService.selectTjReservationList(tjReservation); // if(null !=list && list.size()>0){ // for (TjReservation reservation : list) { @@ -275,7 +284,11 @@ //骞撮緞 tjReservation.setAge(String.valueOf(MatchUtils.getAgeByIdCard(tjReservation.getIdCard()))); //鍑虹敓鏃ユ湡 - tjReservation.setBirthday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd")); + try { + tjReservation.setBirthday(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard().replaceAll(" ", ""))); + } catch (Exception e) { + return AjaxResult.error("韬唤璇佸彿涓嶆纭�"); + } if (null != groupingMan && groupingMan.getSex().equals(String.valueOf(tjReservation.getSex()))) { @@ -369,7 +382,7 @@ List<String> wrongList = new ArrayList<>(); List<TjReservation> rightList = new ArrayList<>(); - List<TjReservation> yyList = new ArrayList<>(); + List<String> yyList = new ArrayList<>(); Map<String, Object> map = new HashMap<>(); List<TjDwGrouping> groupingMans = null;//鐢� List<TjDwGrouping> groupingWoMans = null;//濂� @@ -385,204 +398,163 @@ return AjaxResult.error("鍒嗙粍淇℃伅鏈夎璇烽噸鏂板垎缁�!"); } - String sfjysfzh = configService.selectConfigByKey("sfjysfzh"); - String sfjysjh = configService.selectConfigByKey("sfjysjh"); + try { + String sfjysfzh = configService.selectConfigByKey("sfjysfzh"); + String sfjysjh = configService.selectConfigByKey("sfjysjh"); - //璁$畻鍚堣 - BigDecimal hjMoney = new BigDecimal("0.00"); - //鐢风粍閲戦 - BigDecimal manMoney = new BigDecimal("0.00"); - //濂崇粍閲戦 - BigDecimal woManMoney = new BigDecimal("0.00"); - int count = 0;//鎬昏浜烘暟 - int manCount = 0;//鐢风粍浜烘暟 - int woManCount = 0;//濂崇粍浜烘暟 - List<String> ids=new ArrayList<>(); + //璁$畻鍚堣 + BigDecimal hjMoney = new BigDecimal("0.00"); + //鐢风粍閲戦 + BigDecimal manMoney = new BigDecimal("0.00"); + //濂崇粍閲戦 + BigDecimal woManMoney = new BigDecimal("0.00"); + int count = 0;//鎬昏浜烘暟 + int manCount = 0;//鐢风粍浜烘暟 + int woManCount = 0;//濂崇粍浜烘暟 + List<String> ids = new ArrayList<>(); - for (TjReservation tjReservation : tjReservations) { - String idCard = tjReservation.getIdCard(); - String phoe = tjReservation.getPhoe(); - idCard= idCard.replaceAll("[',锛�;.銆� 鈥樷�淽",""); +// String errMsg = ""; + for (TjReservation tjReservation : tjReservations) { + String name = tjReservation.getName(); + String idCard = tjReservation.getIdCard(); + String phoe = tjReservation.getPhoe(); + name = name.replaceAll("[',锛�;.銆� 鈥樷�淽", "").replaceAll(" ", ""); + phoe = phoe.replaceAll("[',锛�;.銆� 鈥樷�淽", "").replaceAll(" ", ""); + idCard = idCard.replaceAll("[',锛�;.銆� 鈥樷�淽", "").replaceAll(" ", ""); - if (!StringUtils.isBlank(idCard) || !StringUtils.isBlank(phoe) || null != tjReservation.getDwxm()) { - //灏嗙瀛﹁鏁扮殑鎵嬫満鍙疯浆鎹㈡垚鏂囨湰褰㈠紡 - phoe = MatchUtils.translateToPlainStr(tjReservation.getPhoe()); + if (!StringUtils.isBlank(idCard) || !StringUtils.isBlank(phoe) || null != tjReservation.getDwxm()) { + //灏嗙瀛﹁鏁扮殑鎵嬫満鍙疯浆鎹㈡垚鏂囨湰褰㈠紡 + phoe = MatchUtils.translateToPlainStr(tjReservation.getPhoe()); - if(!ids.isEmpty() && ids.contains(tjReservation.getIdCard())){ - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return AjaxResult.error("姝よ韩浠借瘉鍙�: "+tjReservation.getIdCard()+" 閲嶅,璇锋牳瀵瑰悗涓婁紶!"); - } + if (!ids.isEmpty() && ids.contains(idCard)) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("姝よ韩浠借瘉鍙�: " + tjReservation.getIdCard() + " 閲嶅,璇锋牳瀵瑰悗涓婁紶!"); + } - ids.add(tjReservation.getIdCard()); + ids.add(idCard); -// if (sfjysfzh.equalsIgnoreCase("Y") || sfjysjh.equalsIgnoreCase("Y")) { + if (!Objects.equals(tjReservation.getSex(), MatchUtils.getSexByIdCard(idCard))){ + wrongList.add(tjReservation.getName() + " " + tjReservation.getIdCard()+"浠ヤ笅浜哄憳鎬у埆 涓嶅噯纭�"); + log.info(tjReservation.getName() + " " + idCard); + } + if ((sfjysfzh.equalsIgnoreCase("Y") && !MatchUtils.isIdCard(idCard)) || (sfjysjh.equalsIgnoreCase("Y") && !MatchUtils.isMobileNO(phoe))) { - wrongList.add(tjReservation.getName()); - log.info(tjReservation.getName()+idCard+MatchUtils.isIdCard(idCard)+MatchUtils.isMobileNO(phoe)); - }else { + wrongList.add(tjReservation.getName() + " " + tjReservation.getIdCard()+"韬唤璇佸彿/鎵嬫満鍙� 鏍煎紡涓嶅噯纭�"); +// errMsg = "韬唤璇佸彿/鎵嬫満鍙� 鏍煎紡涓嶅噯纭�"; + log.info(tjReservation.getName() + " " + idCard + MatchUtils.isIdCard(idCard) + " " + phoe + " " + MatchUtils.isMobileNO(phoe)); + } +// else { + tjReservation.setPhoe(phoe); - tjReservation.setPhoe(phoe); + tjReservation.setName(name); - //骞撮緞 - tjReservation.setAge(String.valueOf(MatchUtils.getAgeByIdCard(tjReservation.getIdCard()))); - //鍑虹敓鏃ユ湡 - tjReservation.setBirthday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd")); + tjReservation.setIdCard(idCard); - TjDwDept dwDept = dwDeptService.getOne(new LambdaQueryWrapper<TjDwDept>().eq(TjDwDept::getDwDeptName, tjReservation.getDwxm())); - if (null != dwDept) { - for (TjDwGrouping groupingMan : groupingMans) { - if (null != groupingMan && groupingMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingMan.getDwDeptId().equals(dwDept.getId())) { - tjReservation.setGroupingId(groupingMan.getId()); - tjReservation.setGroupingName(groupingMan.getGroupingName()); - tjReservation.setYsPrice(groupingMan.getYsPrice()); - //鍚堣 - hjMoney = hjMoney.add(groupingMan.getYsPrice()); - count += 1; - //鐢风粍浜烘暟 - manMoney = manMoney.add(groupingMan.getYsPrice()); + //骞撮緞 + tjReservation.setAge(String.valueOf(MatchUtils.getAgeByIdCard(tjReservation.getIdCard().replaceAll(" ", "")))); + //鍑虹敓鏃ユ湡 + try { + tjReservation.setBirthday(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard().replaceAll(" ", ""))); + } catch (Exception e) { +// return AjaxResult.error("韬唤璇佸彿涓嶆纭�"); + } + + TjDwDept dwDept = dwDeptService.getOne(new LambdaQueryWrapper<TjDwDept>(). + eq(TjDwDept::getDwDeptName, tjReservation.getDwxm().trim()).eq(TjDwDept::getDwId,dwId)); + if (null != dwDept) { + for (TjDwGrouping groupingMan : groupingMans) { + if (null != groupingMan && groupingMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingMan.getDwDeptId().equals(dwDept.getId())) { + tjReservation.setGroupingId(groupingMan.getId()); + tjReservation.setGroupingName(groupingMan.getGroupingName()); + tjReservation.setYsPrice(groupingMan.getYsPrice()); + //鍚堣 + hjMoney = hjMoney.add(groupingMan.getYsPrice()); + count += 1; + //鐢风粍浜烘暟 + manMoney = manMoney.add(groupingMan.getYsPrice()); + manCount += 1; + } + } + + for (TjDwGrouping groupingWoMan : groupingWoMans) { + if (null != groupingWoMan && groupingWoMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingWoMan.getDwDeptId().equals(dwDept.getId())) { + tjReservation.setGroupingId(groupingWoMan.getId()); + tjReservation.setGroupingName(groupingWoMan.getGroupingName()); + tjReservation.setYsPrice(groupingWoMan.getYsPrice()); + //鍚堣 + hjMoney = hjMoney.add(groupingWoMan.getYsPrice()); + count += 1; + woManMoney = woManMoney.add(groupingWoMan.getYsPrice()); + woManCount += 1; + } + } + for (TjDwGrouping groupingWz : groupingWzs) { + if (null != groupingWz && groupingWz.getDwDeptId().equals(dwDept.getId())) { + tjReservation.setGroupingId(groupingWz.getId()); + tjReservation.setGroupingName(groupingWz.getGroupingName()); + tjReservation.setYsPrice(groupingWz.getYsPrice()); + //鍚堣 + hjMoney = hjMoney.add(groupingWz.getYsPrice()); + count += 1; + if (tjReservation.getSex() == 0) { + manMoney = manMoney.add(groupingWz.getYsPrice()); manCount += 1; } - } - - for (TjDwGrouping groupingWoMan : groupingWoMans) { - if (null != groupingWoMan && groupingWoMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingWoMan.getDwDeptId().equals(dwDept.getId())) { - tjReservation.setGroupingId(groupingWoMan.getId()); - tjReservation.setGroupingName(groupingWoMan.getGroupingName()); - tjReservation.setYsPrice(groupingWoMan.getYsPrice()); - //鍚堣 - hjMoney = hjMoney.add(groupingWoMan.getYsPrice()); - count += 1; - woManMoney = woManMoney.add(groupingWoMan.getYsPrice()); + if (tjReservation.getSex() == 1) { + woManMoney = woManMoney.add(groupingWz.getYsPrice()); woManCount += 1; } - } - for (TjDwGrouping groupingWz : groupingWzs) { - if (null != groupingWz && groupingWz.getDwDeptId().equals(dwDept.getId())) { - tjReservation.setGroupingId(groupingWz.getId()); - tjReservation.setGroupingName(groupingWz.getGroupingName()); - tjReservation.setYsPrice(groupingWz.getYsPrice()); - //鍚堣 - hjMoney = hjMoney.add(groupingWz.getYsPrice()); - count += 1; - if (tjReservation.getSex() == 0) { - manMoney = manMoney.add(groupingWz.getYsPrice()); - manCount += 1; - } - if (tjReservation.getSex() == 1) { - woManMoney = woManMoney.add(groupingWz.getYsPrice()); - woManCount += 1; - } - } } - LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>(); - wq.eq(TjReservation::getIdCard, tjReservation.getIdCard()); - wq.eq(TjReservation::getIsExpire, 2); - TjReservation one = tjReservationService.getOne(wq); - if (null != one) { - yyList.add(one); - } - rightList.add(tjReservation); - } else { - wrongList.add(tjReservation.getName()); } + LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>(); + wq.eq(TjReservation::getIdCard, tjReservation.getIdCard()); + wq.eq(TjReservation::getIsExpire, 2); + TjReservation one = tjReservationService.getOne(wq); + if (null != one) { + yyList.add(one.getName() + " " + tjReservation.getIdCard()); + } else { + rightList.add(tjReservation); + } + + } else { + wrongList.add(tjReservation.getName() + " " + tjReservation.getIdCard()+"鎵�濉啓鐨勫椁愬垎绫诲悕 涓嶆纭�"); } -// } -// else { -// //灏嗙瀛﹁鏁扮殑鎵嬫満鍙疯浆鎹㈡垚鏂囨湰褰㈠紡 -// String str = MatchUtils.translateToPlainStr(tjReservation.getPhoe()); -// tjReservation.setPhoe(str); -// -// //骞撮緞 -// tjReservation.setAge(String.valueOf(MatchUtils.getAgeByIdCard(tjReservation.getIdCard()))); -// //鍑虹敓鏃ユ湡 -// tjReservation.setBirthday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd")); -// -// TjDwDept dwDept = dwDeptService.getOne(new LambdaQueryWrapper<TjDwDept>().eq(TjDwDept::getDwDeptName, tjReservation.getDwxm())); -// if (null != dwDept) { -// for (TjDwGrouping groupingMan : groupingMans) { -// if (null != groupingMan && groupingMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingMan.getDwDeptId().equals(dwDept.getId())) { -// tjReservation.setGroupingId(groupingMan.getId()); -// tjReservation.setGroupingName(groupingMan.getGroupingName()); -// tjReservation.setYsPrice(groupingMan.getYsPrice()); -// //鍚堣 -// hjMoney = hjMoney.add(groupingMan.getYsPrice()); -// count += 1; -// //鐢风粍浜烘暟 -// manMoney = manMoney.add(groupingMan.getYsPrice()); -// manCount += 1; -// } // } -// -// for (TjDwGrouping groupingWoMan : groupingWoMans) { -// if (null != groupingWoMan && groupingWoMan.getSex().equals(String.valueOf(tjReservation.getSex())) && groupingWoMan.getDwDeptId().equals(dwDept.getId())) { -// tjReservation.setGroupingId(groupingWoMan.getId()); -// tjReservation.setGroupingName(groupingWoMan.getGroupingName()); -// tjReservation.setYsPrice(groupingWoMan.getYsPrice()); -// //鍚堣 -// hjMoney = hjMoney.add(groupingWoMan.getYsPrice()); -// count += 1; -// woManMoney = woManMoney.add(groupingWoMan.getYsPrice()); -// woManCount += 1; -// } -// } -// for (TjDwGrouping groupingWz : groupingWzs) { -// if (null != groupingWz && groupingWz.getDwDeptId().equals(dwDept.getId())) { -// tjReservation.setGroupingId(groupingWz.getId()); -// tjReservation.setGroupingName(groupingWz.getGroupingName()); -// tjReservation.setYsPrice(groupingWz.getYsPrice()); -// //鍚堣 -// hjMoney = hjMoney.add(groupingWz.getYsPrice()); -// count += 1; -// if (tjReservation.getSex() == 0) { -// manMoney = manMoney.add(groupingWz.getYsPrice()); -// manCount += 1; -// } -// if (tjReservation.getSex() == 1) { -// woManMoney = woManMoney.add(groupingWz.getYsPrice()); -// woManCount += 1; -// } -// -// } -// } -// LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>(); -// wq.eq(TjReservation::getIdCard, tjReservation.getIdCard()); -// wq.eq(TjReservation::getIsExpire, 2); -// TjReservation one = tjReservationService.getOne(wq); -// if (null != one) { -// yyList.add(one); -// } -// rightList.add(tjReservation); -// } else { -// wrongList.add(tjReservation.getName()); -// } -// } - } else { - wrongList.add(tjReservation.getName()); + } + else { + wrongList.add(tjReservation.getName()+"韬唤璇佸彿/鎵嬫満鍙�/濂楅鍒嗙被鍚嶅悕涓虹┖"); + } } - } - if (!yyList.isEmpty()) { - map.put("list", yyList); - map.put("hjMoney", hjMoney); - return AjaxResult.error("鎿嶄綔澶辫触,浠ヤ笂浜哄憳宸茬粡棰勭害鏃犻渶瀵煎叆!!!", map); - } - if (!wrongList.isEmpty()) { - map.put("list", wrongList); - map.put("hjMoney", hjMoney); - return AjaxResult.error("鎿嶄綔澶辫触, 璇疯鐪熸牳瀵逛俊鎭悗閲嶆柊瀵煎叆!!!", map); - } else { - map.put("list", rightList); - map.put("count", count); - map.put("hjMoney", hjMoney); - map.put("manCount", manCount); - map.put("manMoney", manMoney); - map.put("woManCount", woManCount); - map.put("woManMoney", woManMoney); - return AjaxResult.success("鎿嶄綔鎴愬姛", map); + + if (!yyList.isEmpty()) { + map.put("list", yyList); + map.put("hjMoney", hjMoney); + return AjaxResult.error("鎿嶄綔澶辫触,浠ヤ笂浜哄憳宸茬粡棰勭害鏃犻渶瀵煎叆!!!", map); + } + + if (!wrongList.isEmpty()) { + map.put("list", wrongList); + map.put("hjMoney", hjMoney); + return AjaxResult.error("鎿嶄綔澶辫触, 璇疯鐪熸牳瀵归敊璇俊鎭悗閲嶆柊瀵煎叆!!!", map); + } else { + map.put("list", rightList); + map.put("count", count); + map.put("hjMoney", hjMoney); + map.put("manCount", manCount); + map.put("manMoney", manMoney); + map.put("woManCount", woManCount); + map.put("woManMoney", woManMoney); + return AjaxResult.success("鎿嶄綔鎴愬姛", map); + } + } catch (NoTransactionException e) { +// throw new RuntimeException(e); + log.error(String.valueOf(e), e.getMessage()); + return AjaxResult.error(); } } @@ -615,7 +587,7 @@ if (null != reservation) return AjaxResult.success("鎮ㄥ凡鎴愬姛棰勭害,鏃犻渶鍐嶇害"); //tjReservation.setAge(MatchUtils.getAgeByIdCard(tjReservation.getIdCard())); try { - tjReservation.setBirthday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd")); + tjReservation.setBirthday(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard().replaceAll(" ", ""))); } catch (Exception e) { e.printStackTrace(); } @@ -1021,4 +993,40 @@ return AjaxResult.error("璇烽�夋嫨棰勭害瀵硅薄"); } + @GetMapping("/linkage") + public String linkage(@RequestParam("pid") String pid, @RequestParam("type") String type) { + switch (type){ + case "1": + List<DictComp> list = dictCompService.list(); + List<HashMap<String, Object>> collect = list.stream().map(i -> { + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("value", i.getDrugManufacturerId()); + hashMap.put("text", i.getCnName()); + return hashMap; + }).collect(Collectors.toList()); + return JSONUtil.toJsonStr(collect); + case "2": + List<TjDwDept> list1 = tjDwDeptService.getDwDeptListByTjDwDeptId(pid); + List<HashMap<String, Object>> collect1 = list1.stream().map(i -> { + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("value", i.getId()); + hashMap.put("text", i.getDwDeptName()); + return hashMap; + }).collect(Collectors.toList()); + return JSONUtil.toJsonStr(collect1); + case "3": + LambdaQueryWrapper<TjDwGrouping> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjDwGrouping::getDwDeptId,pid); + List<TjDwGrouping> list2 = tjDwGroupingService.list(wrapper); + List<HashMap<String, Object>> collect2 = list2.stream().map(i -> { + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("value", i.getId()); + hashMap.put("text", i.getGroupingName()); + return hashMap; + }).collect(Collectors.toList()); + return JSONUtil.toJsonStr(collect2); + } + return null; + } + } -- Gitblit v1.8.0