|
|
@@ -6,6 +6,7 @@ import com.alibaba.excel.EasyExcel;
|
|
|
import com.alibaba.excel.support.ExcelTypeEnum;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
+import com.xjrsoft.common.annotation.XjrLog;
|
|
|
import com.xjrsoft.common.model.result.RT;
|
|
|
import com.xjrsoft.common.utils.VoToColumnUtil;
|
|
|
import com.xjrsoft.module.banding.dto.AddBandingTaskClassDto;
|
|
|
@@ -70,6 +71,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping(value = "/list")
|
|
|
@ApiOperation(value="新生分班任务班级配置列表")
|
|
|
@SaCheckPermission("bandingtask:detail")
|
|
|
+ @XjrLog(value = "新生分班任务班级配置列表")
|
|
|
public RT<List<BandingTaskClassPageVo>> list(@Valid BandingTaskClassPageDto dto){
|
|
|
|
|
|
List<BandingTaskClassPageVo> list = bandingTaskClassService.getList(dto);
|
|
|
@@ -79,6 +81,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping(value = "/class-student")
|
|
|
@ApiOperation(value="分班后的学生列表")
|
|
|
@SaCheckPermission("bandingtask:detail")
|
|
|
+ @XjrLog(value = "分班后的学生列表")
|
|
|
public RT<List<BandingTaskClassStudentListVo>> classStudent(@Valid BandingTaskClassStudentPageDto dto){
|
|
|
List<BandingTaskClassStudentListVo> list = bandingTaskClassService.classStudent(dto);
|
|
|
return RT.ok(list);
|
|
|
@@ -87,6 +90,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping(value = "/class-sure")
|
|
|
@ApiOperation(value="分班确认列表")
|
|
|
@SaCheckPermission("bandingtask:detail")
|
|
|
+ @XjrLog(value = "分班确认列表")
|
|
|
public RT<List<BandingTaskClassSureListVo>> classSure(@Valid BandingTaskClassStudentPageDto dto){
|
|
|
List<BandingTaskClassSureListVo> list = bandingTaskClassService.getClassSure(dto);
|
|
|
return RT.ok(list);
|
|
|
@@ -95,6 +99,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping(value = "/info")
|
|
|
@ApiOperation(value="根据id查询新生分班任务信息")
|
|
|
@SaCheckPermission("bandingTaskClass:detail")
|
|
|
+ @XjrLog(value = "根据id查询新生分班任务信息")
|
|
|
public RT<BandingTaskClassVo> info(@RequestParam Long id){
|
|
|
BandingTaskClass bandingTaskClass = bandingTaskClassService.getById(id);
|
|
|
if (bandingTaskClass == null) {
|
|
|
@@ -107,6 +112,7 @@ public class BandingTaskClassController {
|
|
|
@PostMapping
|
|
|
@ApiOperation(value = "新增新生分班")
|
|
|
@SaCheckPermission("bandingTaskClass:add")
|
|
|
+ @XjrLog(value = "新增新生分班")
|
|
|
public RT<Boolean> add(@Valid @RequestBody List<AddBandingTaskClassDto> dtoList){
|
|
|
List<BandingTaskClass> dataList = new ArrayList<>();
|
|
|
List<String> errorList = new ArrayList<>();
|
|
|
@@ -140,54 +146,16 @@ public class BandingTaskClassController {
|
|
|
@PutMapping
|
|
|
@ApiOperation(value = "批量新增或者修改新生分班")
|
|
|
@SaCheckPermission("bandingTaskClass:edit")
|
|
|
+ @XjrLog(value = "批量新增或者修改新生分班")
|
|
|
public RT<Boolean> update(@Valid @RequestBody List<UpdateBandingClassDto> dtoList){
|
|
|
- List<BandingTaskClass> insList = new ArrayList<>();
|
|
|
- List<BandingTaskClass> updList = new ArrayList<>();
|
|
|
-
|
|
|
- List<BandingTaskClass> updNullList = new ArrayList<>();
|
|
|
- List<String> errorList = new ArrayList<>();
|
|
|
- for (UpdateBandingClassDto dto : dtoList) {
|
|
|
- if(dto.getSortCode() != null){
|
|
|
- List<BandingTaskClass> list = bandingTaskClassService.list(
|
|
|
- new QueryWrapper<BandingTaskClass>().lambda()
|
|
|
- .eq(BandingTaskClass::getSortCode, dto.getSortCode())
|
|
|
- .eq(BandingTaskClass::getBandingTaskId, dto.getBandingTaskId())
|
|
|
- .ne(dto.getId() != null,BandingTaskClass::getId, dto.getId())
|
|
|
- );
|
|
|
- if(!list.isEmpty()){
|
|
|
- errorList.add(dto.getName());
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- BandingTaskClass bandingTask = BeanUtil.toBean(dto, BandingTaskClass.class);
|
|
|
- if(bandingTask.getId() != null){
|
|
|
- bandingTask.setModifyDate(new Date());
|
|
|
- if(bandingTask.getSortCode() == null){
|
|
|
- updNullList.add(bandingTask);
|
|
|
- }else{
|
|
|
- updList.add(bandingTask);
|
|
|
- }
|
|
|
- }else{
|
|
|
- bandingTask.setCreateDate(new Date());
|
|
|
- insList.add(bandingTask);
|
|
|
- }
|
|
|
- }
|
|
|
- if(!errorList.isEmpty()){
|
|
|
- return RT.error(errorList.toString().replace("[", "").replace("]", "") + ",分班排序重复");
|
|
|
- }
|
|
|
-
|
|
|
- if(!updNullList.isEmpty()){
|
|
|
- bandingTaskClassService.updateNull(updNullList);
|
|
|
- }
|
|
|
-
|
|
|
- boolean saveBatch = bandingTaskClassService.saveBatch(insList);
|
|
|
- boolean isSuccess = bandingTaskClassService.updateBatchById(updList);
|
|
|
+ Boolean isSuccess = bandingTaskClassService.saveClass(dtoList);
|
|
|
return RT.ok(isSuccess);
|
|
|
}
|
|
|
|
|
|
@DeleteMapping
|
|
|
@ApiOperation(value = "删除新生分班")
|
|
|
@SaCheckPermission("bandingTaskClass:delete")
|
|
|
+ @XjrLog(value = "删除新生分班")
|
|
|
public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
|
|
|
if(!ids.isEmpty()){
|
|
|
classStudentService.remove(
|
|
|
@@ -201,6 +169,7 @@ public class BandingTaskClassController {
|
|
|
}
|
|
|
@PostMapping("/import")
|
|
|
@ApiOperation(value = "导入")
|
|
|
+ @XjrLog(value = "导入")
|
|
|
public RT<Boolean> importData(@RequestParam Long bandingTaskId, @RequestParam MultipartFile file) throws IOException {
|
|
|
List<Map<Integer, Object>> excelDataList = EasyExcel.read(file.getInputStream()).sheet().headRowNumber(3).doReadSync();
|
|
|
Boolean result = bandingTaskClassService.importData(bandingTaskId, excelDataList);
|
|
|
@@ -209,6 +178,7 @@ public class BandingTaskClassController {
|
|
|
|
|
|
@PostMapping("/export-query")
|
|
|
@ApiOperation(value = "导出学生列表")
|
|
|
+ @XjrLog(value = "导出学生列表")
|
|
|
public ResponseEntity<byte[]> exportData(@Valid @RequestBody BandingTaskClassStudentPageDto dto) {
|
|
|
List<BandingTaskClassStudentListVo> listVos = bandingTaskClassService.classStudent(dto);
|
|
|
List<BandingTaskClassExcelVo> list = BeanUtil.copyToList(listVos, BandingTaskClassExcelVo.class);
|
|
|
@@ -221,6 +191,7 @@ public class BandingTaskClassController {
|
|
|
@PostMapping("/reset")
|
|
|
@ApiOperation(value = "重置功能")
|
|
|
@SaCheckPermission("bandingTaskClass:add")
|
|
|
+ @XjrLog(value = "重置功能")
|
|
|
public RT<Boolean> reset(@Valid @RequestBody SureBandingTaskDto dto){
|
|
|
boolean isSuccess = bandingTaskClassService.reset(dto.getBandingTaskId());
|
|
|
return RT.ok(isSuccess);
|
|
|
@@ -230,6 +201,7 @@ public class BandingTaskClassController {
|
|
|
@PostMapping("/change-class")
|
|
|
@ApiOperation(value = "调整班级")
|
|
|
@SaCheckPermission("bandingTaskClass:change-class")
|
|
|
+ @XjrLog(value = "调整班级")
|
|
|
public RT<Boolean> changeClass(@Valid @RequestBody ChangeClassDto dto){
|
|
|
boolean isSuccess = classStudentService.changeClass(dto);
|
|
|
return RT.ok(isSuccess);
|
|
|
@@ -237,6 +209,7 @@ public class BandingTaskClassController {
|
|
|
|
|
|
@PostMapping("/remove-student")
|
|
|
@ApiOperation(value = "移出学生")
|
|
|
+ @XjrLog(value = "移出学生")
|
|
|
@SaCheckPermission("bandingTaskClass:remove-student")
|
|
|
public RT<Boolean> removeStudent(@Valid @RequestBody ChangeClassDto dto){
|
|
|
boolean isSuccess = classStudentService.removeStudent(dto);
|
|
|
@@ -246,6 +219,7 @@ public class BandingTaskClassController {
|
|
|
@PostMapping("/insert-student")
|
|
|
@ApiOperation(value = "移入学生")
|
|
|
@SaCheckPermission("bandingTaskClass:insert-student")
|
|
|
+ @XjrLog(value = "移入学生")
|
|
|
public RT<Boolean> insertStudent(@Valid @RequestBody ChangeClassDto dto){
|
|
|
boolean isSuccess = classStudentService.insertStudent(dto);
|
|
|
return RT.ok(isSuccess);
|
|
|
@@ -254,6 +228,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping("/satisfy-student")
|
|
|
@ApiOperation(value = "满足学生")
|
|
|
@SaCheckPermission("bandingTaskClass:satisfy-student")
|
|
|
+ @XjrLog(value = "满足学生")
|
|
|
public RT<List<BaseNewStudentPageDto>> satisfyStudent(@Valid StudentDto dto){
|
|
|
List<BaseNewStudentPageDto> list = classStudentService.satisfyStudent(dto);
|
|
|
return RT.ok(list);
|
|
|
@@ -262,6 +237,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping("/surplus-student")
|
|
|
@ApiOperation(value = "剩余学生")
|
|
|
@SaCheckPermission("bandingTaskClass:surplus-student")
|
|
|
+ @XjrLog(value = "剩余学生")
|
|
|
public RT<List<BaseNewStudentPageDto>> surplusStudent(@Valid StudentDto dto){
|
|
|
List<BaseNewStudentPageDto> list = classStudentService.surplusStudent(dto);
|
|
|
return RT.ok(list);
|
|
|
@@ -271,6 +247,7 @@ public class BandingTaskClassController {
|
|
|
@GetMapping("/classListParam")
|
|
|
@ApiOperation(value = "根据专业和年级查询班级")
|
|
|
@SaCheckPermission("bandingTaskClass:surplus-student")
|
|
|
+ @XjrLog(value = "根据专业和年级查询班级")
|
|
|
public RT<List<BandingTaskClassVo>> classListParam(@Valid BandingTaskClassListDto dto){
|
|
|
List<BandingTaskClassVo> list = bandingTaskClassService.selectJoinList(BandingTaskClassVo.class,
|
|
|
new MPJLambdaWrapper<BandingTaskClass>()
|
|
|
@@ -286,6 +263,7 @@ public class BandingTaskClassController {
|
|
|
@PostMapping(value = "/change-status")
|
|
|
@ApiOperation(value="修改状态")
|
|
|
@SaCheckPermission("officebuild:detail")
|
|
|
+ @XjrLog(value = "修改状态")
|
|
|
public RT<Boolean> changeStatus(@Valid @RequestBody ChangeClassStatusDto dto) throws Exception {
|
|
|
BandingTaskClass taskClass = bandingTaskClassService.getById(dto.getId());
|
|
|
taskClass.setStatus(dto.getStatus());
|