From 76e0b150d0b9cb8d733668abcbb1763a759fc90d Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期一, 27 十一月 2023 19:56:57 +0800 Subject: [PATCH] 后台bug修改 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java | 53 ++++++++- cloud-server-activity/pom.xml | 5 + cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java | 2 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 157 ++++++++---------------------- cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java | 3 cloud-server-account/pom.xml | 1 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java | 49 ++++----- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 1 8 files changed, 117 insertions(+), 154 deletions(-) diff --git a/cloud-server-account/pom.xml b/cloud-server-account/pom.xml index f88ad28..50581f7 100644 --- a/cloud-server-account/pom.xml +++ b/cloud-server-account/pom.xml @@ -15,7 +15,6 @@ <description>账户</description> <dependencies> <!--日志处理--> - <!-- <dependency>--> <!-- <groupId>com.github.binarywang</groupId>--> <!-- <artifactId>wx-java-pay-spring-boot-starter</artifactId>--> diff --git a/cloud-server-activity/pom.xml b/cloud-server-activity/pom.xml index 9254ebe..07f5a06 100644 --- a/cloud-server-activity/pom.xml +++ b/cloud-server-activity/pom.xml @@ -14,6 +14,11 @@ <name>福利</name> <description>福利</description> <dependencies> + <dependency> + <groupId>org.gavaghan</groupId> + <artifactId>geodesy</artifactId> + <version>1.1.3</version> + </dependency> <!--日志处理--> <dependency> <groupId>cn.mb.cloud</groupId> diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java index 5e6438c..825445d 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java @@ -161,125 +161,54 @@ */ @RequestMapping("/base/coursePackagePayment/add") public Object addCoursePackagePayment(@RequestBody TCoursePackagePayment packagePayment) { - packagePayment.setInsertTime(new Date()); - packagePayment.setInsertTime(new Date()); - Integer studentId = packagePayment.getStudentId(); - // 添加学员上课记录 - CoursePackageStudent coursePackageStudent = new CoursePackageStudent(); - TCoursePackagePayment one = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("studentId", packagePayment.getStudentId()) - .orderByDesc("insertTime") - .last("LIMIT 1")); - if (one != null) { - Integer totalClassHours = one.getTotalClassHours(); - Integer absencesNumber = one.getAbsencesNumber(); - // 没有过期 - if (one.getUseTime().after(new Date())) { - if (one.getLaveClassHours() - packagePayment.getClassHours() < 0) { - return 5002; - } - packagePayment.setTotalClassHours(one.getTotalClassHours()); - packagePayment.setLaveClassHours(one.getLaveClassHours() - packagePayment.getClassHours()); - packagePayment.setAbsencesNumber(one.getAbsencesNumber()); + //校验是否已经报满 + Integer cpId = Integer.valueOf((int) packagePayment.getCoursePackageId()); + Integer integer = coursePackagePaymentService.queryCountNumber(cpId); + TCoursePackage course = coursePackageService.getById(packagePayment.getId()); + if (course.getType() != 3) { + if (integer + 1 > course.getMaxSubscribeNumber()) { + return 5001; } - packagePayment.setTotalClassHours(packagePayment.getClassHours()); - packagePayment.setLaveClassHours(packagePayment.getClassHours()); - packagePayment.setAbsencesNumber(one.getAbsencesNumber()); - } else { - packagePayment.setTotalClassHours(packagePayment.getClassHours()); - packagePayment.setLaveClassHours(packagePayment.getClassHours()); - packagePayment.setAbsencesNumber(0); + } + // 如果重复购买 累加课时 + CoursePackageOrder coursePackageOrder = new CoursePackageOrder(); + coursePackageOrder.setAppUserId(packagePayment.getAppUserId()); + coursePackageOrder.setStudentIds(String.valueOf(packagePayment.getStudentId())); + coursePackageOrder.setCoursePackageId(packagePayment.getCoursePackageId()); + coursePackageOrder.setClassHours(packagePayment.getClassHours()); + coursePackageOrder.setOriginalPrice(packagePayment.getOriginalPrice()); + coursePackageOrder.setCashPayment(packagePayment.getCashPayment()); + coursePackageOrder.setPlayPaiCoin(packagePayment.getPlayPaiCoin()); + coursePackageOrder.setPayStatus(1); + coursePackageOrder.setState(1); + coursePackageOrder.setInsertTime(new Date()); + coursePackageOrder.setSalesName(packagePayment.getSalesName()); + coursePackageOrderService.save(coursePackageOrder); + TCoursePackage byId = coursePackageService.getById(packagePayment.getCoursePackageId()); + if (byId.getType()==1){ + CoursePackageOrderStudent coursePackageOrderStudent = new CoursePackageOrderStudent(); + coursePackageOrderStudent.setAppUserId(packagePayment.getAppUserId()); + coursePackageOrderStudent.setStudentId(packagePayment.getStudentId()); + coursePackageOrderStudent.setCoursePackageId(packagePayment.getCoursePackageId()); + coursePackageOrderStudent.setTotalClassHours(packagePayment.getClassHours()); + coursePackageOrderStudent.setLaveClassHours(packagePayment.getClassHours()); + coursePackageOrderStudent.setAbsencesNumber(0); + coursePackageOrderStudent.setDropoutsNumber(0); + coursePackageOrderStudent.setStatus(1); + coursePackageOrderStudent.setState(1); + coursePackageOrderStudent.setInsertTime(new Date()); + coursePackageOrderStudent.setGiftClassHours(packagePayment.getGiftClassHours()); + // 获取常规课的有效期 计算是哪一天 + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_MONTH, byId.getValidDays()); + Date time = calendar.getTime(); + coursePackageOrderStudent.setUseTime(time); + return coursePackageOrderStudentService.save(coursePackageOrderStudent); } // 生成排课数据 - TCoursePackage coursePackage = tcpService.getById(packagePayment.getCoursePackageId()); - //生成排课数据 - try { - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00"); - List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";")); - String value = coursePackage.getClassStartTime(); - String value1 = coursePackage.getClassEndTime(); + return null; - String[] star = value.split(","); - String[] end = value1.split(","); - for (int i = 0; i < star.length; i++) { - // int index = star[i].indexOf(","); - // String result = value.substring(0, index).trim(); - String classStartTime = star[i]; - String[] split = classStartTime.split(":"); - // String value1 = en; - int index1 = value1.indexOf(","); - // String result1 = value.substring(0, index1).trim(); - String classEndTime = end[i]; - String[] split1 = classEndTime.split(":"); - Calendar s = Calendar.getInstance(); - s.setTime(date); - s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); - s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); - s.set(Calendar.MINUTE, Integer.valueOf(split[1])); - s.set(Calendar.SECOND, 0); - - Calendar e = Calendar.getInstance(); - e.setTime(date); - e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 14); - long timeInMillis = e.getTimeInMillis(); - - while (true) { - int w = s.get(Calendar.DAY_OF_WEEK); - WeekEnum weekEnum = WeekEnum.getWeekEnum(w); - if (list.contains(weekEnum.getChineseName())) { - Calendar classDate = Calendar.getInstance(); - classDate.setTime(s.getTime()); - classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); - classDate.set(Calendar.MINUTE, Integer.valueOf(split[1])); - classDate.set(Calendar.SECOND, 0); - - Calendar endDate = Calendar.getInstance(); - endDate.setTime(s.getTime()); - endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0])); - endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1])); - endDate.set(Calendar.SECOND, 0); - - CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); - coursePackageScheduling.setCoursePackageId(coursePackage.getId()); - coursePackageScheduling.setClassDate(classDate.getTime()); - coursePackageScheduling.setEndDate(endDate.getTime()); - coursePackageScheduling.setStatus(1); - coursePackageSchedulingService.save(coursePackageScheduling); - coursePackageStudent.setCoursePackageSchedulingId(coursePackageScheduling.getId()); - - List<CoursePackageScheduling> list1 = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>() - .eq("coursePackageId", coursePackage.getId()) - .eq("classDate", classDate.getTime()) - .eq("endDate", endDate.getTime())); - if (list1.size() + 1 > coursePackage.getMaxSubscribeNumber()) { - // 当前课包预约人数已满 - return 5001; - } - } - s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); - if (s.getTimeInMillis() > timeInMillis) { - break; - } - } - } - } catch (ParseException e) { - e.printStackTrace(); - } - - coursePackageStudent.setStudentId(packagePayment.getStudentId()); - coursePackageStudent.setCoursePackageId(packagePayment.getCoursePackageId()); - - - coursePackageStudent.setSignInOrNot(0); - coursePackageStudent.setReservationStatus(1); - coursePackageStudent.setInsertTime(new Date()); - coursePackageStudent.setAppUserId(packagePayment.getAppUserId()); - packagePaymentService.save(packagePayment); - coursePackageStudent.setCoursePackagePaymentId(packagePayment.getId()); - - return coursePackageStudentService.save(coursePackageStudent); } /** diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java b/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java index 4f957ea..1174608 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java +++ b/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java @@ -192,4 +192,6 @@ @TableField(exist = false) private Integer orderId; + @TableField("giftClassHours") + private Integer giftClassHours; } diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java index 5d772cf..f8e2778 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java @@ -832,7 +832,6 @@ Integer integer = coursePackagePaymentService.queryCountNumber(paymentCourseVo.getId()); TCoursePackage course = coursePackageService.getById(paymentCourseVo.getId()); if (course.getType() != 3) { - if (integer + paymentCourseVo.getStudentIds().split(";").length > course.getMaxSubscribeNumber()) { return ResultUtil.error("报名失败,已达最大报名人数"); } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java index fbac453..5b6bc0a 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java @@ -106,7 +106,7 @@ */ @ResponseBody @PostMapping(value = "/addCoursePackagePayment/{id}") - public ResultUtil addCoach(@RequestBody TCoursePackagePayment tCoursePackagePayment, @PathVariable("id")Integer id) { + public Object addCoach(@RequestBody TCoursePackagePayment tCoursePackagePayment, @PathVariable("id")Integer id) { Integer objectId = UserExt.getUser().getObjectId(); Integer objectType = UserExt.getUser().getObjectType(); String name = UserExt.getUser().getName(); @@ -114,7 +114,6 @@ // 获取课包id Integer coursePackageId = tCoursePackagePayment.getCoursePackageId(); List<TCoursePackageDiscount> list = coursePackageDiscountClient.queryByCoursePackageId(coursePackageId); - Date currentDate = new Date(); Calendar calendar = Calendar.getInstance(); calendar.setTime(currentDate); @@ -146,11 +145,11 @@ // 获取当前课包价格配置 Integer coursePackageId1 = tCoursePackagePayment.getCoursePackageId(); List<CoursePackagePaymentConfig> coursePackagePaymentConfigs = coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(coursePackageId1); + if (coursePackagePaymentConfigs.size()!=0){ CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigs.get(0); tCoursePackagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment()); tCoursePackagePayment.setPlayPaiCoin(coursePackagePaymentConfig.getPlayPaiCoin()); - } // 原价 Double originalPrice = tCoursePackagePayment.getOriginalPrice(); @@ -196,8 +195,6 @@ // 限时折扣判断是否在有效期 String timeFrameStart = jsonObject.getString("startDate"); String timeFrameEnd = jsonObject.getString("endDate"); - SimpleDateFormat format = new SimpleDateFormat(timeFrameStart); - SimpleDateFormat format1 = new SimpleDateFormat(timeFrameEnd); try { // 判断当日时间是否能享受到折扣 String startTime = jsonObject.getString("startTime"); @@ -230,8 +227,46 @@ } break; case 4: - // 赠送课时 - + // 赠送课时 判断当前课包有没有赠送课时 + String weeks = jsonObject.getString("weeks"); + // 判断当前周几 是否满足折扣规则 + Calendar calendar9 = Calendar.getInstance(); + int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); + if (weeks.contains(String.valueOf(dayOfWeek))){ + // 限时折扣判断是否在有效期 + String timeFrameStart1 = jsonObject.getString("startDate"); + String timeFrameEnd1 = jsonObject.getString("endDate"); + try { + // 判断当日时间是否能享受到折扣 + String startTime = jsonObject.getString("startTime"); + String endTime = jsonObject.getString("endTime"); + // 获取当前时间 + Date currentTime = new Date(); + // 定义时间格式 + SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); + // 解析开始时间和结束时间为Date对象 + Date startTime1 = sdf.parse(startTime); + Date endTime1 = sdf.parse(endTime); + Date date1 = new Date(); + date1.setHours(startTime1.getHours()); + date1.setMinutes(startTime1.getMinutes()); + date1.setSeconds(startTime1.getSeconds()); + Date date2 = new Date(); + date2.setHours(endTime1.getHours()); + date2.setMinutes(endTime1.getMinutes()); + date2.setSeconds(endTime1.getSeconds()); + // 检查当前时间是否在开始时间和结束时间之间 + if (currentTime.after(date1) && currentTime.before(date2)) { + System.out.println("当前时间在开始时间和结束时间之间。"); + String hour = jsonObject.getString("hour"); + tCoursePackagePayment.setGiftClassHours(Integer.valueOf(hour)); + } else { + System.out.println("当前时间不在开始时间和结束时间之间。"); + } + } catch (ParseException e) { + e.printStackTrace(); + } + } break; } @@ -249,8 +284,8 @@ BigDecimal bigDecimal = new BigDecimal(minValue); tCoursePackagePayment.setCashPayment(bigDecimal); } - coursePackagePaymentClient.addCoursePackagePayment(tCoursePackagePayment); - return ResultUtil.success("添加成功"); + + return coursePackagePaymentClient.addCoursePackagePayment(tCoursePackagePayment); } /** diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java index 2b8a8d2..8890d96 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java @@ -80,26 +80,26 @@ public String updatePassword(Model model) { return "/password.html" ; } - @Autowired - private RedisUtil redisUtil; - /** - * 点击登录执行的动作 - */ - @RequestMapping(value = "/updatePassword", method = RequestMethod.POST) - public Object loginVali(String username, String password,String code) { - - User user = userService.getByAccount(username); - if (user==null)return "用户不存在"; - password = AESUtils.decrypt(password); - String s = MD5.md5(password); - if(user.getPassword().equals(s))return "新密码和旧密码一致"; - //验证短信验证码 - if(ToolUtil.isEmpty(code))return "无效的验证码"; - String value = redisUtil.getValue(user.getPhone()); - if(ToolUtil.isEmpty(value) || !code.equals(value))return "手机验证码不正确"; - user.setPassword(s); - return "修改成功!"; - } +// @Autowired +// private RedisUtil redisUtil; +// /** +// * 点击登录执行的动作 +// */ +// @RequestMapping(value = "/updatePassword", method = RequestMethod.POST) +// public Object loginVali(String username, String password,String code) { +// +// User user = userService.getByAccount(username); +// if (user==null)return "用户不存在"; +// password = AESUtils.decrypt(password); +// String s = MD5.md5(password); +// if(user.getPassword().equals(s))return "新密码和旧密码一致"; +// //验证短信验证码 +// if(ToolUtil.isEmpty(code))return "无效的验证码"; +// String value = redisUtil.getValue(user.getPhone()); +// if(ToolUtil.isEmpty(value) || !code.equals(value))return "手机验证码不正确"; +// user.setPassword(s); +// return "修改成功!"; +// } /** * 跳转到主页 */ @@ -227,14 +227,7 @@ f++; loginFailures.put(username, f); } - if (KaptchaUtil.getKaptchaOnOff()) { - String kaptcha = super.getPara("kaptcha").trim(); - String code = (String) super.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY); - if (Objects.isNull(kaptcha) || !kaptcha.equalsIgnoreCase(code)) { - model.addAttribute("tips", "验证码错误"); - return "/login.html"; - } - } + // if (f > 5 && (System.currentTimeMillis() - t) <= (30 * 60 * 1000)) { // model.addAttribute("tips", "登录次数过多,请等30分钟再试!"); // return "/login.html"; diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java index b4f7fe9..58a1646 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java @@ -164,7 +164,8 @@ */ @TableField("salesName") private String salesName; - + @TableField("giftClassHours") + private Integer giftClassHours; private String studentName; private String province; -- Gitblit v1.7.1