|
@@ -1,11 +1,17 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
+import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
|
|
|
import com.ym.mec.biz.dal.dao.SubjectDao;
|
|
|
import com.ym.mec.biz.dal.dao.TeacherDao;
|
|
|
import com.ym.mec.biz.dal.dto.SimpleUserDto;
|
|
|
+import com.ym.mec.biz.dal.entity.StudentRegistration;
|
|
|
import com.ym.mec.biz.dal.entity.Subject;
|
|
|
+import com.ym.mec.biz.dal.enums.school.EQuitGroupAuditStatusEnum;
|
|
|
+import com.ym.mec.biz.dal.school.dto.MusicGroupQuitDetailDto;
|
|
|
import com.ym.mec.biz.dal.school.dto.MusicGroupQuitPageDto;
|
|
|
import com.ym.mec.biz.dal.school.page.MusicGroupQuitQueryInfo;
|
|
|
+import com.ym.mec.biz.service.SysUserService;
|
|
|
+import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.page.PageInfo;
|
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
@@ -17,6 +23,7 @@ import com.ym.mec.biz.dal.entity.MusicGroupQuit;
|
|
|
import com.ym.mec.biz.service.MusicGroupQuitService;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -30,6 +37,10 @@ public class MusicGroupQuitServiceImpl extends BaseServiceImpl<Long, MusicGroupQ
|
|
|
private TeacherDao teacherDao;
|
|
|
@Autowired
|
|
|
private SubjectDao subjectDao;
|
|
|
+ @Autowired
|
|
|
+ private StudentRegistrationDao studentRegistrationDao;
|
|
|
+ @Autowired
|
|
|
+ private SysUserService sysUserService;
|
|
|
|
|
|
@Override
|
|
|
public BaseDAO<Long, MusicGroupQuit> getDAO() {
|
|
@@ -70,4 +81,52 @@ public class MusicGroupQuitServiceImpl extends BaseServiceImpl<Long, MusicGroupQ
|
|
|
pageInfo.setRows(dataList);
|
|
|
return pageInfo;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public MusicGroupQuitDetailDto getDetailBySchool(Long musicGroupQuitId) {
|
|
|
+ MusicGroupQuit musicGroupQuit = musicGroupQuitDao.get(musicGroupQuitId);
|
|
|
+ if(Objects.isNull(musicGroupQuit)){
|
|
|
+ throw new BizException("退团申请不存在");
|
|
|
+ }
|
|
|
+ MusicGroupQuitDetailDto detailDto = new MusicGroupQuitDetailDto();
|
|
|
+ StudentRegistration studentRegistration = studentRegistrationDao.getStudentRegister(musicGroupQuit.getMusicGroupId(),musicGroupQuit.getUserId());
|
|
|
+ Subject subject = subjectDao.get(studentRegistration.getActualSubjectId());
|
|
|
+ SimpleUserDto simpleUser = teacherDao.getSimpleUser(musicGroupQuit.getUserId());
|
|
|
+ detailDto.setStudentId(musicGroupQuit.getUserId());
|
|
|
+ detailDto.setReasonEnum(musicGroupQuit.getReasonEnum());
|
|
|
+ detailDto.setUserComment(musicGroupQuit.getUserComment());
|
|
|
+ detailDto.setSchoolStaffAuditReason(musicGroupQuit.getSchoolStaffAuditReason());
|
|
|
+ detailDto.setStudentName(simpleUser.getNickName());
|
|
|
+ detailDto.setStudentAvatar(simpleUser.getAvatar());
|
|
|
+ detailDto.setCreateTime(musicGroupQuit.getCreateTime());
|
|
|
+ detailDto.setSubjectName(subject.getName());
|
|
|
+ return detailDto;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void auditPassBySchool(Long musicGroupQuitId,String reason) {
|
|
|
+ this.schoolAudit(musicGroupQuitId,reason,EQuitGroupAuditStatusEnum.PASS);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void auditRejectBySchool(Long musicGroupQuitId,String reason) {
|
|
|
+ this.schoolAudit(musicGroupQuitId,reason,EQuitGroupAuditStatusEnum.REJECT);
|
|
|
+ }
|
|
|
+
|
|
|
+ public void schoolAudit(Long musicGroupQuitId,String reason,EQuitGroupAuditStatusEnum status){
|
|
|
+ MusicGroupQuit musicGroupQuit = musicGroupQuitDao.get(musicGroupQuitId);
|
|
|
+ if(Objects.isNull(musicGroupQuit)){
|
|
|
+ throw new BizException("退团申请不存在");
|
|
|
+ }
|
|
|
+ if(musicGroupQuit.getSchoolStaffAuditStatus() != EQuitGroupAuditStatusEnum.ING){
|
|
|
+ throw new BizException("当前审批状态不支持此操作");
|
|
|
+ }
|
|
|
+ Integer userId = sysUserService.getUserId();
|
|
|
+ musicGroupQuit.setAuditSchoolStaff(userId);
|
|
|
+ musicGroupQuit.setSchoolStaffAuditStatus(status);
|
|
|
+ musicGroupQuit.setSchoolStaffAuditReason(reason);
|
|
|
+ musicGroupQuitDao.update(musicGroupQuit);
|
|
|
+ }
|
|
|
}
|