From 152a1dc93176e2b1d713b7f1246bd0faae051309 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 06 三月 2026 17:27:03 +0800
Subject: [PATCH] 运维人员导入修改

---
 xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpOperationsUserServiceImpl.java |   29 ++++++++++++++++++++++++-----
 1 files changed, 24 insertions(+), 5 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 0d323c2..b524d86 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
@@ -354,17 +354,36 @@
                 xpOperationsUser.setUniqueNumber(exportOperationsUserVo.getUniqueNumber());
                 xpOperationsUser.setAvatar(exportOperationsUserVo.getAvatar());
                 xpOperationsUser.setPhoneNumber(exportOperationsUserVo.getPhoneNumber());
+                xpOperationsUser.setPassword(SecurityUtils.encryptPassword("a123456"));
                 xpOperationsUser.setRemarks(exportOperationsUserVo.getRemarks());
                 xpOperationsUser.setStatus(true);
-                xpOperationsUser.setIdCardFront(exportOperationsUserVo.getIdCardFront());
-                xpOperationsUser.setIdCardBack(exportOperationsUserVo.getIdCardBack());
-                xpOperationsUser.setDriverLicense(exportOperationsUserVo.getDriverLicense());
-                xpOperationsUser.setCertificateOfNoCriminalRecord(exportOperationsUserVo.getCertificateOfNoCriminalRecord());
-                xpOperationsUser.setTrainingGraduationCertificate(exportOperationsUserVo.getTrainingGraduationCertificate());
+                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