|
@@ -907,7 +907,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
|
|
|
errorList.add(itemImport);
|
|
|
continue;
|
|
|
}
|
|
|
- iSmsService.sendPwdSms(itemImport.getTelphone(),pwd);
|
|
|
+// iSmsService.sendPwdSms(itemImport.getTelphone(),pwd);
|
|
|
itemImport.setUserId(inertData.getUserId());
|
|
|
itemImport.setImportNo(importNo);
|
|
|
itemImport.setStudentCode(inertData.getUserAccount());
|
|
@@ -1628,6 +1628,92 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
|
|
|
|
|
|
@Override
|
|
|
public Map<String, Object> importSevenUser(List<UserPeriodImportBo> userList) {
|
|
|
+ if (CollectionUtils.isEmpty(userList)) {
|
|
|
+ throw new IllegalArgumentException("请勿导入空表格");
|
|
|
+ }
|
|
|
+ List<UserPeriodImportBo> errorList = new ArrayList<>();
|
|
|
+ List<UserPeriodImportBo> successList = new ArrayList<>();
|
|
|
+ String importNo = ServletUtils.getEncoded("IMPORT");
|
|
|
+ for (UserPeriodImportBo itemImport : userList) {
|
|
|
+ if(Validator.isEmpty(itemImport.getUserPhone())||itemImport.getUserPhone().length()!=11){
|
|
|
+ itemImport.setCause("手机号不能为空或者格式不对");
|
|
|
+ errorList.add(itemImport);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if(Validator.isEmpty(itemImport.getUserCard())){
|
|
|
+ itemImport.setCause("身份证不能为空");
|
|
|
+ errorList.add(itemImport);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if(Validator.isEmpty(itemImport.getUserName())){
|
|
|
+ itemImport.setCause("真实姓名不能为空");
|
|
|
+ errorList.add(itemImport);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ User user = getOne(new LambdaQueryWrapper<User>()
|
|
|
+ .eq(User::getTelphone,EncryptHandler.encrypt(itemImport.getUserPhone())).last("limit 1"));
|
|
|
+ if(Validator.isNotNull(user)){
|
|
|
+ if(Validator.isNotEmpty(user.getIdCard())&&Validator.isNotEmpty(itemImport.getUserCard())&&!itemImport.getUserCard().equals(user.getIdCard())){
|
|
|
+ throw new CustomException(itemImport.getUserCard()+"身份证号码不一致");
|
|
|
+ }
|
|
|
+ if(Validator.isEmpty(user.getIdCard())){
|
|
|
+ //更新身份证和姓名
|
|
|
+ user.setIdCard(itemImport.getUserCard());
|
|
|
+ user.setRealname(itemImport.getUserName());
|
|
|
+ updateById(user);
|
|
|
+ }
|
|
|
+ //手机号已存在
|
|
|
+ itemImport.setUserId(user.getUserId());
|
|
|
+ itemImport.setStudentCode(user.getUserAccount());
|
|
|
+ itemImport.setUserName(user.getRealname());
|
|
|
+ itemImport.setUserCard(user.getIdCard());
|
|
|
+ successList.add(itemImport);
|
|
|
+ continue;
|
|
|
+ }else{
|
|
|
+ User user2 = getOne(new LambdaQueryWrapper<User>()
|
|
|
+ .eq(User::getIdCard,EncryptHandler.encrypt(itemImport.getUserCard())).last("limit 1"));
|
|
|
+ if(Validator.isNotEmpty(user2)){
|
|
|
+ throw new CustomException(itemImport.getUserName()+"身份证号码已存在,创建失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ User inertData = new User();
|
|
|
+ inertData.setTelphone(itemImport.getUserPhone());
|
|
|
+ //隐藏手机号作为初始昵称
|
|
|
+ inertData.setNickname(TelPhoneUtils.hideTelPhone(itemImport.getUserPhone()));
|
|
|
+ //雪花算法产生账号ID
|
|
|
+ SnowflakeIdUtils idWorker = new SnowflakeIdUtils(3, 1);
|
|
|
+ inertData.setUserAccount(String.valueOf(idWorker.nextId()));
|
|
|
+ inertData.setSex(1);
|
|
|
+ if(Validator.isNotEmpty(itemImport.getSex())){
|
|
|
+ inertData.setSex(itemImport.getSex().equals("女")?2:1);
|
|
|
+ }
|
|
|
+ if(Validator.isNotEmpty(itemImport.getEducation())){
|
|
|
+ inertData.setEduLevel(itemImport.getEducation());
|
|
|
+ }
|
|
|
+ inertData.setIdCard(itemImport.getUserCard());
|
|
|
+ inertData.setRealname(itemImport.getUserName());
|
|
|
+ inertData.setStatus(1);
|
|
|
+ inertData.setRegisterPlat("3");
|
|
|
+ inertData.setAvatar(Constants.DEFAULT_AVATAR);
|
|
|
+ inertData.setLastLoginIp(IpUtils.getIpAddr(ServletUtils.getRequest()));
|
|
|
+ inertData.setLastLoginTime(DateUtils.getNowTime());
|
|
|
+ inertData.setCreateTime(DateUtils.getNowTime());
|
|
|
+ inertData.setUpdateTime(DateUtils.getNowTime());
|
|
|
+ //初始密码(身份证后6位)
|
|
|
+ String idCard = itemImport.getUserCard();
|
|
|
+ String pwd = idCard.substring(idCard.length() - 6); // 随机密码
|
|
|
+ inertData.setPassword(SecurityUtils.encryptPassword(pwd));
|
|
|
+ inertData.setImportNo(importNo); //设置导入编号 一个导入页面同时导入多次算一个编号
|
|
|
+ if(!save(inertData)){
|
|
|
+ itemImport.setCause("注册失败");
|
|
|
+ errorList.add(itemImport);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ itemImport.setUserId(inertData.getUserId());
|
|
|
+ itemImport.setImportNo(importNo);
|
|
|
+ itemImport.setStudentCode(inertData.getUserAccount());
|
|
|
+ successList.add(itemImport);
|
|
|
+ }
|
|
|
return null;
|
|
|
}
|
|
|
|