From 76b3532393aa98c2daaeb67caeefa2ab9556e866 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期二, 12 五月 2026 09:26:48 +0800
Subject: [PATCH] 日志
---
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpOperationsUserController.java | 69 +++++++++++++++++++++++++++++++++-
1 files changed, 67 insertions(+), 2 deletions(-)
diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpOperationsUserController.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpOperationsUserController.java
index 59aa63f..b9a3a73 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpOperationsUserController.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpOperationsUserController.java
@@ -30,7 +30,11 @@
import com.xiaopeng.api.vo.account.XpOperationsUserWithRoleVO;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
+import com.xiaopeng.common.core.utils.SensitiveDataCryptoUtil;
import com.xiaopeng.common.core.web.page.PageInfo;
+import com.xiaopeng.common.log.annotation.AdminOperationLog;
+import com.xiaopeng.common.log.enums.AdminBusinessType;
+import com.xiaopeng.common.log.enums.AdminOperationType;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.evi.oss.service.AliOssService;
import io.swagger.annotations.ApiOperation;
@@ -95,7 +99,9 @@
*/
@PostMapping("/logan/inner/xpOperationsUser/listByIds")
public R<List<XpOperationsUser>> listByIds(@RequestBody List<Long> ids) {
- return R.ok(xpOperationsUserService.listByIds(ids));
+ List<XpOperationsUser> users = xpOperationsUserService.listByIds(ids);
+ users.forEach(user -> user.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(user.getPhoneNumber())));
+ return R.ok(users);
}
@PostMapping("/logan/inner/xpOperationsUser/pageListByIds")
@@ -118,6 +124,7 @@
XpOperationsRole operationsUserId = xpOperationsRoleMapper.selectOne(new QueryWrapper<XpOperationsRole>().eq("operations_user_id", id));
SysRole sysRole = sysRoleService.getById(operationsUserId.getRoleId());
operationsUser.setRoleName(sysRole.getRoleName());
+ operationsUser.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(operationsUser.getPhoneNumber()));
return R.ok(operationsUser);
}
@@ -167,8 +174,10 @@
List<XpOperationsUserWithRoleVO> result = xpOperationsRoleMapper.selectUsersByConditions(
dto.getNickName(),
dto.getPhoneNumber(),
+ SensitiveDataCryptoUtil.queryValues(dto.getPhoneNumber()),
dto.getRoleId()
);
+ result.forEach(user -> user.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(user.getPhoneNumber())));
return R.ok(result);
}
@@ -245,6 +254,7 @@
@PostMapping("/api/v1/operationsUser/listAll")
public R<List<XpOperationsUser>> listAll() {
List<XpOperationsUser> listAll = xpOperationsUserService.list();
+ listAll.forEach(user -> user.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(user.getPhoneNumber())));
for (XpOperationsUser xpOperationsUser : listAll) {
// todo 需要上传工单id,根据距离进行排序
}
@@ -261,23 +271,42 @@
List<XpOperationsUser> users = xpOperationsUserService.lambdaQuery()
.eq(XpOperationsUser::getStatus, true)
.list();
+ users.forEach(user -> user.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(user.getPhoneNumber())));
return R.ok(users);
}
@ApiOperation(value = "运维人员管理新增", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/add")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.ADD,
+ content = "新增运维人员",
+ appendRequestData = true
+ )
public R<String> add(@RequestBody XpOperationsUserAddDTO dto) {
return xpOperationsUserService.addOperationsUser(dto);
}
@ApiOperation(value = "运维人员管理编辑", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/edit")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.EDIT,
+ content = "编辑运维人员",
+ appendRequestData = true
+ )
public R<String> edit(@RequestBody XpOperationsUserAddDTO dto) {
return xpOperationsUserService.editOperationsUser(dto);
}
@ApiOperation(value = "运维人员管理启用禁用", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/enableDisableById")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.SWITCH_STATUS,
+ content = "运维人员管理启用禁用",
+ appendRequestData = true
+ )
public R<String> enableDisableById(@RequestBody EnableDisableDTO dto) {
xpOperationsUserService.enableDisableById(dto);
return R.ok();
@@ -285,6 +314,12 @@
@ApiOperation(value = "运维人员管理删除", tags = {"管理后台-运维执行"})
@DeleteMapping("/api/v1/operationsUser/deleteById")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.DELETE,
+ content = "删除运维人员",
+ appendRequestData = true
+ )
public R<String> deleteById(@RequestParam Long id) {
try {
R<XpFleet> fleetResult = xpFleetClient.getFleetByOperationsUserId(id);
@@ -313,6 +348,12 @@
@ApiOperation(value = "运维人员管理重置密码", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/rePassword")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.RESET_PASSWORD,
+ content = "重置运维人员密码",
+ appendRequestData = true
+ )
public R<String> rePassword(@RequestBody RePasswordDTO dto) {
xpOperationsUserService.rePassword(dto);
return R.ok();
@@ -406,6 +447,12 @@
@ApiOperation(value = "运维人员管理导出列表", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/exportOperationsUser")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.EXPORT,
+ content = "导出运维人员列表",
+ appendRequestData = true
+ )
public void exportOperationsUser(@RequestBody XpOperationsUserQuery query, HttpServletResponse response) {
xpOperationsUserService.exportOperationsUser(query, response);
}
@@ -413,6 +460,12 @@
@ApiOperation(value = "运维人员管理导出模板", tags = {"管理后台-运维执行"})
@GetMapping("/api/v1/operationsUser/exportTemplate")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.EXPORT,
+ content = "导出运维人员模板",
+ appendRequestData = false
+ )
public void exportTemplate(HttpServletResponse response) {
xpOperationsUserService.exportTemplate(response);
}
@@ -420,6 +473,12 @@
@ApiOperation(value = "运维人员管理导入数据", tags = {"管理后台-运维执行"})
@PostMapping("/api/v1/operationsUser/importOperationsUser")
+ @AdminOperationLog(
+ businessType = AdminBusinessType.OPERATIONS_USER_MANAGEMENT,
+ operationType = AdminOperationType.IMPORT,
+ content = "导入运维人员数据",
+ appendRequestData = false
+ )
public R<String> importOperationsUser(@RequestParam("file") MultipartFile file) {
xpOperationsUserService.importOperationsUser(file);
return R.ok();
@@ -447,10 +506,16 @@
@ApiOperation(value = "根据手机号精确查询运维用户", tags = {"内部接口"})
@GetMapping("/logan/inner/xpOperationsUser/getByExactPhone")
public R<XpOperationsUser> getByExactPhone(@RequestParam("phoneNumber") String phoneNumber) {
+ if (com.xiaopeng.common.core.utils.StringUtils.isBlank(phoneNumber)) {
+ return R.ok();
+ }
XpOperationsUser user = xpOperationsUserService.lambdaQuery()
- .eq(XpOperationsUser::getPhoneNumber, phoneNumber)
+ .in(XpOperationsUser::getPhoneNumber, SensitiveDataCryptoUtil.queryValues(phoneNumber))
.last("LIMIT 1")
.one();
+ if (user != null) {
+ user.setPhoneNumber(SensitiveDataCryptoUtil.decryptIfPossible(user.getPhoneNumber()));
+ }
return R.ok(user);
}
}
--
Gitblit v1.7.1