|
@@ -1,20 +1,26 @@
|
|
package com.qmth.teachcloud.common.service.impl;
|
|
package com.qmth.teachcloud.common.service.impl;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.qmth.teachcloud.common.bean.dto.SchoolDto;
|
|
import com.qmth.teachcloud.common.bean.dto.SchoolDto;
|
|
import com.qmth.teachcloud.common.config.DictionaryConfig;
|
|
import com.qmth.teachcloud.common.config.DictionaryConfig;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.entity.BasicSchool;
|
|
import com.qmth.teachcloud.common.entity.BasicSchool;
|
|
|
|
+import com.qmth.teachcloud.common.entity.SysUser;
|
|
import com.qmth.teachcloud.common.mapper.BasicSchoolMapper;
|
|
import com.qmth.teachcloud.common.mapper.BasicSchoolMapper;
|
|
import com.qmth.teachcloud.common.service.BasicSchoolService;
|
|
import com.qmth.teachcloud.common.service.BasicSchoolService;
|
|
import com.qmth.teachcloud.common.service.CommonCacheService;
|
|
import com.qmth.teachcloud.common.service.CommonCacheService;
|
|
|
|
+import com.qmth.teachcloud.common.service.SysUserService;
|
|
|
|
+import com.qmth.teachcloud.common.util.Base64Util;
|
|
import com.qmth.teachcloud.common.util.FileStoreUtil;
|
|
import com.qmth.teachcloud.common.util.FileStoreUtil;
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.util.Base64;
|
|
import java.util.Base64;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import java.util.Queue;
|
|
|
|
|
|
/**
|
|
/**
|
|
* <p>
|
|
* <p>
|
|
@@ -36,13 +42,22 @@ public class BasicSchoolServiceImpl extends ServiceImpl<BasicSchoolMapper, Basic
|
|
@Resource
|
|
@Resource
|
|
CommonCacheService commonCacheService;
|
|
CommonCacheService commonCacheService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ SysUserService sysUserService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public List<SchoolDto> listSchool() {
|
|
public List<SchoolDto> listSchool() {
|
|
- return this.baseMapper.listSchool();
|
|
|
|
|
|
+ List<SchoolDto> schoolDtos = this.baseMapper.listSchool();
|
|
|
|
+ for (SchoolDto schoolDto : schoolDtos) {
|
|
|
|
+ if(StringUtils.isNotBlank(schoolDto.getInitPassword())){
|
|
|
|
+ schoolDto.setInitPassword(new String(Base64Util.decode(schoolDto.getInitPassword())));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return schoolDtos;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public boolean updateSchool(Long id, String code, String name, MultipartFile logo, String logoMd5) {
|
|
|
|
|
|
+ public boolean updateSchool(Long id, String code, String name, String initPassword, MultipartFile logo, String logoMd5) {
|
|
BasicSchool basicSchool = this.getById(id);
|
|
BasicSchool basicSchool = this.getById(id);
|
|
basicSchool.setCode(code);
|
|
basicSchool.setCode(code);
|
|
basicSchool.setName(name);
|
|
basicSchool.setName(name);
|
|
@@ -58,6 +73,19 @@ public class BasicSchoolServiceImpl extends ServiceImpl<BasicSchoolMapper, Basic
|
|
commonCacheService.removeSchoolCache(basicSchool.getId());
|
|
commonCacheService.removeSchoolCache(basicSchool.getId());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ // 修改密码时,同步更新上一次初始密码的用户密码
|
|
|
|
+ String oldInitPassword = Base64Util.encode(SystemConstant.OLD_INIT_PASSWORD.getBytes());
|
|
|
|
+ String currentInitPassword = basicSchool.getInitPassword();
|
|
|
|
+ String newInitPassword = Base64Util.encode(initPassword.getBytes());
|
|
|
|
+ if(StringUtils.isBlank(currentInitPassword) || !currentInitPassword.equals(initPassword)){
|
|
|
|
+ UpdateWrapper<SysUser> updateWrapper = new UpdateWrapper<>();
|
|
|
|
+ updateWrapper.lambda().set(SysUser::getPassword, newInitPassword)
|
|
|
|
+ .eq(SysUser::getSchoolId, id)
|
|
|
|
+ .and(q->q.eq(SysUser::getPassword, oldInitPassword).or().eq(SysUser::getPassword, currentInitPassword));
|
|
|
|
+ sysUserService.update(updateWrapper);
|
|
|
|
+ }
|
|
|
|
+
|
|
return this.updateById(basicSchool);
|
|
return this.updateById(basicSchool);
|
|
}
|
|
}
|
|
}
|
|
}
|