From 41b60f3df5f3054aad44307c13a26b14f3b32ac0 Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期二, 21 十一月 2023 09:46:03 +0800
Subject: [PATCH] 11.21
---
cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java | 16 ++
cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java | 15 ++
cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java | 3
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 4
cloud-server-course/src/main/java/com/dsh/course/entity/CourseCounsum.java | 2
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java | 3
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 18 ++
cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java | 1
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 157 ++++++++++++----------
cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java | 6
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java | 53 ++++---
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 130 +++++++++++++++++
12 files changed, 294 insertions(+), 114 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
index f588d89..c137268 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
@@ -471,6 +471,7 @@
@PostMapping("/base/appUser/addVipPaymentAliCallback")
public void addVipPaymentAliCallback(HttpServletRequest request, HttpServletResponse response){
try {
+ System.err.println("==============购买优惠卷回调=========");
Map<String, String> map = payMoneyUtil.alipayCallback(request);
if(null != map){
String out_trade_no = map.get("out_trade_no");
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java
index 58f2acc..62bea5b 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java
@@ -2,12 +2,15 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.dsh.account.entity.Coach;
import com.dsh.account.entity.EvaluateStudent;
import com.dsh.account.entity.TStudent;
import com.dsh.account.mapper.EvaluateStudentMapper;
import com.dsh.account.mapper.TStudentMapper;
import com.dsh.account.model.vo.commentDetail.StuCommentsVo;
+import com.dsh.account.service.CoachService;
import com.dsh.account.service.EvaluateStudentService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -32,17 +35,26 @@
private final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+
+ @Autowired
+ private CoachService coachService;
@Override
public List<StuCommentsVo> queryStuCommentsList(Integer stuId) {
List<StuCommentsVo> stuCommentsVos = new ArrayList<>();
TStudent tStudent = tstuMapper.selectById(stuId);
List<EvaluateStudent> evaluateStudents = this.list(new QueryWrapper<EvaluateStudent>()
.eq("studentId",stuId ));
+
+
if (evaluateStudents.size() > 0){
for (EvaluateStudent evaluateStudent : evaluateStudents) {
StuCommentsVo vo = new StuCommentsVo();
- vo.setHeadImg(tStudent.getHeadImg());
- vo.setStuName(tStudent.getName());
+
+ Coach coach = coachService.getById(evaluateStudent.getCoachId());
+// vo.setHeadImg(tStudent.getHeadImg());
+ vo.setHeadImg(coach.getDiploma());
+// vo.setStuName(tStudent.getName());
+ vo.setStuName(coach.getName());
vo.setComTime(format.format(tStudent.getInsertTime()));
vo.setContents(evaluateStudent.getContent());
String imgs = evaluateStudent.getImgs();
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
index 2bfa6a3..a7d0bc2 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -285,7 +285,7 @@
.eq("appUserId",tAppUser.getId())
.eq("state",1)
.eq("isDefault",1));
- if (tStudents==null){
+ if (tStudents.isEmpty()){
tStudents = tsmapper.selectList(new QueryWrapper<TStudent>()
.eq("appUserId",tAppUser.getId())
.eq("state",1))
@@ -868,7 +868,7 @@
if (rechargeRecords.size() > 0) {
for (RechargeRecords rechargeRecord : rechargeRecords) {
ConsumeDetail consumeDetail = new ConsumeDetail();
- consumeDetail.setConsumeName(RechargeRecordEnum.RECHARGE.getMsg() + ":" + rechargeRecord.getPlayPaiCoins());
+ consumeDetail.setConsumeName(RechargeRecordEnum.RECHARGE.getMsg() + ":" + rechargeRecord.getPlayPaiCoins()+"币");
consumeDetail.setConsumeTime(simpleDateFormat.format(rechargeRecord.getInsertTime()));
consumeDetail.setConsumeAmount("-" + rechargeRecord.getAmount());
consumeDetail.setType(2);
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
index c220ffb..bb9af63 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
@@ -677,9 +677,21 @@
List<RecordAppoint> recordAppoints = couPayClient.obtainStudentClassDetailsData(courseRest);
if (recordAppoints.size() > 0) {
if (ToolUtil.isNotEmpty(appointStatus) && appointStatus != 0) {
+ if (appointStatus ==2){
+ recordAppoints = recordAppoints.stream()
+ .filter(record -> record.getStatus().equals(3))
+ .collect(Collectors.toList());
+ }else if (appointStatus ==3){
+ recordAppoints = recordAppoints.stream()
+ .filter(record -> record.getStatus().equals(4))
+ .collect(Collectors.toList());
+ }
+ else {
+
recordAppoints = recordAppoints.stream()
.filter(record -> record.getStatus().equals(appointStatus))
.collect(Collectors.toList());
+ }
}
if (ToolUtil.isNotEmpty(search)) {
recordAppoints = recordAppoints.stream()
@@ -697,7 +709,8 @@
.filter(record -> {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
- Date time = sdf.parse(record.getTimeFrame().substring(11));
+ String substring = record.getTimeFrame().substring(11);
+ Date time = sdf.parse(substring);
return !time.before(lastWeekStartDate) && !time.after(lastOfDate);
} catch (ParseException e) {
return false;
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index 3d96cac..9394121 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -1186,8 +1186,10 @@
}else {
detailsVo.setUseType(1);
detailsVo.setWriteOffTime(simpleDateFormat.format(byId.getVerificationTime()));
- StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId());
- detailsVo.setWriteOffName(courseOfStore.getStoreName());
+ if (byId.getStoreId()!=null) {
+ StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId());
+ detailsVo.setWriteOffName(courseOfStore.getStoreName());
+ }
}
switch (pmdsServiceById.getUseScope()){
case 1:
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java
index d5ea088..031bf29 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java
@@ -106,6 +106,9 @@
for (Coupon coupon : userId) {
+ if (coupon.getDistributionMethod()!=2){
+ continue;
+ }
CouponListVo couponListVo = new CouponListVo();
couponListVo.setId(coupon.getId().longValue());
couponListVo.setName(coupon.getName());
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
index 051c02a..2d1d64e 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
@@ -102,31 +102,6 @@
//利用HashMap去重身份证
LinkedHashMap<String,ParticipantVo> linkedHashMap =new LinkedHashMap<>();
SimpleDateFormat sdf_year = new SimpleDateFormat("yyyy");
- for (TStudent tStudent : tStudents) {
- ParticipantVo participantVo = new ParticipantVo();
- participantVo.setId(tStudent.getId());
- participantVo.setName(tStudent.getName());
- participantVo.setIdcard(tStudent.getIdCard());
- Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(tStudent.getBirthday()));
- participantVo.setAge(age);
- Integer integer = coursePackagePaymentClient.queryResidueClassHour(tStudent.getId());
- participantVo.setResidueClassHour(integer);
- participantVo.setPhone(tStudent.getPhone());
- participantVo.setHeight(tStudent.getHeight().intValue());
- participantVo.setWeight(tStudent.getWeight());
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- if(null != tStudent.getBirthday()){
- String format = sdf.format(tStudent.getBirthday());
- participantVo.setBirthday(format);
- }
- participantVo.setGender(tStudent.getSex());
- participantVo.setIsStudent(1);
- if (tStudent.getIdCard()==null|| tStudent.getIdCard().isEmpty()){
- listVo1.add(participantVo);
- continue;
- }
- linkedHashMap.put(tStudent.getIdCard(),participantVo);
- }
@@ -172,6 +147,34 @@
}
+ for (TStudent tStudent : tStudents) {
+ ParticipantVo participantVo = new ParticipantVo();
+ participantVo.setId(tStudent.getId());
+ participantVo.setName(tStudent.getName());
+ participantVo.setIdcard(tStudent.getIdCard());
+ Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(tStudent.getBirthday()));
+ participantVo.setAge(age);
+ Integer integer = coursePackagePaymentClient.queryResidueClassHour(tStudent.getId());
+ participantVo.setResidueClassHour(integer);
+ participantVo.setPhone(tStudent.getPhone());
+ participantVo.setHeight(tStudent.getHeight().intValue());
+ participantVo.setWeight(tStudent.getWeight());
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ if(null != tStudent.getBirthday()){
+ String format = sdf.format(tStudent.getBirthday());
+ participantVo.setBirthday(format);
+ }
+ participantVo.setGender(tStudent.getSex());
+ participantVo.setIsStudent(1);
+ if (tStudent.getIdCard()==null|| tStudent.getIdCard().isEmpty()){
+ listVo1.add(participantVo);
+ continue;
+ }
+ linkedHashMap.put(tStudent.getIdCard(),participantVo);
+ }
+
+
+
listVo1.addAll(linkedHashMap.values());
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 1bc790a..8a4b4f6 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
@@ -457,10 +457,18 @@
}else {
resp.setIsAble(1);
}
- if (tCoursePackage.getValidDays()!=null){
- String afterDayDate = DateUtil.getAfterDayDate2(tCoursePackage.getInsertTime(),tCoursePackage.getValidDays() + "");
- resp.setPeriodOfValidity(afterDayDate);
+ if (tCoursePackagePayment.getUseTime()!=null){
+// String afterDayDate = DateUtil.getAfterDayDate2(tCoursePackage.getInsertTime(),tCoursePackage.getValidDays() + "");
+// resp.setPeriodOfValidity(afterDayDate);
+
+
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ String str = sdf.format(tCoursePackagePayment.getUseTime());
+ resp.setPeriodOfValidity(str);
}
+
+
+
resps.add(resp);
}
}
@@ -1245,6 +1253,10 @@
TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackagePayment.getCoursePackageId()).eq("studentId", coursePackagePayment.getStudentId()));
Date today = new Date();
+ Calendar calendar = Calendar.getInstance();
+ calendar.add(Calendar.DATE, -1);
+ today = calendar.getTime();
+
Integer laveClassHours = pay.getLaveClassHours();
Integer codeTime = tCoursePackage.getCodeTime();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/CourseCounsum.java b/cloud-server-course/src/main/java/com/dsh/course/entity/CourseCounsum.java
index 1e91012..c20c92e 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/entity/CourseCounsum.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/entity/CourseCounsum.java
@@ -27,4 +27,6 @@
@TableField("insertTime")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")
Date insertTime;
+ @TableField("appUserId")
+ Integer appUserId;
}
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java
index 81e5796..ae1a575 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java
@@ -14,6 +14,7 @@
import com.dsh.course.util.ResultUtil;
import io.swagger.models.auth.In;
+import java.text.ParseException;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -117,7 +118,7 @@
PayCourseInfoReq payCourseInfo(Integer courseId);
- ResultUtil payCourse(PayCourseReq req, Integer userId);
+ ResultUtil payCourse(PayCourseReq req, Integer userId) throws ParseException;
void updateUseTime(Long id, Date date);
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 26f4622..82a599e 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
@@ -981,7 +981,7 @@
if (tCoursePackagePayments.size() > 0 ){
// int pageNum = 1; // 页码
- int pageSize = 100; // 每页记录数
+ int pageSize = 10; // 每页记录数
Page<CoursePackageStudent> page = new Page<>(pageNum, pageSize);
// for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) {
@@ -1034,9 +1034,10 @@
// String classStartTime = coursePackage.getClassStartTime();
// String classEndTime = coursePackage.getClassEndTime();
//这里是过滤今天之后的数据
- if (byId == null||byId.getClassDate().after(new Date())){
- continue;
- }
+
+// if (byId == null||byId.getClassDate().after(new Date())){
+// continue;
+// }
if (byId == null){
continue;
@@ -1083,7 +1084,7 @@
// CancelledClasses cancelledClasses = cacMapper.selectOne(new QueryWrapper<CancelledClasses>()
// .eq("coursePackageId",coursePackageStudent.getCoursePackageId()));
CancelledClasses cancelledClasses = cacMapper.selectOne(new QueryWrapper<CancelledClasses>()
- .eq("coursePackageSchedulingId",byId.getId()));
+ .eq("coursePackageSchedulingId",byId.getId()).last("limit 1"));
if (ToolUtil.isNotEmpty(cancelledClasses)){
recordVo.setStatus(3);
// 消课 到课状态0 旷课
@@ -1256,6 +1257,9 @@
ArrayList<PayCourseRes> payCourseRes = new ArrayList<>();
for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) {
TCoursePackage tCoursePackage = tcpmapper.selectById(tCoursePackagePayment.getCoursePackageId());
+ if (tCoursePackage.getType()!=1){
+ continue;
+ }
if(tCoursePackage.getStoreId().equals(storeId)){
PayCourseRes payCourseRes1 = new PayCourseRes();
payCourseRes1.setId(tCoursePackagePayment.getId());
@@ -1359,7 +1363,7 @@
@Override
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRES_NEW)
- public ResultUtil payCourse(PayCourseReq req,Integer userId){
+ public ResultUtil payCourse(PayCourseReq req,Integer userId) throws ParseException {
// 扣除 原来的课时数
// 添加购买课时 paytyoe为7
// 排课可期 判断课程时间段 添加排课表 添加上课记录表
@@ -1371,69 +1375,78 @@
tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours()-req.getNum());
this.baseMapper.updateHoursById(tCoursePackagePayment.getId(),-req.getNum());
-//
-// List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackagePayment.getStudentId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId()));
-// List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList());
+
+ List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", tCoursePackagePayment.getStudentId()).eq("coursePackageId", tCoursePackagePayment.getCoursePackageId()));
+ List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList());
+
+ List<CoursePackageScheduling> list = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>().in("id", collect).le("classDate", new Date()));
+ coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id",collect).le("classDate", new Date()));
+ List<Long> collect1 = list.stream().map(CoursePackageScheduling::getId).collect(Collectors.toList());
+
+
// coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id",collect));
-// coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", paymentDeductionClassHour.getId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId()));
-//
-// TCoursePackage tCoursePackage = packageService.getById(tCoursePackagePayment.getCoursePackageId());
-// String classWeeks = tCoursePackage.getClassWeeks();
-// List<Integer> week = week(classWeeks);
-//
-// TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", tCoursePackagePayment.getCoursePackageId()).eq("studentId", tCoursePackagePayment.getStudentId()));
-//
-//
-// Date today = new Date();
-//
-// Integer laveClassHours = pay.getLaveClassHours();
-// Integer codeTime = tCoursePackage.getCodeTime();
-// Integer can = laveClassHours/codeTime;
-//
-// int count = 0;
-// String[] split = tCoursePackage.getClassStartTime().split(",");
-// String[] split1 = tCoursePackage.getClassEndTime().split(",");
-// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
-// SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
-//
-// Date[] dates = generateDateArray(14,today);
-// for (Date date : dates) {
-// if (count==can){
-// break;
-// }
-// int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date);
-// if (week.contains(wei)){
-// for (int i1 = 0; i1 < split.length; i1++) {
-// if (count==can){
-// break;
-// }
-// CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
-// coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
-// Date parse = format1.parse(format.format(date) + " " + split[i1]);
-// Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
-// coursePackageScheduling.setClassDate(parse);
-// coursePackageScheduling.setEndDate(parse1);
-// coursePackageScheduling.setStatus(1);
-// coursePackageSchedulingService.save(coursePackageScheduling);
-// CoursePackageStudent student1 = new CoursePackageStudent();
-// student1.setAppUserId(pay.getAppUserId());
-// student1.setStudentId(pay.getStudentId());
-// student1.setCoursePackageId(pay.getCoursePackageId());
-// student1.setCoursePackagePaymentId(pay.getId());
-// student1.setCoursePackageSchedulingId(coursePackageScheduling.getId());
-// student1.setSignInOrNot(1);
-// student1.setReservationStatus(1);
-// student1.setInsertTime(new Date());
-// studentService.save(student1);
-// count++;
-// }
-// }
-// }
-
-
-
+ coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", tCoursePackagePayment.getStudentId()).eq("coursePackageId", tCoursePackagePayment.getCoursePackageId()));
TCoursePackage tCoursePackage = tcpmapper.selectById(req.getCourseId());
+ String classWeeks = tCoursePackage.getClassWeeks();
+ List<Integer> week = week(classWeeks);
+
+ TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", tCoursePackagePayment.getCoursePackageId()).eq("studentId", tCoursePackagePayment.getStudentId()));
+
+
+ Date today = new Date();
+ Calendar calendar = Calendar.getInstance();
+ calendar.add(Calendar.DATE, -1);
+ today = calendar.getTime();
+
+ Integer laveClassHours = pay.getLaveClassHours();
+ Integer codeTime = tCoursePackage.getCodeTime();
+ Integer can = laveClassHours/codeTime;
+
+ int count = 0;
+ String[] split = tCoursePackage.getClassStartTime().split(",");
+ String[] split1 = tCoursePackage.getClassEndTime().split(",");
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+ SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+
+ Date[] dates = generateDateArray(14,today);
+ for (Date date : dates) {
+ if (count==can){
+ break;
+ }
+ int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date);
+ if (week.contains(wei)){
+ for (int i1 = 0; i1 < split.length; i1++) {
+ if (count==can){
+ break;
+ }
+ CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
+ coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+ Date parse = format1.parse(format.format(date) + " " + split[i1]);
+ Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
+ coursePackageScheduling.setClassDate(parse);
+ coursePackageScheduling.setEndDate(parse1);
+ coursePackageScheduling.setStatus(1);
+ coursePackageSchedulingService.save(coursePackageScheduling);
+ CoursePackageStudent student1 = new CoursePackageStudent();
+ student1.setAppUserId(pay.getAppUserId());
+ student1.setStudentId(pay.getStudentId());
+ student1.setCoursePackageId(pay.getCoursePackageId());
+ student1.setCoursePackagePaymentId(pay.getId());
+ student1.setCoursePackageSchedulingId(coursePackageScheduling.getId());
+ student1.setSignInOrNot(1);
+ student1.setReservationStatus(1);
+ student1.setInsertTime(new Date());
+ coursePackageStudentService.save(student1);
+ count++;
+ }
+ }
+ }
+
+
+
+
+// TCoursePackage tCoursePackage = tcpmapper.selectById(req.getCourseId());
// 添加课包
TCoursePackagePayment tCoursePackagePayment1 = new TCoursePackagePayment();
// tCoursePackagePayment1.setAppUserId(userId);
@@ -1462,19 +1475,19 @@
tCoursePackagePayment1.setInsertTime(new Date());
this.baseMapper.insert(tCoursePackagePayment1);
// 找出课包时间段
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String classStartTime = tCoursePackage.getClassStartTime();
String classEndTime = tCoursePackage.getClassEndTime();
- String[] split = classStartTime.split(",");
- String[] split1 = classEndTime.split(",");
+ String[] split5 = classStartTime.split(",");
+ String[] split6 = classEndTime.split(",");
List<String> time = req.getTime();
for (String s : time) {
- for (int i = 0; i < split.length; i++) {
+ for (int i = 0; i < split5.length; i++) {
CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
try {
- Date parse = format.parse(s + " " + split[i]);
- Date parse1 = format.parse(s + " " + split1[i]);
+ Date parse = format.parse(s + " " + split5[i]);
+ Date parse1 = format.parse(s + " " + split6[i]);
coursePackageScheduling.setClassDate(parse);
coursePackageScheduling.setEndDate(parse1);
coursePackageScheduling.setStatus(1);
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 4d0de4b..3709539 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
@@ -726,6 +726,25 @@
}
coursePackagePaymentConfigVo.setPaymentPrice(paymentPrice);
+
+
+ TCoursePackageDiscount discount = coursePackageDiscountService.getOne(new QueryWrapper<TCoursePackageDiscount>().eq("coursePackagePaymentConfigId", coursePackagePaymentConfig.getId())
+ .eq("type", 2).eq("auditStatus", 2));
+
+
+ //这里是续课优惠
+ Double continuingMember = JSON.parseObject(discount.getContent()).getDouble("continuingUser");
+ Double vipcontinuingMember = JSON.parseObject(discount.getContent()).getDouble("continuingMember");
+
+
+ if (coursePackagePaymentConfigVo.getPaymentPrice()>continuingMember){
+ coursePackagePaymentConfigVo.setPaymentPrice(continuingMember);
+ }
+ if (coursePackagePaymentConfigVo.getVipPrice()>vipcontinuingMember){
+ coursePackagePaymentConfigVo.setVipPrice(vipcontinuingMember);
+ }
+
+
if (coursePackagePaymentConfigVo.getPaymentPrice()<coursePackagePaymentConfigVo.getVipPrice()){
coursePackagePaymentConfigVo.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
coursePackagePaymentConfigVo.setVipPrice(null);
@@ -1035,6 +1054,21 @@
TCoursePackagePayment coursePackagePaymentServiceOne = coursePackagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("studentId", s).eq("coursePackageId", paymentCourseVo.getId()));
+ //赠送课时
+ int weekday = DateUtil.dayOfWeek(new Date()) - 1;
+ TCoursePackageDiscount discount = coursePackageDiscountService.getOne(new QueryWrapper<TCoursePackageDiscount>().eq("type",4).eq("coursePackageId", paymentCourseVo.getId()).last("limit 1"));
+
+ Integer hour = 0;
+ if (discount!=null) {
+ JSONArray objects = JSONObject.parseArray(discount.getContent());
+ JSONObject parse = JSONObject.parseObject(JSONObject.toJSONString(objects.get(0)));
+ hour = parse.getInteger("hour");
+ if (hour == null) {
+ hour = 0;
+ }
+ }
+
+
if (coursePackagePaymentServiceOne==null) {
TCoursePackagePayment coursePackagePayment = new TCoursePackagePayment();
coursePackagePayment.setCode(code);
@@ -1042,11 +1076,11 @@
coursePackagePayment.setStudentId(Integer.valueOf(s));
coursePackagePayment.setCoursePackageId(paymentCourseVo.getId());
coursePackagePayment.setPayType(paymentCourseVo.getPayType());
- coursePackagePayment.setClassHours(coursePackagePaymentConfig.getClassHours());
+ coursePackagePayment.setClassHours(coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePayment.setOriginalPrice(paymentCourseVo.getPrice());
coursePackagePayment.setPlayPaiCoin(paymentPrice.intValue());
- coursePackagePayment.setTotalClassHours(coursePackagePaymentConfig.getClassHours());
- coursePackagePayment.setLaveClassHours(coursePackagePaymentConfig.getClassHours());
+ coursePackagePayment.setTotalClassHours(coursePackagePaymentConfig.getClassHours()+hour);
+ coursePackagePayment.setLaveClassHours(coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePayment.setAbsencesNumber(0);
coursePackagePayment.setPayUserType(1);
coursePackagePayment.setPayStatus(1);
@@ -1072,6 +1106,19 @@
courseCounsum.setInsertTime(new Date());
courseCounsum.setReason("购买课包");
courseCounsumService.save(courseCounsum);
+
+ if (hour!=0){
+ CourseCounsum courseCounsum1 = new CourseCounsum();
+ courseCounsum1.setPaymentId(coursePackagePayment.getId());
+ courseCounsum1.setChangeType(1);
+ courseCounsum1.setNum(hour);
+ courseCounsum1.setInsertTime(new Date());
+ courseCounsum1.setReason("赠送课时");
+ courseCounsumService.save(courseCounsum);
+
+ }
+
+
}else {
// coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours());
@@ -1157,11 +1204,26 @@
for (String s1 : split) {
TCoursePackagePayment coursePackagePaymentServiceOne = coursePackagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("studentId", s).eq("coursePackageId", paymentCourseVo.getId()));
if (coursePackagePaymentServiceOne!=null) {
- coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours());
+
+ TCoursePackageDiscount discount = coursePackageDiscountService.getOne(new QueryWrapper<TCoursePackageDiscount>().eq("type",4).eq("coursePackageId", paymentCourseVo.getId()).last("limit 1"));
+
+ Integer hour = 0;
+ if (discount!=null) {
+ JSONArray objects = JSONObject.parseArray(discount.getContent());
+ JSONObject parse = JSONObject.parseObject(JSONObject.toJSONString(objects.get(0)));
+ hour = parse.getInteger("hour");
+ if (hour == null) {
+ hour = 0;
+ }
+ }
+
+
+
+ coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePaymentServiceOne.setOriginalPrice(coursePackagePaymentServiceOne.getOriginalPrice()+paymentCourseVo.getPrice());
coursePackagePaymentServiceOne.setPlayPaiCoin(coursePackagePaymentServiceOne.getPlayPaiCoin()+paymentPrice.intValue());
- coursePackagePaymentServiceOne.setTotalClassHours(coursePackagePaymentServiceOne.getTotalClassHours()+coursePackagePaymentConfig.getClassHours());
- coursePackagePaymentServiceOne.setLaveClassHours(coursePackagePaymentServiceOne.getLaveClassHours()+coursePackagePaymentConfig.getClassHours());
+ coursePackagePaymentServiceOne.setTotalClassHours(coursePackagePaymentServiceOne.getTotalClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
+ coursePackagePaymentServiceOne.setLaveClassHours(coursePackagePaymentServiceOne.getLaveClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePaymentServiceOne.setCode(code);
coursePackagePaymentServiceOne.setAppUserId(null);
@@ -1183,6 +1245,18 @@
courseCounsum.setInsertTime(new Date());
courseCounsum.setReason("续课");
courseCounsumService.save(courseCounsum);
+
+
+ if (hour!=0){
+ CourseCounsum courseCounsum1 = new CourseCounsum();
+ courseCounsum1.setPaymentId(coursePackagePaymentServiceOne.getId());
+ courseCounsum1.setChangeType(1);
+ courseCounsum1.setNum(hour);
+ courseCounsum1.setInsertTime(new Date());
+ courseCounsum1.setReason("赠送课时");
+ courseCounsumService.save(courseCounsum);
+
+ }
}
@@ -1335,6 +1409,8 @@
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
+ TCoursePackage course = coursePackageService.getById(paymentCourseVo.getId());
+
//赠送课时
int weekday = DateUtil.dayOfWeek(new Date()) - 1;
@@ -1374,6 +1450,16 @@
coursePackagePayment.setStatus(1);
coursePackagePayment.setState(1);
coursePackagePayment.setInsertTime(new Date());
+
+ if (course.getValidDays()!=null) {
+ Date date = new Date();
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(date);
+ calendar.add(Calendar.DATE, course.getValidDays());
+ date = calendar.getTime();
+ coursePackagePayment.setUseTime(date);
+ }
+
coursePackagePaymentService.save(coursePackagePayment);
Integer sId = null;
Student student = studentClient.queryDefaultStudent(appUser.getId());
@@ -1391,6 +1477,16 @@
courseCounsum.setReason("购买课包");
courseCounsumService.save(courseCounsum);
+ if (hour!=0){
+ CourseCounsum courseCounsum1 = new CourseCounsum();
+ courseCounsum1.setPaymentId(coursePackagePayment.getId());
+ courseCounsum1.setChangeType(1);
+ courseCounsum1.setNum(hour);
+ courseCounsum1.setInsertTime(new Date());
+ courseCounsum1.setReason("赠送课时");
+ courseCounsumService.save(courseCounsum1);
+ }
+
}else{
coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
if (coursePackagePaymentServiceOne.getOriginalPrice()!=null) {
@@ -1406,6 +1502,18 @@
coursePackagePaymentServiceOne.setTotalClassHours(coursePackagePaymentServiceOne.getTotalClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePaymentServiceOne.setLaveClassHours(coursePackagePaymentServiceOne.getLaveClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
coursePackagePaymentServiceOne.setAppUserId(null);
+
+
+ if (course.getValidDays()!=null) {
+ Date date = coursePackagePaymentServiceOne.getUseTime();
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(date);
+ calendar.add(Calendar.DATE, course.getValidDays());
+ date = calendar.getTime();
+ coursePackagePaymentServiceOne.setUseTime(date);
+ }
+
+
coursePackagePaymentService.updateById(coursePackagePaymentServiceOne);
// coursePackagePaymentService.save(coursePackagePayment);
@@ -1425,6 +1533,16 @@
courseCounsum.setReason("续课");
courseCounsumService.save(courseCounsum);
+ if (hour!=0){
+ CourseCounsum courseCounsum1 = new CourseCounsum();
+ courseCounsum1.setPaymentId(coursePackagePaymentServiceOne.getId());
+ courseCounsum1.setChangeType(1);
+ courseCounsum1.setNum(hour);
+ courseCounsum1.setInsertTime(new Date());
+ courseCounsum1.setReason("赠送课时");
+ courseCounsumService.save(courseCounsum1);
+ }
+
}
--
Gitblit v1.7.1