Commit ed0e03ba by ping.wu

积分支付记录

parent a016791c
......@@ -23,6 +23,7 @@ import cn.freemud.entities.dto.user.UseScoreRequest;
import cn.freemud.entities.vo.*;
import cn.freemud.enums.OrderBeanType;
import cn.freemud.enums.ResponseResult;
import cn.freemud.enums.integralproduct.IntegralProductStatusEnum;
import cn.freemud.service.CouponService;
import cn.freemud.service.PointsMallOrderService;
import cn.freemud.service.thirdparty.CustomerPropertyClient;
......@@ -48,10 +49,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType;
import com.freemud.application.sdk.api.ordercenter.request.OrderAffirmReq;
import com.freemud.application.sdk.api.ordercenter.request.OrderUserConditionsReq;
import com.freemud.application.sdk.api.ordercenter.request.PaySuccessReq;
import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest;
import com.freemud.application.sdk.api.ordercenter.request.create.DeliveryContactInfoCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderItemCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.*;
import com.freemud.application.sdk.api.ordercenter.response.QueryOrderForUserResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.DeliveryContactInfoResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
......@@ -69,6 +67,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.util.*;
@Component
......@@ -110,7 +109,6 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
return ResponseUtil.error(ResponseResult.NOT_LOGIN);
}
String partnerId = userLoginInfoDto.getPartnerId();
// String storeId = "99999";
String memberId = userLoginInfoDto.getMemberId();
String openId = userLoginInfoDto.getOpenId();
String appId = userLoginInfoDto.getAppId();
......@@ -132,10 +130,10 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
if (!Objects.equals(ResponseCodeConstant.RESPONSE_SUCCESS, productInfosDto.getStatusCode()) || CollectionUtils.isEmpty(productInfosDto.getResult())) {
return ResponseUtil.error(ResponseCodeConstant.RESPONSE_ERROR_STR, "商品异常");
}
// if (productInfosDto.getResult().get(0).getStatus() != IntegralProductStatusEnum.STATUS_2.getCode()) {
// IntegralProductStatusEnum message = IntegralProductStatusEnum.getByCode(productInfosDto.getResult().get(0).getStatus());
// return ResponseUtil.error(ResponseCodeConstant.RESPONSE_ERROR_STR, message != null ? message.getDesc() : "商品异常");
// }
if (productInfosDto.getResult().get(0).getStatus() != IntegralProductStatusEnum.STATUS_2.getCode()) {
IntegralProductStatusEnum message = IntegralProductStatusEnum.getByCode(productInfosDto.getResult().get(0).getStatus());
return ResponseUtil.error(ResponseCodeConstant.RESPONSE_ERROR_STR, message != null ? message.getDesc() : "商品异常");
}
IntegralProductType integralProductType = productInfosDto.getResult().get(0);
// if (!Objects.equals(1, integralProductType.getExchangeType())) {
// return ResponseUtil.error(ResponseCodeConstant.RESPONSE_ERROR_STR, "积分商城暂不支持现金兑换");
......@@ -554,7 +552,7 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
request.setPayChannelName("储值卡支付");
}
//积分价格
// Integer integralPrice = productBean.getIntegralPrice() == null ? 0 : productBean.getIntegralPrice();
Integer integralPrice = productBean.getIntegralPrice() == null ? 0 : productBean.getIntegralPrice();
//现金价格(分)
Integer cashPrice = productBean.getCashPrice() == null ? 0 : productBean.getCashPrice();
// Integer settlementAmount = integralPrice + cashPrice;
......@@ -599,6 +597,29 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
request.setOperator(userLoginInfoDto.getNickName());
request.setAppId(userLoginInfoDto.getWxAppId());
request.setPayChannel(channel);
if(integralPrice > 0 || cashPrice > 0){
List<OrderPayItemCreateReq> orderPayItemList = new ArrayList<>();
if(integralPrice > 0){
OrderPayItemCreateReq payItem = new OrderPayItemCreateReq();
payItem.setPartnerId(partnerId);
payItem.setStoreId(shopId);
payItem.setPayChannelType(PayChannelType.POINTS.getIndex().intValue());
payItem.setPayChannelName(PayChannelType.POINTS.getName());
payItem.setPayAmount(new BigDecimal(integralPrice));
orderPayItemList.add(payItem);
}
if(cashPrice > 0){
OrderPayItemCreateReq payItem = new OrderPayItemCreateReq();
payItem.setPartnerId(partnerId);
payItem.setStoreId(shopId);
payItem.setPayChannelType(PayChannelType.WECHAT.getIndex().intValue());
payItem.setPayChannelName(PayChannelType.WECHAT.getName());
payItem.setPayAmount(new BigDecimal(integralPrice));
orderPayItemList.add(payItem);
}
request.setOrderPayItemCreateReqList(orderPayItemList);
}
return request;
}
......
......@@ -13,7 +13,8 @@ public enum PayChannelType {
COMB((byte)4,"10212","混合支付","comb"),
USVCP((byte)5,"10556", "电子风味卡支付","usvcp"),
ZERO((byte)6,"100000", "0元支付","zero"),
TIKTOKPAY((byte)7,"10066", "抖音支付","tiktokpay");
TIKTOKPAY((byte)7,"10066", "抖音支付","tiktokpay"),
POINTS((byte)9,"100001", "积分支付","pointpay");
private Byte index;
private String ebcode;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment