From af607e09de61badbaef57bc0d38002e48a44ac4c Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期五, 12 十一月 2021 12:48:50 +0800 Subject: [PATCH] 订单领取申领人被删除报错 --- src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 153 ++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 114 insertions(+), 39 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java index 0408681..03b33ba 100644 --- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java @@ -109,6 +109,7 @@ } if (this.selectedList.size() == 1) { this.sysUser = this.sysUserService.getSysUser(this.selectedList.get(0).getId()); + this.sysUser.setId(null); } this.action = Constants.ACTION_ADD; } @@ -141,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); @@ -187,29 +188,60 @@ } valuesList.add(id); }else if(t==6){ - cellInfo=new BigDecimal(""+cellInfo).toString(); - valuesList.add(cellInfo); + if (!StringUtils.isEmpty(cellInfo)){ + cellInfo=new BigDecimal(""+cellInfo).toString(); + valuesList.add(cellInfo); + }else{ + valuesList.add(cellInfo); + } } else { valuesList.add(cellInfo); } - } - System.out.println("size : "+valuesList.size()); - System.out.println("value : "+valuesList); + 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){ @@ -221,16 +253,47 @@ //8位补齐20位,否则不做操作 String idCard = "E0E01E000A" + idCardUpper + "01"; sysUser.setIdCard(idCard);//id卡号 + }else { + sysUser.setIdCard(idCardUpper);//id卡号 } }else{ - FacesUtils.warn("第"+i+"行,id卡号需要8位或者20位"); - return; + errorMsg += ("第"+i+"行,id卡号需要8位或者20位"); + 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 { @@ -249,13 +312,13 @@ sysUser.setSeeFlag(SeeFlag.LEADING); } - if (valuesList.size() > 13 && !valuesList.get(13).replace(" ","").isEmpty()){ String[] projects = valuesList.get(13).split(","); for (String project : projects) { //不存再就直接推出 if (!sysProjectService.isExistProject(project)) { - throw new Exception("课题组不存在,(" + i + "行)"); + errorMsg += ("课题组不存在,(" + i + "行)"); + continue; } } //都存在就设置 @@ -267,13 +330,14 @@ sysUser.setValidFlag(ValidFlag.VALID); userList.add(sysUser); } - if (errorMsg != null){ - FacesUtils.warn(errorMsg); - } this.sysUserService.insertSysUserList(userList); System.out.println("=========导入结束====="); - FacesUtils.info("导入成功。"); + if (errorMsg != null && !StringUtils.isEmpty(errorMsg)){ + FacesUtils.warn(errorMsg); + }else { + FacesUtils.info("导入成功。"); + } }catch (Exception ex) { ex.printStackTrace(); FacesUtils.info("导入失败。"); @@ -541,7 +605,7 @@ } } - + selectedList = new ArrayList<>(); } catch (Exception e) { logger.error(e); } @@ -550,23 +614,34 @@ @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); } }; } return dataModel; } + public void exportLab2Excel(){ + try { + List<Map> list = sysUserService.getExportUserList(arp, name,departmentName,project,company); + sysUserService.exportUser2Excel(list); + FacesUtils.info("导出成功"); + }catch (Exception e){ + e.printStackTrace(); + FacesUtils.warn("导出失败"); + } + } + public SysUser getSysUser() { return sysUser; } -- Gitblit v1.9.2