From 9318f2446a94ce7df308c57c1c651e0c23e0036b Mon Sep 17 00:00:00 2001
From: heheng <heheng@123456>
Date: Thu, 20 Feb 2025 08:49:23 +0800
Subject: [PATCH] 测试
---
exam-system/src/main/java/com/gkhy/exam/pay/service/impl/NonCoalPayStudentServiceImpl.java | 73 +++++++++++++++++++++++++++++++++++-
1 files changed, 70 insertions(+), 3 deletions(-)
diff --git a/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/NonCoalPayStudentServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/NonCoalPayStudentServiceImpl.java
index ace1294..4b6d61d 100644
--- a/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/NonCoalPayStudentServiceImpl.java
+++ b/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/NonCoalPayStudentServiceImpl.java
@@ -1,5 +1,6 @@
package com.gkhy.exam.pay.service.impl;
+import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -62,7 +63,7 @@
String lockKey = NON_COAL_PAY_STUDENT_LOCK + dataId + "_PAY_TYPE_" + payType;
- Boolean b = redisLock.tryLock(lockKey, 10, 20, TimeUnit.SECONDS);
+ Boolean b = redisLock.tryLock(lockKey, 30, 40, TimeUnit.SECONDS);
if (b) {
String orderNo = RandomUtil.generateOrderNumber(dataId, "NC");
List<NonCoalPayOrder> nonCoalPayOrders = nonCoalPayMapper.selectNonCoalPayOrderByParam(dataId, Long.valueOf(payType));
@@ -81,6 +82,29 @@
if (nonCoalStuRep.getPayStatus() == 1) {
throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "已缴费请勿重复缴费");
}
+ //财政缴款码已生成了
+ if (nonCoalStuRep.getGovPayStatus() == 2) {
+ return nonCoalStuRep.getOrderId();
+ }
+ //财政缴款码未生成
+// if (nonCoalStuRep.getPayStatus() == 0) {
+// if ("1".equals(payType)) {
+// baseMapper.update(null, Wrappers.<NonCoalPayStudent>lambdaUpdate()
+// .set(NonCoalPayStudent::getOrderNo, orderNo)
+// .set(NonCoalPayStudent::getGovPayStatus, 1)
+// .eq(NonCoalPayStudent::getId, dataId).eq(NonCoalPayStudent::getDelFlag, 0)
+// .eq(NonCoalPayStudent::getPayType, payType).eq(NonCoalPayStudent::getPayStatus, 0));
+// } else {
+// //团体缴费
+// baseMapper.update(null, Wrappers.<NonCoalPayStudent>lambdaUpdate()
+// .set(NonCoalPayStudent::getOrderNo, orderNo)
+// .set(NonCoalPayStudent::getGovPayStatus, 1)
+// .eq(NonCoalPayStudent::getNonCoalPayId, dataId).eq(NonCoalPayStudent::getDelFlag, 0)
+// .eq(NonCoalPayStudent::getPayType, payType).eq(NonCoalPayStudent::getPayStatus, 0));
+// }
+// } else {
+// orderNo = nonCoalStuRep.getOrderNo();
+// }
List<NonCoalCateRep> nonCoalPayCategoryList = nonCoalPayOrder.getNonCoalPayCategoryList();
if (StringUtils.isEmpty(nonCoalPayCategoryList)) {
@@ -91,7 +115,7 @@
PayReqData payReqData = dealData(nonCoalPayOrder, orderNo, payType);
try {
- ResultVo resultVo = payUtils.sendApiPost(payReqData);
+ ResultVo resultVo = payUtils.faqiV2(payReqData);
log.info("调用接口返回结果:" + resultVo);
if (resultVo.getRespcode().equals("BUS0000")) {
String orderId = resultVo.getRespdata().getOrderId();
@@ -103,6 +127,7 @@
.set(NonCoalPayStudent::getOrderId, orderId)
.set(NonCoalPayStudent::getOrderNo, orderNo)
.set(NonCoalPayStudent::getPayCode, billNo)
+ .set(NonCoalPayStudent::getGovPayStatus, 2)
.eq(NonCoalPayStudent::getId, dataId).eq(NonCoalPayStudent::getDelFlag, 0)
.eq(NonCoalPayStudent::getPayType, payType).eq(NonCoalPayStudent::getPayStatus, 0));
} else {
@@ -111,6 +136,7 @@
.set(NonCoalPayStudent::getOrderId, orderId)
.set(NonCoalPayStudent::getOrderNo, orderNo)
.set(NonCoalPayStudent::getPayCode, billNo)
+ .set(NonCoalPayStudent::getGovPayStatus, 2)
.eq(NonCoalPayStudent::getNonCoalPayId, dataId).eq(NonCoalPayStudent::getDelFlag, 0)
.eq(NonCoalPayStudent::getPayType, payType).eq(NonCoalPayStudent::getPayStatus, 0));
}
@@ -131,6 +157,47 @@
return null;
+ }
+
+ @Override
+ public NonCoalStuRep queryOrder(Long dataId, String payType) {
+ List<NonCoalPayOrder> nonCoalPayOrders = nonCoalPayMapper.selectNonCoalPayOrderByParam(dataId, Long.valueOf(payType));
+ if (StringUtils.isEmpty(nonCoalPayOrders)) {
+ throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "未找到相关缴费信息");
+ }
+ NonCoalPayOrder nonCoalPayOrder = nonCoalPayOrders.get(0);
+
+ List<NonCoalStuRep> nonCoalStuList = nonCoalPayOrder.getNonCoalStuList();
+
+ if (StringUtils.isEmpty(nonCoalStuList)) {
+ throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "未找到需要缴费的学员");
+ }
+ NonCoalStuRep nonCoalStuRep = nonCoalStuList.get(0);
+
+ if (nonCoalStuRep.getPayStatus() == 1) {
+ throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "已缴费请勿重复缴费");
+ }
+ if (nonCoalStuRep.getGovPayStatus() == 2 && nonCoalStuRep.getPayStatus() == 0) {
+ try {
+ JSONObject result = payUtils.query(nonCoalStuRep.getOrderNo());
+ String status = result.getString("status");
+ if (("1").equals(status)) {
+
+ nonCoalPayStudentMapper.update(null, Wrappers.<NonCoalPayStudent>lambdaUpdate()
+ .set(NonCoalPayStudent::getPayStatus, 1)
+ .set(NonCoalPayStudent::getPayTime, result.getDate("payTime"))
+ .eq(NonCoalPayStudent::getOrderNo, nonCoalStuRep.getOrderNo()).eq(NonCoalPayStudent::getDelFlag, 0)
+ .eq(NonCoalPayStudent::getPayStatus, 0));
+ } else if (status == null) {
+ log.error("查询财政订单失败:" + result.getString("respmsg") + ",错误编码:" + result.getString("respcode"));
+ }
+ } catch (Exception e) {
+ log.error("查询财政订单失败:" + e.getMessage());
+
+ }
+ }
+
+ return nonCoalStuRep;
}
private PayReqData dealData(NonCoalPayOrder nonCoalPayOrder, String orderNo, String payType) {
@@ -353,7 +420,7 @@
stu1.setPhone(stu.getPhone());
// stu1.setOrderNo(RandomUtil.generateOrderNumber());
- stu1.setSex(StudentSex.BOY.getStatus().equals(stu.getSex().trim()) ? 0L : 1L);
+ stu1.setSex(StudentSex.BOY.getDesc().equals(stu.getSex().trim()) ? 0L : 1L);
nonCoalPayStudentMapper.insertNonCoalPayStudent(stu1);
successNum++;
successMsg.append("<br/>" + successNum + "、身份证号 " + stu.getIdCard() + " 导入成功");
--
Gitblit v1.9.2