From 20baa77b1ce6c6dc980077965927a5877440a17d Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 24 二月 2026 18:37:13 +0800
Subject: [PATCH] 管理后台,人员资质审核,打卡地址管理
---
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpQualificationAuditServiceImpl.java | 79 +++++++++++++++++++++++++++++++++++++++
1 files changed, 79 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpQualificationAuditServiceImpl.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpQualificationAuditServiceImpl.java
index 9f5aa08..d217f3c 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpQualificationAuditServiceImpl.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpQualificationAuditServiceImpl.java
@@ -1,10 +1,31 @@
package com.xiaopeng.account.service.impl;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xiaopeng.account.mapper.SysRoleMapper;
+import com.xiaopeng.account.mapper.XpOperationsRoleMapper;
+import com.xiaopeng.account.mapper.XpOperationsUserMapper;
import com.xiaopeng.account.mapper.XpQualificationAuditMapper;
+import com.xiaopeng.account.model.dto.QualificationReviewDTO;
+import com.xiaopeng.account.model.query.XpQualificationAuditQuery;
+import com.xiaopeng.account.service.ISysRoleService;
import com.xiaopeng.account.service.IXpQualificationAuditService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xiaopeng.api.model.account.SysRole;
+import com.xiaopeng.api.model.account.XpOperationsRole;
+import com.xiaopeng.api.model.account.XpOperationsUser;
import com.xiaopeng.api.model.account.XpQualificationAudit;
+import com.xiaopeng.api.vo.account.XpQualificationAuditVO;
+import com.xiaopeng.common.core.web.page.PageInfo;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.time.LocalDateTime;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
* <p>
@@ -17,4 +38,62 @@
@Service
public class XpQualificationAuditServiceImpl extends ServiceImpl<XpQualificationAuditMapper, XpQualificationAudit> implements IXpQualificationAuditService {
+ @Autowired
+ private XpOperationsRoleMapper xpOperationsRoleMapper;
+ @Autowired
+ private SysRoleMapper sysRoleMapper;
+
+ @Override
+ public PageInfo<XpQualificationAuditVO> pageList(XpQualificationAuditQuery query) {
+ PageInfo<XpQualificationAuditVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
+ List<XpQualificationAuditVO> list = this.baseMapper.pageList(pageInfo, query);
+ if(CollectionUtils.isEmpty(list)){
+ return pageInfo;
+ }
+
+ // 查询角色名称
+ List<Long> operationsUserIds = list.stream().map(XpQualificationAuditVO::getOperationsUserId).collect(Collectors.toList());
+
+ // 查询用户信息
+ List<XpOperationsRole> xpOperationsRoles = xpOperationsRoleMapper.selectList(Wrappers.lambdaQuery(XpOperationsRole.class)
+ .in(XpOperationsRole::getOperationsUserId, operationsUserIds));
+
+ if(!CollectionUtils.isEmpty(xpOperationsRoles)){
+ List<Long> roleIds = xpOperationsRoles.stream().map(XpOperationsRole::getRoleId).collect(Collectors.toList());
+ // 查询列表关联的所有角色
+ List<SysRole> sysRoles = sysRoleMapper.selectList(Wrappers.lambdaQuery(SysRole.class)
+ .in(SysRole::getId, roleIds));
+ if(!CollectionUtils.isEmpty(sysRoles)){
+
+ // 角色匹配账号id
+ Map<Long, List<SysRole>> map = new HashMap<>();
+ for (XpOperationsRole xpOperationsRole : xpOperationsRoles) {
+ List<SysRole> sysRoleList = sysRoles.stream().filter(sysRole -> sysRole.getId().equals(xpOperationsRole.getRoleId())).collect(Collectors.toList());
+ map.put(xpOperationsRole.getOperationsUserId(), sysRoleList);
+ }
+
+ // 角色名称匹配
+ for (XpQualificationAuditVO xpQualificationAuditVO : list) {
+ map.get(xpQualificationAuditVO.getOperationsUserId()).forEach(sysRole -> {
+ xpQualificationAuditVO.getRoleNames().add(sysRole.getRoleName());
+ });
+ }
+ }
+ }
+
+ pageInfo.setRecords(list);
+ return pageInfo;
+ }
+
+ @Override
+ public void audit(QualificationReviewDTO dto, Long userid) {
+ List<XpQualificationAudit> qualificationAudits = this.listByIds(dto.getIds());
+ for (XpQualificationAudit qualificationAudit : qualificationAudits) {
+ qualificationAudit.setAuditUserId(userid);
+ qualificationAudit.setAuditTime(LocalDateTime.now());
+ qualificationAudit.setAuditStatus(dto.getAuditStatus());
+// qualificationAudit.setAuditRemarks(dto.getAuditRemarks());
+ }
+ this.updateBatchById(qualificationAudits);
+ }
}
--
Gitblit v1.7.1