From fd6dca0c559c08129b7e0abdf67093b1a728ffd3 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 29 十一月 2024 17:21:00 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/PatArchiveImportServiceImpl.java |   67 +++++++++++++++++++++++++++------
 1 files changed, 54 insertions(+), 13 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/PatArchiveImportServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatArchiveImportServiceImpl.java
index dbe3da2..4307289 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveImportServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveImportServiceImpl.java
@@ -1,16 +1,21 @@
 package com.smartor.service.impl;
 
+import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.domain.entity.SysUserRole;
 import com.smartor.domain.PatArchiveImport;
 import com.smartor.mapper.PatArchiveImportMapper;
 import com.smartor.service.IPatArchiveImportService;
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.ObjectUtils;
-import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.text.DecimalFormat;
@@ -30,6 +35,7 @@
 public class PatArchiveImportServiceImpl implements IPatArchiveImportService {
     @Autowired
     private PatArchiveImportMapper patArchiveImportMapper;
+
 
     /**
      * 鏌ヨExcel瀵煎叆鎮h�呮。妗�
@@ -100,7 +106,7 @@
     }
 
     @Override
-    public List<PatArchiveImport> importPatInfo(MultipartFile multipartFile) {
+    public List<PatArchiveImport> importPatInfo(MultipartFile multipartFile, SysUser user) {
         //鐢ㄤ簬杩斿洖
         List<PatArchiveImport> patArchiveImports = new ArrayList<>();
 
@@ -115,18 +121,18 @@
                 PatArchiveImport patArchiveImport = new PatArchiveImport();
                 Row row = sheet.getRow(i);
                 //濡傛灉琛屼负绌猴紝杩涜涓嬩竴娆″惊鐜�
-                if (ObjectUtils.isEmpty(row.getCell(0)) && ObjectUtils.isEmpty(row.getCell(1)) && ObjectUtils.isEmpty(row.getCell(2))) {
+                if (ObjectUtils.isEmpty(row.getCell(0)) && StringUtils.isNotEmpty(row.getCell(0) + "") && ObjectUtils.isEmpty(row.getCell(1)) && StringUtils.isNotEmpty(row.getCell(1) + "") && ObjectUtils.isEmpty(row.getCell(2)) && StringUtils.isNotEmpty(row.getCell(2) + "")) {
                     continue;
                 }
                 //鍒ゆ柇鏁版嵁鏄惁鏈夐棶棰�
 
 
-                if (ObjectUtils.isNotEmpty(row.getCell(0))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(0)) && StringUtils.isNotEmpty(row.getCell(0) + "")) {
                     patArchiveImport.setName(row.getCell(0).toString());
                 } else {
                     continue;
                 }
-                if (ObjectUtils.isNotEmpty(row.getCell(1))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(1)) && StringUtils.isNotEmpty(row.getCell(1) + "")) {
                     Cell cell = row.getCell(1);
                     if (row.getCell(1).toString().contains("X") || row.getCell(1).toString().contains("x")) {
                         patArchiveImport.setIdcardno(row.getCell(1).toString());
@@ -144,38 +150,73 @@
                     }
 
                     boolean contains = qc.contains(row.getCell(1).toString());
-                    if (contains) continue;
+                    PatArchiveImport pt = new PatArchiveImport();
+                    pt.setIdcardno(patArchiveImport.getIdcardno());
+                    pt.setDelFlag("0");
+                    List<PatArchiveImport> patArchiveImports1 = patArchiveImportMapper.selectPatArchiveImportList(pt);
+                    if (contains || CollectionUtils.isNotEmpty(patArchiveImports1)) continue;
                 }
 
-                if (ObjectUtils.isNotEmpty(row.getCell(2))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(2)) && StringUtils.isNotEmpty(row.getCell(2) + "")) {
                     Cell cell = row.getCell(2);
                     double numericCellValue = cell.getNumericCellValue();
                     DecimalFormat decimalFormat = new DecimalFormat("#");
                     String formattedValue = decimalFormat.format(numericCellValue);
                     patArchiveImport.setTelcode(formattedValue);
                 }
-                if (ObjectUtils.isNotEmpty(row.getCell(3))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(3)) && StringUtils.isNotEmpty(row.getCell(3) + "")) {
                     patArchiveImport.setBatchName(row.getCell(3).toString());
                 }
-                if (ObjectUtils.isNotEmpty(row.getCell(4))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(4)) && StringUtils.isNotEmpty(row.getCell(4) + "")) {
                     patArchiveImport.setPatientno(row.getCell(4).toString());
                 }
 
-                if (ObjectUtils.isNotEmpty(row.getCell(5))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(5)) && StringUtils.isNotEmpty(row.getCell(5) + "")) {
                     patArchiveImport.setPattype(row.getCell(5).toString());
                 }
-                if (ObjectUtils.isNotEmpty(row.getCell(6))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(6)) && StringUtils.isNotEmpty(row.getCell(6) + "")) {
                     patArchiveImport.setSex(Long.valueOf(row.getCell(6).toString()));
                 }
-                if (ObjectUtils.isNotEmpty(row.getCell(7))) {
+                if (ObjectUtils.isNotEmpty(row.getCell(7)) && StringUtils.isNotEmpty(row.getCell(7) + "")) {
                     patArchiveImport.setAge(Long.valueOf(row.getCell(7).toString()));
                 }
+
 
                 patArchiveImport.setCreateTime(new Date());
                 patArchiveImport.setUpdateTime(new Date());
                 //鎵归噺鍙凤紙褰撳墠鏃堕棿锛�
                 patArchiveImport.setBatchNo(new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()));
+                patArchiveImport.setCreateBy(user.getNickName());
                 insertPatArchiveImport(patArchiveImport);
+                //缁欏綋鍓嶅鍏ユ偅鑰咃紝娉ㄥ唽甯愬彿  sys_user  sys_user_role
+                if (patArchiveImport.getAccount() == 1) {
+                    //鏌ヨ涓�涓嬶紝璇ユ偅鑰呮槸鍚﹀凡缁忓湪琛ㄩ噷鍒涘缓浜嗗笎鍙�
+                    SysUser sysUser = patArchiveImportMapper.checkUserExist(patArchiveImport.getIdcardno());
+                    if (ObjectUtils.isEmpty(sysUser)) {
+                        sysUser = new SysUser();
+                        //濡傛灉涓虹┖锛屽垯杩涜鏂板sys_user   sys_role
+                        sysUser.setIdCard(patArchiveImport.getIdcardno());
+                        int start = patArchiveImport.getIdcardno().length() - 6;
+                        String lastSixDigits = patArchiveImport.getIdcardno().substring(start, start + 6);
+                        sysUser.setUserName(lastSixDigits);
+                        //瀵嗙爜锛歺h@123456
+                        sysUser.setPassword("$2a$10$zja67LEWTESHutljd8bqEeRy.VgWb./8iJPpFR6VjTUa7ZYNfRRrO");
+                        sysUser.setPhonenumber(patArchiveImport.getTelcode());
+                        sysUser.setUserType("鎮h��");
+                        sysUser.setDeptId(395L);
+                        sysUser.setNickName(patArchiveImport.getName());
+                        sysUser.setCreateTime(new Date());
+                        sysUser.setCreateBy(user.getNickName());
+                        sysUser.setUpdateTime(new Date());
+                        sysUser.setUpdateBy(user.getNickName());
+                        patArchiveImportMapper.insertUser(sysUser);
+                        //灏嗘偅鑰呬笌瑙掕壊缁戝畾
+                        SysUserRole sysUserRole = new SysUserRole();
+                        sysUserRole.setUserId(sysUser.getUserId());
+                        sysUserRole.setRoleId(6L);
+                        patArchiveImportMapper.insertUserRole(sysUserRole);
+                    }
+                }
 
                 patArchiveImports.add(patArchiveImport);
             }

--
Gitblit v1.9.3