From d48ee5dcadadf06a9bc93fe34de2af3c8bb0cb25 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期日, 01 三月 2026 07:42:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/TokenController.java |   67 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 21 deletions(-)

diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/TokenController.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/TokenController.java
index 82fc4ec..20c8a75 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/TokenController.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/TokenController.java
@@ -1,6 +1,5 @@
 package com.xiaopeng.account.controller;
 
-import com.xiaopeng.account.constant.I18nKeyConstant;
 import com.xiaopeng.account.service.ISysUserService;
 import com.xiaopeng.account.service.IXpOperationsUserService;
 import com.xiaopeng.account.service.impl.SysLoginService;
@@ -12,10 +11,8 @@
 import com.xiaopeng.api.model.account.XpOperationsUser;
 import com.xiaopeng.api.vo.account.LoginOperationUser;
 import com.xiaopeng.api.vo.account.LoginUser;
-import com.xiaopeng.api.vo.operation.SmsVo;
 import com.xiaopeng.common.core.constant.VerificationCodeConstants;
 import com.xiaopeng.common.core.domain.R;
-import com.xiaopeng.common.core.exception.ServiceException;
 import com.xiaopeng.common.core.utils.JwtUtils;
 import com.xiaopeng.common.core.utils.StringUtils;
 import com.xiaopeng.common.redis.service.RedisService;
@@ -26,10 +23,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -64,6 +58,8 @@
 
     @Value("${sms.appid}")
     private String sms_appid;
+    // @Autowired
+    // private EncryptionDecryptionUtil encryptionDecryptionUtil;
 
     @ApiOperation(value = "用户登录", tags = "管理后台-用户登录")
     @PostMapping("/base/v1/login")
@@ -81,7 +77,36 @@
 		// 修改用户最后登录时间
         return R.ok(map);
     }
-
+   /* @ApiOperation(value = "解密测试", tags = "管理后台-用户登录")
+    @PostMapping("/base/v1/decrypted")
+    public R<?> decrypted(@RequestBody LoginBody form, HttpServletRequest request) {
+        String decrypt = encryptionDecryptionUtil.decrypt(form.getUsername(), request);
+        return R.ok(decrypt);
+    }
+    @ApiOperation(value = "加密测试", tags = "管理后台-用户登录")
+    @GetMapping("/base/v1/encrypted")
+    public R<String> encrypted(HttpServletRequest request, HttpServletResponse response) {
+        String content = "Hello, World!";
+        String sessionId = request.getSession(true).getId();
+        if(StringUtils.isEmpty(sessionId)){
+            throw new ServiceException("请求失败,请稍后重试", I18nKeyConstant.REQUEST_FAILED);
+        }
+        Object cacheObject = redisService.getCacheObject("session:id:" + sessionId);
+        if (null != cacheObject) {
+            JSONObject jsonObject = JSONObject.parseObject(cacheObject.toString());
+            return R.ok(jsonObject.getString("publicKey"));
+        }
+        KeyPair keyPair = RSAUtil.generateKeyPair();
+        String publicKey = RSAUtil.getPublicKey(keyPair);
+        String privateKey = RSAUtil.getPrivateKey(keyPair);
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("publicKey", publicKey);
+        jsonObject.put("privateKey", privateKey);
+        redisService.setCacheObject("session:id:" + sessionId, jsonObject.toJSONString(), 1L, TimeUnit.MINUTES);
+        JSONObject encrypt = EncryptionDecryptionUtil.encrypt(content, privateKey);
+        response.setHeader("xps", encrypt.getString("aes_key"));
+        return R.ok(encrypt.getString("content"));
+    }*/
     @ApiOperation(value = "账号密码登录", tags = {"运维APP登录"})
     @PostMapping("base/v1/operationPasswordLogin")
     public R<?> operationPasswordLogin(@RequestBody AppLoginPasswordDTO appLoginPasswordDTO, HttpServletRequest request) {
@@ -142,19 +167,19 @@
 				codeType = VerificationCodeConstants.UPDATE_PASSWORD_CODE;
 				break;
         }
-
-        SmsVo vo = new SmsVo();
-        vo.setAppId(sms_appid);
-        vo.setPushType(1);
-		vo.setReceivers(appLoginPasswordDTO.getPhoneNumber());
-        vo.setTemplateCode("RobotaxiVerifyCodeSmsTpl");
-        vo.setAppPushConfigCode("RobotaxiVerifyCodeSms");
-		vo.setParams(new HashMap<>());
-		vo.getParams().put("code", code);
-        SmsDto smsDto = smsClient.pushSms(vo);
-        if(null == smsDto || smsDto.getCode() != 200){
-            throw new ServiceException("短信发送失败", I18nKeyConstant.SMS_PUSH_FAILED);
-        }
+        //TODO 短信服务开通后再开启
+        // SmsVo vo = new SmsVo();
+        // vo.setAppId(sms_appid);
+        // vo.setPushType(1);
+		// vo.setReceivers(appLoginPasswordDTO.getPhoneNumber());
+        // vo.setTemplateCode("RobotaxiVerifyCodeSmsTpl");
+        // vo.setAppPushConfigCode("RobotaxiVerifyCodeSms");
+		// vo.setParams(new HashMap<>());
+		// vo.getParams().put("code", code);
+        // SmsDto smsDto = smsClient.pushSms(vo);
+        // if(null == smsDto || smsDto.getCode() != 200){
+        //     throw new ServiceException("短信发送失败", I18nKeyConstant.SMS_PUSH_FAILED);
+        // }
         redisService.setCacheObject(codeType+appLoginPasswordDTO.getPhoneNumber(), code, 60L, TimeUnit.SECONDS);
         return R.ok();
     }

--
Gitblit v1.7.1