From 5c863676b014e5ae2fa601d89a83160b6e7a6c07 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期五, 15 五月 2026 18:07:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.1' into 1.1
---
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserController.java | 94 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 89 insertions(+), 5 deletions(-)
diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserController.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserController.java
index 2c1deb8..7e7b0b2 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserController.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserController.java
@@ -1,11 +1,23 @@
package com.xiaopeng.account.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.xiaopeng.account.mapper.XpPayFrontMapper;
import com.xiaopeng.account.model.dto.CollectAddrDTO;
import com.xiaopeng.account.service.IXpAppUserService;
+import com.xiaopeng.api.dto.payFront.CreditPaySignDto;
+import com.xiaopeng.api.dto.payFront.CreditPaySignQueryDto;
+import com.xiaopeng.api.dto.payFront.UnsignCreditPayDto;
import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO;
import com.xiaopeng.api.dto.statistics.UserStatisticsDTO;
+import com.xiaopeng.api.feignClient.payFront.XpPayFrontClient;
import com.xiaopeng.api.model.account.XpAppUser;
+import com.xiaopeng.api.model.account.XpPayFront;
+import com.xiaopeng.api.vo.payFront.CreditPaySignQueryVo;
+import com.xiaopeng.api.vo.payFront.CreditPaySignVo;
import com.xiaopeng.common.core.domain.R;
+import com.xiaopeng.common.core.utils.OrderCodeUtil;
+import com.xiaopeng.common.core.web.domain.BaseModel;
import com.xiaopeng.unifiedverification.interceptor.XpClientCheck;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -34,6 +46,13 @@
@Resource
private IXpAppUserService xpAppUserService;
+
+ @Resource
+ private XpPayFrontClient xpPayFrontClient;
+
+
+ @Resource
+ private XpPayFrontMapper xpPayFrontMapper;
/**
* 获取用户统计数据(内部接口)
@@ -84,9 +103,25 @@
public R<Boolean> appUserGetPayPwd(HttpServletRequest request) {
// uid已通过拦截器otp校验,可以直接使用
String uid = request.getHeader("XP-Uid");
- //调用其他接口获取 免密结果 todo yyy
- Boolean is = true;
- return R.ok(is);
+ //调用其他接口获取 免密结果
+ Boolean signed = false;
+
+ CreditPaySignQueryDto creditPaySignQueryDto = new CreditPaySignQueryDto();
+ creditPaySignQueryDto.setUid(Long.valueOf(uid));
+ creditPaySignQueryDto.setBusinessId("xp-robotaxi");
+ creditPaySignQueryDto.setCategory("009001");
+ creditPaySignQueryDto.setBusinessOrderId(OrderCodeUtil.getOrderCode("MMZF"));
+ R<CreditPaySignQueryVo> creditPaySignQueryVoR = xpPayFrontClient.queryCreditPaySign(creditPaySignQueryDto);
+ if (creditPaySignQueryVoR.getCode()==200) {
+ CreditPaySignQueryVo data = creditPaySignQueryVoR.getData();
+ // 查看是否有签约的
+ long count = data.getSignList().stream().filter(e -> e.getStatus().equals("VALID")).count();
+ if (count > 0){
+ signed = true;
+ }
+ }
+
+ return R.ok(signed);
}
/**
@@ -95,12 +130,61 @@
@PostMapping("/api/v1/mini-program/appUser/setPayPwd")
@ApiOperation(value = "个人中心-设置免密结果", tags = {"小程序-设置免密结果"})
@XpClientCheck(checkToken = false, checkOtpToken = true)
- public R<?> appUserSetPayPwd(HttpServletRequest request) {
+ public R<?> appUserSetPayPwd(@RequestParam Integer status,HttpServletRequest request) {
// uid已通过拦截器otp校验,可以直接使用
String uid = request.getHeader("XP-Uid");
- //调用其他接口设置免密结果 todo yyy
+ //调用其他接口设置免密结果
+ if(status==1){
+ CreditPaySignDto creditPaySignDto = new CreditPaySignDto();
+ creditPaySignDto.setUid(Long.valueOf(uid));
+ creditPaySignDto.setBusinessId("xp-robotaxi");
+ creditPaySignDto.setCategory("009001");
+ creditPaySignDto.setBusinessOrderId(OrderCodeUtil.getOrderCode("MMZF"));
+ creditPaySignDto.setPayType("13");
+ R<CreditPaySignVo> creditPaySignVoR = xpPayFrontClient.creditPaySign(creditPaySignDto);
+ if(creditPaySignVoR.getCode()==200){
+ CreditPaySignVo data = creditPaySignVoR.getData();
+ XpPayFront xpPayFront = new XpPayFront();
+ xpPayFront.setUserId(Long.valueOf(uid));
+ xpPayFront.setBusinessOrderId(OrderCodeUtil.getOrderCode("MMZF"));
+ xpPayFrontMapper.insert(xpPayFront);
+ return R.ok(data);
+ }
+
+ }else {
+ UnsignCreditPayDto unsignCreditPayDto = new UnsignCreditPayDto();
+ unsignCreditPayDto.setUid(Long.valueOf(uid));
+ unsignCreditPayDto.setBusinessId("xp-robotaxi");
+ unsignCreditPayDto.setCategory("009001");
+
+
+ String businessOrderId= null;
+ // 查询用户开通的id
+ List<XpPayFront> xpPayFronts = xpPayFrontMapper.selectList(new LambdaQueryWrapper<XpPayFront>().eq(XpPayFront::getUserId, Long.valueOf(uid)).orderByDesc(BaseModel::getCreateTime));
+ if(xpPayFronts.size()>0){
+ businessOrderId = xpPayFronts.get(0).getBusinessOrderId();
+ }
+ if(businessOrderId==null){
+ return R.ok();
+ }
+ unsignCreditPayDto.setBusinessOrderId(businessOrderId);
+ unsignCreditPayDto.setPayType("13");
+ R<?> unsignCreditPayVoR = xpPayFrontClient.unsign(unsignCreditPayDto);
+ if(unsignCreditPayVoR.getCode()==200){
+ // 移除信息
+ xpPayFrontMapper.delete(new LambdaQueryWrapper<XpPayFront>().eq(XpPayFront::getUserId, Long.valueOf(uid)));
+ return R.ok();
+ }
+ }
+
return R.ok();
}
+
+
+
+
+
+
//-----------------------------------------------app接口------------------------------------------
}
--
Gitblit v1.7.1