|
|
@@ -1,12 +1,16 @@
|
|
|
package com.xjrsoft.module.student.service.impl;
|
|
|
|
|
|
+import cn.dev33.satoken.stp.StpUtil;
|
|
|
import cn.hutool.db.Entity;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
|
|
+import com.xjrsoft.common.enums.ArchivesStatusEnum;
|
|
|
import com.xjrsoft.common.enums.DeleteMark;
|
|
|
import com.xjrsoft.common.enums.EnabledMark;
|
|
|
+import com.xjrsoft.common.enums.LearnStatusEnum;
|
|
|
import com.xjrsoft.common.enums.RoomApplicantTypeEnum;
|
|
|
import com.xjrsoft.common.enums.StudentChangeTypeEnum;
|
|
|
+import com.xjrsoft.common.enums.StudentTypeEnum;
|
|
|
import com.xjrsoft.common.enums.StudyStatusEnum;
|
|
|
import com.xjrsoft.common.mybatis.SqlRunnerAdapter;
|
|
|
import com.xjrsoft.module.base.entity.BaseClass;
|
|
|
@@ -24,7 +28,9 @@ import lombok.AllArgsConstructor;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
@@ -163,4 +169,97 @@ public class StudentChangeRecordServiceImpl extends MPJBaseServiceImpl<StudentCh
|
|
|
return this.baseMapper.getPage(page, dto);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Boolean insertDataByStudentUpdate(BaseStudentSchoolRoll beforeRoll, BaseStudentSchoolRoll afterRoll) {
|
|
|
+ List<StudentChangeRecord> insertList = new ArrayList<>();
|
|
|
+ if(!beforeRoll.getClassId().equals(afterRoll.getClassId())){
|
|
|
+ BaseClass afterClass = classService.getById(afterRoll.getClassId());
|
|
|
+ BaseClass beforeClass = classService.getById(beforeRoll.getClassId());
|
|
|
+
|
|
|
+ StudentChangeRecord record = new StudentChangeRecord() {{
|
|
|
+ setAfterData(afterClass.getName());
|
|
|
+ setAfterDataCode(afterClass.getId().toString());
|
|
|
+ setBeforeData(beforeClass.getName());
|
|
|
+ setBeforeDataCode(beforeClass.getId().toString());
|
|
|
+ setChangeType(StudentChangeTypeEnum.ChangeClass.getCode());
|
|
|
+ setUserId(beforeRoll.getUserId());
|
|
|
+ setCreateDate(new Date());
|
|
|
+ setDeleteMark(DeleteMark.NODELETE.getCode());
|
|
|
+ setEnabledMark(EnabledMark.ENABLED.getCode());
|
|
|
+ setCreateUserId(StpUtil.getLoginIdAsLong());
|
|
|
+ setOperateMode(2);
|
|
|
+ }};
|
|
|
+ insertList.add(record);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(!beforeRoll.getArchivesStatus().equals(afterRoll.getArchivesStatus())){
|
|
|
+ StudentChangeRecord record = new StudentChangeRecord() {{
|
|
|
+ setAfterData(ArchivesStatusEnum.fromCode(afterRoll.getArchivesStatus()));
|
|
|
+ setAfterDataCode(afterRoll.getArchivesStatus());
|
|
|
+ setBeforeData(ArchivesStatusEnum.fromCode(beforeRoll.getArchivesStatus()));
|
|
|
+ setBeforeDataCode(beforeRoll.getArchivesStatus());
|
|
|
+ setChangeType(StudentChangeTypeEnum.ArchivesStatus.getCode());
|
|
|
+ setUserId(beforeRoll.getUserId());
|
|
|
+ setCreateDate(new Date());
|
|
|
+ setDeleteMark(DeleteMark.NODELETE.getCode());
|
|
|
+ setEnabledMark(EnabledMark.ENABLED.getCode());
|
|
|
+ setCreateUserId(StpUtil.getLoginIdAsLong());
|
|
|
+ setOperateMode(2);
|
|
|
+ }};
|
|
|
+ insertList.add(record);
|
|
|
+ }
|
|
|
+ if(!beforeRoll.getStudentType().equals(afterRoll.getStudentType())){
|
|
|
+ StudentChangeRecord record = new StudentChangeRecord() {{
|
|
|
+ setAfterData(StudentTypeEnum.fromCode(afterRoll.getStudentType()));
|
|
|
+ setAfterDataCode(afterRoll.getStudentType());
|
|
|
+ setBeforeData(StudentTypeEnum.fromCode(beforeRoll.getStudentType()));
|
|
|
+ setBeforeDataCode(beforeRoll.getStudentType());
|
|
|
+ setChangeType(StudentChangeTypeEnum.StudentType.getCode());
|
|
|
+ setUserId(beforeRoll.getUserId());
|
|
|
+ setCreateDate(new Date());
|
|
|
+ setDeleteMark(DeleteMark.NODELETE.getCode());
|
|
|
+ setEnabledMark(EnabledMark.ENABLED.getCode());
|
|
|
+ setCreateUserId(StpUtil.getLoginIdAsLong());
|
|
|
+ setOperateMode(2);
|
|
|
+ }};
|
|
|
+ insertList.add(record);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(!beforeRoll.getStduyStatus().equals(afterRoll.getStduyStatus())){
|
|
|
+ StudentChangeRecord record = new StudentChangeRecord() {{
|
|
|
+ setAfterData(StudyStatusEnum.fromCode(afterRoll.getStduyStatus()));
|
|
|
+ setAfterDataCode(afterRoll.getStduyStatus());
|
|
|
+ setBeforeData(StudyStatusEnum.fromCode(beforeRoll.getStduyStatus()));
|
|
|
+ setBeforeDataCode(beforeRoll.getStduyStatus());
|
|
|
+ setChangeType(StudentChangeTypeEnum.StduyStatus.getCode());
|
|
|
+ setUserId(beforeRoll.getUserId());
|
|
|
+ setCreateDate(new Date());
|
|
|
+ setDeleteMark(DeleteMark.NODELETE.getCode());
|
|
|
+ setEnabledMark(EnabledMark.ENABLED.getCode());
|
|
|
+ setCreateUserId(StpUtil.getLoginIdAsLong());
|
|
|
+ setOperateMode(2);
|
|
|
+ }};
|
|
|
+ insertList.add(record);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(!beforeRoll.getLearnStatus().equals(afterRoll.getLearnStatus())){
|
|
|
+ StudentChangeRecord record = new StudentChangeRecord() {{
|
|
|
+ setAfterData(LearnStatusEnum.fromCode(afterRoll.getLearnStatus()));
|
|
|
+ setAfterDataCode(afterRoll.getLearnStatus());
|
|
|
+ setBeforeData(LearnStatusEnum.fromCode(beforeRoll.getLearnStatus()));
|
|
|
+ setBeforeDataCode(beforeRoll.getLearnStatus());
|
|
|
+ setChangeType(StudentChangeTypeEnum.LearnStatus.getCode());
|
|
|
+ setUserId(beforeRoll.getUserId());
|
|
|
+ setCreateDate(new Date());
|
|
|
+ setDeleteMark(DeleteMark.NODELETE.getCode());
|
|
|
+ setEnabledMark(EnabledMark.ENABLED.getCode());
|
|
|
+ setCreateUserId(StpUtil.getLoginIdAsLong());
|
|
|
+ setOperateMode(2);
|
|
|
+ }};
|
|
|
+ insertList.add(record);
|
|
|
+ }
|
|
|
+
|
|
|
+ return this.saveBatch(insertList);
|
|
|
+ }
|
|
|
+
|
|
|
}
|