提交 1955f4d0 authored 作者: huyufan's avatar huyufan

Merge remote-tracking branch 'origin/test' into test

......@@ -116,7 +116,9 @@ public enum PerformanceResultEnum implements ResultEnum {
ORDER_CHILD_SYNC_ERROR(2001, "承运同步网络货运异常"),
BORROWER_NAME_EXIST(1701, "数据重复,请核实后重新提交"),
BORROWER_CONFIG_BORROWER_ID_EXIST(1701, "数据重复,请核实后重新提交"),
BORROWER_DELETE_ENABLE_ERROR(1702, "无法删除启用数据"),
BORROWER_CONFIG_BORROWER_ID_EXIST(1703, "数据重复,请核实后重新提交"),
BORROWER_CONFIG_DELETE_ENABLE_ERROR(1704, "无法删除启用数据"),
NB_BANK_API_ERROR(1800, "宁波银行api调用失败"),
NB_BANK_NOTIFY_ERROR(1801, "宁波银行回调失败"),
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum BorrowerConfigEnum {
......@@ -19,11 +20,11 @@ public enum BorrowerConfigEnum {
private final Integer code;
private final String msg;
public static Optional<Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
public static String getMsgByCode(Integer code) {
return getByCode(code).map(Status::getMsg).orElse(null);
}
}
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum BorrowerEnum {
......@@ -19,11 +20,11 @@ public enum BorrowerEnum {
private final Integer code;
private final String msg;
public static Optional<Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
public static String getMsgByCode(Integer code) {
return getByCode(code).map(Status::getMsg).orElse(null);
}
}
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum OwnerLoanAccountApproveEnum {
......@@ -21,8 +22,8 @@ public enum OwnerLoanAccountApproveEnum {
private final Integer code;
private final String msg;
public static Optional<OwnerLoanAccountApproveEnum.Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<OwnerLoanAccountApproveEnum.Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum OwnerLoanAccountRunningWaterRecordEnum {
......@@ -20,11 +21,11 @@ public enum OwnerLoanAccountRunningWaterRecordEnum {
private final Integer code;
private final String msg;
public static Optional<OwnerLoanAccountRunningWaterRecordEnum.RunWaterType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<OwnerLoanAccountRunningWaterRecordEnum.RunWaterType> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
public static String getMsgByCode(Integer code) {
return getByCode(code).map(OwnerLoanAccountRunningWaterRecordEnum.RunWaterType::getMsg).orElse(null);
}
}
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum OwnerLoanRecordEnum {
......@@ -24,11 +25,11 @@ public enum OwnerLoanRecordEnum {
private final Integer code;
private final String msg;
public static Optional<Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code, code)).findFirst();
}
public static String getMsgByCode(int code) {
public static String getMsgByCode(Integer code) {
return getByCode(code).map(Status::getMsg).orElse(null);
}
}
......@@ -44,11 +45,11 @@ public enum OwnerLoanRecordEnum {
private final Integer code;
private final String msg;
public static Optional<LoanType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<LoanType> getByCode(Integer code) {
return Arrays.stream(values()).filter(e ->Objects.equals(e.code, code)).findFirst();
}
public static String getMsgByCode(int code) {
public static String getMsgByCode(Integer code) {
return getByCode(code).map(LoanType::getMsg).orElse(null);
}
}
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum OwnerPaymentEnum {
......@@ -22,8 +23,8 @@ public enum OwnerPaymentEnum {
private final Integer code;
private final String msg;
public static Optional<OwnerPaymentEnum.Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<OwnerPaymentEnum.Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
......
......@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum OwnerRePaymentEnum {
......@@ -22,8 +23,8 @@ public enum OwnerRePaymentEnum {
private final Integer code;
private final String msg;
public static Optional<OwnerRePaymentEnum.Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
public static Optional<OwnerRePaymentEnum.Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.code , code)).findFirst();
}
public static String getMsgByCode(int code) {
......
......@@ -26,7 +26,14 @@ public class BorrowerAddParam {
@NotBlank(message = "所属银行不能为空")
private String bankName;
@ApiModelProperty(value = "银行账号", example = "10000000000000000")
@NotBlank(message = "不能为空")
@NotBlank(message = "银行账号不能为空")
private String bankCardNo;
@ApiModelProperty(value = "开户行行号", example = "313332082914")
@NotBlank(message = "开户行行号不能为空")
private String openBankId;
@ApiModelProperty(value = "开户行", example = "宁波银行")
@NotBlank(message = "开户行不能为空")
private String openBankName;
}
......@@ -33,4 +33,11 @@ public class BorrowerUpdateParam {
@NotBlank(message = "银行账号不能为空")
private String bankCardNo;
@ApiModelProperty(value = "开户行行号", example = "313332082914")
@NotBlank(message = "开户行行号不能为空")
private String openBankId;
@ApiModelProperty(value = "开户行", example = "宁波银行")
@NotBlank(message = "开户行不能为空")
private String openBankName;
}
......@@ -7,8 +7,6 @@ import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.time.LocalDateTime;
/**
* @Author: aiqinguo
* @Description: 借出方
......@@ -25,17 +23,21 @@ public class BorrowerVO {
@ApiModelProperty(value = "id", example = "")
private Integer id;
@ApiModelProperty(value = "借出方", example = "")
@ApiModelProperty(value = "借出方", example = "1")
private String name;
@ApiModelProperty(value = "所属银行", example = "")
@ApiModelProperty(value = "所属银行", example = "工商银行")
private String bankName;
@ApiModelProperty(value = "银行账号", example = "")
@ApiModelProperty(value = "银行账号", example = "1111111111111111")
private String bankCardNo;
@ApiModelProperty(value = "状态:1启用 2禁用", example = "")
@ApiModelProperty(value = "开户行行号", example = "313332082914")
private String openBankId;
@ApiModelProperty(value = "开户行", example = "宁波银行")
private String openBankName;
@ApiModelProperty(value = "状态:1启用 2禁用", example = "1")
private Integer status;
@ApiModelProperty(value = "操作人编码", example = "")
@ApiModelProperty(value = "操作人编码", example = "1000000")
private Long opUserNo;
@ApiModelProperty(value = "操作人", example = "")
@ApiModelProperty(value = "操作人", example = "张三")
private String opUserName;
@ApiModelProperty(value = "操作时间", example = "")
private String opTime;
......
......@@ -46,10 +46,14 @@ public class TempBankController {
@RequestMapping(value = "/orderDirectPay1", method = RequestMethod.POST)
public Result<NbBankOrderPayResultVO> orderDirectPay1(String payAcctNo, String payAcctNm) {
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000076809", "黑玫瑰"));
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000075926", "客户客户"));
return Result.ok(bankService.orderDirectPay(null,1,"313332082914",payAcctNo, payAcctNm));
}
@ApiOperation(value = "订单支付2", notes = "<br>By:艾庆国")
@RequestMapping(value = "/orderDirectPay2", method = RequestMethod.POST)
public Result<NbBankOrderPayResultVO> orderDirectPay2(String payAcctOpenBankId, String payAcctNo, String payAcctNm) {
return Result.ok(bankService.orderDirectPay(null,1,payAcctOpenBankId,payAcctNo, payAcctNm));
}
@ApiOperation(value = "查询", notes = "<br>By:艾庆国")
@RequestMapping(value = "/getResult", method = RequestMethod.POST)
......@@ -60,16 +64,16 @@ public class TempBankController {
@ApiOperation(value = "调账", notes = "<br>By:艾庆国")
@RequestMapping(value = "/adjust", method = RequestMethod.POST)
public Result<NbBankOrderResultVO> adjust(String merSeqNo, Integer amount) {
public Result<NbBankOrderResultVO> adjust(String orgMerSeqNo, Integer amount) {
return Result.ok(bankService.adjust(merSeqNo, amount));
return Result.ok(bankService.adjust(orgMerSeqNo,amount));
}
@ApiOperation(value = "退款", notes = "<br>By:艾庆国")
@RequestMapping(value = "/refund", method = RequestMethod.POST)
public Result<NbBankOrderResultVO> refund(String orgMerSeqNo, Integer amount, String orgTransSeqNo) {
public Result<NbBankOrderResultVO> refund(Integer type, String orgMerSeqNo, Integer amount, String orgTransSeqNo) {
return Result.ok(bankService.refund(orgMerSeqNo,amount,orgTransSeqNo));
return Result.ok(bankService.refund(type,orgMerSeqNo,amount,orgTransSeqNo));
}
@ApiOperation(value = "回调", notes = "<br>By:艾庆国")
......
......@@ -33,6 +33,8 @@ public class BorrowerDaoImpl extends BaseDaoImpl<BorrowerMapper, Borrower, Integ
.set(Borrower::getName, item.getName())
.set(Borrower::getBankName, item.getBankName())
.set(Borrower::getBankCardNo, item.getBankCardNo())
.set(Borrower::getOpenBankId, item.getOpenBankId())
.set(Borrower::getOpenBankName, item.getOpenBankName())
.set(Borrower::getOpUserNo, item.getOpUserNo())
.set(Borrower::getOpUserName, item.getOpUserName())
......
......@@ -29,6 +29,8 @@ public class Borrower implements HasKey<Integer> {
private String name; //借出方
private String bankName; //所属银行
private String bankCardNo; //银行账号
private String openBankId; //开户行行号
private String openBankName; //开户行
private Integer deleteStatus; //删除状态: 0-否;1-是
private Integer status; //状态:1启用 2禁用
private Long opUserNo; //操作人编码
......
......@@ -113,6 +113,9 @@ public class BorrowerConfigServiceImpl implements BorrowerConfigService {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
BorrowerConfig borrowerConfig = borrowerConfigDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
if (Objects.equals(borrowerConfig.getStatus(), BorrowerConfigEnum.Status.ENABLE)){
throw new ServiceSystemException(PerformanceResultEnum.BORROWER_CONFIG_DELETE_ENABLE_ERROR);
}
borrowerConfig.setDeleteStatus(BorrowerConfigEnum.DeleteStatus.YES.getCode());
borrowerConfig.setOpUserNo(loginUserInfo.getUserNo());
......
......@@ -53,6 +53,8 @@ public class BorrowerServiceImpl implements BorrowerService {
borrower.setName(param.getName());
borrower.setBankName(param.getBankName());
borrower.setBankCardNo(param.getBankCardNo());
borrower.setOpenBankId(param.getOpenBankId());
borrower.setOpenBankName(param.getOpenBankName());
borrower.setOpUserNo(loginUserInfo.getUserNo());
borrower.setOpUserName(loginUserInfo.getUserName());
......@@ -76,6 +78,8 @@ public class BorrowerServiceImpl implements BorrowerService {
borrower.setName(param.getName());
borrower.setBankName(param.getBankName());
borrower.setBankCardNo(param.getBankCardNo());
borrower.setOpenBankId(param.getOpenBankId());
borrower.setOpenBankName(param.getOpenBankName());
borrower.setOpUserNo(loginUserInfo.getUserNo());
borrower.setOpUserName(loginUserInfo.getUserName());
......@@ -102,6 +106,9 @@ public class BorrowerServiceImpl implements BorrowerService {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Borrower borrower = borrowerDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
if (Objects.equals(borrower.getStatus(), BorrowerEnum.Status.ENABLE)){
throw new ServiceSystemException(PerformanceResultEnum.BORROWER_DELETE_ENABLE_ERROR);
}
borrower.setDeleteStatus(BorrowerEnum.DeleteStatus.YES.getCode());
borrower.setOpUserNo(loginUserInfo.getUserNo());
......
......@@ -127,6 +127,7 @@ public class NbBankServiceImpl implements NbBankService {
*/
@Override
public NbBankOrderResultVO adjust(String orgMerSeqNo, Integer amount) {
String merDtTm = LocalDateTimeUtils.formatTime();
JSONObject data = bankThirdpartyService.fundTransferOrder(orgMerSeqNo, merDtTm, amount,
null, null);
......@@ -154,16 +155,17 @@ public class NbBankServiceImpl implements NbBankService {
/**
* 退款
* @Param type: 1普通退款 2银行转账退款
* @param orgMerSeqNo 商户流水号(原)
* @param amount 金额分
* @param orgTransSeqNo 第三方流水号 (原)
*/
@Override
public NbBankOrderResultVO refund(String orgMerSeqNo, Integer amount, String orgTransSeqNo) {
public NbBankOrderResultVO refund(Integer type, String orgMerSeqNo, Integer amount, String orgTransSeqNo) {
String merSeqNo = idGenerateSnowFlake.nextIdToString(3L);
String merDtTm = LocalDateTimeUtils.formatTime();
JSONObject data = bankThirdpartyService.refund(merSeqNo, merDtTm, amount,
JSONObject data = bankThirdpartyService.refund(type, merSeqNo, merDtTm, amount,
orgMerSeqNo, orgTransSeqNo);
NbBankOrderResultVO result = new NbBankOrderResultVO();
......
......@@ -418,9 +418,9 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
String customerId, String payCustomerId) {
try {
JSONObject jsonObject = new JSONObject();
jsonObject.put("transId", "IP01"); //交易识别码 必填
jsonObject.put("transId", "IP01"); //交易识别码 必填 云账簿 CP01, 普通转账 IP01
jsonObject.put("merId", nbBankConfig.getMerId()); //商户号 必填
jsonObject.put("merSeqNo", orgMerSeqNo); //商户流水 必填
jsonObject.put("merSeqNo", orgMerSeqNo); //商户流水 必填
jsonObject.put("merDtTm", merDtTm); //商户交易时间 必填
jsonObject.put("trxAmt", new BigDecimal(trxAmt).movePointLeft(2)); //交易金额
......@@ -473,19 +473,39 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
/**
* 退款
* 5.2退款
* {
* "data": {
* "clearDate": "20240131",
* "errorCode": "PAY013",
* "errorMsg": "原支付订单非成功状态,无法退款",
* "merId": "EFT33021200247909",
* "merSeqNo": "7158282384029478912",
* "transSeqNo": "2024013110183508603395pEiLj8Kd",
* "transStatus": "01",
* "trxAmt": "0.01"
* },
* "head": {
* "rqsJrnlNo": "20971617100330682",
* "rspCode": "000000",
* "rspDate": "2024-01-31",
* "rspMsg": "交易成功",
* "rspTime": "10:18:35:131"
* }
* }
* @Param type: 1普通退款 2银行转账退款
* @return
*/
@Override
public JSONObject refund(String merSeqNo, String merDtTm,
public JSONObject refund(Integer type, String merSeqNo, String merDtTm,
Integer amount,
String orgMerSeqNo, String coreSeqNo) {
try {
JSONObject jsonObject = new JSONObject();
jsonObject.put("transId", "IP01"); //交易识别码 必填
jsonObject.put("transId", type==1? "TK01" : "TK02"); //交易识别码 必填
jsonObject.put("merId", nbBankConfig.getMerId()); //商户号 必填
jsonObject.put("merSeqNo", merSeqNo); //商户流水 必填
jsonObject.put("merDtTm", LocalDateTimeUtils.formatTime()); //商户时间 必填
jsonObject.put("merDtTm", merDtTm); //商户时间 必填
jsonObject.put("trxAmt", new BigDecimal(amount).movePointLeft(2)); //订单金额 必填
jsonObject.put("orgMerSeqNo", orgMerSeqNo); //原订单流水号 必填
......
......@@ -17,7 +17,7 @@ public interface NbBankService {
NbBankOrderResultVO adjust(String orgMerSeqNo, Integer amount);
NbBankOrderResultVO refund(String orgMerSeqNo, Integer amount, String orgTransSeqNo);
NbBankOrderResultVO refund(Integer type, String orgMerSeqNo, Integer amount, String orgTransSeqNo);
void orderPayCallback(String merSeqNo, String transSeqNo,
Integer trxAmt, Integer realTrxAmt,
......
......@@ -17,7 +17,7 @@ public interface NbBankThirdpartyService {
Integer trxAmt,
String customerId, String payCustomerId);
JSONObject refund(String merSeqNo, String merDtTm, Integer amount,
JSONObject refund(Integer type, String merSeqNo, String merDtTm, Integer amount,
String orgMerSeqNo, String coreSeqNo);
void recordSave(Integer type, SDKRequest request, SDKResponse response);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论