44323
2023-11-27 76e0b150d0b9cb8d733668abcbb1763a759fc90d
后台bug修改
8个文件已修改
271 ■■■■■ 已修改文件
cloud-server-account/pom.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-activity/pom.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java 157 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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>-->
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>
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);
    }
    /**
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;
}
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("报名失败,已达最大报名人数");
            }
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);
    }
    /**
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";
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;