|
@@ -5,48 +5,41 @@ import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
|
import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
|
|
|
-import com.ym.mec.biz.dal.mapper.SchoolStaffMapper;
|
|
|
-import com.ym.mec.biz.service.CooperationOrganService;
|
|
|
-import com.ym.mec.biz.service.ImGroupMemberService;
|
|
|
-import com.ym.mec.biz.service.ImGroupService;
|
|
|
-import com.ym.mec.biz.service.SysUserService;
|
|
|
+import com.ym.mec.biz.service.*;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.util.*;
|
|
|
+import java.util.concurrent.CompletableFuture;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, CooperationOrgan> implements CooperationOrganService {
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private CooperationOrganDao cooperationOrganDao;
|
|
|
-
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private CooperationOrganLinkmanDao cooperationOrganLinkmanDao;
|
|
|
-
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private MusicGroupDao musicGroupDao;
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ClassGroupDao classGroupDao;
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ImGroupMemberService imGroupMemberService;
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ImGroupService imGroupService;
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private EmployeeDao employeeDao;
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private SysUserFeignService sysUserFeignService;
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private SchoolStaffMapper schoolStaffMapper;
|
|
|
-
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
+ private SchoolStaffService schoolStaffService;
|
|
|
+ @Resource
|
|
|
private SysUserService sysUserService;
|
|
|
|
|
|
@Override
|
|
@@ -102,12 +95,17 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void updateCooperation(CooperationOrgan cooperationOrgan) {
|
|
|
CooperationOrgan cooperationOrgan1 = cooperationOrganDao.get(cooperationOrgan.getId());
|
|
|
+ //修改合作单位下的学校账号
|
|
|
+ if(!cooperationOrgan.getOrganId().equals(cooperationOrgan1.getOrganId())){
|
|
|
+ schoolStaffService.lambdaUpdate().eq(SchoolStaff::getSchoolId, cooperationOrgan.getId())
|
|
|
+ .set(SchoolStaff::getOrganIdList, cooperationOrgan.getOrganId()).update();
|
|
|
+ }
|
|
|
//修改了乐团主管后,修改关联乐团的乐团主管
|
|
|
if(!cooperationOrgan.getEducationUserId().equals(cooperationOrgan1.getEducationUserId())){
|
|
|
- SysUser sysUser = sysUserFeignService.queryUserById(cooperationOrgan.getEducationUserId());
|
|
|
+ SysUser sysUser = sysUserService.queryUserById(cooperationOrgan.getEducationUserId());
|
|
|
//获取进行中、暂停、筹备中的乐团列表
|
|
|
List<MusicGroup> musicGroups = musicGroupDao.findByCooperationIdAndStatus(cooperationOrgan.getId());
|
|
|
- if(musicGroups.size() > 0){
|
|
|
+ if(CollectionUtils.isNotEmpty(musicGroups)){
|
|
|
for (MusicGroup musicGroup : musicGroups) {
|
|
|
//获取当前乐团所有班级
|
|
|
List<ClassGroup> classGroups = classGroupDao.findClassGroups(musicGroup.getId());
|
|
@@ -151,18 +149,18 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
|
|
|
|
|
|
cooperationOrganDao.update(cooperationOrgan);
|
|
|
|
|
|
- // 修改合作单位下的用户,改为锁定
|
|
|
-
|
|
|
- if (!cooperationOrgan.getIsEnable()) {
|
|
|
- List<SchoolStaff> schoolStaffs = schoolStaffMapper.getByCoopIdAndType(cooperationOrgan.getId(), null);
|
|
|
+ // 修改合作单位下的用户,改为锁定
|
|
|
+ schoolStaffService.getMapper().updateStatusAndRecoveryStatus(cooperationOrgan.getIsEnable(), cooperationOrgan.getId());
|
|
|
|
|
|
-
|
|
|
- for (SchoolStaff schoolStaff : schoolStaffs) {
|
|
|
- sysUserFeignService.exitByPhone("education", sysUserService.queryUserById(schoolStaff.getUserId().intValue()).getPhone());
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- schoolStaffMapper.updateStatusAndRecoveryStatus(cooperationOrgan.getIsEnable(), cooperationOrgan.getId());
|
|
|
+ if (!cooperationOrgan.getIsEnable()) {
|
|
|
+ //用户退出登陆
|
|
|
+ CompletableFuture.runAsync(() -> {
|
|
|
+ List<SchoolStaff> schoolStaffs = schoolStaffService.getMapper().getByCoopIdAndType(cooperationOrgan.getId(), null);
|
|
|
+ for (SchoolStaff schoolStaff : schoolStaffs) {
|
|
|
+ sysUserFeignService.exitByPhone("education", sysUserService.queryUserById(schoolStaff.getUserId().intValue()).getPhone());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|