|
@@ -4,21 +4,14 @@ import cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent;
|
|
|
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.studentSelectionProject.vo.studentSelectionProjectSaveReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.supervisorSelectionSetting.vo.supervisorSelectionSettingSaveReqVO;
|
|
|
-import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserPageReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserSaveReqVO;
|
|
|
-import cn.iocoder.yudao.module.system.dal.dataobject.studentSelectionProject.studentSelectionProjectDO;
|
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.supervisorSelectionSetting.supervisorSelectionSettingDO;
|
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
|
|
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
|
|
import cn.iocoder.yudao.module.system.service.studentSelectionProject.studentSelectionProjectService;
|
|
|
import cn.iocoder.yudao.module.system.service.supervisorSelectionSetting.supervisorSelectionSettingService;
|
|
|
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
|
|
-import com.alibaba.druid.sql.visitor.functions.If;
|
|
|
-import com.baomidou.mybatisplus.generator.IFill;
|
|
|
-import org.apache.ibatis.annotations.Param;
|
|
|
-import org.springframework.scheduling.TaskScheduler;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
-import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import javax.annotation.Resource;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
@@ -27,14 +20,10 @@ import io.swagger.v3.oas.annotations.tags.Tag;
|
|
|
import io.swagger.v3.oas.annotations.Parameter;
|
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
|
|
|
|
-import javax.validation.constraints.*;
|
|
|
import javax.validation.*;
|
|
|
import javax.servlet.http.*;
|
|
|
-import java.time.DayOfWeek;
|
|
|
import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.time.ZoneId;
|
|
|
-import java.time.temporal.ChronoUnit;
|
|
|
import java.util.*;
|
|
|
import java.io.IOException;
|
|
|
|
|
@@ -59,7 +48,7 @@ import cn.iocoder.yudao.module.system.service.studentSelectSupervisorRecord.stud
|
|
|
@RestController
|
|
|
@RequestMapping("/system/student-select-supervisor-record")
|
|
|
@Validated
|
|
|
-public class studentSelectSupervisorRecordController {
|
|
|
+public class StudentSelectSupervisorRecordController {
|
|
|
|
|
|
@Resource
|
|
|
private studentSelectSupervisorRecordService studentSelectSupervisorRecordService;
|
|
@@ -95,7 +84,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
//更新所有待处理的记录=>撤回
|
|
|
studentSelectSupervisorRecordService.updatePendingSelectType(project.getId());
|
|
|
//创建其他的记录
|
|
|
- studentSelectSupervisorRecordSaveReqVO createReqVO =new studentSelectSupervisorRecordSaveReqVO();
|
|
|
+ StudentSelectSupervisorRecordSaveReqVO createReqVO =new StudentSelectSupervisorRecordSaveReqVO();
|
|
|
for (AdminUserDO student :studentList){
|
|
|
createReqVO.setProjectId(project.getId());
|
|
|
createReqVO.setStudentId(student.getId());
|
|
@@ -108,7 +97,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
@PostMapping("/create")
|
|
|
@Operation(summary = "创建师生互选记录")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:create')")
|
|
|
- public CommonResult<String> createStudentSelectSupervisorRecord(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO createReqVO) {
|
|
|
+ public CommonResult<String> createStudentSelectSupervisorRecord(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO createReqVO) {
|
|
|
Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
|
AdminUserDO loginUser =adminUserService.getUser(loginId);
|
|
|
LocalDateTime dateTime =LocalDateTime.now();
|
|
@@ -134,8 +123,8 @@ public class studentSelectSupervisorRecordController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- studentSelectSupervisorRecordDO record1 = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(loginId, null, 2);//同意
|
|
|
- studentSelectSupervisorRecordDO record2 = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(loginId, null, 1);//待处理
|
|
|
+ studentSelectSupervisorRecordDO record1 = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(project.getId(),loginId, null, 2);//同意
|
|
|
+ studentSelectSupervisorRecordDO record2 = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(project.getId(),loginId, null, 1);//待处理
|
|
|
|
|
|
if (record1 != null) {
|
|
|
return error(1, "请求已通过了");
|
|
@@ -157,7 +146,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
@PutMapping("/update")
|
|
|
@Operation(summary = "更新师生互选记录")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:update')")
|
|
|
- public CommonResult<String> updateStudentSelectSupervisorRecord(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
+ public CommonResult<String> updateStudentSelectSupervisorRecord(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
|
|
|
studentSelectSupervisorRecordDO record =studentSelectSupervisorRecordService.getStudentSelectSupervisorRecord(updateReqVO.getId());
|
|
|
//
|
|
@@ -211,15 +200,15 @@ public class studentSelectSupervisorRecordController {
|
|
|
@Operation(summary = "获得师生互选记录")
|
|
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:query')")
|
|
|
- public CommonResult<studentSelectSupervisorRecordRespVO> getStudentSelectSupervisorRecord(@RequestParam("id") Integer id) {
|
|
|
+ public CommonResult<StudentSelectSupervisorRecordRespVO> getStudentSelectSupervisorRecord(@RequestParam("id") Integer id) {
|
|
|
studentSelectSupervisorRecordDO studentSelectSupervisorRecord = studentSelectSupervisorRecordService.getStudentSelectSupervisorRecord(id);
|
|
|
- return success(BeanUtils.toBean(studentSelectSupervisorRecord, studentSelectSupervisorRecordRespVO.class));
|
|
|
+ return success(BeanUtils.toBean(studentSelectSupervisorRecord, StudentSelectSupervisorRecordRespVO.class));
|
|
|
}
|
|
|
|
|
|
@GetMapping("/page")
|
|
|
@Operation(summary = "获得师生互选记录分页")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:query')")
|
|
|
- public CommonResult<PageResult<studentSelectSupervisorRecordRespVO>> getStudentSelectSupervisorRecordPage(@Valid studentSelectSupervisorRecordPageReqVO pageReqVO) {
|
|
|
+ public CommonResult<PageResult<StudentSelectSupervisorRecordRespVO>> getStudentSelectSupervisorRecordPage(@Valid StudentSelectSupervisorRecordPageReqVO pageReqVO) {
|
|
|
// LocalDateTime dateTime = LocalDateTime.now();
|
|
|
// studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(dateTime.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
// Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
@@ -228,7 +217,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
// return error(1, "该项目已过截至日期");
|
|
|
// }else {
|
|
|
PageResult<studentSelectSupervisorRecordDO> pageResult = studentSelectSupervisorRecordService.getStudentSelectSupervisorRecordPage(pageReqVO);
|
|
|
- return success(BeanUtils.toBean(pageResult, studentSelectSupervisorRecordRespVO.class));
|
|
|
+ return success(BeanUtils.toBean(pageResult, StudentSelectSupervisorRecordRespVO.class));
|
|
|
// }
|
|
|
}
|
|
|
|
|
@@ -236,20 +225,20 @@ public class studentSelectSupervisorRecordController {
|
|
|
@Operation(summary = "导出师生互选记录 Excel")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:export')")
|
|
|
@ApiAccessLog(operateType = EXPORT)
|
|
|
- public void exportStudentSelectSupervisorRecordExcel(@Valid studentSelectSupervisorRecordPageReqVO pageReqVO,
|
|
|
+ public void exportStudentSelectSupervisorRecordExcel(@Valid StudentSelectSupervisorRecordPageReqVO pageReqVO,
|
|
|
HttpServletResponse response) throws IOException {
|
|
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
|
|
List<studentSelectSupervisorRecordDO> list = studentSelectSupervisorRecordService.getStudentSelectSupervisorRecordPage(pageReqVO).getList();
|
|
|
// 导出 Excel
|
|
|
- ExcelUtils.write(response, "师生互选记录.xls", "数据", studentSelectSupervisorRecordRespVO.class,
|
|
|
- BeanUtils.toBean(list, studentSelectSupervisorRecordRespVO.class));
|
|
|
+ ExcelUtils.write(response, "师生互选记录.xls", "数据", StudentSelectSupervisorRecordRespVO.class,
|
|
|
+ BeanUtils.toBean(list, StudentSelectSupervisorRecordRespVO.class));
|
|
|
}
|
|
|
|
|
|
//通过,
|
|
|
@PutMapping("/agree")
|
|
|
@Operation(summary = "通过")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:agree')")
|
|
|
- public CommonResult<Boolean> agreeSelectionRecord(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
+ public CommonResult<Boolean> agreeSelectionRecord(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
LocalDateTime dateTime = LocalDateTime.now();
|
|
|
|
|
|
studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(dateTime.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
@@ -299,7 +288,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
@PutMapping("/refuse")
|
|
|
@Operation(summary = "退回")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:refuse')")
|
|
|
- public CommonResult<Boolean> refuseSelectionRecord(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
+ public CommonResult<Boolean> refuseSelectionRecord(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
LocalDateTime dateTime = LocalDateTime.now();
|
|
|
studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(dateTime.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
@@ -318,7 +307,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
@PutMapping("/withdraw")
|
|
|
@Operation(summary = "撤回")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:withdraw')")
|
|
|
- public CommonResult<Boolean> withdrawSelectionRecordBySupervisorId(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
+ public CommonResult<Boolean> withdrawSelectionRecordBySupervisorId(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
LocalDateTime dateTime = LocalDateTime.now();
|
|
|
studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(dateTime.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
@@ -326,7 +315,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
if ((roleIds.contains(112L) || roleIds.contains(113L)) && project.getSupervisorConfirmDeadline().isBefore(dateTime)) {
|
|
|
return error(1, "该项目已过截至日期");
|
|
|
}else {
|
|
|
- studentSelectSupervisorRecordDO record = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(loginId, updateReqVO.getSupervisorId(), 1);//待处理的
|
|
|
+ studentSelectSupervisorRecordDO record = studentSelectSupervisorRecordService.getRecordByStudentIdAndSupervisorId(project.getId(),loginId, updateReqVO.getSupervisorId(), 1);//待处理的
|
|
|
updateReqVO.setId(record.getId());
|
|
|
updateReqVO.setSelectType(0);
|
|
|
// updateReqVO.setSupervisorId(0L);
|
|
@@ -335,59 +324,12 @@ public class studentSelectSupervisorRecordController {
|
|
|
return success(true);
|
|
|
}
|
|
|
|
|
|
- @GetMapping("/getSelectionBook")
|
|
|
- @Operation(summary = "互选表打印数据")
|
|
|
- @PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:getSelection')")
|
|
|
- public CommonResult<printBookVO> getSelectionBook(@RequestParam("id") Integer recordId) {
|
|
|
- studentSelectSupervisorRecordDO record = studentSelectSupervisorRecordService.getStudentSelectSupervisorRecord(recordId);
|
|
|
-// 判断record是否存在
|
|
|
- if (record == null) {
|
|
|
- return error(1, "记录不存在");
|
|
|
- }
|
|
|
- LocalDate date = LocalDate.now();
|
|
|
- studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(date.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
-
|
|
|
- if (project == null) {
|
|
|
- return error(1, "项目不存在");
|
|
|
- }
|
|
|
-
|
|
|
- AdminUserDO student = adminUserService.getUser(record.getStudentId());
|
|
|
- AdminUserDO supervisor = adminUserService.getUser(record.getSupervisorId());
|
|
|
-
|
|
|
- if (student == null) {
|
|
|
- return error(1, "学生信息不存在");
|
|
|
- }
|
|
|
- if (supervisor == null) {
|
|
|
- return error(1, "导师信息不存在");
|
|
|
- }
|
|
|
- supervisorSelectionSettingDO superVisorSetting = supervisorSelectionSettingService.getSettingBySupervisorIdAndProjectId(record.getSupervisorId(), project.getId());
|
|
|
-
|
|
|
- if (superVisorSetting == null) {
|
|
|
- return error(1, "导师设置不存在");
|
|
|
- }
|
|
|
- printBookVO result = BeanUtils.toBean(record, printBookVO.class);
|
|
|
-
|
|
|
- result.setMajor(student.getMajor());
|
|
|
- result.setStudentName(student.getNickname());
|
|
|
- result.setStudentMobile(student.getMobile());
|
|
|
- result.setStudentNumber(student.getUserNumber());
|
|
|
-
|
|
|
- result.setSupervisor(supervisor.getNickname());
|
|
|
- if (supervisor.getUserType().equals("3")) {
|
|
|
- result.setSupervisorType("校内导师");
|
|
|
- } else if (supervisor.getUserType().equals("5")) {
|
|
|
- result.setSupervisorType("校外导师");
|
|
|
- }
|
|
|
-
|
|
|
- result.setStudentAchievementRequirement(superVisorSetting.getStudentAchievementRequirement());
|
|
|
- return success(result);
|
|
|
- }
|
|
|
|
|
|
//在互选记录里面撤回
|
|
|
@PutMapping("/withdrawRecord")
|
|
|
@Operation(summary = "撤回")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:withdrawRecord')")
|
|
|
- public CommonResult<Boolean> withdrawSelectionRecord(@Valid @RequestBody studentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
+ public CommonResult<Boolean> withdrawSelectionRecord(@Valid @RequestBody StudentSelectSupervisorRecordSaveReqVO updateReqVO) {
|
|
|
LocalDateTime dateTime = LocalDateTime.now();
|
|
|
studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(dateTime.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
@@ -402,11 +344,38 @@ public class studentSelectSupervisorRecordController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
+ @GetMapping("/getSelectionBookList")
|
|
|
+ @Operation(summary = "互选表打印数据列表")
|
|
|
+ @PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:getSelectionList')")
|
|
|
+ public CommonResult<List<PrintBookVO>> getSelectionBookList() {
|
|
|
+ LocalDate date = LocalDate.now();
|
|
|
+ studentSelectionProjectSaveReqVO project = BeanUtils.toBean(studentSelectionProjectService.getStudentSelectionProjectByYear(date.getYear()), studentSelectionProjectSaveReqVO.class);
|
|
|
+ if (project == null) {
|
|
|
+ return error(1, "项目不存在");
|
|
|
+ }
|
|
|
+ List<PrintBookVO> recordList = studentSelectSupervisorRecordService.getSelectionBookListByProjectId(project.getId());
|
|
|
+
|
|
|
+ return success(recordList);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @GetMapping("/getSelectionBook")
|
|
|
+ @Operation(summary = "互选表打印数据")
|
|
|
+ @PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:getSelection')")
|
|
|
+ public CommonResult<PrintBookVO> getSelectionBook(@RequestParam("id") Integer recordId) {
|
|
|
+ PrintBookVO record = studentSelectSupervisorRecordService.getSelectionBookById(recordId);
|
|
|
+ if (record == null) {
|
|
|
+ return error(1, "记录不存在");
|
|
|
+ }
|
|
|
+ return success(record);
|
|
|
+ }
|
|
|
+
|
|
|
//信息弹窗填写
|
|
|
@PutMapping("/updateSelectionBook")
|
|
|
@Operation(summary = "更新互选表数据")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:updateSelection')")
|
|
|
- public CommonResult<String> updateSelectionBook(@RequestBody selectionBookRespVO updateVo) {
|
|
|
+ public CommonResult<String> updateSelectionBook(@RequestBody SelectionBookRespVO updateVo) {
|
|
|
Long loginId =SecurityFrameworkUtils.getLoginUserId();
|
|
|
Set<Long> roleIds =permissionService.getUserRoleIdListByUserId(loginId);
|
|
|
|
|
@@ -420,7 +389,7 @@ public class studentSelectSupervisorRecordController {
|
|
|
userSaveReqVO.setIntroduction(updateVo.getIntroduction());//用户简历
|
|
|
}
|
|
|
|
|
|
- studentSelectSupervisorRecordSaveReqVO recordUpdateReqVO =new studentSelectSupervisorRecordSaveReqVO();
|
|
|
+ StudentSelectSupervisorRecordSaveReqVO recordUpdateReqVO =new StudentSelectSupervisorRecordSaveReqVO();
|
|
|
if (roleIds.contains(112L)){
|
|
|
if (updateVo.getStudentMobile()!=null&&!updateVo.getStudentMobile().isEmpty()){
|
|
|
userSaveReqVO.setMobile(updateVo.getStudentMobile());
|
|
@@ -460,8 +429,8 @@ public class studentSelectSupervisorRecordController {
|
|
|
@GetMapping("/getRecordList")
|
|
|
@Operation(summary = "获取选择记录列表")
|
|
|
@PreAuthorize("@ss.hasPermission('system:student-select-supervisor-record:getRecordList')")
|
|
|
- public CommonResult<List<studentSelectSupervisorRecordRespVO>> getRecordSelectSupervisorRecordList(@Valid studentSelectSupervisorRecordPageReqVO listReqVO) {
|
|
|
- return success(BeanUtils.toBean(studentSelectSupervisorRecordService.getStudentSelectSupervisorRecordList(listReqVO),studentSelectSupervisorRecordRespVO.class));
|
|
|
+ public CommonResult<List<StudentSelectSupervisorRecordRespVO>> getRecordSelectSupervisorRecordList(@Valid StudentSelectSupervisorRecordPageReqVO listReqVO) {
|
|
|
+ return success(BeanUtils.toBean(studentSelectSupervisorRecordService.getStudentSelectSupervisorRecordList(listReqVO), StudentSelectSupervisorRecordRespVO.class));
|
|
|
}
|
|
|
|
|
|
|