|
@@ -7,6 +7,8 @@ import com.citu.module.menduner.common.util.LoginUserContext;
|
|
import com.citu.module.menduner.system.controller.app.jobhunt.order.vo.AppTradeOrderPageReqVO;
|
|
import com.citu.module.menduner.system.controller.app.jobhunt.order.vo.AppTradeOrderPageReqVO;
|
|
import com.citu.module.menduner.system.controller.app.jobhunt.order.vo.AppTradeOrderRespVO;
|
|
import com.citu.module.menduner.system.controller.app.jobhunt.order.vo.AppTradeOrderRespVO;
|
|
import com.citu.module.menduner.system.controller.app.recruit.order.vo.*;
|
|
import com.citu.module.menduner.system.controller.app.recruit.order.vo.*;
|
|
|
|
+import com.citu.module.menduner.system.controller.base.order.AppTradeOrderGetReqVO;
|
|
|
|
+import com.citu.module.menduner.system.controller.base.order.AppTradeOrderGetRespVO;
|
|
import com.citu.module.menduner.system.controller.base.order.TradeOrderCreateReqVO;
|
|
import com.citu.module.menduner.system.controller.base.order.TradeOrderCreateReqVO;
|
|
import com.citu.module.menduner.system.controller.base.order.TradeOrderPageReqVO;
|
|
import com.citu.module.menduner.system.controller.base.order.TradeOrderPageReqVO;
|
|
import com.citu.module.menduner.system.dal.dataobject.order.TradeOrderDO;
|
|
import com.citu.module.menduner.system.dal.dataobject.order.TradeOrderDO;
|
|
@@ -57,12 +59,7 @@ import static com.citu.module.pay.enums.ErrorCodeConstants.PAY_ORDER_NOT_FOUND;
|
|
@Slf4j
|
|
@Slf4j
|
|
public class TradeOrderServiceImpl implements TradeOrderService {
|
|
public class TradeOrderServiceImpl implements TradeOrderService {
|
|
|
|
|
|
- /**
|
|
|
|
- * 接入的应用编号
|
|
|
|
- * <p>
|
|
|
|
- * 从 [支付管理 -> 应用信息] 里添加
|
|
|
|
- */
|
|
|
|
- private static final String PAY_APP_KEY = "mde_job";
|
|
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private PayOrderApi payOrderApi;
|
|
private PayOrderApi payOrderApi;
|
|
@Resource
|
|
@Resource
|
|
@@ -82,11 +79,12 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public Long createOrder(TradeOrderCreateReqVO createReqVO) {
|
|
|
|
|
|
+ public Long createOrder(TradeOrderCreateReqVO createReqVO,String payKey) {
|
|
// 1.1 获得商品
|
|
// 1.1 获得商品
|
|
// 1.2 插入 订单
|
|
// 1.2 插入 订单
|
|
TradeOrderDO tradeOrderDO = new TradeOrderDO().setUserId(createReqVO.getUserId())
|
|
TradeOrderDO tradeOrderDO = new TradeOrderDO().setUserId(createReqVO.getUserId())
|
|
.setUserType(createReqVO.getUserType()).setEnterpriseId(createReqVO.getEnterpriseId())
|
|
.setUserType(createReqVO.getUserType()).setEnterpriseId(createReqVO.getEnterpriseId())
|
|
|
|
+ .setAppKey(payKey)
|
|
.setSpuId(createReqVO.getSpuId()).setSpuName(createReqVO.getSpuName())
|
|
.setSpuId(createReqVO.getSpuId()).setSpuName(createReqVO.getSpuName())
|
|
.setPrice(createReqVO.getPrice()).setPayStatus(false).setRefundPrice(0L);
|
|
.setPrice(createReqVO.getPrice()).setPayStatus(false).setRefundPrice(0L);
|
|
// 初始化默认
|
|
// 初始化默认
|
|
@@ -97,7 +95,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
|
|
|
|
|
// 2.1 创建支付单
|
|
// 2.1 创建支付单
|
|
Long payOrderId = payOrderApi.createOrder(new PayOrderCreateReqDTO()
|
|
Long payOrderId = payOrderApi.createOrder(new PayOrderCreateReqDTO()
|
|
- .setAppKey(PAY_APP_KEY).setUserIp(getClientIP()) // 支付应用
|
|
|
|
|
|
+ .setAppKey(payKey).setUserIp(getClientIP()) // 支付应用
|
|
.setMerchantOrderId(tradeOrderDO.getId().toString()) // 业务的订单编号
|
|
.setMerchantOrderId(tradeOrderDO.getId().toString()) // 业务的订单编号
|
|
.setSubject(createReqVO.getSpuName()).setBody("")
|
|
.setSubject(createReqVO.getSpuName()).setBody("")
|
|
.setPrice(Math.toIntExact(createReqVO.getPrice())) // 价格信息
|
|
.setPrice(Math.toIntExact(createReqVO.getPrice())) // 价格信息
|
|
@@ -144,7 +142,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
|
}
|
|
}
|
|
//发送mq做业务逻辑处理
|
|
//发送mq做业务逻辑处理
|
|
TradeOrderDO order = tradeOrderMapper.selectById(id);
|
|
TradeOrderDO order = tradeOrderMapper.selectById(id);
|
|
- orderProducer.send(order.getSpuId(), TradeOrderTypeEnum.getByType(order.getType()));
|
|
|
|
|
|
+ orderProducer.send(order);
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@@ -215,7 +213,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
|
String refundId = order.getId() + "-refund";
|
|
String refundId = order.getId() + "-refund";
|
|
// 2.2 创建退款单
|
|
// 2.2 创建退款单
|
|
Long payRefundId = payRefundApi.createRefund(new PayRefundCreateReqDTO()
|
|
Long payRefundId = payRefundApi.createRefund(new PayRefundCreateReqDTO()
|
|
- .setAppKey(PAY_APP_KEY).setUserIp(getClientIP()) // 支付应用
|
|
|
|
|
|
+ .setAppKey(order.getAppKey()).setUserIp(getClientIP()) // 支付应用
|
|
.setMerchantOrderId(String.valueOf(order.getId())) // 支付单号
|
|
.setMerchantOrderId(String.valueOf(order.getId())) // 支付单号
|
|
.setMerchantRefundId(refundId)
|
|
.setMerchantRefundId(refundId)
|
|
.setReason("想退钱").setPrice(Math.toIntExact(order.getPrice()))).getCheckedData();// 价格信息
|
|
.setReason("想退钱").setPrice(Math.toIntExact(order.getPrice()))).getCheckedData();// 价格信息
|
|
@@ -342,30 +340,15 @@ public class TradeOrderServiceImpl implements TradeOrderService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public Long create(AppRecruitTradeOrderCreateReqVO reqVO) {
|
|
|
|
- // 获取待支付的订单
|
|
|
|
- TradeOrderTypeEnum type = TradeOrderTypeEnum.getByType(reqVO.getType());
|
|
|
|
- TradeOrderCreateReqVO dto = new TradeOrderCreateReqVO();
|
|
|
|
- dto.setUserType(String.valueOf(MdeUserTypeEnum.ENTERPRISE_USER.getType()));
|
|
|
|
- dto.setEnterpriseId(LoginUserContext.getEnterpriseId());
|
|
|
|
- dto.setUserId(LoginUserContext.getUserId());
|
|
|
|
- dto.setType(reqVO.getType());
|
|
|
|
- dto.setSpuId(reqVO.getSpuId());
|
|
|
|
- dto.setSpuName(type.getName() + ": " + reqVO.getSpuName());
|
|
|
|
- dto.setPrice(reqVO.getPrice());
|
|
|
|
- return createOrder(dto);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Override
|
|
|
|
- public AppRecruitTradeOrderGetRespVO getOrderByUnpaid(AppRecruitTradeOrderGetReqVO reqVO) {
|
|
|
|
|
|
+ public AppTradeOrderGetRespVO getOrderByUnpaid(AppTradeOrderGetReqVO reqVO, Long enterpriseId) {
|
|
|
|
|
|
- TradeOrderDO order = tradeOrderMapper.getOrderByUnpaid(LoginUserContext.getEnterpriseId(),
|
|
|
|
|
|
+ TradeOrderDO order = tradeOrderMapper.getOrderByUnpaid(enterpriseId,
|
|
LoginUserContext.getUserId(), reqVO.getType(), reqVO.getSpuId());
|
|
LoginUserContext.getUserId(), reqVO.getType(), reqVO.getSpuId());
|
|
if (null == order) {
|
|
if (null == order) {
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
PayOrderBaseRespDTO respDTO = payOrderApi.getOrder2(order.getPayOrderId()).getCheckedData();
|
|
PayOrderBaseRespDTO respDTO = payOrderApi.getOrder2(order.getPayOrderId()).getCheckedData();
|
|
- AppRecruitTradeOrderGetRespVO respVO = new AppRecruitTradeOrderGetRespVO();
|
|
|
|
|
|
+ AppTradeOrderGetRespVO respVO = new AppTradeOrderGetRespVO();
|
|
respVO.setOrder(order);
|
|
respVO.setOrder(order);
|
|
respVO.setPayOrder(respDTO);
|
|
respVO.setPayOrder(respDTO);
|
|
|
|
|