mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-05 18:40:14 +08:00
update
This commit is contained in:
@@ -0,0 +1,31 @@
|
|||||||
|
package com.jsowell.common.enums.adapay;
|
||||||
|
|
||||||
|
public enum AdapayStatusEnum {
|
||||||
|
PENDING("pending", "交易处理中"),
|
||||||
|
SUCCEEDED("succeeded", "交易成功"),
|
||||||
|
FAILED("failed", "交易失败"),
|
||||||
|
;
|
||||||
|
private String value;
|
||||||
|
private String label;
|
||||||
|
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLabel() {
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLabel(String label) {
|
||||||
|
this.label = label;
|
||||||
|
}
|
||||||
|
|
||||||
|
AdapayStatusEnum(String value, String label) {
|
||||||
|
this.value = value;
|
||||||
|
this.label = label;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -25,6 +25,7 @@ import com.jsowell.common.core.domain.ykc.TransactionRecordsData;
|
|||||||
import com.jsowell.common.core.redis.RedisCache;
|
import com.jsowell.common.core.redis.RedisCache;
|
||||||
import com.jsowell.common.enums.AcquirerEnum;
|
import com.jsowell.common.enums.AcquirerEnum;
|
||||||
import com.jsowell.common.enums.MemberWalletEnum;
|
import com.jsowell.common.enums.MemberWalletEnum;
|
||||||
|
import com.jsowell.common.enums.adapay.AdapayStatusEnum;
|
||||||
import com.jsowell.common.enums.ykc.*;
|
import com.jsowell.common.enums.ykc.*;
|
||||||
import com.jsowell.common.exception.BusinessException;
|
import com.jsowell.common.exception.BusinessException;
|
||||||
import com.jsowell.common.util.*;
|
import com.jsowell.common.util.*;
|
||||||
@@ -35,6 +36,7 @@ import com.jsowell.pile.domain.*;
|
|||||||
import com.jsowell.pile.dto.*;
|
import com.jsowell.pile.dto.*;
|
||||||
import com.jsowell.pile.mapper.OrderBasicInfoMapper;
|
import com.jsowell.pile.mapper.OrderBasicInfoMapper;
|
||||||
import com.jsowell.pile.service.*;
|
import com.jsowell.pile.service.*;
|
||||||
|
import com.jsowell.pile.transaction.dto.ClearingBillTransactionDTO;
|
||||||
import com.jsowell.pile.transaction.dto.OrderTransactionDTO;
|
import com.jsowell.pile.transaction.dto.OrderTransactionDTO;
|
||||||
import com.jsowell.pile.transaction.service.TransactionService;
|
import com.jsowell.pile.transaction.service.TransactionService;
|
||||||
import com.jsowell.pile.vo.base.MerchantOrderInfoVO;
|
import com.jsowell.pile.vo.base.MerchantOrderInfoVO;
|
||||||
@@ -97,9 +99,6 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
@Value("${adapay.callback}")
|
@Value("${adapay.callback}")
|
||||||
private String ADAPAY_CALLBACK_URL;
|
private String ADAPAY_CALLBACK_URL;
|
||||||
|
|
||||||
@Value("${adapay.refundCallback}")
|
|
||||||
private String ADAPAY_REFUND_CALLBACK_URL;
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private WxAppletRemoteService wxAppletRemoteService;
|
private WxAppletRemoteService wxAppletRemoteService;
|
||||||
|
|
||||||
@@ -904,14 +903,36 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 清分账单信息
|
||||||
|
ClearingBillInfo clearingBillInfo = new ClearingBillInfo();
|
||||||
|
clearingBillInfo.setBillStatus("1");
|
||||||
|
String clearingBillCode = "CLE" + IdUtils.getOrderCode();
|
||||||
|
clearingBillInfo.setClearingBillCode(clearingBillCode);
|
||||||
|
clearingBillInfo.setClearingTime(DateUtils.getNowDate());
|
||||||
|
clearingBillInfo.setMerchantId(merchantId);
|
||||||
|
clearingBillInfo.setOrderSource("1");
|
||||||
|
|
||||||
|
|
||||||
|
List<ClearingBillDetail> billDetailList = Lists.newArrayList();
|
||||||
// 执行分账
|
// 执行分账
|
||||||
orderBasicInfos.parallelStream().forEach(x -> {
|
orderBasicInfos.parallelStream().forEach(x -> {
|
||||||
try {
|
try {
|
||||||
PaymentConfirmResponse paymentConfirmResponse = doPaymentConfirm(x, adapayMemberAccount);
|
PaymentConfirmResponse paymentConfirmResponse = doPaymentConfirm(x, adapayMemberAccount);
|
||||||
|
if (paymentConfirmResponse != null && AdapayStatusEnum.SUCCEEDED.getValue().equals(paymentConfirmResponse.getStatus())) {
|
||||||
|
JSONObject jsonObject = JSON.parseObject(paymentConfirmResponse.getDescription());
|
||||||
|
String orderCode = (String) jsonObject.get("orderCode");
|
||||||
|
billDetailList.add(ClearingBillDetail.builder().clearingBillCode(clearingBillCode).orderCode(orderCode).build());
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("订单交易确认失败:{}", x.getOrderCode(), e);
|
logger.error("订单交易确认失败:{}", x.getOrderCode(), e);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 保存清分账单
|
||||||
|
ClearingBillTransactionDTO dto = new ClearingBillTransactionDTO();
|
||||||
|
dto.setClearingBillInfo(clearingBillInfo);
|
||||||
|
dto.setBillDetailList(billDetailList);
|
||||||
|
transactionService.createClearingBill(dto);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package com.jsowell.pile.transaction.dto;
|
||||||
|
|
||||||
|
import com.jsowell.pile.domain.ClearingBillDetail;
|
||||||
|
import com.jsowell.pile.domain.ClearingBillInfo;
|
||||||
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Builder
|
||||||
|
public class ClearingBillTransactionDTO {
|
||||||
|
/**
|
||||||
|
* 清分账单信息
|
||||||
|
*/
|
||||||
|
private ClearingBillInfo clearingBillInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 清分账单详情
|
||||||
|
*/
|
||||||
|
private List<ClearingBillDetail> billDetailList;
|
||||||
|
}
|
||||||
@@ -10,11 +10,10 @@ import com.jsowell.pile.mapper.OrderBasicInfoMapper;
|
|||||||
import com.jsowell.pile.mapper.PileBasicInfoMapper;
|
import com.jsowell.pile.mapper.PileBasicInfoMapper;
|
||||||
import com.jsowell.pile.mapper.PileBillingTemplateMapper;
|
import com.jsowell.pile.mapper.PileBillingTemplateMapper;
|
||||||
import com.jsowell.pile.mapper.PileConnectorInfoMapper;
|
import com.jsowell.pile.mapper.PileConnectorInfoMapper;
|
||||||
|
import com.jsowell.pile.service.ClearingBillDetailService;
|
||||||
|
import com.jsowell.pile.service.ClearingBillInfoService;
|
||||||
import com.jsowell.pile.service.IOrderBasicInfoService;
|
import com.jsowell.pile.service.IOrderBasicInfoService;
|
||||||
import com.jsowell.pile.transaction.dto.BillingTemplateTransactionDTO;
|
import com.jsowell.pile.transaction.dto.*;
|
||||||
import com.jsowell.pile.transaction.dto.MemberTransactionDTO;
|
|
||||||
import com.jsowell.pile.transaction.dto.OrderTransactionDTO;
|
|
||||||
import com.jsowell.pile.transaction.dto.PileTransactionDTO;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -53,6 +52,12 @@ public class TransactionService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private IOrderBasicInfoService orderBasicInfoService;
|
private IOrderBasicInfoService orderBasicInfoService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ClearingBillInfoService clearingBillInfoService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ClearingBillDetailService clearingBillDetailService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private RedisCache redisCache;
|
private RedisCache redisCache;
|
||||||
|
|
||||||
@@ -182,4 +187,16 @@ public class TransactionService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存清分账单
|
||||||
|
*/
|
||||||
|
public void createClearingBill(ClearingBillTransactionDTO dto) {
|
||||||
|
if (Objects.nonNull(dto.getClearingBillInfo())) {
|
||||||
|
clearingBillInfoService.insert(dto.getClearingBillInfo());
|
||||||
|
}
|
||||||
|
if (CollectionUtils.isNotEmpty(dto.getBillDetailList())) {
|
||||||
|
clearingBillDetailService.batchInsert(dto.getBillDetailList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user