From 5882ba8863d77fdcc168b176c3ffb30e8a20556a Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 13 七月 2026 17:54:25 +0800
Subject: [PATCH] 缩短二维码原始参数

---
 backend/src/main/java/com/sinata/appointment/service/PostApprovalOrchestrationService.java |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/backend/src/main/java/com/sinata/appointment/service/PostApprovalOrchestrationService.java b/backend/src/main/java/com/sinata/appointment/service/PostApprovalOrchestrationService.java
index a59f36b..2603679 100644
--- a/backend/src/main/java/com/sinata/appointment/service/PostApprovalOrchestrationService.java
+++ b/backend/src/main/java/com/sinata/appointment/service/PostApprovalOrchestrationService.java
@@ -120,6 +120,15 @@
             visitor.setPlateNo(driverPlateMap.get(visitor.getMpVisitorId()));
             String ticketUuid = UUID.randomUUID().toString().replace("-", "");
             String visitorIdCardPlain = resolveVisitorIdCardPlain(visitor, visitorProfile);
+            QrcodeTicket ticket = new QrcodeTicket();
+            ticket.setUuid(ticketUuid);
+            ticket.setOrderId(order.getId());
+            ticket.setMpVisitorId(visitor.getMpVisitorId());
+            ticket.setPayload("{}");
+            ticket.setTicketStatus(QrcodeTicketStatus.UNUSED);
+            ticket.setGenerateTime(generateTime);
+            ticket.setExpireTime(expireTime);
+            qrcodeTicketMapper.insert(ticket);
             String payload =
                     integrationHikvisionService.requestQrcodePayload(
                             order,
@@ -131,24 +140,18 @@
                             generateTime,
                             expireTime,
                             validMinutes,
-                            ticketUuid,
+                            String.valueOf(ticket.getId()),
                             visitorIdCardPlain);
-            QrcodeTicket ticket = new QrcodeTicket();
-            ticket.setUuid(ticketUuid);
-            ticket.setOrderId(order.getId());
-            ticket.setMpVisitorId(visitor.getMpVisitorId());
             ticket.setPayload(payload);
-            ticket.setTicketStatus(QrcodeTicketStatus.UNUSED);
-            ticket.setGenerateTime(generateTime);
-            ticket.setExpireTime(expireTime);
-            qrcodeTicketMapper.insert(ticket);
+            qrcodeTicketMapper.updateById(ticket);
             existingTicketMap.put(visitor.getMpVisitorId(), ticket);
             createdCount++;
             log.info(
-                    "{} raw-payload orderId={} mpVisitorId={} ticketUuid={} payloadLength={}",
+                    "{} raw-payload orderId={} mpVisitorId={} ticketId={} ticketUuid={} payloadLength={}",
                     IntegrationConstant.HIKVISION_QRCODE_EVENT,
                     order.getId(),
                     visitor.getMpVisitorId(),
+                    ticket.getId(),
                     ticketUuid,
                     payload == null ? 0 : payload.length());
         }

--
Gitblit v1.7.1