From a1e80d905fd38f6ead484396b788fe19b0a3d7d5 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 08 十二月 2023 09:16:13 +0800 Subject: [PATCH] 修改bug --- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 164 ++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 102 insertions(+), 62 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java index 5b5a589..a886a16 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java @@ -152,70 +152,110 @@ @Override public List<Map<String, Object>> getStudentTotal(StudentQeryDto studentQeryDto) { - List<Map<String, Object>> studentTotal = this.baseMapper.getStudentTotal(studentQeryDto); +// String cityCode = studentQeryDto.getCityCode(); +// String start = studentQeryDto.getStart(); +// String end = studentQeryDto.getEnd(); +// //获取用户数据 +// List<Integer> appUserIds = null; +// if(ToolUtil.isNotEmpty(cityCode)){ +// List<AppUser> appUsers = appuClient.queryAppUserByCityCode(cityCode); +// if(appUsers.size() > 0){ +// appUserIds = appUsers.stream().map(AppUser::getId).collect(Collectors.toList()); +// } +// } +// QueryWrapper<CoursePackageStudent> status = new QueryWrapper<CoursePackageStudent>().eq("payStatus", 2).eq("status", 1); +// if(null != appUserIds){ +// status.in("appUserId", appUserIds); +// } +// List<Map<String, Object>> maps = this.baseMapper.getStudentTotal(appUserIds, studentQeryDto.getStart(), studentQeryDto.getEnd()); +// List<Map<String, Object>> list = new ArrayList<>(); +// for (Map<String, Object> objectMap : maps) { +// Integer studentId = Integer.valueOf(objectMap.get("studentId").toString()); +// Integer appUserId = Integer.valueOf(objectMap.get("appUserId").toString()); +// Integer coursePackageId = Integer.valueOf(objectMap.get("coursePackageId").toString()); +// Integer number = Integer.valueOf(objectMap.get("number").toString()); +// Map<String, Object> map = new HashMap<>(); +// Student student = studentClient.queryStudentById(studentId); +// map.put("studentName", student.getName()); +// AppUser appUser = appuClient.queryAppUser(appUserId); +// map.put("province", appUser.getProvince()); +// map.put("provinceCode", appUser.getProvinceCode()); +// map.put("city", appUser.getCity()); +// map.put("cityCode", appUser.getCityCode()); +// TCoursePackage coursePackage = coursePackageService.getById(coursePackageId); +// map.put("courseName", coursePackage.getName()); +// map.put("totalClassHours", number); +// map.put("cashPayment", coursePackageOrder.getCashPayment()); +// map.put("hasHours", ) +// +// +// } - for (Map<String, Object> student : studentTotal) { - Integer appUserId = (Integer) student.get("appUserId"); - AppUser appUser = appuClient.queryAppUser(appUserId); - student.put("province", appUser.getProvince()); - student.put("provinceCode", appUser.getProvinceCode()); - student.put("city", appUser.getCity()); - student.put("cityCode", appUser.getCityCode()); - - Student studentId = studentClient.queryStudentById((Integer) student.get("studentId")); - student.put("studentName", studentId.getName()); - BigDecimal cashPayment = (BigDecimal) student.get("cashPayment"); - BigDecimal totalClassHours = (BigDecimal) student.get("totalClassHours"); - BigDecimal hasHours = (BigDecimal) student.get("hasHours"); - if (cashPayment == null) { - continue; - } - if (totalClassHours.compareTo(BigDecimal.ZERO) == 0) { - totalClassHours = totalClassHours.add(new BigDecimal("1")); - } - BigDecimal hasPayment = cashPayment.divide(totalClassHours, 2, RoundingMode.HALF_UP) - .multiply(hasHours).setScale(2, RoundingMode.HALF_UP); - student.put("hasPayment", hasPayment); - } - - if (studentQeryDto.getCityCode() != null && studentQeryDto.getCityCode() != "") { - String value = studentQeryDto.getCityCode(); - boolean allZeros = value.substring(value.length() - 4).endsWith("0000"); - System.out.println(allZeros); // Output: true - if (allZeros) { - Iterator<Map<String, Object>> iterator = studentTotal.iterator(); - while (iterator.hasNext()) { - Map<String, Object> student = iterator.next(); - String cityCode = (String) student.get("provinceCode"); - if (!cityCode.equals(studentQeryDto.getCityCode())) { - iterator.remove(); // Remove the element from the list - } - } - } else { - Iterator<Map<String, Object>> iterator = studentTotal.iterator(); - while (iterator.hasNext()) { - Map<String, Object> student = iterator.next(); - String cityCode = (String) student.get("cityCode"); - if (!cityCode.equals(studentQeryDto.getCityCode())) { - iterator.remove(); // Remove the element from the list - } - } - } - } - - if (studentQeryDto.getStudentName() != null && studentQeryDto.getStudentName() != "") { - List<Map<String, Object>> totallike = new ArrayList<>(); - for (Map<String, Object> student : studentTotal) { - String studentName = (String) student.get("studentName"); - if (studentName.contains(studentQeryDto.getStudentName())) { - totallike.add(student); - } - - } - return totallike; - } - return studentTotal; +// List<Map<String, Object>> studentTotal = this.baseMapper.getStudentTotal(studentQeryDto); +// for (Map<String, Object> student : studentTotal) { +// Integer appUserId = (Integer) student.get("appUserId"); +// AppUser appUser = appuClient.queryAppUser(appUserId); +// student.put("province", appUser.getProvince()); +// student.put("provinceCode", appUser.getProvinceCode()); +// +// student.put("city", appUser.getCity()); +// student.put("cityCode", appUser.getCityCode()); +// +// Student studentId = studentClient.queryStudentById((Integer) student.get("studentId")); +// student.put("studentName", studentId.getName()); +// BigDecimal cashPayment = (BigDecimal) student.get("cashPayment"); +// BigDecimal totalClassHours = (BigDecimal) student.get("totalClassHours"); +// BigDecimal hasHours = (BigDecimal) student.get("hasHours"); +// if (cashPayment == null) { +// continue; +// } +// if (totalClassHours.compareTo(BigDecimal.ZERO) == 0) { +// totalClassHours = totalClassHours.add(new BigDecimal("1")); +// } +// BigDecimal hasPayment = cashPayment.divide(totalClassHours, 2, RoundingMode.HALF_UP) +// .multiply(hasHours).setScale(2, RoundingMode.HALF_UP); +// student.put("hasPayment", hasPayment); +// } +// +// if (studentQeryDto.getCityCode() != null && studentQeryDto.getCityCode() != "") { +// String value = studentQeryDto.getCityCode(); +// boolean allZeros = value.substring(value.length() - 4).endsWith("0000"); +// System.out.println(allZeros); // Output: true +// if (allZeros) { +// Iterator<Map<String, Object>> iterator = studentTotal.iterator(); +// while (iterator.hasNext()) { +// Map<String, Object> student = iterator.next(); +// String cityCode = (String) student.get("provinceCode"); +// if (!cityCode.equals(studentQeryDto.getCityCode())) { +// iterator.remove(); // Remove the element from the list +// } +// } +// } else { +// Iterator<Map<String, Object>> iterator = studentTotal.iterator(); +// while (iterator.hasNext()) { +// Map<String, Object> student = iterator.next(); +// String cityCode = (String) student.get("cityCode"); +// if (!cityCode.equals(studentQeryDto.getCityCode())) { +// iterator.remove(); // Remove the element from the list +// } +// } +// } +// } +// +// if (studentQeryDto.getStudentName() != null && studentQeryDto.getStudentName() != "") { +// List<Map<String, Object>> totallike = new ArrayList<>(); +// for (Map<String, Object> student : studentTotal) { +// String studentName = (String) student.get("studentName"); +// if (studentName.contains(studentQeryDto.getStudentName())) { +// totallike.add(student); +// } +// +// } +// return totallike; +// } +// return studentTotal; + return null; } @Override -- Gitblit v1.7.1