| | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.hutool.extra.pinyin.PinyinUtil; |
| | | import cn.hutool.json.JSONArray; |
| | | import cn.hutool.json.JSONObject; |
| | |
| | | return AjaxResult.error("请输入要查询条件"); |
| | | } |
| | | |
| | | /** |
| | | * 体检(收费)页面查询接口 |
| | | */ |
| | | @GetMapping("/findTjCollectFeesByNameAndTjNumAndPhoneN") |
| | | @ApiOperation(value = "体检(收费)页面查询接口") |
| | | public AjaxResult findTjCollectFeesByNameAndTjNumAndPhoneNew(@RequestParam(required = false) @ApiParam(value = "体检号") String tjNum, |
| | | @RequestParam(required = false) @ApiParam(value = "体检人姓名") String tjName, |
| | | @RequestParam(required = false) @ApiParam(value = "体检人手机号") String tjPhone) { |
| | | List<TjCollectFeesVo> tjCollectFeesVoList = new ArrayList<>(); |
| | | if (null != tjName || null != tjPhone) { |
| | | LambdaQueryWrapper<TjCustomer> wq0 = new LambdaQueryWrapper<>(); |
| | | wq0.like(TjCustomer::getCusName, tjName) |
| | | .or() |
| | | .like(TjCustomer::getCusPhone, tjPhone); |
| | | List<TjCustomer> customerList = customerService.list(wq0); |
| | | if (null != customerList && !customerList.isEmpty()) { |
| | | LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.in(TjOrder::getUserId,customerList.stream().map(TjCustomer::getCusId).collect(Collectors.toList())); |
| | | // wq1.eq(TjOrder::getCheckStatus, 0); |
| | | wq1.isNotNull(TjOrder::getReportTime); |
| | | wq1.orderByDesc(TjOrder::getCreateTime); |
| | | List<TjOrder> tjOrders = orderService.list(wq1); |
| | | if (null != tjOrders && !tjOrders.isEmpty()) { |
| | | for (TjOrder order : tjOrders) { |
| | | TjCustomer customer = customerService.getById(order.getUserId()); |
| | | LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjOrderDetail::getOrderId, order.getOrderId()); |
| | | List<TjOrderDetail> detailList = detailService.list(wq2); |
| | | if (null != detailList && !detailList.isEmpty()) { |
| | | TjCollectFeesVo tjRefundVo = new TjCollectFeesVo(); |
| | | tjRefundVo.setTjCusId(String.valueOf(customer.getCusId())); |
| | | tjRefundVo.setTjName(customer.getCusName()); |
| | | tjRefundVo.setTjPhone(customer.getCusPhone()); |
| | | tjRefundVo.setSex(String.valueOf(customer.getCusSex())); |
| | | if (null != customer.getCusIdcard()) tjRefundVo.setIdCard(customer.getCusIdcard()); |
| | | DictComp dictComp = compService.getById(order.getFirmId()); |
| | | if (null != dictComp) { |
| | | tjRefundVo.setTjComp(dictComp.getCnName()); |
| | | } else { |
| | | tjRefundVo.setTjComp("无"); |
| | | } |
| | | if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType()); |
| | | LambdaQueryWrapper<TjFlowingWater> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjFlowingWater::getOrderId, order.getOrderId()); |
| | | // wq.eq(TjFlowingWater::getIsAddition, "N"); |
| | | wq.ne(TjFlowingWater::getPayStasus, 2); |
| | | |
| | | List<TjFlowingWater> list = tjFlowingWaterService.list(wq); |
| | | for (TjFlowingWater water : list) { |
| | | tjRefundVo.setTjFlowingWater(water); |
| | | tjRefundVo.setTjNumber(order.getTjNumber()); |
| | | tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); |
| | | TjCollectFeesVo vo = BeanUtil.copyProperties(tjRefundVo, TjCollectFeesVo.class); |
| | | tjCollectFeesVoList.add(vo); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | return AjaxResult.success(tjCollectFeesVoList); |
| | | } |
| | | return AjaxResult.error("该用户不存在"); |
| | | } |
| | | |
| | | if (null != tjNum) { |
| | | LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.likeLeft(TjOrder::getTjNumber, tjNum); |
| | | // wq1.eq(TjOrder::getCheckStatus, 0); |
| | | List<TjOrder> orderList = orderService.list(wq1); |
| | | if (null != orderList && !orderList.isEmpty()) { |
| | | for (TjOrder order : orderList) { |
| | | LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjOrderDetail::getOrderId, order.getOrderId()); |
| | | //wq2.isNull(TjOrderDetail::getFlowingWaterId); |
| | | List<TjOrderDetail> detailList = detailService.list(wq2); |
| | | if (null != detailList && !detailList.isEmpty()) { |
| | | TjCustomer customer = customerService.getById(order.getUserId()); |
| | | if (null != customer) { |
| | | TjCollectFeesVo tjRefundVo = new TjCollectFeesVo(); |
| | | tjRefundVo.setTjCusId(String.valueOf(customer.getCusId())); |
| | | tjRefundVo.setTjName(customer.getCusName()); |
| | | tjRefundVo.setTjPhone(customer.getCusPhone()); |
| | | tjRefundVo.setSex(String.valueOf(customer.getCusSex())); |
| | | tjRefundVo.setIdCard(customer.getCusIdcard()); |
| | | if (null != order.getFirmId()) { |
| | | DictComp byId = compService.getById(order.getFirmId()); |
| | | if (null != byId) { |
| | | tjRefundVo.setTjComp(byId.getCnName()); |
| | | } |
| | | } |
| | | if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType()); |
| | | TjFlowingWater one = tjFlowingWaterService.getOne(new LambdaQueryWrapper<TjFlowingWater>() |
| | | .eq(TjFlowingWater::getOrderId, order.getOrderId()) |
| | | .eq(TjFlowingWater::getIsAddition, "N") |
| | | .ne(TjFlowingWater::getPayStasus, 2)); |
| | | tjRefundVo.setTjFlowingWater(one); |
| | | tjRefundVo.setTjNumber(order.getTjNumber()); |
| | | tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); |
| | | tjCollectFeesVoList.add(tjRefundVo); |
| | | } |
| | | } |
| | | } |
| | | return AjaxResult.success(tjCollectFeesVoList); |
| | | } |
| | | return AjaxResult.success("该用户不存在或已体检完成"); |
| | | } |
| | | return AjaxResult.error("请输入要查询条件"); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 体检已收费未收费信息查询接口 |
| | |
| | | return AjaxResult.error("暂时没有数据"); |
| | | } |
| | | |
| | | /** |
| | | * 体检已收费未收费信息查询接口 |
| | | */ |
| | | @GetMapping("/findTjChargedButNotChargedByTjNumN") |
| | | @ApiOperation(value = "体检已收费未收费信息查询接口") |
| | | public AjaxResult findTjChargedButNotChargedByTjNumN(@RequestParam @ApiParam(value = "0未缴费1已缴费") Integer type, |
| | | @RequestParam @ApiParam(value = "体检号") String OrderId, |
| | | @RequestParam String tjSerialNumber) { |
| | | if (null != OrderId) { |
| | | TjOrder order = orderService.getById(OrderId); |
| | | if (null != order) { |
| | | List<TjProject> tjProjectList = null; |
| | | TjFlowingWater water = tjFlowingWaterService.getById(tjSerialNumber); |
| | | if (type == 0) { |
| | | if (StrUtil.isBlank(water.getJxbz())) |
| | | tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(OrderId); |
| | | else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullN(OrderId,water.getJxbz()); |
| | | } else { |
| | | if (StrUtil.isBlank(water.getJxbz())) |
| | | tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(OrderId); |
| | | else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullN(OrderId,water.getJxbz()); |
| | | } |
| | | String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber(),order.getCardId()); |
| | | String s = tjFlowingWaterService.getDiscount(OrderId); |
| | | if (null != tjProjectList && !tjProjectList.isEmpty()) { |
| | | for (TjProject project : tjProjectList) { |
| | | if (project.getProParentId() == 0) { |
| | | if (null != pacId) { |
| | | TjPackageProject pp = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId) |
| | | .eq(TjPackageProject::getProId, String.valueOf(project.getProId()))); |
| | | if (null != pp) { |
| | | project.setProPrice(pp.getPriceNow()); |
| | | project.setProOrdPrice(pp.getPriceNow().multiply(new BigDecimal(s))); |
| | | } else { |
| | | project.setProPrice(project.getProPrice().setScale(2)); |
| | | project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2)); |
| | | } |
| | | } else { |
| | | project.setProPrice(project.getProPrice().setScale(2)); |
| | | project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | List<TjFlowingWater> list = tjFlowingWaterService.list(new LambdaQueryWrapper<TjFlowingWater>() |
| | | .eq(TjFlowingWater::getOrderId, order) |
| | | .eq(TjFlowingWater::getPayStasus, 2)); |
| | | if (null != list && !list.isEmpty()) { |
| | | List<TjProject> projectList = projectService.getTjProListByPacIdAndDeptId(pacId); |
| | | if(null !=projectList && !projectList.isEmpty()){ |
| | | for (TjProject project : projectList) { |
| | | project.setProOrdPrice(tjPackageProjectService.getPacProPriceByPacIdAndPro(project.getProId(),pacId) |
| | | .multiply(new BigDecimal(s)).setScale(2)); |
| | | tjProjectList.add(project); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | return AjaxResult.success(tjProjectList); |
| | | } |
| | | } |
| | | return AjaxResult.error("暂时没有数据"); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 体检退费项目查询接口 |