|
@@ -3,9 +3,14 @@ package com.ruoyi.system.service.impl;
|
|
|
|
|
|
import com.ruoyi.common.core.domain.BaseEntity;
|
|
|
import com.ruoyi.common.core.domain.entity.SysDictData;
|
|
|
+import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
+import com.ruoyi.common.exception.ServiceException;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
+import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.common.utils.bean.BeanValidators;
|
|
|
import com.ruoyi.system.domain.ProposalInfo;
|
|
|
+import com.ruoyi.system.domain.SysUserRole;
|
|
|
import com.ruoyi.system.domain.activity.ZxActivity;
|
|
|
import com.ruoyi.system.domain.activity.ZxActivityUser;
|
|
|
import com.ruoyi.system.domain.assessment.ZxAssessment;
|
|
@@ -19,10 +24,12 @@ import com.ruoyi.system.domain.speak.ZxSpeak;
|
|
|
import com.ruoyi.system.domain.sqmy.SqmyInfo;
|
|
|
import com.ruoyi.system.domain.vo.MemberInfoVo;
|
|
|
import com.ruoyi.system.mapper.*;
|
|
|
+import com.ruoyi.system.service.ISysConfigService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import com.ruoyi.system.service.IMemberInfoService;
|
|
|
|
|
|
+import javax.validation.Validator;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
@@ -66,6 +73,16 @@ public class MemberInfoServiceImpl implements IMemberInfoService {
|
|
|
@Autowired
|
|
|
private MemberAssessmentInfoMapper memberAssessmentInfoMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ISysConfigService configService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUserMapper userMapper;
|
|
|
+ @Autowired
|
|
|
+ protected Validator validator;
|
|
|
+ @Autowired
|
|
|
+ private SysUserRoleMapper userRoleMapper;
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 查询委员信息
|
|
@@ -285,4 +302,92 @@ public class MemberInfoServiceImpl implements IMemberInfoService {
|
|
|
public int deleteMemberInfoByMemberId(Long memberId) {
|
|
|
return memberInfoMapper.deleteMemberInfoByMemberId(memberId);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String importData(List<MemberInfo> list, boolean updateSupport, String operName) {
|
|
|
+ if (StringUtils.isNull(list) || list.size() == 0)
|
|
|
+ {
|
|
|
+ throw new ServiceException("导入用户数据不能为空!");
|
|
|
+ }
|
|
|
+ int successNum = 0;
|
|
|
+ int failureNum = 0;
|
|
|
+ StringBuilder successMsg = new StringBuilder();
|
|
|
+ StringBuilder failureMsg = new StringBuilder();
|
|
|
+ String password = configService.selectConfigByKey("sys.user.initPassword");
|
|
|
+ for (MemberInfo member : list)
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ // 验证是否存在这个用户
|
|
|
+ SysUser u = userMapper.selectUserByUserName(member.getPhonenumber());
|
|
|
+ if (StringUtils.isNull(u))
|
|
|
+ {
|
|
|
+ SysUser user = new SysUser();
|
|
|
+ user.setUserName(member.getPhonenumber());
|
|
|
+ user.setNickName(member.getName());
|
|
|
+ user.setPhonenumber(member.getPhonenumber());
|
|
|
+ user.setStatus("0");
|
|
|
+ user.setDelFlag("0");
|
|
|
+ BeanValidators.validateWithException(validator, user);
|
|
|
+ user.setPassword(SecurityUtils.encryptPassword(password));
|
|
|
+ user.setCreateBy(operName);
|
|
|
+ userMapper.insertUser(user);
|
|
|
+ //新增角色
|
|
|
+ Long[] roleIds = {3L};
|
|
|
+ insertUserRole(user.getUserId(),roleIds);
|
|
|
+ //新增委员
|
|
|
+ member.setUserId(SecurityUtils.getUserId());
|
|
|
+ member.setCreateTime(DateUtils.getNowDate());
|
|
|
+ memberInfoMapper.insertMemberInfo(member);
|
|
|
+ successNum++;
|
|
|
+ successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 导入成功");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ failureNum++;
|
|
|
+ failureMsg.append("<br/>" + failureNum + "、账号 " + member.getPhonenumber() + " 已存在");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
+ {
|
|
|
+ failureNum++;
|
|
|
+ String msg = "<br/>" + failureNum + "、账号 " + member.getPhonenumber() + " 导入失败:";
|
|
|
+ failureMsg.append(msg + e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (failureNum > 0)
|
|
|
+ {
|
|
|
+ failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
|
|
|
+ throw new ServiceException(failureMsg.toString());
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
|
|
|
+ }
|
|
|
+ return successMsg.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 新增用户角色信息
|
|
|
+ *
|
|
|
+ * @param userId 用户ID
|
|
|
+ * @param roleIds 角色组
|
|
|
+ */
|
|
|
+ public void insertUserRole(Long userId, Long[] roleIds)
|
|
|
+ {
|
|
|
+ if (StringUtils.isNotEmpty(roleIds))
|
|
|
+ {
|
|
|
+ // 新增用户与角色管理
|
|
|
+ List<SysUserRole> list = new ArrayList<SysUserRole>(roleIds.length);
|
|
|
+ for (Long roleId : roleIds)
|
|
|
+ {
|
|
|
+ SysUserRole ur = new SysUserRole();
|
|
|
+ ur.setUserId(userId);
|
|
|
+ ur.setRoleId(roleId);
|
|
|
+ list.add(ur);
|
|
|
+ }
|
|
|
+ userRoleMapper.batchUserRole(list);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|