lyfO_o
2022-05-11 169f2ae1155f62bbd529dba27fdc19d653906175
src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -142,7 +142,7 @@
            int totalRows = sheet.getPhysicalNumberOfRows();
            List<SysUser> userList=new ArrayList<>();
            System.out.println("totalRows=========="+totalRows);
            String errorMsg = null;
            String errorMsg = "";
            for (int i = 1; i < totalRows; i++) {
                row=sheet.getRow(i);
@@ -201,18 +201,47 @@
                }
                SysUser sysUser=new SysUser();
                sysUser.setCompany(valuesList.get(0));//单位
                sysUser.setDepartment(valuesList.get(1));//部门
                sysUser.setArp((int)Double.parseDouble(valuesList.get(2))+"");//arp号
                sysUser.setName(valuesList.get(3));//姓名
                sysUser.setAccount(valuesList.get(4));//账号
                String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
                if (!valuesList.get(5).matches(PW_PATTERN)){
                    errorMsg += "第"+i+"行,密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上";
                if (valuesList.get(0) != null && !StringUtils.isEmpty(valuesList.get(0))){
                    sysUser.setCompany(valuesList.get(0));//单位
                }else {
                    errorMsg += "第"+i+"行,单位不能为空";
                    continue;
                }
                sysUser.setPassword(MD5Utils.encode(valuesList.get(5))+"");//密码
                if (valuesList.get(1) != null && !StringUtils.isEmpty(valuesList.get(1))){
                    sysUser.setDepartment(valuesList.get(1));//部门
                }else {
                    errorMsg += "第"+i+"行,部门不能为空";
                    continue;
                }
                if (valuesList.get(2) != null && !StringUtils.isEmpty(valuesList.get(2))){
                    sysUser.setArp((int)Double.parseDouble(valuesList.get(2))+"");//arp号
                }else {
                    errorMsg += "第"+i+"行,arp不能为空";
                    continue;
                }
                if (valuesList.get(3) != null && !StringUtils.isEmpty(valuesList.get(3))){
                    sysUser.setName(valuesList.get(3));//姓名
                }else {
                    errorMsg += "第"+i+"行,姓名不能为空";
                    continue;
                }
                if (valuesList.get(4) != null && !StringUtils.isEmpty(valuesList.get(4))){
                    sysUser.setAccount(valuesList.get(4));//账号
                }else {
                    errorMsg += "第"+i+"行,账号不能为空";
                    continue;
                }
                if (valuesList.get(5) != null && !StringUtils.isEmpty(valuesList.get(5))){
                    String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
                    if (!valuesList.get(5).matches(PW_PATTERN)){
                        errorMsg += "第"+i+"行,密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上";
                        continue;
                    }
                    sysUser.setPassword(MD5Utils.encode(valuesList.get(5))+"");//密码
                }else {
                    errorMsg += "第"+i+"行,密码不能为空";
                    continue;
                }
                //valuesList.get(8) id卡号检查
                if (valuesList.get(8) != null && valuesList.get(8).length()>0){
@@ -232,10 +261,39 @@
                        continue;
                    }
                }
                // 检查ARP号
                if (this.sysUserService.isSysUserExist(sysUser.getArp(), null, null, null)) {
                    errorMsg += ("第"+i+"行,ARP已存在");
                    continue;
                }
                // 检查登陆账号
                if (this.sysUserService.isSysUserExist(null, sysUser.getAccount(), null, null)) {
                    errorMsg += ("第"+i+"行,登陆账号已存在");
                    continue;
                }
                if (!StringUtils.isEmpty(sysUser.getIdCard()) && this.sysUserService.isSysUserExist(null, null, sysUser.getIdCard(), null)) {
                    errorMsg += ("第"+i+"行,ID卡号已存在");
                    continue;
                }
                sysUser.setPhone(valuesList.get(6));//电话
                sysUser.setEmail(valuesList.get(7));//邮箱
                sysUser.setPoint((int)Double.parseDouble(valuesList.get(9)));//分数
                sysUser.setRoleId(valuesList.get(10));//角色
                if (valuesList.get(9) != null){
                    sysUser.setPoint((int)Double.parseDouble(valuesList.get(9)));//分数
                }else {
                    errorMsg += "第"+i+"行,分数不能为空";
                    continue;
                }
                if (valuesList.get(10) != null){
                    sysUser.setRoleId(valuesList.get(10));//角色
                }else {
                    errorMsg += "第"+i+"行,角色不能为空";
                    continue;
                }
                if (valuesList.get(12) == null){
                    errorMsg += "第"+i+"行,可见度不能为空";
                    continue;
                }
                if(valuesList.get(11).equals("是")){
                    sysUser.setApproverFlag(ApproverFlag.YES);
                }else {
@@ -253,7 +311,6 @@
                if(valuesList.get(12).equals(SeeFlag.LEADING.getText())){
                    sysUser.setSeeFlag(SeeFlag.LEADING);
                }
                if (valuesList.size() > 13 && !valuesList.get(13).replace(" ","").isEmpty()){
                    String[] projects = valuesList.get(13).split(",");
@@ -276,7 +333,7 @@
            this.sysUserService.insertSysUserList(userList);
            System.out.println("=========导入结束=====");
            if (errorMsg != null){
            if (errorMsg != null && !StringUtils.isEmpty(errorMsg)){
                FacesUtils.warn(errorMsg);
            }else {
                FacesUtils.info("导入成功。");
@@ -548,7 +605,7 @@
                            }
                        }
                        selectedList = new ArrayList<>();
                    } catch (Exception e) {
                        logger.error(e);
                    }
@@ -557,17 +614,17 @@
                @Override
                public SysUser getRowData(String rowKey) {
                    Iterator<SysUser> iterator = this.iterator();
                    if (iterator != null) {
                        SysUser su = null;
                        while (iterator.hasNext()) {
                            su = iterator.next();
                            if (rowKey.equals(su.getId())) {
                                return su;
                            }
                        }
                    }
                    return null;
//                    Iterator<SysUser> iterator = this.iterator();
//                    if (iterator != null) {
//                        SysUser su = null;
//                        while (iterator.hasNext()) {
//                            su = iterator.next();
//                            if (rowKey.equals(su.getId())) {
//                                return su;
//                            }
//                        }
//                    }
                    return sysUserService.getSysUser(rowKey);
                }
            };
        }