|
@@ -13,13 +13,17 @@ import com.qxgmat.data.constants.enums.user.DataType;
|
|
|
import com.qxgmat.data.dao.entity.*;
|
|
|
import com.qxgmat.data.relation.entity.UserPreviewPaperRelation;
|
|
|
import com.qxgmat.dto.extend.*;
|
|
|
+import com.qxgmat.dto.request.CourseTrailViewDto;
|
|
|
+import com.qxgmat.dto.request.ExperienceViewDto;
|
|
|
import com.qxgmat.dto.response.*;
|
|
|
import com.qxgmat.help.ShiroHelp;
|
|
|
+import com.qxgmat.service.UsersService;
|
|
|
import com.qxgmat.service.extend.PreviewService;
|
|
|
import com.qxgmat.service.inline.*;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpSession;
|
|
@@ -76,6 +80,9 @@ public class CourseController {
|
|
|
@Autowired
|
|
|
private UserOrderRecordService userOrderRecordService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private UsersService usersService;
|
|
|
+
|
|
|
|
|
|
@RequestMapping(value = "/vs", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "获取1v1课程信息", notes = "获取1v1课程信息", httpMethod = "GET")
|
|
@@ -137,6 +144,13 @@ public class CourseController {
|
|
|
return ResponseHelp.success(course);
|
|
|
}
|
|
|
|
|
|
+ @RequestMapping(value = "/trail/view", method = RequestMethod.POST)
|
|
|
+ @ApiOperation(value = "课程试用", httpMethod = "POST")
|
|
|
+ public Response<Boolean> viewTrail(@RequestBody @Validated CourseTrailViewDto dto, HttpSession session) {
|
|
|
+ courseService.accumulation(dto.getId(), 1, 0, 0);
|
|
|
+ return ResponseHelp.success(true);
|
|
|
+ }
|
|
|
+
|
|
|
@RequestMapping(value = "/package/list", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "套餐列表", httpMethod = "GET")
|
|
|
public Response<PageMessage<CoursePackageListDto>> listPackage(
|
|
@@ -263,7 +277,7 @@ public class CourseController {
|
|
|
|
|
|
@RequestMapping(value = "/experience/list", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "心经列表", httpMethod = "GET")
|
|
|
- public Response<PageMessage<CourseExperience>> listExperience(
|
|
|
+ public Response<PageMessage<CourseExperienceListDto>> listExperience(
|
|
|
@RequestParam(required = false, defaultValue = "1") int page,
|
|
|
@RequestParam(required = false, defaultValue = "100") int size,
|
|
|
@RequestParam(required = false) String prepareStatus,
|
|
@@ -276,7 +290,34 @@ public class CourseController {
|
|
|
|
|
|
Page<CourseExperience> p = courseExperienceService.list(page, size, prepareStatus, ExperienceScoreRange.ValueOf(experienceScore), ExperienceDayRange.ValueOf(experienceDay), experiencePercent, order, DirectionStatus.ValueOf(direction));
|
|
|
|
|
|
- return ResponseHelp.success(p, page, size, p.getTotal());
|
|
|
+ List<CourseExperienceListDto> pr = Transform.convert(p, CourseExperienceListDto.class);
|
|
|
+
|
|
|
+ // 绑定用户
|
|
|
+ Collection userIds = Transform.getIds(pr, CourseExperienceListDto.class, "userId");
|
|
|
+ List<User> userList = usersService.select(userIds);
|
|
|
+ Transform.combine(pr, userList, CourseExperienceListDto.class, "userId", "user", User.class, "id", UserExtendDto.class);
|
|
|
+
|
|
|
+ return ResponseHelp.success(pr, page, size, p.getTotal());
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequestMapping(value = "/experience/detail", method = RequestMethod.GET)
|
|
|
+ @ApiOperation(value = "心经查看", httpMethod = "GET")
|
|
|
+ public Response<CourseExperience> detailExperience(int id, HttpSession session) {
|
|
|
+
|
|
|
+ CourseExperience entity = courseExperienceService.get(id);
|
|
|
+ if(entity.getUserId() > 0){
|
|
|
+ CourseExperienceDetailDto dto = Transform.convert(entity, CourseExperienceDetailDto.class);
|
|
|
+ User user = usersService.get(dto.getUserId());
|
|
|
+ dto.setUser(Transform.convert(user, UserExtendDto.class));
|
|
|
+ }
|
|
|
+ return ResponseHelp.success(entity);
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequestMapping(value = "/experience/view", method = RequestMethod.POST)
|
|
|
+ @ApiOperation(value = "心经阅读", httpMethod = "POST")
|
|
|
+ public Response<Boolean> viewExperience(@RequestBody @Validated ExperienceViewDto dto, HttpSession session) {
|
|
|
+ courseExperienceService.accumulation(dto.getId(), 1, 0);
|
|
|
+ return ResponseHelp.success(true);
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/record", method = RequestMethod.GET)
|