From c0c748400207db88cabab4f436a122b92269e559 Mon Sep 17 00:00:00 2001
From: java <linlangsur163@163.com>
Date: 星期四, 29 六月 2023 11:44:43 +0800
Subject: [PATCH] 课程信息:课时详情中的记录-赛事记录查询
---
cloud-server-competition/src/main/java/com/dsh/competition/service/UserCompetitionService.java | 4
cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java | 69 +++++++++++++
cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java | 8 +
cloud-server-competition/src/main/java/com/dsh/competition/mapper/UserCompetitionMapper.java | 4
cloud-server-competition/src/main/java/com/dsh/competition/controller/UserCompetitionController.java | 30 -----
cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml | 4
cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/PurchaseRecordVo.java | 4
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/UserCompetitionServiceImpl.java | 17 ---
cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java | 23 ++++
cloud-server-competition/src/main/resources/mapper/UserCompetitionMapper.xml | 30 +++++
cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java | 9 +
cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java | 50 +++++++++
12 files changed, 193 insertions(+), 59 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 55abd29..3850310 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
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.account.entity.TStudent;
import com.dsh.account.model.vo.classDetails.classInsVo.*;
+import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest;
import com.dsh.account.service.TAppUserService;
import com.dsh.account.service.TStudentService;
import com.dsh.account.util.DateUtil;
@@ -154,7 +155,9 @@
@PostMapping("/base/startCource/lessonDetails")
@ApiOperation(value = "课时详情", tags = {"APP-开始上课"})
@ApiImplicitParams({
- @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+ @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(@RequestBody Integer lessonId, @RequestBody Integer stuId, HttpServletRequest request){
try {
@@ -172,4 +175,68 @@
+ /**
+ * 课时详情-记录列表
+ */
+ @ResponseBody
+ @PostMapping("/base/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(@RequestBody RecordTimeRequest timeRequest, HttpServletRequest request){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(request);
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+
+ return ResultUtil.success();
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 课时详情-续课
+ */
+ @ResponseBody
+ @PostMapping("/base/startCource/renewal")
+ @ApiOperation(value = "课时详情-续课", tags = {"APP-开始上课"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+ })
+ public ResultUtil<?> renewalOfCourses(@RequestBody Integer lessonId, @RequestBody Integer stuId, HttpServletRequest request){
+ try {
+
+ return ResultUtil.success();
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+
+ }
+
+
+ /**
+ * 学员评语
+ */
+ @ResponseBody
+ @PostMapping("/base/startCource/stuComment")
+ @ApiOperation(value = "学员评语", tags = {"APP-开始上课"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+ })
+ public ResultUtil<?> queryStuComment(@RequestParam("stuId") Integer stuId, HttpServletRequest request){
+ try {
+
+
+ return ResultUtil.success();
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java
index ec1bfc9..78f1816 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java
@@ -1,11 +1,16 @@
package com.dsh.account.feignclient.competition;
+import com.dsh.account.model.vo.classDetails.classInsVo.PurchaseRecordVo;
import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
@FeignClient(value = "mb-cloud-competition")
public interface DeductionCompetitionsClient {
-
-
+ @PostMapping("/competition/getCompetitionsDetails")
+ public List<PurchaseRecordVo> getStuSourseList(@RequestParam("appUserId") Integer appUserId);
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/PurchaseRecordVo.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/PurchaseRecordVo.java
index 40c88a4..bd79f49 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/PurchaseRecordVo.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/classDetails/classInsVo/PurchaseRecordVo.java
@@ -14,10 +14,10 @@
@ApiModelProperty(value = "类型名称")
private String purchaseType;
- @ApiModelProperty(value = "类型变动时间")
+ @ApiModelProperty(value = "类型变动时间 例如 06-29 10:48")
private String purchaseTime;
- @ApiModelProperty(value = "类型涉及金额")
+ @ApiModelProperty(value = "类型涉及金额 例如 +100 -50")
private String purchaseAmount;
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java
new file mode 100644
index 0000000..e91a56a
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java
@@ -0,0 +1,23 @@
+package com.dsh.account.model.vo.sourceDetail;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class RecordTimeRequest {
+
+ @ApiModelProperty(value = "学员id", dataType = "int", required = true)
+ private Integer stuId;
+
+ @ApiModelProperty(value = "课包id", dataType = "int")
+ private Integer lessonId;
+
+ @ApiModelProperty(value = "开始时间", dataType = "string")
+ private String startTime;
+
+ @ApiModelProperty(value = "结束时间", dataType = "string")
+ private String endTime;
+
+ @ApiModelProperty(value = "类型:1购买课包 2消费扣除 3报名赛事 4介绍有礼 5全部", dataType = "int")
+ private Integer type;
+}
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 6cb3e3d..200a3ea 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
@@ -1,9 +1,22 @@
package com.dsh.competition.controller;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.dsh.competition.entity.Competition;
+import com.dsh.competition.entity.UserCompetition;
+import com.dsh.competition.feignclient.model.PurchaseRecordVo;
+import com.dsh.competition.service.CompetitionService;
+import com.dsh.competition.service.UserCompetitionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
-
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
+
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
/**
* <p>
@@ -14,8 +27,41 @@
* @since 2023-06-26
*/
@RestController
-@RequestMapping("/competition")
+@RequestMapping("")
public class CompetitionController {
+
+ @Autowired
+ private CompetitionService cttService;
+
+ @Autowired
+ private UserCompetitionService ucttService;
+
+ private final SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd HH:mm");
+
+ @PostMapping("/competition/getCompetitionsDetails")
+ public List<PurchaseRecordVo> getStuSourseList(@RequestParam("appUserId") Integer appUserId){
+
+ 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());
+ List<UserCompetition> userCompetitions = ucttService.queryUsersCompetetions(appUserId,comIds);
+ if (userCompetitions.size() > 0){
+ userCompetitions.forEach(coms ->{
+ PurchaseRecordVo recordVo = new PurchaseRecordVo();
+ recordVo.setPurchaseType("报名赛事");
+ recordVo.setPurchaseTime(dateFormat.format(coms.getInsertTime()));
+ Competition competition = cttService.getById(coms.getCompetitionId());
+ recordVo.setPurchaseAmount("-"+competition.getPrice());
+ recordVos.add(recordVo);
+ });
+ }
+ return recordVos;
+ }
+
+
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/controller/UserCompetitionController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/UserCompetitionController.java
index 3f9c80f..7039dd2 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/UserCompetitionController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/UserCompetitionController.java
@@ -1,17 +1,8 @@
package com.dsh.competition.controller;
-import com.dsh.competition.feignclient.model.ClassDataDetails;
-import com.dsh.competition.feignclient.model.PurchaseRecordVo;
-import com.dsh.competition.service.UserCompetitionService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-
-import java.util.ArrayList;
-import java.util.List;
/**
* <p>
@@ -22,27 +13,8 @@
* @since 2023-06-26
*/
@RestController
-@RequestMapping("/user-competition")
+@RequestMapping("/user_competition")
public class UserCompetitionController {
-
-
- @Autowired
- private UserCompetitionService ucService;
-
- /**
- * 获取报名赛事的课时扣减记录
- */
- @PostMapping("/deRecord")
- public List<ClassDataDetails> getDeductionRecordOfRegistrationEvent(@RequestBody Integer appUserId,@RequestBody String startTime,@RequestBody String endTime){
- List<ClassDataDetails> details = new ArrayList<>();
- List<PurchaseRecordVo> recordVos = ucService.queryDeRecordDetails(appUserId,startTime,endTime);
-
-
- return details;
-
-
- }
-
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java b/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java
index 666ce61..d23621b 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java
@@ -1,11 +1,17 @@
package com.dsh.competition.feignclient;
+import com.dsh.competition.feignclient.model.PurchaseRecordVo;
import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
@FeignClient(value = "mb-cloud-competition")
public interface DeductionCompetitionsClient {
-
+ @PostMapping("/competition/getCompetitionsDetails")
+ public List<PurchaseRecordVo> getStuSourseList(@RequestParam("appUserId") Integer appUserId);
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/mapper/UserCompetitionMapper.java b/cloud-server-competition/src/main/java/com/dsh/competition/mapper/UserCompetitionMapper.java
index 62a4713..481c830 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/mapper/UserCompetitionMapper.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/mapper/UserCompetitionMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dsh.competition.entity.UserCompetition;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -15,6 +16,7 @@
*/
public interface UserCompetitionMapper extends BaseMapper<UserCompetition> {
- List<UserCompetition> queryDeRecordDetails(Integer appUserId,List<Integer> collect,String startTime, String endTime);
+
+ List<UserCompetition> queryUsersCompetetions(@Param("appUserId") Integer appUserId,@Param("comIds") List<Integer> comIds);
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/UserCompetitionService.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/UserCompetitionService.java
index 0dc6ffe..386cfad 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/UserCompetitionService.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/UserCompetitionService.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.competition.entity.UserCompetition;
-import com.dsh.competition.feignclient.model.PurchaseRecordVo;
import java.util.List;
@@ -16,6 +15,7 @@
*/
public interface UserCompetitionService extends IService<UserCompetition> {
- List<PurchaseRecordVo> queryDeRecordDetails(Integer appUserId,String startTime, String endTime);
+
+ List<UserCompetition> queryUsersCompetetions(Integer appUserId, List<Integer> comIds);
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/UserCompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/UserCompetitionServiceImpl.java
index 340c55e..2a8d208 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/UserCompetitionServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/UserCompetitionServiceImpl.java
@@ -1,18 +1,12 @@
package com.dsh.competition.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.dsh.competition.entity.Competition;
import com.dsh.competition.entity.UserCompetition;
-import com.dsh.competition.feignclient.model.PurchaseRecordVo;
-import com.dsh.competition.mapper.CompetitionMapper;
import com.dsh.competition.mapper.UserCompetitionMapper;
import com.dsh.competition.service.UserCompetitionService;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
-import java.util.stream.Collectors;
/**
* <p>
@@ -25,16 +19,9 @@
@Service
public class UserCompetitionServiceImpl extends ServiceImpl<UserCompetitionMapper, UserCompetition> implements UserCompetitionService {
- @Autowired
- CompetitionMapper comMapper;
@Override
- public List<PurchaseRecordVo> queryDeRecordDetails(Integer appUserId,String startTime, String endTime) {
- List<Competition> competitions = comMapper.selectList(new QueryWrapper<Competition>()
- .eq("payType", 3)
- .eq("auditStatus",2));
- List<Integer> collect = competitions.stream().map(Competition::getId).collect(Collectors.toList());
- List<UserCompetition> purchaseRecordVos = this.baseMapper.queryDeRecordDetails(appUserId, collect, startTime, endTime);
- return null;
+ public List<UserCompetition> queryUsersCompetetions(Integer appUserId, List<Integer> comIds) {
+ return this.baseMapper.queryUsersCompetetions(appUserId,comIds);
}
}
diff --git a/cloud-server-competition/src/main/resources/mapper/UserCompetitionMapper.xml b/cloud-server-competition/src/main/resources/mapper/UserCompetitionMapper.xml
index 65f6df0..aa933cb 100644
--- a/cloud-server-competition/src/main/resources/mapper/UserCompetitionMapper.xml
+++ b/cloud-server-competition/src/main/resources/mapper/UserCompetitionMapper.xml
@@ -2,8 +2,34 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dsh.competition.mapper.UserCompetitionMapper">
- <select id="queryDeRecordDetails" resultType="com.dsh.competition.entity.UserCompetition">
-
+ <select id="queryUsersCompetetions" resultType="com.dsh.competition.entity.UserCompetition">
+ SELECT *
+ FROM t_user_competition
+ UNION ALL
+ SELECT *
+ FROM t_user_competition1
+ UNION ALL
+ SELECT *
+ FROM t_user_competition2
+ UNION ALL
+ SELECT *
+ FROM t_user_competition3
+ UNION ALL
+ SELECT *
+ FROM t_user_competition4
+ UNION ALL
+ SELECT *
+ FROM t_user_competition5
+ WHERE 1 = 1
+ <if test=" stuId != null">
+ and studentId = #{stuId}
+ </if>
+ <if test="appUserId != null">
+ and competitionId in
+ <foreach collection="comIds" item="item" separator="," open="(" index="index" close=")">
+ #{item}
+ </foreach>
+ </if>
</select>
</mapper>
diff --git a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
index 5124aea..f49a1c7 100644
--- a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
+++ b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
@@ -45,10 +45,10 @@
FROM t_course_package_payment5
WHERE 1=1
<if test=" stuId != null">
- and appUserId = #{stuId}
+ and appUserId = #{stuId}
</if>
<if test="appUserId != null">
- and studentId = #{appUserId}
+ and appUserId = #{appUserId}
</if>
</select>
--
Gitblit v1.7.1