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.xq.domain.AuthOrder;
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 io.swagger.v3.oas.annotations.Operation;
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.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.Map;
@RestController
@RequestMapping("/api/auth")
@Tag(name = "实名认证订单相关")
@@ -21,6 +27,8 @@ public class AuthOrderAppController {
@Autowired
private AuthOrderService authOrderService;
@Autowired
private SystemConfigManager systemCOnfigManager;
@PostMapping("/order/create")
@Operation(summary = "生成VIP订单")
@@ -34,4 +42,14 @@ public class AuthOrderAppController {
result.setOrderName(authOrder.getOrderName());
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),
OPEN_WX_WITHDRAW("0", "是否开启微信提现", 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()),
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()),

View File

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