From 769f5f1c452560ab044fee905c1c514c9ca373bb Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 10 七月 2025 17:45:13 +0800 Subject: [PATCH] zjh20250710 --- ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java | 4 + ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java | 1 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 7 +- ltkj-hosp/src/main/resources/mapper/TjProjectMapper.xml | 2 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java | 12 +-- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java | 2 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java | 5 + ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCompPayController.java | 140 ++++++++++++++++++++++++++++++++++++---------- ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCompPayInfo.java | 4 + 9 files changed, 132 insertions(+), 45 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java index 203a321..c56b4a0 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java @@ -2917,7 +2917,7 @@ List<String> jysqdh = orderService.getHuoQuJysqdh(order.getCardId()); //2.1.6.5 浣滃簾闂ㄨ瘖妫�鏌ョ敵璇� - if (null != jcsqdh && jcsqdh.size()>0) { + if (null != jcsqdh && !jcsqdh.isEmpty()) { for (String s : jcsqdh) { AjaxResult result = controller.Outpindelexamapply(order.getCardId(), ysbm, s); String result1 = getAjaxResult(result); diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCompPayController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCompPayController.java index a53098f..81dcc3b 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCompPayController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCompPayController.java @@ -8,9 +8,11 @@ import com.ltkj.hosp.domain.*; import com.ltkj.hosp.service.*; import com.ltkj.hosp.vodomain.TeamTjPeopleVo; +import com.mysql.cj.util.StringUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import jodd.util.StringUtil; import org.aspectj.weaver.AjAttribute; import org.springframework.web.bind.annotation.*; import com.ltkj.common.core.controller.BaseController; @@ -20,7 +22,12 @@ import java.lang.annotation.ElementType; import java.math.BigDecimal; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import static com.ltkj.framework.datasource.DynamicDataSourceContextHolder.log; /** * 浣撴鍗曚綅缂磋垂涓籆ontroller @@ -50,6 +57,10 @@ private ITjCustomerService customerService; @Resource private ITjDwDeptService dwDeptService; + @Resource + private ITjDwGroupingService dwGroupingService; + @Resource + private ITjOrderRemarkService remarkService; /** * 鍥綋浣撴鏀惰垂鎺ュ彛 */ @@ -99,7 +110,7 @@ wq.eq(TjCompPayInfo::getTjCompPayId,tjCompPay.getId()); List<TjCompPayInfo> list = payInfoService.list(wq); BigDecimal bigDecimal=new BigDecimal("0.00"); - if(null !=list && list.size()>0){ + if(null !=list && !list.isEmpty()){ for (TjCompPayInfo payInfo : list) { bigDecimal=bigDecimal.add(payInfo.getTransactionAmount()); } @@ -129,18 +140,57 @@ @GetMapping @ApiOperation(value = "鎵�鏈夊叕鍙镐綋妫�鏀惰垂鏁版嵁鏌ヨ鎺ュ彛") public AjaxResult list(@RequestParam(required = false) @ApiParam(value = "鍗曚綅id") String compId) { + + List<TjReservation> rightList = reservationService.list(new LambdaQueryWrapper<TjReservation>().eq(TjReservation::getCompanyId, compId)); + + Map<String, List<TjReservation>> collect = rightList.stream().collect(Collectors.groupingBy(TjReservation::getPacId)); + + if (!collect.isEmpty()) { + for (Map.Entry<String, List<TjReservation>> entry : collect.entrySet()) { + BigDecimal compPay = new BigDecimal("0.00"); + for (TjReservation reservation : entry.getValue()) { + TjDwGrouping dwGrouping = dwGroupingService.getById(reservation.getGroupingId()); + compPay = compPay.add(dwGrouping.getYsPrice()); + } + LambdaQueryWrapper<TjTeamSelectRecord> wq = new LambdaQueryWrapper<>(); + wq.eq(TjTeamSelectRecord::getTeamNo, entry.getValue().get(0).getTeamNo()); + wq.eq(TjTeamSelectRecord::getPacId, entry.getKey()); + wq.eq(TjTeamSelectRecord::getCompId,compId); + TjTeamSelectRecord recordServiceOne = selectRecordService.getOne(wq); + if (null != recordServiceOne) { + recordServiceOne.setPacId(entry.getKey()); + recordServiceOne.setCompId(compId); + recordServiceOne.setTeamNo(entry.getValue().get(0).getTeamNo()); + recordServiceOne.setTransactionAmount(new BigDecimal("0.00")); + recordServiceOne.setCount(entry.getValue().size()); + recordServiceOne.setDifference(compPay); + selectRecordService.updateById(recordServiceOne); + } else { + TjTeamSelectRecord selectRecord = new TjTeamSelectRecord(); + selectRecord.setCompId(compId); + selectRecord.setPacId(entry.getKey()); + selectRecord.setTeamNo(entry.getValue().get(0).getTeamNo()); + selectRecord.setTransactionAmount(new BigDecimal("0.00")); + selectRecord.setCount(entry.getValue().size()); + selectRecord.setDifference(compPay); + selectRecordService.save(selectRecord); + } + } + } + LambdaQueryWrapper<TjTeamSelectRecord>wq0=new LambdaQueryWrapper<>(); if(null !=compId){ wq0.eq(TjTeamSelectRecord::getCompId,compId); } wq0.ne(TjTeamSelectRecord::getDifference,0); List<TjTeamSelectRecord> selectRecordList = selectRecordService.list(wq0); - if(null !=selectRecordList && selectRecordList.size()>0){ + if(null !=selectRecordList && !selectRecordList.isEmpty()){ for(TjTeamSelectRecord selectRecord : selectRecordList){ - TjDwDept dwDept = dwDeptService.getById(selectRecord.getPacId()); - if(null !=dwDept){ - selectRecord.setPacName(dwDept.getDwDeptName()); - selectRecord.setSigningPrice(dwDept.getSigningPrice()); + TjDwGrouping dwGrouping = dwGroupingService.getById(selectRecord.getPacId()); + + if(null !=dwGrouping){ + selectRecord.setPacName(dwGrouping.getGroupingName()); + selectRecord.setSigningPrice(dwGrouping.getSigningPrice()); } LambdaQueryWrapper<TjCompPay>wq1=new LambdaQueryWrapper<>(); wq1.eq(TjCompPay::getCompId,compId); @@ -150,8 +200,8 @@ LambdaQueryWrapper<TjCompPayInfo>wq=new LambdaQueryWrapper<>(); wq.eq(TjCompPayInfo::getTjCompPayId,compPay.getId()); selectRecord.setPayInfoList(payInfoService.list(wq)); - selectRecord.setCopeWith(compPay.getCopeWith()); - selectRecord.setDifference(compPay.getDifference()); + selectRecord.setCopeWith(selectRecord.getDifference()); + selectRecord.setDifference(selectRecord.getDifference()); selectRecord.setPayer(compService.getById(compPay.getCompId()).getContactPerson()); selectRecord.setSjCount(orderService.count(new LambdaQueryWrapper<TjOrder>().eq(TjOrder::getTeamNo,compPay.getTeamNo()))); TjCompPayInfo payInfo = new TjCompPayInfo(); @@ -170,34 +220,60 @@ */ @GetMapping("/getTeamTjPeopleList") @ApiOperation(value = "鏍规嵁鍥㈤槦浣撴缂栧彿鍥㈤槦浜哄憳浣撴鎯呭喌鏌ヨ") - public AjaxResult getTeamTjPeopleList(@RequestParam @ApiParam(value = "鍥㈤槦缂栧彿") String teamNo) { + public AjaxResult getTeamTjPeopleList(@RequestParam @ApiParam(value = "鍥㈤槦缂栧彿") String teamNo, + @RequestParam(required = false) @ApiParam(value = "鍗曚綅id") String pacId) { - List<TjReservation> reservationList = reservationService.list(new LambdaQueryWrapper<TjReservation>().eq(TjReservation::getTeamNo,teamNo)); - if (null != reservationList && reservationList.size() > 0) { - List<TeamTjPeopleVo> voList = new ArrayList<>(); - for (TjReservation reservation : reservationList) { - TeamTjPeopleVo vo = new TeamTjPeopleVo(); - vo.setName(reservation.getName()); - TjCustomer customer = customerService.getOne(new LambdaQueryWrapper<TjCustomer>().eq(TjCustomer::getCusIdcard, reservation.getIdCard())); - if (null != customer) { - TjOrder tjOrder = orderService.getOne(new LambdaQueryWrapper<TjOrder>().eq(TjOrder::getUserId, customer.getCusId()).eq(TjOrder::getTeamNo, teamNo)); - if (null != tjOrder) { - if (null != tjOrder.getFinishTime()) { - vo.setTjStatus("宸插畬鎴�"); - vo.setTjTime(tjOrder.getFinishTime()); - } else { - vo.setTjStatus("鏈畬鎴�"); - } - } else { - vo.setTjStatus("鏈� 妫�"); + try { + Map<String,Object> map=new HashMap<>(); + LambdaQueryWrapper<TjReservation> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjReservation::getTeamNo, teamNo); + if(StringUtil.isNotBlank(pacId))wrapper.eq(TjReservation::getPacId, pacId); + List<TjReservation> reservationList = reservationService.list(wrapper); + if (null != reservationList && !reservationList.isEmpty()) { + List<TeamTjPeopleVo> syList = new ArrayList<>(); + List<TeamTjPeopleVo> yjwjzList = new ArrayList<>(); + List<TeamTjPeopleVo> wjList = new ArrayList<>(); + for (TjReservation reservation : reservationList) { + TeamTjPeopleVo vo = new TeamTjPeopleVo(); + vo.setName(reservation.getName()); + TjCustomer customer = null; + try { + customer = customerService.getOne(new LambdaQueryWrapper<TjCustomer>().eq(TjCustomer::getCusIdcard, reservation.getIdCard())); + } catch (Exception e) { + log.error("鏍规嵁鍥㈤槦缂栧彿鏌ヨ鍥㈤槦棰勭害淇℃伅寮傚父"+reservation.getIdCard()); + throw new RuntimeException(e); } - } else { - vo.setTjStatus("鏈� 妫�"); + if (null != customer) { + TjOrder tjOrder = orderService.getOne(new LambdaQueryWrapper<TjOrder>().eq(TjOrder::getUserId, customer.getCusId()).eq(TjOrder::getTeamNo, teamNo)); + if (null != tjOrder) { + int sfwc = remarkService.panduaniswancheng(tjOrder.getTjNumber()); + if (sfwc==0) { + vo.setTjStatus("宸插畬鎴�"); + vo.setTjTime(tjOrder.getCreateTime()); + } else { + vo.setTjStatus("鍦� 妫�"); + } + yjwjzList.add(vo); + } else { + vo.setTjStatus("鏈� 妫�"); + wjList.add(vo); + } + }else { + vo.setTjStatus("鏈� 妫�"); + wjList.add(vo); + } + syList.add(vo); + } - voList.add(vo); + map.put("syList",syList); + map.put("yjwjzList",yjwjzList); + map.put("wjList",wjList); + return AjaxResult.success(map); } - return AjaxResult.success(voList); + return AjaxResult.success(null); + } catch (Exception e) { + log.error("鏌ヨ鍥㈤槦浣撴浜哄憳淇℃伅寮傚父"); + throw new RuntimeException(e); } - return AjaxResult.success(null); } } 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 2403675..b6508b4 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 @@ -2929,9 +2929,10 @@ obj.putOpt("pro_name", tbTransition.getProName()); BigDecimal ordPrice = tbTransition.getOrdPrice(); obj.putOpt("zongjia", ordPrice); - QueryWrapper<TjProject> queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("pro_id", tbTransition.getProId()); - TjProject tjProject = projectService.getOne(queryWrapper); +// QueryWrapper<TjProject> queryWrapper = new QueryWrapper<>(); +// queryWrapper.eq("pro_id", tbTransition.getProId()); +// TjProject tjProject = projectService.getOne(queryWrapper); + TjProject tjProject = projectService.getTjProjectByIdNodel(tbTransition.getProId()); Integer num = tjProject.getSl(); obj.putOpt("num", num); BigDecimal price = ordPrice.divide(new BigDecimal(num)); 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 756d268..6e754e6 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 @@ -764,7 +764,7 @@ //鍥綋浜烘暟 int tramNum = 0; - if (null != rightList && rightList.size() > 0) { + if (null != rightList && !rightList.isEmpty()) { String teamNo = PinyinUtil.getFirstLetter(dwDept.getDwName(), "") + DateUtil.format(new Date(), "yyMMddHHmmss"); for (TjReservation reservation : rightList) { TjDwGrouping dwGrouping = dwGroupingService.getById(reservation.getGroupingId()); @@ -867,7 +867,6 @@ Date date = new Date(); //寮傛鏁版嵁 -// asyncService.addNewReservationConfirm(rightList); asyncService.saveNewReservationConfirm(rightList); //浣撴鍗曚綅閮ㄩ棬 @@ -896,7 +895,6 @@ TjDwGrouping dwGrouping = dwGroupingService.getById(reservation.getGroupingId()); -// TjDwDept dwDept = dwDeptService.getById(dwGrouping.getDwDeptId()); LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>(); wq.eq(TjReservation::getIdCard, reservation.getIdCard()); @@ -927,7 +925,6 @@ reservation.setPacId(dwGrouping.getId()); compPay = compPay.add(dwGrouping.getYsPrice()); -// reservation.setTjType(String.valueOf(1)); reservation.setTeamNo(teamNo); reservation.setYxts(dto.getYxts()); tjReservationService.save(reservation); @@ -957,14 +954,13 @@ compPayService.save(tjCompPay); } -// .filter(a-> null != a.getPacId()) - - Map<String, List<TjReservation>> collect = rightList.stream().collect(Collectors.groupingBy(TjReservation::getPacId)); + /* Map<String, List<TjReservation>> collect = rightList.stream().collect(Collectors.groupingBy(TjReservation::getPacId)); if (!collect.isEmpty()) { for (Map.Entry<String, List<TjReservation>> entry : collect.entrySet()) { LambdaQueryWrapper<TjTeamSelectRecord> wq = new LambdaQueryWrapper<>(); wq.eq(TjTeamSelectRecord::getTeamNo, teamNo); + wq.eq(TjTeamSelectRecord::getPacId, entry.getKey()); wq.eq(TjTeamSelectRecord::getCompId, dto.getDwId()); TjTeamSelectRecord recordServiceOne = selectRecordService.getOne(wq); if (null != recordServiceOne) { @@ -986,7 +982,7 @@ selectRecordService.save(selectRecord); } } - } + }*/ return AjaxResult.success("棰勭害鎴愬姛"); } return AjaxResult.error("璇烽�夋嫨棰勭害瀵硅薄"); diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCompPayInfo.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCompPayInfo.java index b92e467..bc2c944 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCompPayInfo.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCompPayInfo.java @@ -75,6 +75,10 @@ @ApiModelProperty(value = "鏀舵浜�") private String payee; + @ApiModelProperty(value = "濂楅id") + @TableField(exist = false) + private String pacId; + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java index fa3bf82..5d70a2d 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java @@ -212,5 +212,9 @@ List<TjProject> selectTjProjectListByBz(); + @Select("SELECT * FROM tj_project a WHERE a.pro_id=#{proId}") + TjProject getTjProjectByIdNodel(Long proId); + + } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java index ae2079a..d82e0f0 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java @@ -149,4 +149,5 @@ List<TjProject> selectTjProjectListByBz(); + TjProject getTjProjectByIdNodel(Long proId); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java index 4f4feb2..e19a91b 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java @@ -363,4 +363,9 @@ return tjProjectMapper.selectTjProjectListByBz(); } + @Override + public TjProject getTjProjectByIdNodel(Long proId) { + return tjProjectMapper.getTjProjectByIdNodel(proId); + } + } diff --git a/ltkj-hosp/src/main/resources/mapper/TjProjectMapper.xml b/ltkj-hosp/src/main/resources/mapper/TjProjectMapper.xml index 9a891c5..7095993 100644 --- a/ltkj-hosp/src/main/resources/mapper/TjProjectMapper.xml +++ b/ltkj-hosp/src/main/resources/mapper/TjProjectMapper.xml @@ -238,7 +238,7 @@ <if test="nr != null ">and (pro_name like concat('%', #{nr}, '%') or pro_eng_name like concat('%', #{nr}, '%'))</if> <if test="null !=xb and xb !='' "> - and (pro_sex=#{xb} or isnull(pro_sex)) </if> + and (pro_sex=#{xb} or isnull(pro_sex) or pro_sex=2 ) </if> </where> -- Gitblit v1.8.0