From cf6b965a86065a537a40c74f67e88a04447d2582 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期一, 12 七月 2021 18:00:38 +0800
Subject: [PATCH] 修改导入申购

---
 src/main/java/com/nanometer/smartlab/controller/UserMngController.java |   68 +++++++++++++++++++++------------
 1 files changed, 43 insertions(+), 25 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..80e8d17 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;
     }
@@ -187,16 +188,18 @@
                         }
                         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));//部门
@@ -207,8 +210,8 @@
                 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))+"");//密码
 
                 //valuesList.get(8) id卡号检查
@@ -221,10 +224,12 @@
                             //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;
                     }
                 }
                 sysUser.setPhone(valuesList.get(6));//电话
@@ -255,7 +260,8 @@
                     for (String project : projects) {
                         //不存再就直接推出
                         if (!sysProjectService.isExistProject(project)) {
-                            throw new Exception("课题组不存在,(" + i  + "行)");
+                            errorMsg += ("课题组不存在,(" + i  + "行)");
+                            continue;
                         }
                     }
                     //都存在就设置
@@ -267,13 +273,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){
+                FacesUtils.warn(errorMsg);
+            }else {
+                FacesUtils.info("导入成功。");
+            }
         }catch (Exception ex) {
             ex.printStackTrace();
             FacesUtils.info("导入失败。");
@@ -541,7 +548,7 @@
                             }
                         }
 
-
+                        selectedList = new ArrayList<>();
                     } catch (Exception e) {
                         logger.error(e);
                     }
@@ -550,23 +557,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