From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 11 七月 2024 10:47:51 +0800 Subject: [PATCH] 玩湃微信商户认证代码 --- cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java | 667 +++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 595 insertions(+), 72 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 4206d97..7d92af3 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,35 +1,45 @@ package com.dsh.account.controller; -import com.baomidou.mybatisplus.mapper.EntityWrapper; -import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq; -import com.dsh.account.util.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsh.account.entity.TAppGift; import com.dsh.account.entity.TStudent; -import com.dsh.account.model.vo.classDetails.classInsVo.ClassInfoVo; -import com.dsh.account.model.vo.classDetails.classInsVo.StuListVo; -import com.dsh.account.model.vo.classDetails.classInsVo.StuPhysicalVo; -import com.dsh.account.service.TAppUserService; -import com.dsh.account.service.TStudentService; -import io.swagger.annotations.*; +import com.dsh.account.feignclient.competition.model.PurchaseRecordVo; +import com.dsh.account.feignclient.course.model.RecordAppoint; +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; +import com.dsh.account.model.vo.medalDetail.StuMedalVo; +import com.dsh.account.model.vo.sourceDetail.CouponStuAvailableVo; +import com.dsh.account.model.vo.sourceDetail.CourseDetailsOfContinuationResp; +import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest; +import com.dsh.account.service.*; +import com.dsh.account.util.*; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; -import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Date; import java.util.List; +import java.util.Map; /** * 学员上课情况 接口 */ -@Api -@CrossOrigin @RestController -@RequestMapping("/startCource") +@RequestMapping("") public class ClassDetailsController { private Logger logger = LoggerFactory.getLogger("business-log"); @@ -40,95 +50,608 @@ @Autowired private TAppUserService tappuService; + @Autowired + private EvaluateStudentService evalstuService; + + @Autowired + private StudentHonorService honorService; + + @Autowired + private TokenUtil tokenUtil; + + @Autowired + private TAppGiftService appGiftService; @ResponseBody - @PostMapping("/stu/queryStudentData") - @ApiOperation(value = "根据登录用户ID查询学员信息", tags = {"用户——学员信息"}, notes = "") + @PostMapping("/api/startCource/queryStudentData") + @ApiOperation(value = "上课首页", tags = {"APP-开始上课"}) @ApiImplicitParams({ - @ApiImplicitParam(value = "用户id", name = "id", required = true, dataType = "int"), @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ClassInfoVo queryCouponRecord(@RequestBody Integer id){ + public ResultUtil<ClassInfoVo> queryCouponRecord(Integer stuId) { try { - return tappuService.queryUserOfStus(id); - }catch (Exception e){ + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(tappuService.queryUserOfStus(stuId, userIdFormRedis)); + } catch (Exception e) { e.printStackTrace(); - return null; + return ResultUtil.runErr(); } } - /** - * 获取学员测试报告 - */ - @PostMapping("/stu/queryPhysical") - public StuPhysicalVo getStuPhysicalInfo(@RequestBody Integer stuID){ + @ResponseBody + @PostMapping("/api/startCource/weeksOfCourseDetails") + @ApiOperation(value = "上课首页-课程列表", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "查询时间yyyy-MM-dd", name = "time", required = true, dataType = "string"), + @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"), + @ApiImplicitParam(value = "用户经度", name = "longitude", required = false, dataType = "string"), + @ApiImplicitParam(value = "用户纬度", name = "latitude", required = false, dataType = "string"), + }) + public ResultUtil<List<CourseVenue>> queryWeeksOfClassInfo(String time, Integer stuId, String longitude, String latitude) { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(tappuService.queryWeekOfCourseDetails(appUserId, stuId, time, longitude, latitude)); + } catch (Exception e) { + e.printStackTrace(); + return ResultUtil.runErr(); + } + + } + + @ResponseBody + @PostMapping("/api/startCource/weeksOfCourseDetailsList") + @ApiOperation(value = "上课首页-课程列表2.0", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "查询时间yyyy-MM-dd", name = "time", required = true, dataType = "string"), + @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"), + @ApiImplicitParam(value = "门店id", name = "storeId", required = true, dataType = "int"), + @ApiImplicitParam(value = "用户经度", name = "longitude", required = false, dataType = "string"), + @ApiImplicitParam(value = "用户纬度", name = "latitude", required = false, dataType = "string"), + }) + public ResultUtil<Map<String, Object>> weeksOfCourseDetailsList(String time, Integer stuId, Integer storeId, String longitude, String latitude) { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(tappuService.weeksOfCourseDetailsList(appUserId, stuId, time, storeId, longitude, latitude)); + } catch (Exception e) { + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + @ResponseBody + @PostMapping("/api/startCource/weeksOfGetHours") + @ApiOperation(value = "上课首页获取未分配课时-课程列表", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + }) + public ResultUtil<Integer> weeksOfGetHours() { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + Integer num = 0; + List<TAppGift> list = appGiftService.list(new LambdaQueryWrapper<TAppGift>().eq(TAppGift::getUserId, appUserId)); + for (TAppGift tAppGift : list) { + num += tAppGift.getNum(); + } + return ResultUtil.success(num); + } catch (Exception e) { + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + + @ResponseBody + @PostMapping("/api/startCource/weeksOfAddHours") + @ApiOperation(value = "上课首页分配课时-课程列表", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "分配给课包id", name = "packetId", required = true, dataType = "Long"), + }) + public ResultUtil<Integer> weeksOfAddHours(Long packetId) { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + TAppGift one = appGiftService.getOne(new LambdaQueryWrapper<TAppGift>().eq(TAppGift::getUserId, appUserId)); + Boolean b = false; + Integer i = 0; + if (one != null && one.getNum() > 0) { + i = appGiftService.weeksOfAddHours(packetId, appUserId, one.getNum()); + + } + if (i == 1) { + // 送完清0 + one.setNum(0); + appGiftService.updateById(one); + return ResultUtil.success(); + } else { + return ResultUtil.runErr(); + } + } catch (Exception e) { + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + + @ResponseBody + @PostMapping("/api/startCource/queryPhysical") + @ApiOperation(value = "获取学员测试报告", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(value = "学员id", name = "stuID", required = true, dataType = "int"), + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil<StuPhysicalVo> getStuPhysicalInfo(Integer stuID) { StuPhysicalVo vo = new StuPhysicalVo(); - TStudent tStudent = istuService.selectById(stuID); - vo.setBmi(tStudent.getBmi()); - vo.setUrl(tStudent.getLateralSurface()); - vo.setHeight(tStudent.getHeight()); - vo.setWeight(tStudent.getWeight()); - return vo; + TStudent tStudent = istuService.getById(stuID); + if (ToolUtil.isNotEmpty(tStudent)) { + vo.setBmi(tStudent.getBmi()); + vo.setBodyStatus(BMIBodyUtil.getBodyStatus(tStudent.getBmi())); + if (tStudent.getLateralSurface() != null) { + String[] split = tStudent.getLateralSurface().split(";"); + vo.setUrls(split); + } + vo.setHeight(tStudent.getHeight()); + vo.setWeight(tStudent.getWeight()); + } + return ResultUtil.success(vo); } /** * 添加学员信息 */ - @PostMapping("/stu/addData") - public void addStu(@RequestBody StuDetailsReq stu){ - TStudent student = new TStudent(); - student.setAppUserId(stu.getUserID()); - student.setName(stu.getName()); - student.setHeadImg(stu.getHeadImg()); - student.setPhone(stu.getPhone()); - student.setSex(stu.getSex()); - student.setIdCard(stu.getIdCard()); - student.setBirthday(new Date(stu.getBirthday())); - student.setHeight(stu.getHeight()); - student.setWeight(stu.getWeight()); - BigDecimal bigDecimal = BigDecimal.valueOf(stu.getWeight()); - BigDecimal multiply = bigDecimal.subtract(BigDecimal.valueOf(stu.getHeight())).multiply(bigDecimal.subtract(BigDecimal.valueOf(stu.getHeight()))); - multiply.setScale(2); - student.setBmi(multiply.doubleValue()); - student.setInsertTime(new Date()); - student.setState(1); - istuService.insert(student); + @ResponseBody + @PostMapping("/api/startCource/addData") + @ApiOperation(value = "添加学员信息", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + @Transactional + public ResultUtil addStu(StuDetailsReq stu) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return istuService.addStuOfAppUser(stu, userIdFormRedis); + } catch (Exception e) { + return ResultUtil.runErr(ResultUtil.ERROR); + } } /** * 该APP用户下的学员列表 */ - @PostMapping("/stu/listOfStu") - public List<StuListVo> queryStuList(@RequestBody Integer appUserID){ - List<StuListVo> stuListVos = new ArrayList<>(); - List<TStudent> tStudents = istuService.selectList(new EntityWrapper<TStudent>() - .eq("appUserId",appUserID)); - if (tStudents.size() > 0){ - tStudents.forEach(sts -> { - StuListVo vo = new StuListVo(); - vo.setStuId(sts.getId()); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); - vo.setBirthday(simpleDateFormat.format(sts.getBirthday())); - vo.setStuName(sts.getName()); - vo.setStuAge(DateUtil.age(sts.getBirthday())); - vo.setStuHeight(sts.getHeight()); - vo.setStuWeight(sts.getWeight()); - vo.setIsNot(sts.getIsDefault()); - }); + @ResponseBody + @PostMapping("/api/startCource/listOfStu") + @ApiOperation(value = "学员列表", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil<List<StuListVo>> queryStuList() { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + List<StuListVo> stuListVos = new ArrayList<>(); + List<TStudent> tStudents = istuService.list(new QueryWrapper<TStudent>() + .eq("appUserId", userIdFormRedis).eq("state", 1)); + if (tStudents.size() > 0) { + 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()); + vo.setStuAge(DateUtil.age(sts.getBirthday())); + vo.setStuHeight(sts.getHeight()); + vo.setStuWeight(sts.getWeight()); + vo.setIsNot(sts.getIsDefault()); + vo.setStuPhone(sts.getPhone()); + vo.setSex(sts.getSex()); + stuListVos.add(vo); + }); + } + return ResultUtil.success(stuListVos); + } catch (Exception e) { + return ResultUtil.runErr(); } - return stuListVos; } + + + /** + * 切换学员 + */ + @ResponseBody + @PostMapping("/api/startCource/switchStu") + @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<List<StuListVo>> dealSwitchStudents(Integer stuId) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(istuService.switchStudentActions(userIdFormRedis, stuId)); + } 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(StuDetailsReq stu) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + + Double height = stu.getHeight(); + Double squareHeight = Math.pow(height / 100, 2); + Double weight = stu.getWeight(); + + Double bim = weight / squareHeight; + + TStudent tStudent = new TStudent(); + + + tStudent.setId(stu.getStuId()); + tStudent.setBirthday(format.parse(stu.getBirthday())); + tStudent.setHeadImg(stu.getHeadImg()); + tStudent.setHeight(stu.getHeight()); + tStudent.setWeight(stu.getWeight()); + tStudent.setPhone(stu.getPhone()); + tStudent.setSex(stu.getSex()); + tStudent.setName(stu.getName()); + tStudent.setIdCard(stu.getIdCard()); + tStudent.setBmi(bim); + + if (ToolUtil.isNotEmpty(tStudent.getName()) && ToolUtil.isNotEmpty(tStudent.getIdCard())) { + Boolean aBoolean = JuHeUtil.idcardAuthentication(tStudent.getIdCard(), tStudent.getName()); + if (!aBoolean) { + return ResultUtil.error("身份证和姓名不匹配"); + } + } + + return ResultUtil.success(istuService.updateById(tStudent)); + } 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(); + } + } + /** * 课时详情 */ - @PostMapping("/stu/lessonDetails") - public void coursePackageDetails(@RequestBody Integer lessonId){ + @ResponseBody + @PostMapping("/api/startCource/lessonDetails") + @ApiOperation(value = "课时详情", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "课包id", name = "lessonId", required = true, dataType = "int"), + @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"), + }) + public ResultUtil<ClassDetailsInsVo> coursePackageDetails(Integer lessonId, Integer stuId) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + + return ResultUtil.success(istuService.querySessionDetailsDt(userIdFormRedis, lessonId, stuId)); + } catch (Exception e) { + return ResultUtil.runErr(); + } } + /** + * 课时详情-记录列表 + */ + @ResponseBody + @PostMapping("/api/startCource/recordDetails") + @ApiOperation(value = "课时详情-记录列表", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + }) + public ResultUtil<List<PurchaseRecordVo>> recordList(RecordTimeRequest timeRequest) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(istuService.queryDeduRecordDetails(timeRequest, userIdFormRedis)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + } + + + /** + * 课时详情-续课课包详情 + */ + @ResponseBody + @PostMapping("/api/startCource/renewal") + @ApiOperation(value = "课时详情-续课课包详情", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "课包id", name = "lessonId", required = true, dataType = "int"), + @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"), + }) + public ResultUtil<CourseDetailsOfContinuationResp> renewalOfCourses(Integer lessonId, Integer stuId) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(istuService.queryStuOfCourseDetails(lessonId, stuId, userIdFormRedis)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + + } + + + /** + * 课时详情-选择优惠券 + */ + @ResponseBody + @PostMapping("/api/startCource/conponList") + @ApiOperation(value = "课时详情-选择优惠券", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil<List<CouponStuAvailableVo>> queryCouponList() { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(istuService.queryStuOfConponDetails(userIdFormRedis)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + + } + + + /** + * 课时详情-支付 + */ + @ResponseBody + @PostMapping("/api/startCource/payment") + @ApiOperation(value = "课时详情-支付", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + }) + public ResultUtil continuationOperation(ClasspaymentRequest request) { + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if (null == userIdFormRedis) { + return ResultUtil.tokenErr(); + } + return istuService.renewClassPayment(userIdFormRedis, request); + } catch (Exception e) { + e.printStackTrace(); + return ResultUtil.runErr(); + } + + } + + + /** + * 学员评语 + */ + @ResponseBody + @PostMapping("/api/startCource/stuComment") + @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<List<StuCommentsVo>> queryStuComment(Integer stuId) { + try { + return ResultUtil.success(evalstuService.queryStuCommentsList(stuId)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + } + + + /** + * 学员勋章详情 + */ + @ResponseBody + @PostMapping("/api/startCource/stuMedal") + @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<List<StuMedalVo>> queryStuMedal(Integer stuId) { + try { + + + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(honorService.queryHonorDetails(stuId)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + } + + + /** + * 学员勋章 + */ + @ResponseBody + @PostMapping("/api/startCource/stuGoog") + @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<List<GongVo>> queryStuGoog(Integer stuId) { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(honorService.queryStuOfMedalData(stuId)); + } catch (Exception e) { + return ResultUtil.runErr(); + } + } + + /** + * 上课预约记录 + */ + @ResponseBody + @PostMapping("/api/startCource/stuAppointList") + @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"), + @ApiImplicitParam(value = "预约状态 0=全部 1=待上课 2=已完成 3=已取消", name = "appointStatus", required = false, dataType = "int"), + @ApiImplicitParam(value = "时间类型 0=全部 1=近一周 2=近一个月 3=近一年", name = "timeType", required = false, dataType = "int"), + @ApiImplicitParam(value = "课程名称", name = "appointStatus", required = false, dataType = "string"), + }) + public ResultUtil<List<RecordAppoint>> cgeClassAppointmentRecordList(Integer stuId, Integer appointStatus, Integer timeType, String search, Integer pageNum) { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return ResultUtil.success(istuService.getAppointmentRecords(stuId, appUserId, appointStatus, timeType, search, pageNum)); + } + + + /** + * 取消预约 + */ + @ResponseBody + @PostMapping("/api/startCource/cancelCourse") + @ApiOperation(value = "上课预约-取消预约", tags = {"APP-开始上课"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "上课记录id", name = "courseStuRecordId", required = true, dataType = "int"), + }) + public ResultUtil cancelReservation(Integer courseStuRecordId) { + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if (null == appUserId) { + return ResultUtil.tokenErr(); + } + return istuService.cancelReservationOfCourse(courseStuRecordId); + } catch (Exception e) { + return ResultUtil.runErr(); + } + } } -- Gitblit v1.7.1