From 421e9a62b6bf91394f6bff5ce7642e995bf06077 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 12 三月 2026 14:45:49 +0800
Subject: [PATCH] 运维人员导入异常处理

---
 xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java |   83 +++++++++++++++++++++--------------------
 1 files changed, 42 insertions(+), 41 deletions(-)

diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java
index 16ef6cc..d0f7881 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java
@@ -347,51 +347,52 @@
     @Override
     public void importOperationsUser(MultipartFile file) {
         ExcelUtil<ExportOperationsUserVo> util = new ExcelUtil<ExportOperationsUserVo>(ExportOperationsUserVo.class);
+        List<ExportOperationsUserVo> list = null;
         try {
-            List<ExportOperationsUserVo> list = util.importExcel(file.getInputStream());
-            for (ExportOperationsUserVo exportOperationsUserVo : list) {
-                XpOperationsUser xpOperationsUser = new XpOperationsUser();
-                xpOperationsUser.setNickName(exportOperationsUserVo.getNickName());
-                xpOperationsUser.setUniqueNumber(exportOperationsUserVo.getUniqueNumber());
-                xpOperationsUser.setAvatar(exportOperationsUserVo.getAvatar());
-                boolean isPhone = PhoneUtil.isPhone(exportOperationsUserVo.getPhoneNumber());
-                if (!isPhone) {
-                    throw new ServiceException("以下帐号格式不正确:", I18nKeyConstant.ACCOUNT_FORMAT_ERROR, new Object[]{exportOperationsUserVo.getPhoneNumber()});
-                }
-                xpOperationsUser.setPhoneNumber(exportOperationsUserVo.getPhoneNumber());
-                xpOperationsUser.setPassword(SecurityUtils.encryptPassword("a123456"));
-                xpOperationsUser.setRemarks(exportOperationsUserVo.getRemarks());
-                xpOperationsUser.setStatus(true);
-                xpOperationsUser.setIdCardFront(StringUtils.isBlank(exportOperationsUserVo.getIdCardFront()) ? null : exportOperationsUserVo.getIdCardFront());
-                xpOperationsUser.setIdCardBack(StringUtils.isBlank(exportOperationsUserVo.getIdCardBack()) ? null : exportOperationsUserVo.getIdCardBack());
-                xpOperationsUser.setDriverLicense(StringUtils.isBlank(exportOperationsUserVo.getDriverLicense()) ? null : exportOperationsUserVo.getDriverLicense());
-                xpOperationsUser.setCertificateOfNoCriminalRecord(StringUtils.isBlank(exportOperationsUserVo.getCertificateOfNoCriminalRecord()) ? null : exportOperationsUserVo.getCertificateOfNoCriminalRecord());
-                xpOperationsUser.setTrainingGraduationCertificate(StringUtils.isBlank(exportOperationsUserVo.getTrainingGraduationCertificate()) ? null : exportOperationsUserVo.getTrainingGraduationCertificate());
-                xpOperationsUser.setDeleted(false);
-                xpOperationsUser.setCreateTime(LocalDateTime.now());
-                xpOperationsUser.setUpdateTime(LocalDateTime.now());
-                this.save(xpOperationsUser);
-                // 通过角色名称查询角色
-                String roleName = exportOperationsUserVo.getRoleName();
-                if(StringUtils.isNotBlank(roleName)){
-                    List<SysRole> sysRoles = iSysRoleService.list(Wrappers.lambdaQuery(SysRole.class)
-                            .in(SysRole::getRoleName, Arrays.asList(roleName.split(","))));
-                    if(!CollectionUtils.isEmpty(sysRoles)){
-                        List<XpOperationsRole> xpOperationsRoles = new ArrayList<>();
-                        for (SysRole sysRole : sysRoles) {
-                            XpOperationsRole xpOperationsRole = new XpOperationsRole();
-                            xpOperationsRole.setOperationsUserId(xpOperationsUser.getId());
-                            xpOperationsRole.setRoleId(sysRole.getId());
-                            xpOperationsRoles.add(xpOperationsRole);
-                        }
-                        xpOperationsRoleService.saveBatch(xpOperationsRoles);
-                    }else {
-                        throw new ServiceException("角色["+roleName+"]不存在",I18nKeyConstant.ROlE_NOT_EXISTS);
+            list = util.importExcel(file.getInputStream());
+        } catch (Exception e) {
+            throw new ServiceException("导入运维人员数据异常", I18nKeyConstant.ACCOUNT_IMPORT_ERROR);
+        }
+        for (ExportOperationsUserVo exportOperationsUserVo : list) {
+            XpOperationsUser xpOperationsUser = new XpOperationsUser();
+            xpOperationsUser.setNickName(exportOperationsUserVo.getNickName());
+            xpOperationsUser.setUniqueNumber(exportOperationsUserVo.getUniqueNumber());
+            xpOperationsUser.setAvatar(exportOperationsUserVo.getAvatar());
+            boolean isPhone = PhoneUtil.isPhone(exportOperationsUserVo.getPhoneNumber());
+            if (!isPhone) {
+                throw new ServiceException("以下帐号格式不正确:"+exportOperationsUserVo.getPhoneNumber(), I18nKeyConstant.ACCOUNT_FORMAT_ERROR);
+            }
+            xpOperationsUser.setPhoneNumber(exportOperationsUserVo.getPhoneNumber());
+            xpOperationsUser.setPassword(SecurityUtils.encryptPassword("a123456"));
+            xpOperationsUser.setRemarks(exportOperationsUserVo.getRemarks());
+            xpOperationsUser.setStatus(true);
+            xpOperationsUser.setIdCardFront(StringUtils.isBlank(exportOperationsUserVo.getIdCardFront()) ? null : exportOperationsUserVo.getIdCardFront());
+            xpOperationsUser.setIdCardBack(StringUtils.isBlank(exportOperationsUserVo.getIdCardBack()) ? null : exportOperationsUserVo.getIdCardBack());
+            xpOperationsUser.setDriverLicense(StringUtils.isBlank(exportOperationsUserVo.getDriverLicense()) ? null : exportOperationsUserVo.getDriverLicense());
+            xpOperationsUser.setCertificateOfNoCriminalRecord(StringUtils.isBlank(exportOperationsUserVo.getCertificateOfNoCriminalRecord()) ? null : exportOperationsUserVo.getCertificateOfNoCriminalRecord());
+            xpOperationsUser.setTrainingGraduationCertificate(StringUtils.isBlank(exportOperationsUserVo.getTrainingGraduationCertificate()) ? null : exportOperationsUserVo.getTrainingGraduationCertificate());
+            xpOperationsUser.setDeleted(false);
+            xpOperationsUser.setCreateTime(LocalDateTime.now());
+            xpOperationsUser.setUpdateTime(LocalDateTime.now());
+            this.save(xpOperationsUser);
+            // 通过角色名称查询角色
+            String roleName = exportOperationsUserVo.getRoleName();
+            if(StringUtils.isNotBlank(roleName)){
+                List<SysRole> sysRoles = iSysRoleService.list(Wrappers.lambdaQuery(SysRole.class)
+                        .in(SysRole::getRoleName, Arrays.asList(roleName.split(","))));
+                if(!CollectionUtils.isEmpty(sysRoles)){
+                    List<XpOperationsRole> xpOperationsRoles = new ArrayList<>();
+                    for (SysRole sysRole : sysRoles) {
+                        XpOperationsRole xpOperationsRole = new XpOperationsRole();
+                        xpOperationsRole.setOperationsUserId(xpOperationsUser.getId());
+                        xpOperationsRole.setRoleId(sysRole.getId());
+                        xpOperationsRoles.add(xpOperationsRole);
                     }
+                    xpOperationsRoleService.saveBatch(xpOperationsRoles);
+                }else {
+                    throw new ServiceException("角色["+roleName+"]不存在",I18nKeyConstant.ROlE_NOT_EXISTS);
                 }
             }
-        } catch (Exception e) {
-            throw new RuntimeException(e);
         }
     }
 

--
Gitblit v1.7.1