From 0fe1f723f6fb85f25c945bd88c774f4a3142a818 Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期四, 03 八月 2023 11:52:19 +0800
Subject: [PATCH] 修复app端使用福利的课时详情接口;新增app端的编辑学员、设为默认接口
---
cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java | 3
cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java | 44 +++++++-
cloud-server-course/src/main/java/com/dsh/course/model/vo/CourseDetailRequest.java | 3
cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java | 107 ++++++++++++++++++++-
cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuDetailsVo.java | 36 +++++++
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 14 ++
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 8
cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuDetailsReq.java | 2
cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuListVo.java | 6 +
cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuEditInfoReq.java | 13 ++
cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java | 16 ++-
11 files changed, 228 insertions(+), 24 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
index 12bc776..54d0be4 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
@@ -1,12 +1,11 @@
package com.dsh.account.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.account.entity.TStudent;
import com.dsh.account.feignclient.competition.model.PurchaseRecordVo;
-import com.dsh.account.model.vo.classDetails.AppointmentRecordVo;
-import com.dsh.account.model.vo.classDetails.ClasspaymentRequest;
-import com.dsh.account.model.vo.classDetails.CourseVenue;
+import com.dsh.account.model.vo.classDetails.*;
import com.dsh.account.model.vo.classDetails.classInsVo.*;
import com.dsh.account.model.vo.commentDetail.StuCommentsVo;
import com.dsh.account.model.vo.medalDetail.GongVo;
@@ -171,6 +170,9 @@
tStudents.forEach(sts -> {
StuListVo vo = new StuListVo();
vo.setStuId(sts.getId());
+ vo.setStuHeadImg(sts.getHeadImg());
+ vo.setStuPhone(ToolUtil.isEmpty(sts.getPhone()) ? "" : sts.getPhone());
+ vo.setIdCard(ToolUtil.isEmpty(sts.getIdCard()) ? "":sts.getIdCard());
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
vo.setBirthday(simpleDateFormat.format(sts.getBirthday()));
vo.setStuName(sts.getName());
@@ -209,11 +211,106 @@
}catch (Exception e){
return ResultUtil.runErr();
}
-
-
}
+
+ /**
+ * 编辑学员详情
+ */
+ @ResponseBody
+ @PostMapping("/api/startCource/editStu")
+ @ApiOperation(value = "编辑学员详情", tags = {"APP-开始上课"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"),
+ })
+ public ResultUtil<StuDetailsVo> editStudentInfo(Integer stuId){
+ try {
+ TStudent byId = istuService.getById(stuId);
+ if (ToolUtil.isEmpty(byId)){
+ ResultUtil.error("未查询到该学员!");
+ }
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ StuDetailsVo detailsVo = new StuDetailsVo();
+ detailsVo.setStuId(byId.getId());
+ detailsVo.setStuHeadImg(byId.getHeadImg());
+ detailsVo.setStuName(byId.getName());
+ detailsVo.setBirthday(simpleDateFormat.format(byId.getBirthday()));
+ detailsVo.setStuHeight(byId.getHeight());
+ detailsVo.setStuWeight(byId.getWeight());
+ detailsVo.setIdCard(ToolUtil.isEmpty(byId.getIdCard()) ? "": byId.getIdCard());
+ detailsVo.setStuPhone(ToolUtil.isEmpty(byId.getPhone()) ? "" : byId.getPhone());
+ return ResultUtil.success(detailsVo);
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
+ /**
+ * 提交编辑学员
+ */
+ @ResponseBody
+ @PostMapping("/api/startCource/commitEditStu")
+ @ApiOperation(value = "提交编辑学员", tags = {"APP-开始上课"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"),
+ })
+ public ResultUtil commitEditStu(StuEditInfoReq stu){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(istuService.commitEditStudentInfo(stu,userIdFormRedis));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
+ /**
+ * 学员设为默认
+ */
+ @ResponseBody
+ @PostMapping("/api/startCource/editDefault")
+ @ApiOperation(value = "设为默认", tags = {"APP-开始上课"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"),
+ })
+ public ResultUtil editDefault(Integer stuId){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ TStudent byId = istuService.getById(stuId);
+ if (ToolUtil.isEmpty(byId)){
+ ResultUtil.error("未查询到该学员!");
+ }
+ byId.setIsDefault(1);
+ istuService.updateById(byId);
+ List<TStudent> list = istuService.list(new LambdaQueryWrapper<TStudent>()
+ .eq(TStudent::getAppUserId,userIdFormRedis)
+ .ne(TStudent::getId,byId.getId()));
+ for (TStudent tStudent : list) {
+ tStudent.setIsDefault(2);
+ istuService.updateById(tStudent);
+ }
+ return ResultUtil.success();
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
+
/**
* 课时详情
*/
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuDetailsVo.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuDetailsVo.java
new file mode 100644
index 0000000..9d43dc9
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuDetailsVo.java
@@ -0,0 +1,36 @@
+package com.dsh.account.model.vo.classDetails;
+
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+
+
+@Data
+public class StuDetailsVo {
+
+ @ApiModelProperty(value = "学员id")
+ private Integer stuId;
+
+ @ApiModelProperty(value = "学员头像")
+ private String stuHeadImg;
+
+ @ApiModelProperty(value = "学员姓名")
+ private String stuName;
+
+ @ApiModelProperty(value = "学员生日")
+ private String birthday;
+
+ @ApiModelProperty(value = "学员身高")
+ private Double stuHeight;
+
+ @ApiModelProperty(value = "学员体重")
+ private Double stuWeight;
+
+ @ApiModelProperty(value = "学员身份证号码")
+ private String idCard;
+
+ @ApiModelProperty(value = "学员手机号")
+ private String stuPhone;
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuEditInfoReq.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuEditInfoReq.java
new file mode 100644
index 0000000..8d8be34
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/StuEditInfoReq.java
@@ -0,0 +1,13 @@
+package com.dsh.account.model.vo.classDetails;
+
+import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class StuEditInfoReq extends StuDetailsReq {
+
+ @ApiModelProperty(value = "id")
+ private Integer id;
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuDetailsReq.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuDetailsReq.java
index d20ed76..391dd2f 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuDetailsReq.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuDetailsReq.java
@@ -15,7 +15,7 @@
@ApiModelProperty(value = "联系方式")
private String phone;
- @ApiModelProperty(value = "生日")
+ @ApiModelProperty(value = "生日(2022-11-14)")
private String birthday;
@ApiModelProperty(value = "性别 (1 男 2 女)")
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuListVo.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuListVo.java
index 091e12c..e61dffe 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuListVo.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/StuListVo.java
@@ -9,6 +9,9 @@
@ApiModelProperty(value = "学员id")
private Integer stuId;
+ @ApiModelProperty(value = "学员头像")
+ private String stuHeadImg;
+
@ApiModelProperty(value = "学员姓名")
private String stuName;
@@ -24,6 +27,9 @@
@ApiModelProperty(value = "学员体重")
private Double stuWeight;
+ @ApiModelProperty(value = "学员身份证号码")
+ private String idCard;
+
@ApiModelProperty(value = "是否默认(1. 是默认 2. 不是默认 )")
private Integer isNot;
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java b/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
index 508dd60..fb00f51 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
@@ -8,6 +8,7 @@
import com.dsh.account.feignclient.other.model.SysNotice;
import com.dsh.account.model.vo.classDetails.AppointmentRecordVo;
import com.dsh.account.model.vo.classDetails.ClasspaymentRequest;
+import com.dsh.account.model.vo.classDetails.StuEditInfoReq;
import com.dsh.account.model.vo.classDetails.classInsVo.ClassDetailsInsVo;
import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq;
import com.dsh.account.model.vo.classDetails.classInsVo.StuListVo;
@@ -97,4 +98,6 @@
StoreDetailsVo getStoreDetail(Integer storeId);
+ ResultUtil commitEditStudentInfo(StuEditInfoReq stu, Integer userIdFormRedis);
+
}
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 241306d..6c1440e 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
@@ -175,7 +175,19 @@
}
}
classInfoVo.setCourseList(courseList);
- classInfoVo.setExerciseVideoList(voclClient.getStuCourseOfVideoList(coursePackIds));
+ List<ExerciseVideo> stuCourseOfVideoList = new ArrayList<>();
+ ExerciseVideo video = new ExerciseVideo();
+ video.setVideoUrl("https://media.w3.org/2010/05/sintel/trailer.mp4");
+ video.setVideoCoverImgUrl("https://img1.baidu.com/it/u=1614146743,3691458181&fm=253&fmt=auto&app=120&f=JPEG?w=605&h=383");
+ video.setVideoName("课后练习足球课");
+ stuCourseOfVideoList.add(video);
+
+ ExerciseVideo exerciseVideo = new ExerciseVideo();
+ exerciseVideo.setVideoUrl("https://media.w3.org/2010/05/sintel/trailer.mp4");
+ exerciseVideo.setVideoCoverImgUrl("https://img0.baidu.com/it/u=1492570361,4260963468&fm=253&fmt=auto&app=138&f=JPEG?w=750&h=500");
+ exerciseVideo.setVideoName("篮球课");
+ stuCourseOfVideoList.add(exerciseVideo);
+ classInfoVo.setExerciseVideoList(stuCourseOfVideoList);
}else {
classInfoVo.setIsThere(2);
List<TImgConfig> tImgConfigs = configClient.getNoneStuImgs();
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 dea5145..6f670d5 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
@@ -1,5 +1,6 @@
package com.dsh.account.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsh.account.entity.Coach;
@@ -25,6 +26,7 @@
import com.dsh.account.mapper.TStudentMapper;
import com.dsh.account.model.vo.classDetails.AppointmentRecordVo;
import com.dsh.account.model.vo.classDetails.ClasspaymentRequest;
+import com.dsh.account.model.vo.classDetails.StuEditInfoReq;
import com.dsh.account.model.vo.classDetails.classInsVo.ClassDetailsInsVo;
import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq;
import com.dsh.account.model.vo.classDetails.classInsVo.StuListVo;
@@ -218,6 +220,7 @@
@Override
public List<PurchaseRecordVo> queryDeduRecordDetails(RecordTimeRequest timeRequest,Integer appUserId) {
List<PurchaseRecordVo> purchaseRecordVoList = new ArrayList<>();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date startTime = DateTimeHelper.getCurrentIdetMouthStart(timeRequest.getStartTime());
Date endTime = DateTimeHelper.getCurrentIdeaMouthEnd(timeRequest.getEndTime());
GetStuSourseList getStuSourseList = new GetStuSourseList();
@@ -245,13 +248,15 @@
List<TAppUser> tAppUsers = tauMapper.selectList(new QueryWrapper<TAppUser>()
.eq("referralUserId",appUserId )
.between("insertTime",startTime ,endTime));
- List<Integer> userIds = tAppUsers.stream().map(TAppUser::getId).collect(Collectors.toList());
- IntrduceOfUserRequest request = new IntrduceOfUserRequest();
- request.setStartTime(startTime);
- request.setEndTime(endTime);
- request.setUserIds(userIds);
- List<PurchaseRecordVo> purchaseRecordVos1 = idrClient.queryAppUsersofIntroduce(request);
- purchaseRecordVoList.addAll(purchaseRecordVos1);
+ if (ToolUtil.isNotEmpty(tAppUsers)){
+ List<Integer> userIds = tAppUsers.stream().map(TAppUser::getId).collect(Collectors.toList());
+ IntrduceOfUserRequest request = new IntrduceOfUserRequest();
+ request.setStartTime(startTime);
+ request.setEndTime(endTime);
+ request.setUserIds(userIds);
+ List<PurchaseRecordVo> purchaseRecordVos1 = idrClient.queryAppUsersofIntroduce(request);
+ purchaseRecordVoList.addAll(purchaseRecordVos1);
+ }
if (purchaseRecordVoList.size() > 0 ){
purchaseRecordVoList = purchaseRecordVoList.stream()
@@ -707,5 +712,30 @@
return detailsVo;
}
+ @Override
+ public ResultUtil commitEditStudentInfo(StuEditInfoReq stu, Integer userIdFormRedis) {
+ TStudent tStudent = this.baseMapper.selectOne(new LambdaQueryWrapper<TStudent>()
+ .eq(TStudent::getId,stu.getId())
+ .eq(TStudent::getAppUserId,userIdFormRedis));
+ if (ToolUtil.isEmpty(tStudent)){
+ ResultUtil.error("会员信息不存在!");
+ }
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ tStudent.setHeadImg(stu.getHeadImg());
+ tStudent.setName(stu.getName());
+ tStudent.setPhone(ToolUtil.isEmpty(stu.getPhone()) ? "":stu.getPhone());
+ try {
+ tStudent.setBirthday(simpleDateFormat.parse(stu.getBirthday()));
+ } catch (ParseException e) {
+ ResultUtil.runErr();
+ }
+ tStudent.setSex(stu.getSex());
+ tStudent.setHeight(stu.getHeight());
+ tStudent.setWeight(stu.getWeight());
+ tStudent.setIdCard(ToolUtil.isEmpty(stu.getIdCard()) ? "" : stu.getIdCard());
+ this.baseMapper.updateById(tStudent);
+ return ResultUtil.success();
+ }
+
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
index 67a007a..8299329 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
@@ -111,14 +111,18 @@
List<PurchaseRecordVo> recordVos = new ArrayList<>();
- List<Competition> list = cttService.list(new QueryWrapper<Competition>()
- .eq("payType",3 )
- .eq("auditStatus",2));
- List<Integer> comIds = list.stream().map(Competition::getId).collect(Collectors.toList());
+ ArrayList<Integer> integers = new ArrayList<>();
+ integers.add(1);
+ integers.add(2);
+ List<PaymentCompetition> list = paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>()
+ .in("payType",integers )
+ .eq("appUserId", sourseList.getAppUserId())
+ .eq("state",1));
+ List<Long> comIds = list.stream().map(PaymentCompetition::getId).collect(Collectors.toList());
List<UserCompetition> userCompetitions = ucttService.list(new QueryWrapper<UserCompetition>()
.between("insertTime", sourseList.getStartTime(),sourseList.getEndTime() )
- .eq("userId", sourseList.getAppUserId())
- .in("competitionId",comIds ));
+ .eq("appUserId", sourseList.getAppUserId())
+ .in("paymentCompetitionId",comIds ));
if (userCompetitions.size() > 0){
userCompetitions.forEach(coms ->{
PurchaseRecordVo recordVo = new PurchaseRecordVo();
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 ee9aa4a..5b8cfea 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
@@ -207,13 +207,13 @@
}
@PostMapping("/base/coursePack/paymentCourse")
- public List<PurchaseRecordVo> queryCourseDetails(@RequestParam("startTime") Date startTime, @RequestParam("endTime") Date endTime,@RequestParam("stuId") Integer stuId, @RequestParam("appUserId") Integer appUserId) {
+ public List<PurchaseRecordVo> queryCourseDetails(@RequestBody GetStuSessionList sessionList) {
List<PurchaseRecordVo> purchaseRecordVos = new ArrayList<>();
List<TCoursePackagePayment> coursePackage = packagePaymentService.list(new QueryWrapper<TCoursePackagePayment>()
- .between("insertTime", startTime,endTime)
- .eq("appUserId",appUserId)
- .eq("studentId",stuId));
+ .between("insertTime", sessionList.getStartTime(),sessionList.getEndTime())
+ .eq("appUserId",sessionList.getAppUserId())
+ .eq("studentId",sessionList.getStuId()));
if (coursePackage.size() > 0 ){
coursePackage.forEach( cspackage -> {
PurchaseRecordVo recordVo = new PurchaseRecordVo();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/model/vo/CourseDetailRequest.java b/cloud-server-course/src/main/java/com/dsh/course/model/vo/CourseDetailRequest.java
index a4f0a03..ff3f7c5 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/model/vo/CourseDetailRequest.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/model/vo/CourseDetailRequest.java
@@ -1,6 +1,7 @@
package com.dsh.course.model.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -9,9 +10,11 @@
@Data
public class CourseDetailRequest {
@ApiModelProperty(value = "开始时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
Date startTime;
@ApiModelProperty(value = "结束时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
Date endTime;
@ApiModelProperty(value = "学员id")
--
Gitblit v1.7.1