From fad04923e4a9174bac391d12c59f1ade15b23521 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 05 三月 2024 10:10:19 +0800
Subject: [PATCH] 切换分支
---
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 486 ++++++++++++++++++++++++-----------------------------
1 files changed, 223 insertions(+), 263 deletions(-)
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 7831e10..d820ff0 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
@@ -28,6 +28,7 @@
import com.dsh.course.util.*;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.obs.services.internal.ServiceException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -137,6 +138,12 @@
@Autowired
private ICoursePackageOrderStudentService coursePackageOrderStudentService;
+ @Autowired
+ private ALiSendSms aLiSendSms;
+
+ @Resource
+ private AppUserClient appuClient;
+
/**
* 查询学员入学时间 根据第一次购买课包的时间
@@ -182,12 +189,13 @@
coursePackageOrder.setOriginalPrice(packagePayment.getOriginalPrice());
coursePackageOrder.setCashPayment(packagePayment.getCashPayment());
coursePackageOrder.setPlayPaiCoin(packagePayment.getPlayPaiCoin());
+ coursePackageOrder.setCode(packagePayment.getCode());
coursePackageOrder.setPayStatus(1);
+ coursePackageOrder.setStatus(1);
coursePackageOrder.setState(1);
coursePackageOrder.setInsertTime(new Date());
coursePackageOrder.setSalesName(packagePayment.getSalesName());
coursePackageOrderService.save(coursePackageOrder);
-
// 生成排课数据
return 200;
@@ -230,7 +238,7 @@
.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);
@@ -242,11 +250,11 @@
calendar.setTime(new Date());
calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + validDays);
coursePackageOrderStudent.setUseTime(calendar.getTime());
-
+ coursePackageOrderStudent.setInsertTime(new Date());
coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
Integer studentId = Integer.valueOf(byId1.getStudentIds());
//开始排课
- addPackageStudent1(byId, byId1.getAppUserId(), studentId, coursePackageOrderStudent);
+ addPackageStudent1(byId, byId1.getAppUserId(), studentId, byId1, coursePackageOrderStudent);
} else {
Date useTime = coursePackageOrderStudent.getUseTime();
coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours() + byId1.getClassHours());
@@ -265,7 +273,7 @@
.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);
@@ -275,14 +283,18 @@
calendar9.add(Calendar.DAY_OF_MONTH, byId.getValidDays());
Date time = calendar9.getTime();
coursePackageOrderStudent.setUseTime(time);
+ coursePackageOrderStudent.setInsertTime(new Date());
coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
Integer studentId = Integer.valueOf(byId1.getStudentIds());
//中间断课,没有连续续费的情况需要重新排课
if (useTime.compareTo(new Date()) < 0) {
- addPackageStudent1(byId, byId1.getAppUserId(), studentId, coursePackageOrderStudent);
+ addPackageStudent1(byId, byId1.getAppUserId(), studentId, byId1, coursePackageOrderStudent);
}
}
}
+ if(byId.getType() == 2){
+ addPackageStudent1(byId, byId1.getAppUserId(), Integer.valueOf(byId1.getStudentIds()), byId1, null);
+ }
return packagePaymentService.changeState(dto);
}
@@ -303,6 +315,25 @@
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());
@@ -312,7 +343,7 @@
Store store = storeClient.queryStoreById(re.getStoreId());
TAppUser appUser = appUserClient.queryAppUser1(re.getAppUserId());
String studentId = re.getStudentId();
- String[] split = studentId.split(",");
+ String[] split = studentId.split(";");
StringBuilder stringBuilder = new StringBuilder("");
for (String s : split) {
@@ -371,7 +402,7 @@
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);
}
@@ -447,7 +478,8 @@
}
}
TAppUser appUser = appUserClient.queryAppUser1(re.getAppUserId());
- Student student = studentClient.queryStudentById(re.getStudentId());
+ String[] split = re.getStudentIds().split(",");
+ Student student = studentClient.queryStudentById(Integer.valueOf(split[0]));
re.setPayStudent(student.getName());
re.setPayUser(appUser.getName());
re.setPhone(appUser.getPhone());
@@ -562,7 +594,6 @@
storeVo.setLon(store.getLon());
storeVo.setCoursePrice(ToolUtil.isEmpty(paymentConfig.getCashPayment()) ? (double) paymentConfig.getPlayPaiCoin() : paymentConfig.getCashPayment());
storeVo.setStatus(1);
- // 2.0
storeVo.setAllNum(tCoursePackagePayment.getTotalClassHours());
storeVo.setLastNum(tCoursePackagePayment.getLaveClassHours());
storeVo.setUseNum(tCoursePackagePayment.getTotalClassHours() - tCoursePackagePayment.getLaveClassHours());
@@ -666,17 +697,17 @@
@PostMapping("/base/coursePack/getRecord")
public List<PurchaseRecordVo> getRecord(@RequestBody RecordTimeRequest recordTimeRequest) {
- List<CoursePackageOrderStudent> list = new ArrayList<>();
+// List<CoursePackageOrderStudent> list = new ArrayList<>();
Integer[] changes = {1, 0};
- if (recordTimeRequest.getType() == null) {
- list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime"));
- } else {
-
- list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime"));
- }
- List<Integer> appUserIds = list.stream().map(CoursePackageOrderStudent::getAppUserId).collect(Collectors.toList());
+// if (recordTimeRequest.getType() == null) {
+// list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime"));
+// } else {
+//
+// list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime"));
+// }
+// List<Integer> appUserIds = list.stream().map(CoursePackageOrderStudent::getAppUserId).collect(Collectors.toList());
List<CoursePackageOrderStudent> list1 = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>()
- .in("appUserId", appUserIds)
+ .eq("studentId", recordTimeRequest.getStuId())
.eq("coursePackageId", recordTimeRequest.getLessionId())
.eq("state", 1)
);
@@ -736,7 +767,6 @@
return lisco;
}
-
@PostMapping("/base/coursePack/continuingCourse")
public StudentOfCourseVo getStudentCourse(@RequestBody GetStudentCourse getStudentCourse) {
StudentOfCourseVo courseVo = new StudentOfCourseVo();
@@ -745,7 +775,6 @@
.eq("coursePackageId", getStudentCourse.getCourseId())
.eq("studentId", getStudentCourse.getStuId()));
if (tCoursePackagePayments.size() > 0) {
-
List<CourseHoursType> typeList = new ArrayList<>();
tCoursePackagePayments.forEach(cou -> {
CourseHoursType hoursType = new CourseHoursType();
@@ -756,7 +785,6 @@
TCoursePackagePayment tCoursePackagePayment = tCoursePackagePayments.get(0);
courseVo.setCoursePackageId(tCoursePackagePayment.getCoursePackageId());
courseVo.setTypeList(typeList);
-
TCoursePackage coursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId());
courseVo.setPackageImg(coursePackage.getCoverDrawing());
courseVo.setCourseName(coursePackage.getName());
@@ -833,9 +861,6 @@
return videoVos;
}
-
-
-
@PostMapping("/base/coursePack/allPaymentCourseList")
@ResponseBody
public List<CouponPaymentVo> getAppuserCourseList(@RequestBody Integer appUserId) {
@@ -901,7 +926,6 @@
Set<BaseVo> set = new HashSet<>(list);
List<BaseVo> back = new ArrayList<>(set);
-
return ResultUtil.success(back);
} catch (Exception e) {
e.printStackTrace();
@@ -919,25 +943,11 @@
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
})
public ResultUtil<List<AppUserVideoResponse>> queryAfterSourceList(CourseOfAfterRequest search) throws Exception {
-// try {
Integer appUserId = tokenUtil.getUserIdFormRedis();
if (null == appUserId) {
return ResultUtil.tokenErr();
}
-//
-// List<Integer> courseIds = new ArrayList<>();
-// QueryWrapper<TCoursePackagePayment> queryWrapper = new QueryWrapper<TCoursePackagePayment>().eq("appUserId", appUserId)
-// .groupBy("coursePackageId");
-// if (ToolUtil.isNotEmpty(search.getCourseTypeId())){
-// queryWrapper.eq("coursePackageId",search.getCourseTypeId());
-// }
-// List<TCoursePackagePayment> tCoursePackagePayments = packagePaymentService.list(queryWrapper);
-// if (tCoursePackagePayments.size() > 0 ){
-// courseIds = tCoursePackagePayments.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
-// }
-
-
QueryWrapper<CoursePackageStudent> queryWrapper1 = new QueryWrapper<CoursePackageStudent>().eq("studentId", search.getStuId());
if (ToolUtil.isNotEmpty(search.getCourseTypeId())) {
queryWrapper1.eq("coursePackageId", search.getCourseTypeId());
@@ -950,7 +960,6 @@
}
System.out.println("======longs========" + longs);
-// List<CoursePackageScheduling> coursePackageSchedulings = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>().in("id",longs).isNotNull("courseId"));
List<AppUserVideoResponse> coursePackageSchedulings1 = coursePackageSchedulingService.queryAll(longs);
if (search.getSearch() != null) {
@@ -965,11 +974,6 @@
}
return ResultUtil.success(coursePackageSchedulings1);
-
-
-// }catch (Exception e){
-// return ResultUtil.runErr();
-// }
}
/**
@@ -1032,7 +1036,7 @@
}
}
- // 2.0
+
@ResponseBody
@PostMapping("/api/startCource/payCourse")
@ApiOperation(value = "课后练习-确认购课", tags = {"APP-开始上课"})
@@ -1117,7 +1121,6 @@
}
-
/**
* 已报名课程详情
*/
@@ -1132,7 +1135,7 @@
@ApiImplicitParam(name = "orderId", value = "订单id", dataType = "int")
})
- public ResultUtil<CourseDetailsResponse> getRegisteredData(Long coursePayId, String lon, String lat, Integer orderId) {
+ public ResultUtil<CourseDetailsResponse> getRegisteredData(Long coursePayId, String lon, String lat) {
try {
Integer appUserId = tokenUtil.getUserIdFormRedis();
if (null == appUserId) {
@@ -1140,9 +1143,7 @@
}
CourseDetailsResponse courseDetailsResponse = packagePaymentService.queryRegisteredCourseDetails(coursePayId, appUserId, lon, lat);
-
-
-
+//
// if (orderId != null) {
// TOrder byId = orderService.getById(orderId);
// courseDetailsResponse.setAmount(byId.getPrice());
@@ -1166,15 +1167,15 @@
})
public ResultUtil continuationOperation(ClasspaymentRequest request) {
try {
- Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
- if (null == userIdFormRedis) {
+ Integer userId = tokenUtil.getUserIdFormRedis();
+ if (null == userId) {
return ResultUtil.tokenErr();
}
Integer couponId = request.getConponId();
if (couponId == null || couponId == 0) {
request.setConponId(null);
}
- return packagePaymentService.ContinuationOrpaymentCourse(userIdFormRedis, request);
+ return packagePaymentService.ContinuationOrpaymentCourse(userId, request);
} catch (Exception e) {
return ResultUtil.runErr();
}
@@ -1187,7 +1188,6 @@
*/
@PostMapping("/base/coursePackage/alipayRegisteredCoursesCallback")
public void alipayCallback(HttpServletRequest request, HttpServletResponse response) {
- System.err.println("========支付宝支付回调========");
try {
Map<String, String> map = payMoneyUtil.alipayCallback(request);
if (null != map) {
@@ -1302,21 +1302,16 @@
@PostMapping("/coursePackagePayment/paymentDeductionClassHour")
public void paymentDeductionClassHour(@RequestBody PaymentDeductionClassHour paymentDeductionClassHour) {
try {
- // 2.0 用id进行查询
-// TCoursePackagePayment coursePackagePayment = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("id", paymentDeductionClassHour.getCourseId()).eq("payStatus", 2)
-// .eq("status", 1).eq("state", 1).gt("laveClassHours", 0));
-// Integer classHour = paymentDeductionClassHour.getClassHour();
-// for (TCoursePackagePayment coursePackagePayment : list) {
-
-
-
CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(paymentDeductionClassHour.getCourseId());
-// if (paymentDeductionClassHour.getClassHour() > coursePackageOrderStudent.getLaveClassHours()) {
-// return ResultUtil.error("当前课包课时数不足");
-// }
TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() - paymentDeductionClassHour.getClassHour());
coursePackageOrderStudentService.updateById(coursePackageOrderStudent);
+ Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
+ if(3 >= laveClassHours){
+ AppUser appUser = appuClient.queryAppUser(coursePackageOrderStudent.getAppUserId());
+ //发送短信提醒
+ aLiSendSms.sendSms(appUser.getPhone(), "SMS_463646317", "");
+ }
//判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录
List<CoursePackageScheduling> list1 = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>()
.eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1)
@@ -1336,131 +1331,14 @@
}
}
-
-
-
-
-
-// if (coursePackagePayment.getLaveClassHours().compareTo(classHour) >= 0) {
-// coursePackagePayment.setLaveClassHours(coursePackagePayment.getLaveClassHours() - classHour);
-// coursePackagePayment.setAppUserId(null);
-// packagePaymentService.updateById(coursePackagePayment);
-//
-// CourseCounsum courseCounsum = new CourseCounsum();
-// courseCounsum.setPaymentId(coursePackagePayment.getId());
-// courseCounsum.setChangeType(0);
-// courseCounsum.setNum(classHour);
-// courseCounsum.setInsertTime(new Date());
-// courseCounsum.setReason("报名赛事");
-// courseCounsumService.save(courseCounsum);
-//
-//
-// 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());
-// 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(coursePackagePayment.getCoursePackageId());
-// String classWeeks = tCoursePackage.getClassWeeks();
-// List<Integer> week = week(classWeeks);
-//
-// 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();
-// 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++;
-// }
-// }
-// }
-//
-//
-// // 2.0 少于3课时 推送
-// if (coursePackagePayment.getLaveClassHours() <= 3) {
-// Integer appUserId = coursePackagePayment.getAppUserId();
-//
-// //调用推送
-// HttpHeaders headers = new HttpHeaders();
-// // 以表单的方式提交
-// headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
-// String s1 = appUserId + "_" + "Three";
-// //定时修改排课状态
-// String s = internalRestTemplate.getForObject("http://mb-cloud-gateway/netty/sendMsgToClient?id=" + s1, String.class);
-// JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
-// if (jsonObject1.getIntValue("code") != 200) {
-// System.err.println(jsonObject1.getString("msg"));
-// }
-// }
-//
-// CancelledClasses cancelledClasses = new CancelledClasses();
-// cancelledClasses.setType(2);
-// cancelledClasses.setVoucher(paymentDeductionClassHour.getCode());
-// cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId());
-// cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId());
-// cancelledClasses.setCancelledClassesNumber(classHour);
-// cancelledClasses.setInsertTime(new Date());
-// cancelledClassesService.save(cancelledClasses);
-//
-// } else {
-// CancelledClasses cancelledClasses = new CancelledClasses();
-// cancelledClasses.setType(2);
-// cancelledClasses.setVoucher(paymentDeductionClassHour.getCode());
-// cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId());
-// cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId());
-// cancelledClasses.setCancelledClassesNumber(coursePackagePayment.getLaveClassHours());
-// cancelledClasses.setInsertTime(new Date());
-// cancelledClassesService.save(cancelledClasses);
-//
-// coursePackagePayment.setLaveClassHours(0);
-// packagePaymentService.updateById(coursePackagePayment);
-//
-// classHour -= cancelledClasses.getCancelledClassesNumber();
-// }
-// }
-
+ CourseCounsum courseCounsum = new CourseCounsum();
+ courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
+ courseCounsum.setChangeType(0);
+ courseCounsum.setNum(paymentDeductionClassHour.getClassHour());
+ courseCounsum.setInsertTime(new Date());
+ courseCounsum.setReason("赛事报名");
+ courseCounsum.setAppUserId(coursePackageOrderStudent.getAppUserId());
+ courseCounsumService.save(courseCounsum);
} catch (Exception e) {
e.printStackTrace();
@@ -1623,7 +1501,6 @@
appUser.setPlayPaiCoins(appUser.getPlayPaiCoins() - paymentConfig.getPlayPaiCoin());
auClitn.updateAppUser(appUser);
- // 2.0
TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
tCourseInfoRecord.setUserId(userIdFormRedis);
tCourseInfoRecord.setCourseId(coursePackage.getCoursePackageId());
@@ -1672,7 +1549,6 @@
boolean id = packagePaymentService.update(packagePayment, new QueryWrapper<TCoursePackagePayment>()
.eq("id", packagePayment.getId()));
if (id) {
- // 2.0
TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
tCourseInfoRecord.setNum(packagePayment.getTotalClassHours());
tCourseInfoRecord.setName("续课");
@@ -1734,7 +1610,7 @@
if (student != null) {
sId = student.getId();
}
- addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePayment.getId());
+ addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePayment, coursePackagePayment.getId());
CourseCounsum courseCounsum = new CourseCounsum();
@@ -1757,7 +1633,7 @@
if (student != null) {
sId = student.getId();
}
- addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePaymentServiceOne.getId());
+ addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePaymentServiceOne, coursePackagePaymentServiceOne.getId());
CourseCounsum courseCounsum = new CourseCounsum();
@@ -1766,6 +1642,7 @@
courseCounsum.setNum(orderDto.getClassHours());
courseCounsum.setInsertTime(new Date());
courseCounsum.setReason("积分兑换");
+ courseCounsum.setInsertTime(new Date());
courseCounsumService.save(courseCounsum);
@@ -1790,7 +1667,65 @@
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;
+ }
+ 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);
@@ -1848,7 +1783,8 @@
@Autowired
private TCoursePackageService coursePackageService;
- private void addPackageStudent1(TCoursePackage tCoursePackage, Integer userId, Integer sId, CoursePackageOrderStudent coursePackageOrderStudent) {
+
+ private void addPackageStudent1(TCoursePackage tCoursePackage, Integer userId, Integer sId, CoursePackageOrder coursePackageOrder, CoursePackageOrderStudent coursePackageOrderStudent) {
try {
//1常规 2假期 3体验
if (tCoursePackage.getType() == 1) {
@@ -1860,8 +1796,6 @@
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();
//扣除课时数
@@ -1992,7 +1926,7 @@
e.printStackTrace();
}
}
- private void addPackageStudent(Integer courseId, Integer userId, Integer sId, Long paymentId) throws ParseException {
+ private void addPackageStudent(Integer courseId, Integer userId, Integer sId, TCoursePackagePayment coursePackagePayment, Long paymentId) throws ParseException {
// 课包
TCoursePackage tCoursePackage = coursePackageService.getById(courseId);
@@ -2127,7 +2061,6 @@
}
}
}
- // 2.0
TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
tCourseInfoRecord.setUserId(userId);
tCourseInfoRecord.setCourseId(courseId);
@@ -2141,12 +2074,7 @@
@ResponseBody
@PostMapping("/base/coursePack/obtainStudentClassDetails")
public List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody WeeksOfCourseRest stuId) {
-// try {
return coursePackageOrderStudentService.obtainStuClassDetails(stuId.getStuId(), stuId.getAppUserId(), stuId.getPageNum());
-// }catch (Exception e){
-// e.printStackTrace();
-// throw new RuntimeException();
-// }
}
@@ -2164,16 +2092,16 @@
}
- // 2.0 送课时
@PostMapping("/base/coursePack/sendHours")
public Integer sendHours(@RequestBody String s) throws ParseException {
String[] split2 = s.split("_");
- TCoursePackagePayment byId = packagePaymentService.getById(Long.valueOf(split2[0]));
- byId.setTotalClassHours(byId.getTotalClassHours() + Integer.valueOf(split2[2]));
- boolean b = packagePaymentService.updateHoursById(byId, Integer.valueOf(split2[2]));
+ CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(Long.valueOf(split2[0]));
+ coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours() + Integer.valueOf(split2[2]));
+ coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() + Integer.valueOf(split2[2]));
+ coursePackageOrderStudentService.updateById(coursePackageOrderStudent);
CourseCounsum courseCounsum = new CourseCounsum();
- courseCounsum.setPaymentId(byId.getId());
+ courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
courseCounsum.setChangeType(1);
courseCounsum.setNum(Integer.valueOf(split2[2]));
courseCounsum.setInsertTime(new Date());
@@ -2181,17 +2109,17 @@
courseCounsumService.save(courseCounsum);
- List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", byId.getStudentId()).eq("coursePackageId", byId.getCoursePackageId()));
+ List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackageOrderStudent.getStudentId()).eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()));
List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList());
coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect));
- coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", byId.getStudentId()).eq("coursePackageId", byId.getCoursePackageId()));
+ coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackageOrderStudent.getStudentId()).eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()));
- TCoursePackage tCoursePackage = packageService.getById(byId.getCoursePackageId());
+ TCoursePackage tCoursePackage = packageService.getById(coursePackageOrderStudent.getCoursePackageId());
String classWeeks = tCoursePackage.getClassWeeks();
List<Integer> week = week(classWeeks);
- TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", byId.getCoursePackageId()).eq("studentId", byId.getStudentId()));
+ TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()).eq("studentId", coursePackageOrderStudent.getStudentId()));
Date today = new Date();
@@ -2238,14 +2166,7 @@
}
}
}
-
-
- if (b) {
- return 1;
- } else {
-
- return 0;
- }
+ return 1;
}
@@ -2303,6 +2224,12 @@
return packagePaymentService.getById(id);
}
+ @ResponseBody
+ @PostMapping("/coursePackagePayment/queryCoursePackagePaymentById1")
+ public CoursePackageOrderStudent queryCoursePackagePaymentById1(@RequestParam("id") Long id) {
+ return coursePackageOrderStudentService.getById(id);
+ }
+
// @Autowired
// private ICoursePackageOrderStudentService orderStudentService;
@@ -2310,16 +2237,23 @@
@ResponseBody
@PostMapping("/coursePackagePayment/consumeCourse")
- public ResultUtil consumeCourse(@RequestBody Integer coursePackagePaymentId) {
+ public Integer consumeCourse(@RequestBody Integer coursePackagePaymentId) {
CoursePackageOrderStudent coursePackageOrderStudent = orderStudentService.getById(coursePackagePaymentId);
TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
if (coursePackageOrderStudent.getLaveClassHours()<coursePackage.getNeedNum()){
- return ResultUtil.error("当前学员课时数不足");
+ return 1;
}
coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()-coursePackage.getNeedNum());
orderStudentService.updateById(coursePackageOrderStudent);
+ Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
+ if(3 >= laveClassHours){
+ AppUser appUser = appuClient.queryAppUser(coursePackageOrderStudent.getAppUserId());
+ //发送短信提醒
+ aLiSendSms.sendSms(appUser.getPhone(), "SMS_463646317", "");
+ }
+
CourseCounsum courseCounsum = new CourseCounsum();
courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
courseCounsum.setChangeType(0);
@@ -2327,14 +2261,14 @@
courseCounsum.setInsertTime(new Date());
courseCounsum.setReason("补课");
courseCounsumService.save(courseCounsum);
- return ResultUtil.success("补课成功");
+ return 2;
}
@ResponseBody
@PostMapping("/coursePackagePayment/CountqueryByClassId")
public Integer CountqueryByClassId(@RequestBody Integer id) {
- int coursePackageId = packagePaymentService.count(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", id));
+ int coursePackageId = coursePackageOrderStudentService.count(new QueryWrapper<CoursePackageOrderStudent>().eq("coursePackageId", id));
return coursePackageId;
@@ -2353,7 +2287,6 @@
packagePaymentService.updateById(coursePackagePayment);
}
-
/**
* 修改数据
*
@@ -2367,13 +2300,23 @@
packagePaymentService.updateBytime(coursePackagePayment);
}
+ @ResponseBody
+ @PostMapping("/coursePackagePayment/editCoursePackagePayment2")
+ public void editCoursePackagePayment2(@RequestBody CoursePackageOrderStudent coursePackageOrderStudent) {
+ System.out.println("editCoursePackagePayment1====coursePackagePayment" + coursePackageOrderStudent);
+// coursePackagePayment.setCoursePackageId(null);
+// packagePaymentService.updateBytime(coursePackagePayment);
+
+ coursePackageOrderStudentService.updateById(coursePackageOrderStudent);
+ }
+
/**
* 上课主页-预约操作
*/
@ResponseBody
@PostMapping("/api/startCource/reverse")
- @ApiOperation(value = "上课主页-预约操作--2.0改请假操作", tags = {"APP-开始上课"})
+ @ApiOperation(value = "上课主页-预约操作--改请假操作", tags = {"APP-开始上课"})
@ApiImplicitParams({
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
@ApiImplicitParam(value = "课包id", name = "courseID", required = true, dataType = "String"),
@@ -2466,7 +2409,9 @@
map.put("lon", lon);
map.put("lat", lat);
// 找出门店的所有课程 排出体验
- List<TCoursePackage> list = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().eq(TCoursePackage::getStoreId, courseDetailReq.getStoreId()).ne(TCoursePackage::getType, 3).eq(TCoursePackage::getState, 1).like(TCoursePackage::getClassWeeks, week));
+ List<TCoursePackage> list = tcpService.list(new LambdaQueryWrapper<TCoursePackage>()
+ .eq(TCoursePackage::getStoreId, courseDetailReq.getStoreId()).ne(TCoursePackage::getType, 3)
+ .eq(TCoursePackage::getState, 1).like(TCoursePackage::getClassWeeks, week));
List<Integer> collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
if (collect.size() == 0) {
collect.add(-1);
@@ -2478,21 +2423,6 @@
.in(CoursePackageScheduling::getCoursePackageId, collect)
);
List<Integer> collect1 = list8.stream().map(CoursePackageScheduling::getCoursePackageId).collect(Collectors.toList());
- // 找出购买的课包
- List<CoursePackageOrderStudent> list1 = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>()
- .eq("appUserId", courseDetailReq.getAppUserId())
- .eq("studentId", courseDetailReq.getStuId())
- .in("coursePackageId", collect1)
- .eq("status", 1)
- .eq("state", 1)
- );
-
-
-
-// List<Integer> collect1 = list1.stream().map(CoursePackageOrderStudent::getCoursePackageId).collect(Collectors.toList());
-// List<Long> ids = list1.stream().map(CoursePackageOrderStudent::getId).collect(Collectors.toList());
-
-
for (TCoursePackage tCoursePackage : list) {
DetailsListVo detailsListVo = new DetailsListVo();
detailsListVo.setId(tCoursePackage.getId());
@@ -2540,6 +2470,7 @@
.eq(CoursePackageScheduling::getCoursePackageId, tCoursePackage.getId())
.like(CoursePackageScheduling::getClassDate, courseDetailReq.getTime())
);
+
if (list3.isEmpty()) {
detailsListVo.setType(2);
objects.add(detailsListVo);
@@ -2571,14 +2502,25 @@
detailsListVo.setIsType(list4.get(0).getType());
for (CoursePackageStudent coursePackageStudent : list4) {
+ CoursePackageScheduling coursePackageScheduling = coursePackageSchedulingMapper.selectById(coursePackageStudent.getCoursePackageSchedulingId());
+ if (coursePackageScheduling.getStatus()==4){
+ detailsListVo.setIsType(3);
+ }
+
Integer signInOrNot1 = coursePackageStudent.getSignInOrNot();
detailsListVo.setType(1);
if (signInOrNot1 == 2) {
detailsListVo.setType(3);
}
+ //体验购课去掉按钮
+ if(coursePackageScheduling.getType() == 3){
+ detailsListVo.setCourseType(3);
+ detailsListVo.setType(2);
+ }
+
+
detailsListVo.setIsType(coursePackageStudent.getType());
- CoursePackageScheduling coursePackageScheduling = coursePackageSchedulingMapper.selectById(coursePackageStudent.getCoursePackageSchedulingId());
Date classDate = coursePackageScheduling.getClassDate();
Date endDate = coursePackageScheduling.getEndDate();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
@@ -2607,6 +2549,10 @@
detailsListVo.setType(2);
objects.add(detailsListVo);
+ }
+ //课程暂停
+ if(tCoursePackage.getState() == 4){
+ detailsListVo.setType(4);
}
}
map.put("data", objects);
@@ -2652,18 +2598,18 @@
ids.add(-1);
}
List<TCoursePackagePayment> list1 = packagePaymentService.listOne(ids);
- List<Integer> collect = list1.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
- if (collect.size() == 0) {
- collect.add(-1);
- }
- List<TCoursePackage> list2 = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().in(TCoursePackage::getId, collect));
- for (TCoursePackagePayment tCoursePackagePayment : list1) {
- for (TCoursePackage tCoursePackage : list2) {
- if (tCoursePackagePayment.getCoursePackageId().equals(tCoursePackage.getId())) {
- tCoursePackagePayment.setType(tCoursePackage.getType());
- }
- }
- }
+// List<Integer> collect = list1.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
+// if (collect.size() == 0) {
+// collect.add(-1);
+// }
+// List<TCoursePackage> list2 = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().in(TCoursePackage::getId, collect));
+// for (TCoursePackagePayment tCoursePackagePayment : list1) {
+// for (TCoursePackage tCoursePackage : list2) {
+// if (tCoursePackagePayment.getCoursePackageId().equals(tCoursePackage.getId())) {
+// tCoursePackagePayment.setType(tCoursePackage.getType());
+// }
+// }
+// }
List<Map<String, Object>> mapList = new ArrayList<>();
@@ -2672,7 +2618,7 @@
map.put("name", tCoursePackageType.getName());
int a = 0;
for (TCoursePackagePayment tCoursePackagePayment : list1) {
- if (tCoursePackagePayment.getType().equals(tCoursePackageType.getId())) {
+ if (null != tCoursePackagePayment.getType() && tCoursePackagePayment.getType().equals(tCoursePackageType.getId())) {
a += tCoursePackagePayment.getLaveClassHours();
}
}
@@ -2957,10 +2903,7 @@
weekData.add(count2);
weekData.add(count1);
weekData.add(count);
-
map.put("weekData", weekData);
-
-
LocalDateTime currentDateTime = LocalDateTime.now();
List<Integer> amountByDay = new ArrayList<>(Collections.nCopies(7, 0));
for (CoursePackageStudent coursePackageStudent : list) {
@@ -3135,4 +3078,21 @@
return map;
}
+
+
+ @ResponseBody
+ @PostMapping("/coursePackagePayment/queryPaymentCoursePackage")
+ public List<Integer> queryPaymentCoursePackage(@RequestBody List<Integer> storeIds){
+ if(storeIds.size() == 0){
+ return new ArrayList<>();
+ }
+ List<TCoursePackage> list = coursePackageService.list(new QueryWrapper<TCoursePackage>().eq("auditStatus", 2)
+ .ne("status", 4).eq("state", 1).in("storeId", storeIds));
+ List<Integer> collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
+ if(collect.size() == 0){
+ return new ArrayList<>();
+ }
+ List<CoursePackageOrder> list1 = coursePackageOrderService.list(new QueryWrapper<CoursePackageOrder>().in("coursePackageId", collect).eq("payStatus", 2).eq("status", 1));
+ return list1.stream().map(CoursePackageOrder::getAppUserId).collect(Collectors.toList());
+ }
}
--
Gitblit v1.7.1