Commit 945d5eb7 by jsy672

增加报名审批退回信息

parent dc554805
...@@ -35,6 +35,7 @@ import yangtz.cs.liu.campus.service.recruit.ISchoolRecruitRelationService; ...@@ -35,6 +35,7 @@ import yangtz.cs.liu.campus.service.recruit.ISchoolRecruitRelationService;
import yangtz.cs.liu.campus.service.recruit.ISchoolRecruitStudentService; import yangtz.cs.liu.campus.service.recruit.ISchoolRecruitStudentService;
import yangtz.cs.liu.campus.vo.recruit.RecruitEduStudentVo; import yangtz.cs.liu.campus.vo.recruit.RecruitEduStudentVo;
import yangtz.cs.liu.campus.vo.recruit.RecruitExamAddressVo; import yangtz.cs.liu.campus.vo.recruit.RecruitExamAddressVo;
import yangtz.cs.liu.campus.vo.recruit.RecruitExamBackVo;
import yangtz.cs.liu.campus.vo.recruit.RecruitExamScoreVo; import yangtz.cs.liu.campus.vo.recruit.RecruitExamScoreVo;
import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitExamVo; import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitExamVo;
...@@ -44,324 +45,325 @@ import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitExamVo; ...@@ -44,324 +45,325 @@ import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitExamVo;
@RestController @RestController
@RequestMapping("/recruitExam") @RequestMapping("/recruitExam")
public class SchoolRecruitExamController extends BaseController { public class SchoolRecruitExamController extends BaseController {
@Autowired
private ISchoolRecruitExamService recruitExamService;
@Autowired @Autowired
private ISchoolRecruitStudentService recruitStudentService; private ISchoolRecruitExamService recruitExamService;
@Autowired @Autowired
private ISchoolRecruitRelationService recruitRelationService; private ISchoolRecruitStudentService recruitStudentService;
@Autowired @Autowired
private IEduRecruitStudentService eduRecruitStudentService; private ISchoolRecruitRelationService recruitRelationService;
@Autowired @Autowired
private ISchoolRecruitProjectService projectService; private IEduRecruitStudentService eduRecruitStudentService;
/** @Autowired
* 考务管理-考试管理-列表 private ISchoolRecruitProjectService projectService;
*/
@GetMapping("/list") /**
public TableDataInfo list(SchoolRecruitExam exam) { * 考务管理-考试管理-列表
startPage(); */
return getDataTable(recruitExamService.queryList(exam)); @GetMapping("/list")
public TableDataInfo list(SchoolRecruitExam exam) {
startPage();
return getDataTable(recruitExamService.queryList(exam));
}
/**
* 考务管理-考试管理-新增时点击保存
*/
@PostMapping("/add")
public AjaxResult add(@RequestBody SchoolRecruitExamVo exam) {
SchoolRecruitExam entity = new SchoolRecruitExam();
BeanUtils.copyProperties(exam, entity);
entity.setStatus(RecruitExamConstant.NOPUB);
//将测试项目ids,整成id之间用逗号隔开的字符串
String projectIds = StringUtils.join(exam.getProjectIdList(), ",");
entity.setProjectIds(projectIds);
entity.insert();
return toAjax(recruitExamService.save(entity));
}
/**
* 考务管理-考试管理-新增时点击发布
*/
@PostMapping("/addPub")
public AjaxResult addPub(@RequestBody SchoolRecruitExamVo exam) {
SchoolRecruitExam entity = new SchoolRecruitExam();
BeanUtils.copyProperties(exam, entity);
entity.setStatus(RecruitExamConstant.INFOCHECK);
//将测试项目ids,整成id之间用逗号隔开的字符串
String projectIds = StringUtils.join(exam.getProjectIdList(), ",");
entity.setProjectIds(projectIds);
entity.insert();
return toAjax(recruitExamService.save(entity));
}
/**
* 考务管理-考试管理-获取详情
*/
@GetMapping("/getInfo/{id}")
public AjaxResult getInfo(@PathVariable Long id) {
SchoolRecruitExam entity = recruitExamService.getById(id);
SchoolRecruitExamVo exam = new SchoolRecruitExamVo();
BeanUtils.copyProperties(entity, exam);
//id之间用逗号隔开的字符串 整成Long数组
String[] strArr = entity.getProjectIds().split(",");
List<Long> projectIdList = new ArrayList<>();
for (String str : strArr) {
projectIdList.add(Long.parseLong(str));
} }
/** //获取测试项目名
* 考务管理-考试管理-新增时点击保存 LambdaQueryWrapper<SchoolRecruitProject> lqw = new LambdaQueryWrapper<>();
*/ lqw.in(SchoolRecruitProject::getId, projectIdList)
@PostMapping("/add") .orderByDesc(SchoolRecruitProject::getCreateTime);
public AjaxResult add(@RequestBody SchoolRecruitExamVo exam) { List<SchoolRecruitProject> projects = projectService.list(lqw);
SchoolRecruitExam entity = new SchoolRecruitExam(); exam.setProjectName(
BeanUtils.copyProperties(exam,entity); projects.stream().map(SchoolRecruitProject::getProject).collect(Collectors.joining(",")));
entity.setStatus(RecruitExamConstant.NOPUB); exam.setProjectIdList(projectIdList);
//将测试项目ids,整成id之间用逗号隔开的字符串 return AjaxResult.success(exam);
String projectIds = StringUtils.join(exam.getProjectIdList(),","); }
entity.setProjectIds(projectIds);
entity.insert(); /**
return toAjax(recruitExamService.save(entity)); * 考务管理-考试管理-修改时点击保存
*/
@PutMapping("/edit")
public AjaxResult edit(@RequestBody SchoolRecruitExamVo exam) {
if (StringUtils.isNull(exam.getId())) {
throw new ServiceException("id为空,请检查");
} }
SchoolRecruitExam entity = new SchoolRecruitExam();
/** BeanUtils.copyProperties(exam, entity);
* 考务管理-考试管理-新增时点击发布 //将测试项目ids,整成id之间用逗号隔开的字符串
*/ String projectIds = StringUtils.join(exam.getProjectIdList(), ",");
@PostMapping("/addPub") entity.setProjectIds(projectIds);
public AjaxResult addPub(@RequestBody SchoolRecruitExamVo exam) { entity.update();
SchoolRecruitExam entity = new SchoolRecruitExam(); return toAjax(recruitExamService.updateById(entity));
BeanUtils.copyProperties(exam,entity); }
entity.setStatus(RecruitExamConstant.INFOCHECK);
//将测试项目ids,整成id之间用逗号隔开的字符串 /**
String projectIds = StringUtils.join(exam.getProjectIdList(),","); * 考务管理-考试管理-修改时点击发布(考试管理-点击未发布进入考试信息tab页的发布按钮也是这个按钮)
entity.setProjectIds(projectIds); */
entity.insert(); @PutMapping("/editPub")
return toAjax(recruitExamService.save(entity)); public AjaxResult editPub(@RequestBody SchoolRecruitExamVo exam) {
if (StringUtils.isNull(exam.getId())) {
throw new ServiceException("id为空,请检查");
} }
SchoolRecruitExam entity = new SchoolRecruitExam();
/** BeanUtils.copyProperties(exam, entity);
* 考务管理-考试管理-获取详情 entity.setStatus(RecruitExamConstant.INFOCHECK);
*/ //将测试项目ids,整成id之间用逗号隔开的字符串
@GetMapping("/getInfo/{id}") String projectIds = StringUtils.join(exam.getProjectIdList(), ",");
public AjaxResult getInfo(@PathVariable Long id) { entity.setProjectIds(projectIds);
SchoolRecruitExam entity = recruitExamService.getById(id); entity.update();
SchoolRecruitExamVo exam = new SchoolRecruitExamVo(); return toAjax(recruitExamService.updateById(entity));
BeanUtils.copyProperties(entity,exam); }
//id之间用逗号隔开的字符串 整成Long数组
String[] strArr = entity.getProjectIds().split(","); /**
List<Long> projectIdList = new ArrayList<>(); * 考务管理-考试管理-单个删除 删除考试与考生关系 删除该考试对应的教育局信息
for(String str : strArr){ */
projectIdList.add(Long.parseLong(str)); @DeleteMapping("/delete/{id}")
} public AjaxResult delete(@PathVariable Long id) {
//删考试与考生关系
//获取测试项目名 LambdaQueryWrapper<SchoolRecruitRelation> relatonLqw = new LambdaQueryWrapper<>();
LambdaQueryWrapper<SchoolRecruitProject> lqw = new LambdaQueryWrapper<>(); relatonLqw.eq(SchoolRecruitRelation::getExamId, id);
lqw.in(SchoolRecruitProject::getId,projectIdList).orderByDesc(SchoolRecruitProject::getCreateTime); recruitRelationService.remove(relatonLqw);
List<SchoolRecruitProject> projects = projectService.list(lqw);
exam.setProjectName(projects.stream().map(SchoolRecruitProject::getProject).collect(Collectors.joining(","))); //删除该考试对应的教育局信息
exam.setProjectIdList(projectIdList); LambdaQueryWrapper<EduRecruitStudent> eduLqw = new LambdaQueryWrapper<>();
return AjaxResult.success(exam); eduLqw.eq(EduRecruitStudent::getExamId, id);
eduRecruitStudentService.remove(eduLqw);
return AjaxResult.success(recruitExamService.removeById(id));
}
/**
* 考试管理-信息审核-列表
*/
@GetMapping("/checkList/{examId}")
public TableDataInfo checkList(@PathVariable Long examId, RecruitEduStudentVo vo) {
vo.setExamId(examId);
return getDataTable(recruitStudentService.getInfoCheck(vo));
}
/**
* 考试管理-信息审核-通过 所有信息都匹配才能将审核状态改为通过
*/
@PutMapping(value = {"/pass/{examId}/{studentIds}", "/pass/{examId}/"})
public AjaxResult pass(@PathVariable Long examId,
@PathVariable(value = "studentIds", required = false) List<Long> studentIds) {
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) {
throw new ServiceException("所选数据都为未报名数据,无法通过");
} }
return AjaxResult.success(recruitStudentService.pass(examId, studentIds));
/** }
* 考务管理-考试管理-修改时点击保存
*/ /**
@PutMapping("/edit") * 考试管理-信息审核-单个通过 所有信息都匹配才能将审核状态改为通过
public AjaxResult edit(@RequestBody SchoolRecruitExamVo exam) { */
if (StringUtils.isNull(exam.getId())) { @PutMapping("/passOne/{examId}/{studentId}")
throw new ServiceException("id为空,请检查"); public AjaxResult passOne(@PathVariable Long examId, @PathVariable Long studentId) {
} return toAjax(recruitStudentService.passOne(examId, studentId));
SchoolRecruitExam entity = new SchoolRecruitExam(); }
BeanUtils.copyProperties(exam,entity);
//将测试项目ids,整成id之间用逗号隔开的字符串 /**
String projectIds = StringUtils.join(exam.getProjectIdList(),","); * 考试管理-信息审核-退回修改 只有待审核状态擦可以退回修改
entity.setProjectIds(projectIds); */
entity.update(); @PutMapping(value = {"/back/{examId}/{studentIds}", "/back/{examId}/"})
return toAjax(recruitExamService.updateById(entity)); public AjaxResult back(@PathVariable Long examId,
@PathVariable(value = "studentIds", required = false) List<Long> studentIds) {
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) {
throw new ServiceException("所选数据都为未报名数据,无法退回修改");
} }
return AjaxResult.success(recruitStudentService.back(examId, studentIds));
/** }
* 考务管理-考试管理-修改时点击发布(考试管理-点击未发布进入考试信息tab页的发布按钮也是这个按钮)
*/ /**
@PutMapping("/editPub") * 考试管理-信息审核-单个退回修改 只有待审核状态擦可以退回修改
public AjaxResult editPub(@RequestBody SchoolRecruitExamVo exam) { */
if (StringUtils.isNull(exam.getId())) { @PutMapping("/backOne/{examId}/{studentId}")
throw new ServiceException("id为空,请检查"); public AjaxResult backOne(@PathVariable Long examId, @PathVariable Long studentId,
} @RequestBody(required = false) RecruitExamBackVo recruitExamBackVo) {
SchoolRecruitExam entity = new SchoolRecruitExam(); return toAjax(recruitStudentService.backOne(examId, studentId,
BeanUtils.copyProperties(exam,entity); recruitExamBackVo == null ? "" : recruitExamBackVo.getMessage()));
entity.setStatus(RecruitExamConstant.INFOCHECK); }
//将测试项目ids,整成id之间用逗号隔开的字符串
String projectIds = StringUtils.join(exam.getProjectIdList(),","); /**
entity.setProjectIds(projectIds); * 考试管理-信息审核-驳回 只有待审核状态才能驳回
entity.update(); */
return toAjax(recruitExamService.updateById(entity)); @PutMapping(value = {"/reject/{examId}/{studentIds}", "/reject/{examId}/"})
public AjaxResult reject(@PathVariable Long examId,
@PathVariable(value = "studentIds", required = false) List<Long> studentIds) {
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) {
throw new ServiceException("所选数据都为未报名数据,无法驳回");
} }
return AjaxResult.success(recruitStudentService.reject(examId, studentIds));
/** }
* 考务管理-考试管理-单个删除
* 删除考试与考生关系 /**
* 删除该考试对应的教育局信息 * 考试管理-信息审核-单个驳回 只有待审核状态才能驳回
*/ */
@DeleteMapping("/delete/{id}") @PutMapping("/rejectOne/{examId}/{studentId}")
public AjaxResult delete(@PathVariable Long id) { public AjaxResult reject(@PathVariable Long examId, @PathVariable Long studentId) {
//删考试与考生关系 return toAjax(recruitStudentService.rejectOne(examId, studentId));
LambdaQueryWrapper<SchoolRecruitRelation> relatonLqw = new LambdaQueryWrapper<>(); }
relatonLqw.eq(SchoolRecruitRelation::getExamId, id);
recruitRelationService.remove(relatonLqw); /**
* 考试管理-信息审核-结束 没有到报名截止时间,这里不能结束
//删除该考试对应的教育局信息 */
LambdaQueryWrapper<EduRecruitStudent> eduLqw = new LambdaQueryWrapper<>(); @PutMapping("/checkEnd/{examId}")
eduLqw.eq(EduRecruitStudent::getExamId, id); public AjaxResult checkEnd(@PathVariable Long examId) {
eduRecruitStudentService.remove(eduLqw); SchoolRecruitExam exam = recruitExamService.getById(examId);
return AjaxResult.success(recruitExamService.removeById(id)); if (DateUtils.getNowDate().before(exam.getDeadline())) {
//未到报名截止时间
throw new ServiceException("没有到报名截止时间,不能结束此环节");
} }
exam.setStatus(RecruitExamConstant.ADDRESS);
return toAjax(recruitExamService.updateById(exam));
/** }
* 考试管理-信息审核-列表
*/ /**
@GetMapping("/checkList/{examId}") * 考试管理-考场分配-列表
public TableDataInfo checkList(@PathVariable Long examId, RecruitEduStudentVo vo) { */
vo.setExamId(examId); @GetMapping("/addressList/{examId}")
return getDataTable(recruitStudentService.getInfoCheck(vo)); public TableDataInfo addressList(@PathVariable Long examId, RecruitExamAddressVo vo) {
} vo.setExamId(examId);
vo.setAuditStatus(RecruitExamConstant.PASS);
/** return getDataTable(recruitRelationService.getAddressList(vo));
* 考试管理-信息审核-通过 }
* 所有信息都匹配才能将审核状态改为通过
*/ /**
@PutMapping(value = {"/pass/{examId}/{studentIds}","/pass/{examId}/"}) * 考试管理-考场分配-导出
public AjaxResult pass(@PathVariable Long examId, @PathVariable(value = "studentIds", required = false) List<Long> studentIds) { */
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) { @PostMapping("/exportAddress/{examId}")
throw new ServiceException("所选数据都为未报名数据,无法通过"); public void exportAddress(HttpServletResponse response, RecruitExamAddressVo vo,
} @PathVariable Long examId) {
return AjaxResult.success(recruitStudentService.pass(examId, studentIds)); vo.setExamId(examId);
} vo.setAuditStatus(RecruitExamConstant.PASS);
List<RecruitExamAddressVo> list = recruitRelationService.getAddressList(vo);
/** int i = 1;
* 考试管理-信息审核-单个通过 for (RecruitExamAddressVo addressVo : list) {
* 所有信息都匹配才能将审核状态改为通过 addressVo.setXh(i);
*/ i++;
@PutMapping("/passOne/{examId}/{studentId}")
public AjaxResult passOne(@PathVariable Long examId, @PathVariable Long studentId) {
return toAjax(recruitStudentService.passOne(examId, studentId));
}
/**
* 考试管理-信息审核-退回修改
* 只有待审核状态擦可以退回修改
*/
@PutMapping(value = {"/back/{examId}/{studentIds}","/back/{examId}/"})
public AjaxResult back(@PathVariable Long examId, @PathVariable(value = "studentIds", required = false) List<Long> studentIds) {
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) {
throw new ServiceException("所选数据都为未报名数据,无法退回修改");
}
return AjaxResult.success(recruitStudentService.back(examId, studentIds));
}
/**
* 考试管理-信息审核-单个退回修改
* 只有待审核状态擦可以退回修改
*/
@PutMapping("/backOne/{examId}/{studentId}")
public AjaxResult backOne(@PathVariable Long examId, @PathVariable Long studentId) {
return toAjax(recruitStudentService.backOne(examId, studentId));
}
/**
* 考试管理-信息审核-驳回
* 只有待审核状态才能驳回
*/
@PutMapping(value = {"/reject/{examId}/{studentIds}","/reject/{examId}/"})
public AjaxResult reject(@PathVariable Long examId, @PathVariable(value = "studentIds", required = false) List<Long> studentIds) {
if (StringUtils.isNull(studentIds) || studentIds.size() == 0) {
throw new ServiceException("所选数据都为未报名数据,无法驳回");
}
return AjaxResult.success(recruitStudentService.reject(examId, studentIds));
} }
ExcelUtil<RecruitExamAddressVo> util = new ExcelUtil<>(RecruitExamAddressVo.class);
/** util.exportExcel(response, list, "考场分配表");
* 考试管理-信息审核-单个驳回 }
* 只有待审核状态才能驳回
*/ /**
@PutMapping("/rejectOne/{examId}/{studentId}") * 考试管理-考场分配-导入
public AjaxResult reject(@PathVariable Long examId, @PathVariable Long studentId) { */
return toAjax(recruitStudentService.rejectOne(examId, studentId)); @PostMapping("/importAddressData/{examId}")
} public AjaxResult importAddressData(@PathVariable Long examId, MultipartFile file)
throws Exception {
/** ExcelUtil<RecruitExamAddressVo> util = new ExcelUtil<>(RecruitExamAddressVo.class);
* 考试管理-信息审核-结束 List<RecruitExamAddressVo> list = util.importExcel(file.getInputStream());
* 没有到报名截止时间,这里不能结束
*/ //校验数据
@PutMapping("/checkEnd/{examId}") recruitRelationService.checkImportAddress(list);
public AjaxResult checkEnd(@PathVariable Long examId) { //数据导入
SchoolRecruitExam exam = recruitExamService.getById(examId); return AjaxResult.success(recruitRelationService.importDataAddress(list, examId));
if (DateUtils.getNowDate().before(exam.getDeadline())) { }
//未到报名截止时间
throw new ServiceException("没有到报名截止时间,不能结束此环节"); /**
} * 考试管理-考场分配-结束 有考场分配信息为空的要进行提示
exam.setStatus(RecruitExamConstant.ADDRESS); */
return toAjax(recruitExamService.updateById(exam)); @PutMapping("/addressEnd/{examId}")
} public AjaxResult addressEnd(@PathVariable Long examId) {
return toAjax(recruitRelationService.addressEnd(examId));
/** }
* 考试管理-考场分配-列表
*/
@GetMapping("/addressList/{examId}") /**
public TableDataInfo addressList(@PathVariable Long examId, RecruitExamAddressVo vo) { * 考试管理-成绩管理-列表
vo.setExamId(examId); */
vo.setAuditStatus(RecruitExamConstant.PASS); @GetMapping("/scoreList/{examId}")
return getDataTable(recruitRelationService.getAddressList(vo)); public TableDataInfo scoreList(@PathVariable Long examId, RecruitExamScoreVo vo) {
} vo.setExamId(examId);
vo.setAuditStatus(RecruitExamConstant.PASS);
/** return getDataTable(recruitRelationService.getScoreList(vo));
* 考试管理-考场分配-导出 }
*/
@PostMapping("/exportAddress/{examId}") /**
public void exportAddress(HttpServletResponse response, RecruitExamAddressVo vo, @PathVariable Long examId) { * 考试管理-成绩发布-导出
vo.setExamId(examId); */
vo.setAuditStatus(RecruitExamConstant.PASS); @PostMapping("/exportScore/{examId}")
List<RecruitExamAddressVo> list = recruitRelationService.getAddressList(vo); public void exportScore(HttpServletResponse response, RecruitExamScoreVo vo,
int i = 1; @PathVariable Long examId) {
for(RecruitExamAddressVo addressVo : list){ vo.setExamId(examId);
addressVo.setXh(i); vo.setAuditStatus(RecruitExamConstant.PASS);
i++; List<RecruitExamScoreVo> list = recruitRelationService.getScoreList(vo);
} int i = 1;
ExcelUtil<RecruitExamAddressVo> util = new ExcelUtil<>(RecruitExamAddressVo.class); for (RecruitExamScoreVo scoreVo : list) {
util.exportExcel(response, list, "考场分配表"); scoreVo.setXh(i);
} i++;
/**
* 考试管理-考场分配-导入
*/
@PostMapping("/importAddressData/{examId}")
public AjaxResult importAddressData(@PathVariable Long examId, MultipartFile file) throws Exception {
ExcelUtil<RecruitExamAddressVo> util = new ExcelUtil<>(RecruitExamAddressVo.class);
List<RecruitExamAddressVo> list = util.importExcel(file.getInputStream());
//校验数据
recruitRelationService.checkImportAddress(list);
//数据导入
return AjaxResult.success(recruitRelationService.importDataAddress(list,examId));
}
/**
* 考试管理-考场分配-结束
* 有考场分配信息为空的要进行提示
*/
@PutMapping("/addressEnd/{examId}")
public AjaxResult addressEnd(@PathVariable Long examId) {
return toAjax(recruitRelationService.addressEnd(examId));
}
/**
* 考试管理-成绩管理-列表
*/
@GetMapping("/scoreList/{examId}")
public TableDataInfo scoreList(@PathVariable Long examId, RecruitExamScoreVo vo) {
vo.setExamId(examId);
vo.setAuditStatus(RecruitExamConstant.PASS);
return getDataTable(recruitRelationService.getScoreList(vo));
}
/**
* 考试管理-成绩发布-导出
*/
@PostMapping("/exportScore/{examId}")
public void exportScore(HttpServletResponse response, RecruitExamScoreVo vo, @PathVariable Long examId) {
vo.setExamId(examId);
vo.setAuditStatus(RecruitExamConstant.PASS);
List<RecruitExamScoreVo> list = recruitRelationService.getScoreList(vo);
int i = 1;
for(RecruitExamScoreVo scoreVo : list){
scoreVo.setXh(i);
i++;
}
ExcelUtil<RecruitExamScoreVo> util = new ExcelUtil<>(RecruitExamScoreVo.class);
util.exportExcel(response, list, "成绩发布信息表");
}
/**
* 考试管理-成绩发布-导入
*/
@PostMapping("/importScoreData/{examId}")
public AjaxResult importScoreData(@PathVariable Long examId, MultipartFile file) throws Exception {
ExcelUtil<RecruitExamScoreVo> util = new ExcelUtil<>(RecruitExamScoreVo.class);
List<RecruitExamScoreVo> list = util.importExcel(file.getInputStream());
//校验数据
recruitRelationService.checkImportScore(list);
//数据导入
return AjaxResult.success(recruitRelationService.importDataScore(list,examId));
}
/**
* 考试管理-成绩发布-结束
* 有成绩信息为空的要进行提示
*/
@PutMapping("/scoreEnd/{examId}")
public AjaxResult scoreEnd(@PathVariable Long examId) {
return toAjax(recruitRelationService.scoreEnd(examId));
} }
ExcelUtil<RecruitExamScoreVo> util = new ExcelUtil<>(RecruitExamScoreVo.class);
util.exportExcel(response, list, "成绩发布信息表");
}
/**
* 考试管理-成绩发布-导入
*/
@PostMapping("/importScoreData/{examId}")
public AjaxResult importScoreData(@PathVariable Long examId, MultipartFile file)
throws Exception {
ExcelUtil<RecruitExamScoreVo> util = new ExcelUtil<>(RecruitExamScoreVo.class);
List<RecruitExamScoreVo> list = util.importExcel(file.getInputStream());
//校验数据
recruitRelationService.checkImportScore(list);
//数据导入
return AjaxResult.success(recruitRelationService.importDataScore(list, examId));
}
/**
* 考试管理-成绩发布-结束 有成绩信息为空的要进行提示
*/
@PutMapping("/scoreEnd/{examId}")
public AjaxResult scoreEnd(@PathVariable Long examId) {
return toAjax(recruitRelationService.scoreEnd(examId));
}
} }
...@@ -3,74 +3,111 @@ package yangtz.cs.liu.campus.domain.recruit; ...@@ -3,74 +3,111 @@ package yangtz.cs.liu.campus.domain.recruit;
import com.core.domain.OurBaseEntity; import com.core.domain.OurBaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import java.util.Date; import java.util.Date;
import lombok.Data;
@Data @Data
public class SchoolRecruitRelation extends OurBaseEntity { public class SchoolRecruitRelation extends OurBaseEntity {
/** 考试id */
@Excel(name = "考试id") /**
private Long examId; * 考试id
*/
/** 学生id */ @Excel(name = "考试id")
@Excel(name = "学生id") private Long examId;
private Long studentId;
/**
/** 审核状态(只存在教育局信息时该字段没有值,0=驳回,1=通过,2 =退回修改,3=待审核) */ * 学生id
@Excel(name = "审核状态", readConverterExp = "只=存在教育局信息时该字段没有值,0=驳回,1=通过,2,==退回修改,3=待审核") */
private String auditStatus; @Excel(name = "学生id")
private Long studentId;
/** 匹配状态(0=不匹配,1= 匹配,2=无教育局信息,3=未报名) */
@Excel(name = "匹配状态", readConverterExp = "0==不匹配,1=,匹=配,2=无教育局信息,3=未报名") /**
private String matchStatus; * 审核状态(只存在教育局信息时该字段没有值,0=驳回,1=通过,2 =退回修改,3=待审核)
*/
/** 身份证号码 */ @Excel(name = "审核状态", readConverterExp = "只=存在教育局信息时该字段没有值,0=驳回,1=通过,2,==退回修改,3=待审核")
@Excel(name = "身份证号码") private String auditStatus;
private String infoIdCard;
/**
/** 初中学校id */ * 匹配状态(0=不匹配,1= 匹配,2=无教育局信息,3=未报名)
@Excel(name = "初中学校id") */
private Long juniorId; @Excel(name = "匹配状态", readConverterExp = "0==不匹配,1=,匹=配,2=无教育局信息,3=未报名")
private String matchStatus;
/** 测试项目id */
@Excel(name = "测试项目id") /**
private Long testId; * 身份证号码
*/
/** 提交状态(0=未提交,1=已提交) */ @Excel(name = "身份证号码")
@Excel(name = "提交状态(0=未提交,1=已提交)") private String infoIdCard;
private String submit;
/**
/** 准考证号 */ * 初中学校id
@Excel(name = "准考证号") */
private String examNumber; @Excel(name = "初中学校id")
private Long juniorId;
/** 分组 */
@Excel(name = "分组") /**
private String inGroup; * 测试项目id
*/
/** 考试日期 */ @Excel(name = "测试项目id")
@JsonFormat(pattern = "yyyy-MM-dd") private Long testId;
@Excel(name = "考试日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date examDate; /**
* 提交状态(0=未提交,1=已提交)
/** 考试时间 */ */
@Excel(name = "考试时间") @Excel(name = "提交状态(0=未提交,1=已提交)")
private String examTime; private String submit;
/** 考试地点 */ /**
@Excel(name = "考试地点") * 准考证号
private String examAddress; */
@Excel(name = "准考证号")
/** 成绩 */ private String examNumber;
@Excel(name = "成绩")
private String score; /**
* 分组
/** 结果 */ */
@Excel(name = "结果") @Excel(name = "分组")
private String result; private String inGroup;
/** 资格线 */ /**
@Excel(name = "资格线") * 考试日期
private String passScore; */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "考试日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date examDate;
/**
* 考试时间
*/
@Excel(name = "考试时间")
private String examTime;
/**
* 考试地点
*/
@Excel(name = "考试地点")
private String examAddress;
/**
* 成绩
*/
@Excel(name = "成绩")
private String score;
/**
* 结果
*/
@Excel(name = "结果")
private String result;
/**
* 资格线
*/
@Excel(name = "资格线")
private String passScore;
/**
* 驳回意见
*/
private String backMessage;
} }
...@@ -525,6 +525,7 @@ public class SchoolRecruitStudentServiceImpl extends ...@@ -525,6 +525,7 @@ public class SchoolRecruitStudentServiceImpl extends
relation.setTestId(student.getTestId()); relation.setTestId(student.getTestId());
relation.setSubmit(RecruitExamConstant.SUBMIT); relation.setSubmit(RecruitExamConstant.SUBMIT);
relation.setAuditStatus(RecruitExamConstant.CHECK); relation.setAuditStatus(RecruitExamConstant.CHECK);
relation.setBackMessage("");
relation.setUpdateTime(DateUtils.getNowDate()); relation.setUpdateTime(DateUtils.getNowDate());
return recruitRelationMapper.updateById(relation); return recruitRelationMapper.updateById(relation);
} }
...@@ -893,7 +894,7 @@ public class SchoolRecruitStudentServiceImpl extends ...@@ -893,7 +894,7 @@ public class SchoolRecruitStudentServiceImpl extends
} }
@Override @Override
public int backOne(Long examId, Long studentId) { public int backOne(Long examId, Long studentId, String backMessage) {
//查询出studentId对应的学生考试信息 //查询出studentId对应的学生考试信息
LambdaQueryWrapper<SchoolRecruitRelation> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SchoolRecruitRelation> lqw = new LambdaQueryWrapper<>();
lqw.eq(SchoolRecruitRelation::getExamId, examId) lqw.eq(SchoolRecruitRelation::getExamId, examId)
...@@ -911,6 +912,7 @@ public class SchoolRecruitStudentServiceImpl extends ...@@ -911,6 +912,7 @@ public class SchoolRecruitStudentServiceImpl extends
+ "的学生信息已退回修改,没有再次提交申请,无法再次退回修改"); + "的学生信息已退回修改,没有再次提交申请,无法再次退回修改");
} else { } else {
relation.setAuditStatus(RecruitExamConstant.EDIT); relation.setAuditStatus(RecruitExamConstant.EDIT);
relation.setBackMessage(backMessage);
return recruitRelationMapper.updateById(relation); return recruitRelationMapper.updateById(relation);
} }
} }
......
...@@ -2,17 +2,16 @@ package yangtz.cs.liu.campus.service.recruit; ...@@ -2,17 +2,16 @@ package yangtz.cs.liu.campus.service.recruit;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.model.WebLoginBody; import com.ruoyi.common.core.domain.model.WebLoginBody;
import java.util.List;
import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudent; import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudent;
import yangtz.cs.liu.campus.vo.recruit.RecruitAndEduStudentVo; import yangtz.cs.liu.campus.vo.recruit.RecruitAndEduStudentVo;
import yangtz.cs.liu.campus.vo.recruit.RecruitEduStudentVo; import yangtz.cs.liu.campus.vo.recruit.RecruitEduStudentVo;
import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitStudentVo; import yangtz.cs.liu.campus.vo.recruit.SchoolRecruitStudentVo;
import yangtz.cs.liu.webpage.domain.WebRegisterBody; import yangtz.cs.liu.webpage.domain.WebRegisterBody;
import yangtz.cs.liu.webpage.vo.RecruitAdmissionTicketVo;
import yangtz.cs.liu.webpage.vo.QueryScoreVo; import yangtz.cs.liu.webpage.vo.QueryScoreVo;
import yangtz.cs.liu.webpage.vo.RecruitAdmissionTicketVo;
import yangtz.cs.liu.webpage.vo.WebSchoolRecruitStudentVo; import yangtz.cs.liu.webpage.vo.WebSchoolRecruitStudentVo;
import java.util.List;
/** /**
* @author xuten * @author xuten
*/ */
...@@ -75,7 +74,7 @@ public interface ISchoolRecruitStudentService extends IService<SchoolRecruitStud ...@@ -75,7 +74,7 @@ public interface ISchoolRecruitStudentService extends IService<SchoolRecruitStud
String back(Long examId, List<Long> studentIds); String back(Long examId, List<Long> studentIds);
/** 教务管理-考试管理-单个退回修改 */ /** 教务管理-考试管理-单个退回修改 */
int backOne(Long examId, Long studentId); int backOne(Long examId, Long studentId, String backMessage);
/** 教务管理-考试管理-驳回 */ /** 教务管理-考试管理-驳回 */
String reject(Long examId, List<Long> studentIds); String reject(Long examId, List<Long> studentIds);
......
package yangtz.cs.liu.campus.vo.recruit;
import lombok.Data;
/**
* 报名驳回
*/
@Data
public class RecruitExamBackVo {
private String message;
}
...@@ -2,13 +2,12 @@ package yangtz.cs.liu.webpage.vo; ...@@ -2,13 +2,12 @@ package yangtz.cs.liu.webpage.vo;
import com.core.domain.OurBaseEntity; import com.core.domain.OurBaseEntity;
import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.annotation.Excel;
import java.util.List;
import lombok.Data; import lombok.Data;
import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentFamily; import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentFamily;
import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentFjb; import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentFjb;
import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentJl; import yangtz.cs.liu.campus.domain.recruit.SchoolRecruitStudentJl;
import java.util.List;
/** /**
* @author xuten * @author xuten
*/ */
...@@ -73,6 +72,7 @@ public class WebSchoolRecruitStudentVo extends OurBaseEntity { ...@@ -73,6 +72,7 @@ public class WebSchoolRecruitStudentVo extends OurBaseEntity {
private String password; private String password;
private String auditStatus; private String auditStatus;
private String backMessage;
private List<SchoolRecruitStudentJl> resumeData; private List<SchoolRecruitStudentJl> resumeData;
private List<SchoolRecruitStudentFamily> remeberData; private List<SchoolRecruitStudentFamily> remeberData;
......
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
exam_id, exam_id,
student_id, student_id,
audit_status, audit_status,
back_message,
match_status, match_status,
junior_id, junior_id,
test_id, test_id,
......
...@@ -145,6 +145,7 @@ ...@@ -145,6 +145,7 @@
sas.phone_number, sas.phone_number,
sas.password, sas.password,
sar.audit_status, sar.audit_status,
sar.back_message,
sas.mz, sas.mz,
sas.zzmm, sas.zzmm,
sas.csrq, sas.csrq,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment