From 33d850692237ff59bc07710d14817cbbac2f975b Mon Sep 17 00:00:00 2001
From: heheng <heheng@123456>
Date: 星期二, 18 二月 2025 16:45:18 +0800
Subject: [PATCH] merge

---
 exam-system/src/main/java/com/gkhy/exam/pay/controller/PaymentApiController.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 55 insertions(+), 0 deletions(-)

diff --git a/exam-system/src/main/java/com/gkhy/exam/pay/controller/PaymentApiController.java b/exam-system/src/main/java/com/gkhy/exam/pay/controller/PaymentApiController.java
new file mode 100644
index 0000000..6d93aab
--- /dev/null
+++ b/exam-system/src/main/java/com/gkhy/exam/pay/controller/PaymentApiController.java
@@ -0,0 +1,55 @@
+package com.gkhy.exam.pay.controller;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.gkhy.exam.pay.service.PaymentService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.Base64;
+import java.util.Map;
+
+@Api(tags = {"支付Api"})
+@RestController
+@RequestMapping({"/paymentApi"})
+@Slf4j
+public class PaymentApiController {
+
+    @Resource
+    private PaymentService paymentService;
+
+    @ApiOperation(value = "支付Api-回调", notes = "支付Api-回调")
+    @PostMapping({"/callBack"})
+    public JSONObject add(@RequestParam Map<String, Object> callBackParam) {
+        String jsonStr = baseToString(callBackParam.get("reqdata").toString());
+        JSONObject jsonObject = JSONObject.parseObject(jsonStr);
+        log.info("财政回调接收到参数=" + jsonObject.toString());
+        try {
+            JSONObject jsonObject1 = new JSONObject();
+            String orderNo = jsonObject.getString("orderNo");
+            String status = jsonObject.getString("status");
+            if ("1".equals(status)) {
+                paymentService.paySuccess(orderNo, jsonObject.getDate("payTime"));
+            }
+            jsonObject1.put("orderNo", orderNo);
+            jsonObject1.put("status", Boolean.TRUE);
+            return jsonObject1;
+        } catch (Exception e) {
+            log.info("财政回调处理订单发生错误");
+            e.printStackTrace();
+            return null;
+        }
+    }
+
+
+    public String baseToString(String baseString) {
+        byte[] byteArray = Base64.getDecoder().decode(baseString);
+        String decodedString = new String(byteArray);
+        return decodedString;
+    }
+}

--
Gitblit v1.9.2