| | |
| | | coursePackageOrder.setInsertTime(new Date()); |
| | | coursePackageOrder.setSalesName(packagePayment.getSalesName()); |
| | | coursePackageOrderService.save(coursePackageOrder); |
| | | |
| | | // 生成排课数据 |
| | | return 200; |
| | | |
| | |
| | | .eq("type", 4).eq("auditStatus", 2).eq("status", 1) |
| | | .eq("coursePackagePaymentConfigId",one1.getId())); |
| | | if (one!=null){ |
| | | Integer giftClassHours = getGiftClassHours(one); |
| | | Integer giftClassHours = getGiftClassHours(one,null); |
| | | coursePackageOrderStudent.setGiftClassHours(giftClassHours); |
| | | coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours()+giftClassHours); |
| | | coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()+giftClassHours); |
| | |
| | | .eq("type", 4).eq("auditStatus", 2).eq("status", 1) |
| | | .eq("coursePackagePaymentConfigId",one1.getId())); |
| | | if (one!=null){ |
| | | Integer giftClassHours = getGiftClassHours(one); |
| | | Integer giftClassHours = getGiftClassHours(one,null); |
| | | coursePackageOrderStudent.setGiftClassHours(giftClassHours); |
| | | }else{ |
| | | coursePackageOrderStudent.setGiftClassHours(0); |
| | |
| | | } |
| | | } |
| | | } |
| | | if(byId.getType() == 2){ |
| | | addPackageStudent1(byId, byId1.getAppUserId(), Integer.valueOf(byId1.getStudentIds()), null); |
| | | } |
| | | return packagePaymentService.changeState(dto); |
| | | } |
| | | |
| | |
| | | List<CoursePackagePaymentVO> res = packagePaymentService.listAll(query); |
| | | List<CoursePackagePaymentVO> result = new ArrayList<>(); |
| | | for (CoursePackagePaymentVO re : res) { |
| | | // 判断这条记录有没有赠送课时 |
| | | Integer coursePackageId = re.getCoursePackageId(); |
| | | Integer classHours = re.getClassHours(); |
| | | CoursePackagePaymentConfig one = icppcService.getOne(new QueryWrapper<CoursePackagePaymentConfig>() |
| | | .eq("coursePackageId", coursePackageId) |
| | | .eq("classHours", classHours)); |
| | | if (one!=null){ |
| | | TCoursePackageDiscount one1 = discountService.getOne(new QueryWrapper<TCoursePackageDiscount>().eq("coursePackageId", coursePackageId) |
| | | .eq("coursePackagePaymentConfigId", one.getId()) |
| | | .eq("auditStatus",2).eq("status",1).eq("type",4)); |
| | | if (one1 == null){ |
| | | re.setGiftClassHours(0); |
| | | }else{ |
| | | Integer giftClassHours = getGiftClassHours(one1,re.getInsertTime()); |
| | | re.setGiftClassHours(giftClassHours); |
| | | } |
| | | }else{ |
| | | re.setGiftClassHours(0); |
| | | } |
| | | if (re.getCashPayment() == null) { |
| | | if (re.getPlayPaiCoin() != null) { |
| | | String value = String.valueOf(re.getPlayPaiCoin()); |
| | |
| | | if (discountService.list(new QueryWrapper<TCoursePackageDiscount>() |
| | | .eq("coursePackageId", re.getCoursePackageId()).eq("auditStatus", 2)).size() > 0) { |
| | | re.setBuyType(3); |
| | | re.setDiscountAmount(re.getOriginalPrice().subtract(re.getPayMoney())); |
| | | re.setDiscountAmount(re.getOriginalPrice().subtract(re.getCashPayment())); |
| | | } else { |
| | | re.setBuyType(2); |
| | | } |
| | |
| | | return dateList.toArray(new Date[0]); |
| | | } |
| | | |
| | | public Integer getGiftClassHours(TCoursePackageDiscount one){ |
| | | public Integer getGiftClassHours(TCoursePackageDiscount one,Date insertTime){ |
| | | if (insertTime!=null){ |
| | | // 判断购买时间 是否满足折扣规则 |
| | | char c = one.getContent().charAt(0); |
| | | String value1 = String.valueOf(c); |
| | | JSONObject jsonObject ; |
| | | if (value1.equals("[")){ |
| | | jsonObject = JSONObject.fromObject(one.getContent() |
| | | .substring(1,one.getContent().length() - 1)); |
| | | }else{ |
| | | jsonObject = JSONObject.fromObject(one.getContent()); |
| | | } |
| | | // 赠送课时 判断当前课包有没有赠送课时 |
| | | String weeks = jsonObject.getString("weeks"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(insertTime); |
| | | // 获取星期几,星期日是1,星期一是2,以此类推 |
| | | int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); |
| | | // 将星期日(Calendar定义为1)转换为7 |
| | | if (dayOfWeek == Calendar.SUNDAY) { |
| | | dayOfWeek = 7; |
| | | } else { |
| | | // 其他星期减一即可得到1-6的数字表示 |
| | | dayOfWeek -= 1; |
| | | } |
| | | // todo |
| | | if (weeks.contains(String.valueOf(dayOfWeek))){ |
| | | // 限时折扣判断是否在有效期 |
| | | try { |
| | | // 判断当日时间是否能享受到折扣 |
| | | String startTime = jsonObject.getString("startTime"); |
| | | String endTime = jsonObject.getString("endTime"); |
| | | |
| | | // 定义时间格式 |
| | | 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 (insertTime.after(date1) && insertTime.before(date2)) { |
| | | System.out.println("当前时间在开始时间和结束时间之间。"); |
| | | String hour = jsonObject.getString("hour"); |
| | | return Integer.valueOf(hour); |
| | | } else { |
| | | System.out.println("当前时间不在开始时间和结束时间之间。"); |
| | | return 0; |
| | | } |
| | | } catch (ParseException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | // 判断购买时间 是否满足折扣规则 |
| | | char c = one.getContent().charAt(0); |
| | | String value1 = String.valueOf(c); |
| | |
| | | String[] split1 = tCoursePackage.getClassEndTime().split(","); |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | |
| | | |
| | | //剩余课时 |
| | | Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours(); |
| | | //扣除课时数 |