This commit is contained in:
张良(004796)
2024-04-28 16:05:16 +08:00
parent 9415943827
commit fea74a2ac4
4 changed files with 40 additions and 1 deletions

View File

@@ -6,14 +6,20 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.helper.LoginHelper;
import com.ruoyi.xq.domain.AuthOrder; import com.ruoyi.xq.domain.AuthOrder;
import com.ruoyi.xq.dto.app.pay.OrderCreateVo; import com.ruoyi.xq.dto.app.pay.OrderCreateVo;
import com.ruoyi.xq.enums.common.SystemConfigEnum;
import com.ruoyi.xq.manager.SystemConfigManager;
import com.ruoyi.xq.service.AuthOrderService; import com.ruoyi.xq.service.AuthOrderService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import org.apache.commons.collections4.map.HashedMap;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.Map;
@RestController @RestController
@RequestMapping("/api/auth") @RequestMapping("/api/auth")
@Tag(name = "实名认证订单相关") @Tag(name = "实名认证订单相关")
@@ -21,6 +27,8 @@ public class AuthOrderAppController {
@Autowired @Autowired
private AuthOrderService authOrderService; private AuthOrderService authOrderService;
@Autowired
private SystemConfigManager systemCOnfigManager;
@PostMapping("/order/create") @PostMapping("/order/create")
@Operation(summary = "生成VIP订单") @Operation(summary = "生成VIP订单")
@@ -34,4 +42,14 @@ public class AuthOrderAppController {
result.setOrderName(authOrder.getOrderName()); result.setOrderName(authOrder.getOrderName());
return R.ok(result); return R.ok(result);
} }
@PostMapping("/price")
@Operation(summary = "获取实名认证价格")
public R<Map<String,Object>> getAuthOrderPrice(){
BigDecimal authCardPrice = systemCOnfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.AUTH_CARD_PRICE);
Map<String,Object> map = new HashedMap<>();
map.put("price",authCardPrice);
return R.ok(map);
}
} }

View File

@@ -17,6 +17,7 @@ public enum SystemConfigEnum {
WX_TRANS_PRICE("0.01", "微信交换次数价格", SystemConfigGroupEnum.BUSINESS, null), WX_TRANS_PRICE("0.01", "微信交换次数价格", SystemConfigGroupEnum.BUSINESS, null),
OPEN_WX_WITHDRAW("0", "是否开启微信提现", SystemConfigGroupEnum.BUSINESS, null), OPEN_WX_WITHDRAW("0", "是否开启微信提现", SystemConfigGroupEnum.BUSINESS, null),
OPEN_ALI_WITHDRAW("1", "是否开启支付宝提现", SystemConfigGroupEnum.BUSINESS, null), OPEN_ALI_WITHDRAW("1", "是否开启支付宝提现", SystemConfigGroupEnum.BUSINESS, null),
AUTH_CARD_PRICE("0.01", "实名认证收费价格", SystemConfigGroupEnum.BUSINESS, null),
VIP_INVITE_RATE("0.30","默认会员分销比例",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()), VIP_INVITE_RATE("0.30","默认会员分销比例",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
CUSTOMER_SERVICE_URL("https://xq-oss-123121.oss-cn-guangzhou.aliyuncs.com/xq/images/service/customer-service.png","客服地址",SystemConfigGroupEnum.BUSINESS, null), CUSTOMER_SERVICE_URL("https://xq-oss-123121.oss-cn-guangzhou.aliyuncs.com/xq/images/service/customer-service.png","客服地址",SystemConfigGroupEnum.BUSINESS, null),
SENSITIVE_ENABLE("1", "是否开启手机号脱敏",SystemConfigGroupEnum.SYSTEM,new BooleanSystemConfigCheck()), SENSITIVE_ENABLE("1", "是否开启手机号脱敏",SystemConfigGroupEnum.SYSTEM,new BooleanSystemConfigCheck()),

View File

@@ -1,6 +1,7 @@
package com.ruoyi.xq.manager; package com.ruoyi.xq.manager;
import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.xq.domain.AuthOrder;
import com.ruoyi.xq.domain.VipOrder; import com.ruoyi.xq.domain.VipOrder;
import com.ruoyi.xq.domain.VipPrice; import com.ruoyi.xq.domain.VipPrice;
import com.ruoyi.xq.domain.WxTransOrder; import com.ruoyi.xq.domain.WxTransOrder;
@@ -71,6 +72,20 @@ public class PayManager {
dto.setPrice(wxTransOrder.getWxPrice()); dto.setPrice(wxTransOrder.getWxPrice());
dto.setOrderNo(wxTransOrder.getOrderNo()); dto.setOrderNo(wxTransOrder.getOrderNo());
break; break;
case AUTH_ORDER:
AuthOrder authOrder = authOrderService.getByOrderNo(orderNo);
if(authOrder == null){
throw new ServiceException("订单不存在,请重新下单支付");
}
if(!PayStatusEnum.READY_PAY.getCode().equals(authOrder.getPayStatus())){
throw new ServiceException("订单状态有误,请重新下单支付");
}
dto = new PayOrderInfoDTO();
dto.setBody(authOrder.getBody());
dto.setSubject(authOrder.getBody());
dto.setPrice(authOrder.getPrice());
dto.setOrderNo(authOrder.getOrderNo());
break;
default: default:
break; break;
} }

View File

@@ -10,10 +10,12 @@ import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.dto.admin.authOrder.AuthOrderAdminVo; import com.ruoyi.xq.dto.admin.authOrder.AuthOrderAdminVo;
import com.ruoyi.xq.dto.app.pay.ConsumeResp; import com.ruoyi.xq.dto.app.pay.ConsumeResp;
import com.ruoyi.xq.enums.common.OrderTypeEnum; import com.ruoyi.xq.enums.common.OrderTypeEnum;
import com.ruoyi.xq.enums.common.SystemConfigEnum;
import com.ruoyi.xq.enums.common.TraceIdEnum; import com.ruoyi.xq.enums.common.TraceIdEnum;
import com.ruoyi.xq.enums.pay.PayStatusEnum; import com.ruoyi.xq.enums.pay.PayStatusEnum;
import com.ruoyi.xq.enums.pay.PlatformTypeEnum; import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
import com.ruoyi.xq.manager.OrderNoUtil; import com.ruoyi.xq.manager.OrderNoUtil;
import com.ruoyi.xq.manager.SystemConfigManager;
import com.ruoyi.xq.manager.TraceIdManager; import com.ruoyi.xq.manager.TraceIdManager;
import com.ruoyi.xq.mapper.AuthOrderMapper; import com.ruoyi.xq.mapper.AuthOrderMapper;
import com.ruoyi.xq.service.AuthOrderService; import com.ruoyi.xq.service.AuthOrderService;
@@ -38,6 +40,8 @@ public class AuthOrderServiceImpl extends ServiceImpl<AuthOrderMapper,AuthOrder>
@Autowired @Autowired
private UserService userService; private UserService userService;
@Autowired
private SystemConfigManager systemCOnfigManager;
@Override @Override
public Page<AuthOrderAdminVo> pageAdmin(PageQuery pageQuery, AuthOrderAdminVo bo) { public Page<AuthOrderAdminVo> pageAdmin(PageQuery pageQuery, AuthOrderAdminVo bo) {
@@ -46,6 +50,7 @@ public class AuthOrderServiceImpl extends ServiceImpl<AuthOrderMapper,AuthOrder>
@Override @Override
public AuthOrder createVipOrder(Long userId) { public AuthOrder createVipOrder(Long userId) {
BigDecimal authCardPrice = systemCOnfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.AUTH_CARD_PRICE);
String orderNo = OrderNoUtil.gen(OrderTypeEnum.AUTH_ORDER); String orderNo = OrderNoUtil.gen(OrderTypeEnum.AUTH_ORDER);
User user = userService.getById(userId); User user = userService.getById(userId);
AuthOrder authOrder = new AuthOrder(); AuthOrder authOrder = new AuthOrder();
@@ -53,7 +58,7 @@ public class AuthOrderServiceImpl extends ServiceImpl<AuthOrderMapper,AuthOrder>
authOrder.setUsercode(user.getUsercode()); authOrder.setUsercode(user.getUsercode());
authOrder.setOrderName("实名认证订单"); authOrder.setOrderName("实名认证订单");
authOrder.setBody("实名认证订单"); authOrder.setBody("实名认证订单");
authOrder.setPrice(BigDecimal.valueOf(10)); authOrder.setPrice(authCardPrice);
authOrder.setOrderNo(orderNo); authOrder.setOrderNo(orderNo);
authOrder.setPayStatus(PayStatusEnum.READY_PAY.getCode()); authOrder.setPayStatus(PayStatusEnum.READY_PAY.getCode());
this.save(authOrder); this.save(authOrder);