ソースを参照

update

shuiqilin
houyi 1年前
コミット
1e349ed531

+ 22
- 0
src/main/java/com/qtzl/alterSales/dao/entity/primary/AflSupplementaryPayOrder.java ファイルの表示

@@ -1,6 +1,7 @@
package com.qtzl.alterSales.dao.entity.primary;

import com.qtzl.alterSales.manager.enums.PushStateEnum;
import com.qtzl.alterSales.manager.enums.QtStateEnum;
import com.qtzl.alterSales.manager.enums.SupplementartPayOrderStateEnum;
import com.txffp.api.core.dao.entity.AbstractInsertTimeEntity;

@@ -18,6 +19,8 @@ import java.time.LocalDateTime;
@Table(name = "afl_supplementary_pay_order")
public class AflSupplementaryPayOrder extends AbstractInsertTimeEntity {

/*** 渠道编号 */
private String agentId;
/*** 部签约协议号 */
private String agreementNum;
/*** 用户名称 */
@@ -42,6 +45,8 @@ public class AflSupplementaryPayOrder extends AbstractInsertTimeEntity {
private PushStateEnum pushState;
/*** 补缴状态 */
private SupplementartPayOrderStateEnum state;
/*** 由黔通轮扣或补缴成功后通知渠道状态。默认无需通知 */
private QtStateEnum qtState;
/*** 补缴单号。补缴状态为SUCCESS时必填 */
private String supplementaryNo;
/*** 补缴时间。补缴状态为SUCCESS时必填 */
@@ -49,6 +54,15 @@ public class AflSupplementaryPayOrder extends AbstractInsertTimeEntity {
/*** 补缴通知时间 */
private LocalDateTime supplementaryNotifyTime;

@Column(name = "agent_id")
public String getAgentId() {
return agentId;
}

public void setAgentId(String agentId) {
this.agentId = agentId;
}

/*** 部签约协议号 */
@Column(name = "agreement_num")
public String getAgreementNum() {
@@ -170,7 +184,15 @@ public class AflSupplementaryPayOrder extends AbstractInsertTimeEntity {
public void setPushState(PushStateEnum pushState) {
this.pushState = pushState;
}
@Column(name = "qt_state")
@Enumerated(value = EnumType.STRING)
public QtStateEnum getQtState() {
return qtState;
}

public void setQtState(QtStateEnum qtState) {
this.qtState = qtState;
}
/*** 补缴状态 */
@Column(name = "state")
@Enumerated(value = EnumType.STRING)

+ 34
- 0
src/main/java/com/qtzl/alterSales/manager/enums/QtStateEnum.java ファイルの表示

@@ -0,0 +1,34 @@
package com.qtzl.alterSales.manager.enums;

/***
* <p>
*
* </p>
* @author hou yi
* {@code @date} 2024/5/10 0:34
**/
public enum QtStateEnum {
/***
* 枚举具体描述
**/
DEFAULT("DEFAULT", "无需通知"),
SUCCESS("SUCCESS", "通知成功"),
FAIL("FAIL", "通知失败"),
;

private final String code;

private final String type;
QtStateEnum(String code, String type) {
this.code = code;
this.type = type;
}

public String getCode() {
return this.code;
}

public String getType() {
return this.type;
}
}

+ 11
- 0
src/main/java/com/qtzl/alterSales/manager/service/AflSupplementaryPayOrderService.java ファイルの表示

@@ -1,8 +1,11 @@
package com.qtzl.alterSales.manager.service;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import com.qtzl.alterSales.dao.entity.primary.AflSupplementaryPayOrder;
import com.qtzl.alterSales.manager.model.protocol.sales.AflSupplementaryNotifyRequest;

import java.time.LocalDateTime;

/***
* <p>
* 补缴单 service
@@ -19,4 +22,12 @@ public interface AflSupplementaryPayOrderService {
*/
void notifyHandler(AflSupplementaryNotifyRequest request) throws ServiceHandleException;

/***
* 补缴成功后通知渠道。 supplementaryPayOrder 和 payId 不能同时为空
* @param payId 路网交易编号
* @param supplementaryTime 完成扣款时间
* @param supplementaryNo 商户订单号
*/
void paySuccessNotify(String payId, LocalDateTime supplementaryTime, String supplementaryNo);

}

+ 18
- 3
src/main/java/com/qtzl/alterSales/manager/service/AflSupplementaryPayOrderServiceImpl.java ファイルの表示

@@ -5,9 +5,7 @@ import com.qtzl.alterSales.dao.entity.primary.AflSupplementaryPayOrder;
import com.qtzl.alterSales.dao.entity.primary.FssPaccountPay;
import com.qtzl.alterSales.dao.repo.jpa.primary.AflSupplementaryPayOrderRepo;
import com.qtzl.alterSales.dao.repo.jpa.primary.FssPaccountPayRepo;
import com.qtzl.alterSales.manager.enums.BlacklistOpType;
import com.qtzl.alterSales.manager.enums.SupplementartPayOrderStateEnum;
import com.qtzl.alterSales.manager.enums.SupplementaryNotifyStatusEnum;
import com.qtzl.alterSales.manager.enums.*;
import com.qtzl.alterSales.manager.model.protocol.UcServiceError;
import com.qtzl.alterSales.manager.model.protocol.sales.AflSupplementaryNotifyRequest;
import org.apache.commons.lang3.StringUtils;
@@ -81,6 +79,23 @@ public class AflSupplementaryPayOrderServiceImpl implements AflSupplementaryPayO
accountPayRepo.save(fssPaccountPay);
}

@Override
public void paySuccessNotify(String payId, LocalDateTime supplementaryTime, String supplementaryNo) {
// 补缴成功后通知渠道
AflSupplementaryPayOrder supplementaryPayOrder = supplementaryPayOrderRepo.findByPayId(payId);
if (null == supplementaryPayOrder) {
// 未生成补缴单的流水补扣成功后不推送
return;
}
supplementaryPayOrder.setSupplementaryTime(supplementaryTime);
supplementaryPayOrder.setSupplementaryNo(supplementaryNo);
supplementaryPayOrder.setState(SupplementartPayOrderStateEnum.SUCCESS);
supplementaryPayOrder.setSupplementaryNotifyTime(LocalDateTime.now());
supplementaryPayOrder.setQtState(QtStateEnum.FAIL);
supplementaryPayOrderRepo.save(supplementaryPayOrder);
}


private void userStateHandler(FssPaccountPay fssPaccountPay, String payId) {
// 用户是否返白处理
final List<FssPaccountPay> accountPays = accountPayRepo.findByAgreementNum(fssPaccountPay.getAgreementNum());

+ 4
- 0
src/main/java/com/qtzl/alterSales/manager/service/ChoiceBillsOperationServiceImpl.java ファイルの表示

@@ -66,6 +66,8 @@ public class ChoiceBillsOperationServiceImpl implements ChoiceBillsOperationServ
private AflMchConfigManager mchConfigManager;
@Resource
private AflBydExceptionManager aflBydExceptionManager;
@Resource
private AflSupplementaryPayOrderService supplementaryPayOrderService;

// 请不要改这个key
private static final String REDIS_KEY = "PAY_FAIL_";
@@ -202,6 +204,8 @@ public class ChoiceBillsOperationServiceImpl implements ChoiceBillsOperationServ
pay.setWxPayStatus(1);
pay.setWxPayTime(payTime);
pay.setWxOrderId(payOrder.getOrderNo());
//
supplementaryPayOrderService.paySuccessNotify(pay.getPayId(), payTime, payOrder.getOrderNo());
});
accountPayRepo.saveAll(accountPayList);


+ 2
- 2
src/main/java/com/qtzl/alterSales/manager/service/FssPaccountPayServiceImpl.java ファイルの表示

@@ -48,7 +48,7 @@ public class FssPaccountPayServiceImpl implements FssPaccountPayService {
if (CollectionUtils.isEmpty(agreementBills)) {
return Lists.newArrayList();
}
// 过滤掉已生成补缴单的流水
/* // 过滤掉已生成补缴单的流水
final List<String> payIds = agreementBills.stream().map(FssPaccountPay::getPayId).toList();
final List<AflSupplementaryPayOrder> orders = supplementaryPayOrderRepo.findAll((root, query, cb) -> query.where(
root.<String>get("payId").in(payIds)
@@ -56,7 +56,7 @@ public class FssPaccountPayServiceImpl implements FssPaccountPayService {
if (!CollectionUtils.isEmpty(orders)) {
final List<String> orderPayIds = orders.stream().map(AflSupplementaryPayOrder::getPayId).toList();
agreementBills = agreementBills.stream().filter(vo -> !orderPayIds.contains(vo.getPayId())).toList();
}
}*/
return toVo(agreementBills);
}


読み込み中…
キャンセル
保存