|
@@ -11,14 +11,13 @@ import com.qxgmat.data.constants.enums.user.AskTarget;
|
|
|
import com.qxgmat.data.constants.enums.user.MoneyRange;
|
|
|
import com.qxgmat.data.dao.entity.*;
|
|
|
import com.qxgmat.dto.admin.extend.*;
|
|
|
+import com.qxgmat.dto.admin.request.CoursePackageDto;
|
|
|
import com.qxgmat.dto.admin.request.UserAskCourseDto;
|
|
|
import com.qxgmat.dto.admin.response.*;
|
|
|
import com.qxgmat.help.ShiroHelp;
|
|
|
import com.qxgmat.service.ManagerService;
|
|
|
import com.qxgmat.service.UsersService;
|
|
|
-import com.qxgmat.service.inline.CourseService;
|
|
|
-import com.qxgmat.service.inline.ManagerLogService;
|
|
|
-import com.qxgmat.service.inline.UserAskCourseService;
|
|
|
+import com.qxgmat.service.inline.*;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
@@ -40,6 +39,12 @@ public class CourseController {
|
|
|
private CourseService courseService;
|
|
|
|
|
|
@Autowired
|
|
|
+ private CourseNoService courseNoService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CoursePackageService coursePackageService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private UserAskCourseService userAskCourseService;
|
|
|
|
|
|
@Autowired
|
|
@@ -51,7 +56,7 @@ public class CourseController {
|
|
|
@Autowired
|
|
|
private UsersService usersService;
|
|
|
|
|
|
- @RequestMapping(value = "/course/list", method = RequestMethod.GET)
|
|
|
+ @RequestMapping(value = "/list", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "课程列表", httpMethod = "GET")
|
|
|
public Response<PageMessage<CourseListDto>> list(
|
|
|
@RequestParam(required = false, defaultValue = "1") int page,
|
|
@@ -63,6 +68,47 @@ public class CourseController {
|
|
|
return ResponseHelp.success(pr, page, size, p.getTotal());
|
|
|
}
|
|
|
|
|
|
+ @RequestMapping(value = "/package/add", method = RequestMethod.POST)
|
|
|
+ @ApiOperation(value = "添加套餐", httpMethod = "POST")
|
|
|
+ public Response<SentenceArticle> addPackage(@RequestBody @Validated CoursePackageDto dto, HttpServletRequest request) {
|
|
|
+ CoursePackage entity = Transform.dtoToEntity(dto);
|
|
|
+ entity = coursePackageService.add(entity);
|
|
|
+ managerLogService.log(request);
|
|
|
+ return ResponseHelp.success(Transform.convert(entity, SentenceArticle.class));
|
|
|
+ }
|
|
|
+ @RequestMapping(value = "/package/edit", method = RequestMethod.PUT)
|
|
|
+ @ApiOperation(value = "编辑套餐", httpMethod = "PUT")
|
|
|
+ public Response<Boolean> editPackage(@RequestBody @Validated CoursePackageDto dto, HttpServletRequest request) {
|
|
|
+ CoursePackage entity = Transform.dtoToEntity(dto);
|
|
|
+ entity = coursePackageService.edit(entity);
|
|
|
+ managerLogService.log(request);
|
|
|
+ return ResponseHelp.success(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequestMapping(value = "/package/delete", method = RequestMethod.DELETE)
|
|
|
+ @ApiOperation(value = "删除套餐", httpMethod = "DELETE")
|
|
|
+ public Response<Boolean> deletePackage(@RequestParam int id, HttpServletRequest request) {
|
|
|
+ coursePackageService.delete(id);
|
|
|
+ managerLogService.log(request);
|
|
|
+ return ResponseHelp.success(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequestMapping(value = "/package/detail", method = RequestMethod.GET)
|
|
|
+ @ApiOperation(value = "获取套餐", httpMethod = "GET")
|
|
|
+ public Response<CoursePackage> detailPackage(@RequestParam int id,HttpSession session) {
|
|
|
+ CoursePackage entity = coursePackageService.get(id);
|
|
|
+ return ResponseHelp.success(Transform.convert(entity, CoursePackage.class));
|
|
|
+ }
|
|
|
+ @RequestMapping(value = "/package/list", method = RequestMethod.GET)
|
|
|
+ @ApiOperation(value = "套餐列表", httpMethod = "GET")
|
|
|
+ public Response<PageMessage<CoursePackage>> listPackage(
|
|
|
+ @RequestParam(required = false, defaultValue = "1") int page,
|
|
|
+ @RequestParam(required = false, defaultValue = "100") int size,
|
|
|
+ HttpSession session) {
|
|
|
+ Page<CoursePackage> p = coursePackageService.select(page, size);
|
|
|
+ List<CoursePackage> pr = Transform.convert(p, CoursePackage.class);
|
|
|
+ return ResponseHelp.success(pr, page, size, p.getTotal());
|
|
|
+ }
|
|
|
|
|
|
@RequestMapping(value = "/ask/edit", method = RequestMethod.PUT)
|
|
|
@ApiOperation(value = "修改提问信息", httpMethod = "PUT")
|
|
@@ -103,8 +149,14 @@ public class CourseController {
|
|
|
User user = usersService.get(entity.getUserId());
|
|
|
dto.setUser(Transform.convert(user, UserExtendDto.class));
|
|
|
|
|
|
+ Course course = courseService.get(entity.getCourseId());
|
|
|
+ dto.setCourse(Transform.convert(course, CourseExtendDto.class));
|
|
|
+
|
|
|
+ CourseNo courseNo = courseNoService.get(entity.getCourseNoId());
|
|
|
+ dto.setCourseNo(Transform.convert(courseNo, CourseNoExtendDto.class));
|
|
|
+
|
|
|
// 所有回答
|
|
|
- List<UserAskCourse> userAskList = userAskCourseService.listByCourse(entity.getCourseId(), true);
|
|
|
+ List<UserAskCourse> userAskList = userAskCourseService.listByCoursePosition(entity.getCourseNoId(), entity.getPosition(), true);
|
|
|
dto.setOthers(Transform.convert(userAskList, UserAskCourseExtendDto.class));
|
|
|
return ResponseHelp.success(dto);
|
|
|
}
|
|
@@ -114,18 +166,14 @@ public class CourseController {
|
|
|
public Response<PageMessage<UserAskCourseListDto>> list(
|
|
|
@RequestParam(required = false, defaultValue = "1") int page,
|
|
|
@RequestParam(required = false, defaultValue = "100") int size,
|
|
|
- @RequestParam(required = false) String type,
|
|
|
- @RequestParam(required = false) Integer category,
|
|
|
- @RequestParam(required = false) Number userId,
|
|
|
- @RequestParam(required = false) Number questionNoId,
|
|
|
- @RequestParam(required = false) String target,
|
|
|
- @RequestParam(required = false) Integer status,
|
|
|
+ @RequestParam(required = false) Integer structId,
|
|
|
+ @RequestParam(required = false) Integer courseId,
|
|
|
+ @RequestParam(required = false) Integer answerStatus,
|
|
|
@RequestParam(required = false) Integer showStatus,
|
|
|
- @RequestParam(required = false) Integer moneyRang,
|
|
|
@RequestParam(required = false, defaultValue = "id") String order,
|
|
|
@RequestParam(required = false, defaultValue = "desc") String direction,
|
|
|
HttpSession session) {
|
|
|
- Page<UserAskCourse> p = userAskCourseService.listWithUser(page, size, type, category, userId, questionNoId, AskTarget.ValueOf(target), AskStatus.ValueOf(status), showStatus, MoneyRange.ValueOf(moneyRang), order, DirectionStatus.ValueOf(direction));
|
|
|
+ Page<UserAskCourse> p = userAskCourseService.listWithUser(page, size, structId, courseId, AskStatus.ValueOf(answerStatus), showStatus, order, DirectionStatus.ValueOf(direction));
|
|
|
List<UserAskCourseListDto> pr = Transform.convert(p, UserAskCourseListDto.class);
|
|
|
|
|
|
// 绑定用户
|
|
@@ -138,6 +186,16 @@ public class CourseController {
|
|
|
List<Manager> managerList = managerService.select(managerIds);
|
|
|
Transform.combine(pr, managerList, UserAskQuestionListDto.class, "managerId", "manager", Manager.class, "id", ManagerExtendDto.class);
|
|
|
|
|
|
+ // 绑定课程
|
|
|
+ Collection courseIds = Transform.getIds(p, UserAskCourse.class, "courseId");
|
|
|
+ List<Course> courseList = courseService.select(courseIds);
|
|
|
+ Transform.combine(pr, courseList, UserAskCourseListDto.class, "courseId", "course", Course.class, "id", CourseExtendDto.class);
|
|
|
+
|
|
|
+ // 绑定课时
|
|
|
+ Collection courseNoIds = Transform.getIds(p, UserAskCourse.class, "courseNoId");
|
|
|
+ List<CourseNo> courseNoList = courseNoService.select(courseNoIds);
|
|
|
+ Transform.combine(pr, courseNoList, UserAskCourseListDto.class, "courseNoId", "courseNo", CourseNo.class, "id", CourseNoExtendDto.class);
|
|
|
+
|
|
|
return ResponseHelp.success(pr, page, size, p.getTotal());
|
|
|
}
|
|
|
}
|