|
@@ -2,12 +2,14 @@ package com.qxgmat.controller.admin;
|
|
|
|
|
|
import com.github.pagehelper.Page;
|
|
|
import com.nuliji.tools.*;
|
|
|
+import com.nuliji.tools.exception.ParameterException;
|
|
|
import com.qxgmat.data.constants.enums.ExperienceDayRange;
|
|
|
import com.qxgmat.data.constants.enums.ExperienceScoreRange;
|
|
|
import com.qxgmat.data.constants.enums.module.CourseModule;
|
|
|
import com.qxgmat.data.constants.enums.module.ProductType;
|
|
|
import com.qxgmat.data.constants.enums.status.AskStatus;
|
|
|
import com.qxgmat.data.constants.enums.status.DirectionStatus;
|
|
|
+import com.qxgmat.data.constants.enums.trade.RecordSource;
|
|
|
import com.qxgmat.data.constants.enums.user.DataType;
|
|
|
import com.qxgmat.data.constants.enums.user.MoneyRange;
|
|
|
import com.qxgmat.data.dao.entity.*;
|
|
@@ -65,7 +67,10 @@ public class CourseController {
|
|
|
private CourseTimeService courseTimeService;
|
|
|
|
|
|
@Autowired
|
|
|
- private CourseStudentOnlineService courseStudentOnlineService;
|
|
|
+ private PreviewPaperService previewPaperService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private PreviewAssignService previewAssignService;
|
|
|
|
|
|
@Autowired
|
|
|
private UserAskCourseService userAskCourseService;
|
|
@@ -415,6 +420,9 @@ public class CourseController {
|
|
|
// 统计课时数
|
|
|
Course course = courseService.get(in.getCourseId());
|
|
|
courseService.edit(Course.builder().id(course.getId()).noNumber(course.getNoNumber() - 1).build());
|
|
|
+ // 删除对应预习作业关系
|
|
|
+ previewPaperService.removeCourseNo(course.getId(), in.getId());
|
|
|
+ previewAssignService.removeCourseNo(course.getId(), in.getId());
|
|
|
managerLogService.log(request);
|
|
|
return ResponseHelp.success(true);
|
|
|
}
|
|
@@ -449,6 +457,8 @@ public class CourseController {
|
|
|
public Response<Boolean> editTime(@RequestBody @Validated CourseTimeDto dto, HttpServletRequest request) {
|
|
|
CourseTime entity = Transform.dtoToEntity(dto);
|
|
|
entity = courseTimeService.edit(entity);
|
|
|
+ // 修改所有学员记录
|
|
|
+ userOrderRecordService.changeStudentTime(entity.getCourseId(), dto.getId(), entity.getStartTime(), entity.getEndTime());
|
|
|
managerLogService.log(request);
|
|
|
return ResponseHelp.success(true);
|
|
|
}
|
|
@@ -456,7 +466,11 @@ public class CourseController {
|
|
|
@RequestMapping(value = "/time/delete", method = RequestMethod.DELETE)
|
|
|
@ApiOperation(value = "删除课时", httpMethod = "DELETE")
|
|
|
public Response<Boolean> deleteTime(@RequestParam int id, HttpServletRequest request) {
|
|
|
+ CourseTime in = courseTimeService.get(id);
|
|
|
courseTimeService.delete(id);
|
|
|
+ // 删除对应预习作业关系
|
|
|
+ previewAssignService.removeCourseTime(in.getCourseId(), in.getId());
|
|
|
+ // todo 删除对应学生关系
|
|
|
managerLogService.log(request);
|
|
|
return ResponseHelp.success(true);
|
|
|
}
|
|
@@ -490,7 +504,7 @@ public class CourseController {
|
|
|
|
|
|
// 绑定学生数量
|
|
|
Collection timeIds = Transform.getIds(p, CourseTime.class, "id");
|
|
|
- List<CourseStudentNumberRelation> relations = courseStudentOnlineService.groupByCourse(timeIds);
|
|
|
+ List<CourseStudentNumberRelation> relations = userOrderRecordService.groupByCourse(timeIds);
|
|
|
Map map = Transform.getMap(relations, CourseStudentNumberRelation.class, "id", "number");
|
|
|
Transform.combine(pr, map, CourseTimeInfoDto.class, "id", "studentNumber");
|
|
|
|
|
@@ -499,18 +513,31 @@ public class CourseController {
|
|
|
|
|
|
@RequestMapping(value = "/student/online/add", method = RequestMethod.POST)
|
|
|
@ApiOperation(value = "添加学员", httpMethod = "POST")
|
|
|
- public Response<CourseStudentOnline> addStudentVideo(@RequestBody @Validated CourseStudentOnline entity, HttpServletRequest request) {
|
|
|
-// CourseStudentOnline entity = Transform.dtoToEntity(dto);
|
|
|
- entity = courseStudentOnlineService.addStudent(entity);
|
|
|
+ public Response<UserOrderRecord> addStudentOnline(@RequestBody @Validated CourseStudentOnlineDto dto, HttpServletRequest request) {
|
|
|
+ UserOrderRecord entity = Transform.dtoToEntity(dto);
|
|
|
+
|
|
|
+ CourseTime courseTime = courseTimeService.get(dto.getTimeId());
|
|
|
+ if (courseTime == null){
|
|
|
+ throw new ParameterException("时间段错误");
|
|
|
+ }
|
|
|
+ entity.setSource(RecordSource.BACKEND.key);
|
|
|
+ entity.setProductType(ProductType.COURSE.key);
|
|
|
+ entity.setTimeId(dto.getTimeId());
|
|
|
+ entity.setProductId(dto.getCourseId());
|
|
|
+ entity.setIsUsed(1);
|
|
|
+ entity.setUseTime(new Date());
|
|
|
+ entity.setStartTime(courseTime.getStartTime());
|
|
|
+ entity.setEndTime(courseTime.getEndTime());
|
|
|
+ entity = userOrderRecordService.addStudent(entity);
|
|
|
managerLogService.log(request);
|
|
|
- return ResponseHelp.success(Transform.convert(entity, CourseStudentOnline.class));
|
|
|
+ return ResponseHelp.success(Transform.convert(entity, UserOrderRecord.class));
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/student/online/edit", method = RequestMethod.PUT)
|
|
|
@ApiOperation(value = "编辑学员", httpMethod = "PUT")
|
|
|
- public Response<Boolean> editStudentVideo(@RequestBody @Validated CourseStudentOnline entity, HttpServletRequest request) {
|
|
|
-// CourseStudentOnline entity = Transform.dtoToEntity(dto);
|
|
|
- entity = courseStudentOnlineService.edit(entity);
|
|
|
+ public Response<Boolean> editStudentVideo(@RequestBody @Validated CourseStudentOnlineDto dto, HttpServletRequest request) {
|
|
|
+ UserOrderRecord entity = Transform.dtoToEntity(dto);
|
|
|
+ entity = userOrderRecordService.edit(entity);
|
|
|
managerLogService.log(request);
|
|
|
return ResponseHelp.success(true);
|
|
|
}
|
|
@@ -518,16 +545,16 @@ public class CourseController {
|
|
|
@RequestMapping(value = "/student/online/delete", method = RequestMethod.DELETE)
|
|
|
@ApiOperation(value = "删除学员", httpMethod = "DELETE")
|
|
|
public Response<Boolean> deleteStudentOnline(@RequestParam int id, HttpServletRequest request) {
|
|
|
- courseTimeService.delete(id);
|
|
|
+ userOrderRecordService.delete(id);
|
|
|
managerLogService.log(request);
|
|
|
return ResponseHelp.success(true);
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/student/online/detail", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "获取学员", httpMethod = "GET")
|
|
|
- public Response<CourseStudentOnline> detailStudentVideo(@RequestParam int id,HttpSession session) {
|
|
|
- CourseStudentOnline entity = courseStudentOnlineService.get(id);
|
|
|
- return ResponseHelp.success(Transform.convert(entity, CourseStudentOnline.class));
|
|
|
+ public Response<UserOrderRecord> detailStudentVideo(@RequestParam int id,HttpSession session) {
|
|
|
+ UserOrderRecord entity = userOrderRecordService.get(id);
|
|
|
+ return ResponseHelp.success(Transform.convert(entity, UserOrderRecord.class));
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/student/online/list", method = RequestMethod.GET)
|
|
@@ -540,18 +567,18 @@ public class CourseController {
|
|
|
@RequestParam(required = false, defaultValue = "id") String order,
|
|
|
@RequestParam(required = false, defaultValue = "desc") String direction,
|
|
|
HttpSession session) {
|
|
|
- Page<CourseStudentOnline> p = courseStudentOnlineService.listAdmin(page, size, courseId, timeId);
|
|
|
+ Page<UserOrderRecord> p = userOrderRecordService.listAdminByOnline(page, size, courseId, timeId);
|
|
|
List<CourseStudentOnlineListDto> pr = Transform.convert(p, CourseStudentOnlineListDto.class);
|
|
|
|
|
|
// 绑定用户
|
|
|
- Collection userIds = Transform.getIds(p, CourseStudentOnline.class, "userId");
|
|
|
+ Collection userIds = Transform.getIds(p, UserOrderRecord.class, "userId");
|
|
|
List<User> userList = usersService.select(userIds);
|
|
|
Transform.combine(pr, userList, CourseStudentOnlineListDto.class, "userId", "user", User.class, "id", UserExtendDto.class);
|
|
|
|
|
|
// 绑定时间段
|
|
|
- Collection timeIds = Transform.getIds(p, CourseStudentOnline.class, "timeId");
|
|
|
+ Collection timeIds = Transform.getIds(p, UserOrderRecord.class, "no");
|
|
|
List<CourseTime> timeList = courseTimeService.select(timeIds);
|
|
|
- Transform.combine(pr, timeList, CourseStudentOnlineListDto.class, "timeId", "time", CourseTime.class, "id", CourseTimeExtendDto.class);
|
|
|
+ Transform.combine(pr, timeList, CourseStudentOnlineListDto.class, "no", "time", CourseTime.class, "id", CourseTimeExtendDto.class);
|
|
|
|
|
|
return ResponseHelp.success(pr, page, size, p.getTotal());
|
|
|
}
|
|
@@ -637,7 +664,7 @@ public class CourseController {
|
|
|
if (ids != null && ids.length > 0){
|
|
|
p = userOrderRecordService.select(ids);
|
|
|
}else{
|
|
|
- p = userOrderRecordService.listWithStudyAdmin(page, size, CourseModule.ValueOf(courseModule), structId, courseId, userId, teacher);
|
|
|
+ p = userOrderRecordService.listWithStudyAdmin(page, size, new String[]{courseModule}, structId, courseId, userId, teacher, order, DirectionStatus.ValueOf(direction));
|
|
|
}
|
|
|
List<UserCourseStudyRecordInfoDto> pr = Transform.convert(p, UserCourseStudyRecordInfoDto.class);
|
|
|
|