package com.zhongzheng.controller.grade; import com.zhongzheng.common.annotation.Log; import com.zhongzheng.common.core.controller.BaseController; import com.zhongzheng.common.core.domain.AjaxResult; import com.zhongzheng.common.core.page.TableDataInfo; import com.zhongzheng.common.enums.BusinessType; import com.zhongzheng.common.utils.ServletUtils; import com.zhongzheng.modules.grade.bo.*; import com.zhongzheng.modules.grade.service.IClassGradeInterfaceService; import com.zhongzheng.modules.grade.service.IClassGradeService; import com.zhongzheng.modules.grade.service.IClassGradeSysService; import com.zhongzheng.modules.grade.service.IClassGradeUserService; import com.zhongzheng.modules.grade.vo.*; import com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo; import com.zhongzheng.modules.user.bo.UserQueryBo; import com.zhongzheng.modules.user.service.IUserService; import com.zhongzheng.modules.user.service.IUserStudyRecordService; import com.zhongzheng.modules.user.vo.GoodsStudyRecordVo; import com.zhongzheng.modules.user.vo.SubjectStudyRecordVo; import com.zhongzheng.modules.user.vo.UserVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.List; /** * 班级Controller * * @author ruoyi * @date 2021-11-10 */ @Api(value = "学员控制器", tags = {"学员控制器"}) @RequiredArgsConstructor(onConstructor_ = @Autowired) @RestController @RequestMapping("/grade/student") public class ClassStudentController extends BaseController { private final IClassGradeService iClassGradeService; private final IClassGradeInterfaceService iClassGradeInterfaceService; private final IClassGradeSysService iClassGradeSysService; private final IClassGradeUserService iClassGradeUserService; private final IUserStudyRecordService iUserStudyRecordService; private final IUserService iUserService; /** * 查询學員用户列表 */ @ApiOperation("查询學員用户列表") @PreAuthorize("@ss.hasPermi('app:user:list')") @GetMapping("/listStudent") public TableDataInfo listStudent(UserQueryBo bo) { startPage(); List list = iUserService.selectList(bo); for (UserVo userVo : list) { ClassGradeUserQueryBo classGradeUserQueryBo = new ClassGradeUserQueryBo(); classGradeUserQueryBo.setUserId(userVo.getUserId()); List status = new ArrayList<>(); status.add(1); classGradeUserQueryBo.setStatus(status); List classGradeUserGoodsVos = iClassGradeUserService.listUser(classGradeUserQueryBo); userVo.setClassGradeUserGoodsVoList(classGradeUserGoodsVos); } return getDataTable(list); } /** * 查询学员商品学习记录 */ @ApiOperation("查询学员商品学习记录") @PreAuthorize("@ss.hasPermi('grade:student:list')") @GetMapping("/list") public TableDataInfo list(UserQueryBo bo) { startPage(); List list = iUserStudyRecordService.queryGoods(bo); return getDataTable(list); } /** * 查询学员课程科目学习记录 */ @ApiOperation("查询学员课程科目学习记录") @PreAuthorize("@ss.hasPermi('grade:student:listSubject')") @GetMapping("/listSubject") public TableDataInfo listSubject(SubjectStudyRecordQueryBo bo) { startPage(); List list = iUserStudyRecordService.listSubject(bo); return getDataTable(list); } /** * 查询学员课程节学习记录 */ @ApiOperation("查询学员课程节学习记录") @PreAuthorize("@ss.hasPermi('grade:student:listSection')") @GetMapping("/listSection") public TableDataInfo listSection(SubjectStudyRecordQueryBo bo) { startPage(); List list = iUserStudyRecordService.listSection(bo); return getDataTable(list); } /** * 查询班级记录列表 */ @ApiOperation("查询班级记录列表") @PreAuthorize("@ss.hasPermi('system:user:list')") @GetMapping("/listUser") public TableDataInfo listUser(ClassGradeUserQueryBo bo) { startPage(); List list = iClassGradeUserService.listUser(bo); return getDataTable(list); } }