From 3a762add44449332d6d379e361698850f6066e16 Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期一, 19 五月 2025 15:20:12 +0800 Subject: [PATCH] 修改 --- exam-system/src/main/java/com/gkhy/exam/pay/service/impl/CoalPayServiceImpl.java | 29 ++++++++++++++++++++--------- 1 files changed, 20 insertions(+), 9 deletions(-) diff --git a/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/CoalPayServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/CoalPayServiceImpl.java index 77a968e..ef7bfca 100644 --- a/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/CoalPayServiceImpl.java +++ b/exam-system/src/main/java/com/gkhy/exam/pay/service/impl/CoalPayServiceImpl.java @@ -250,10 +250,13 @@ if (student.getPayStatus() == 1) { throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "请勿重新缴费"); } + if (student.getGovPayStatus() == 2){ + return student.getOrderId(); + } PayReqData payReqData = fillData(coalPayStudent, coalPay, coalCategories, coalTicket, 1, null); - ResultVo resultVo = payUtils.sendApiPost(payReqData); + ResultVo resultVo = payUtils.faqiV2(payReqData); if (resultVo.getRespcode().equals("BUS0000")) { //进行票据签名并校验 // ResultVo resultVo1 = payUtils.uploadXml(resultVo.getRespdata().getOrderNo(), resultVo.getRespdata().getFileData()); @@ -261,17 +264,16 @@ // throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "签名验证错误"); // } payStudent.setId(studentId); - payStudent.setOrderId(resultVo.getRespdata().getOrderNo()); - payStudent.setGovPayStatus(1); + payStudent.setOrderNo(resultVo.getRespdata().getOrderNo()); + payStudent.setOrderId(resultVo.getRespdata().getOrderId()); + payStudent.setGovPayStatus(2); payStudent.setPayCode(resultVo.getRespdata().getBillNo()); - coalPayStudentService.updateByCoalPayStudent(payStudent); + coalPayStudentService.updateByIdAndPayType(payStudent); return resultVo.getRespdata().getOrderId(); } else { throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, resultVo.getRespmsg()); } } catch (BusinessException e) { - throw new RuntimeException(e); - } catch (IOException e) { throw new RuntimeException(e); } finally { if (lock.isLocked()) { @@ -295,14 +297,18 @@ if (coalPay == null) { throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "未找到相关缴费信息"); } + if (coalPayStudents.get(0).getGovPayStatus() == 2){ + return coalPayStudents.get(0).getOrderId(); + } CoalPayStudent payStudent = new CoalPayStudent(); PayReqData payReqData = fillData(coalPayStudents, coalPay, coalCategories, coalTicket, 2, coalTeamPayReq); - ResultVo resultVo = payUtils.sendApiPost(payReqData); + ResultVo resultVo = payUtils.faqiV2(payReqData); if (resultVo.getRespcode().equals("BUS0000")) { payStudent.setCoalPayId(coalPay.getId()); - payStudent.setOrderId(resultVo.getRespdata().getOrderNo()); - payStudent.setGovPayStatus(1); + payStudent.setOrderId(resultVo.getRespdata().getOrderId()); + payStudent.setOrderNo(resultVo.getRespdata().getOrderNo()); + payStudent.setGovPayStatus(2); payStudent.setPayCode(resultVo.getRespdata().getBillNo()); coalPayStudentService.updateByCoalPayIdAndStatus(payStudent); return resultVo.getRespdata().getOrderId(); @@ -366,6 +372,11 @@ PayUtils payUtils = new PayUtils(); ResultVo resultVo = payUtils.faqiV2(payReqData); + if (!resultVo.getRespcode().equals("BUS0000")) { + throw new BusinessException(this.getClass(), ResultConstants.BUSINESS_ERROR, "签名验证错误"); + } else { + //todo 业务处理 + } log.info("请求结果:" + JSONObject.toJSONString(resultVo)); // String fileData = resultVo.getRespdata().getFileData(); // //票据原文转为byte字节文件 -- Gitblit v1.9.2