From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-biz-common/jnpf-biz-common-audit/src/main/java/jnpf/bizcommon/audit/service/sign/AuditSignMetaData.java |   75 +++++++++++++++++++++++++++++++++++++
 1 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/jnpf-biz-common/jnpf-biz-common-audit/src/main/java/jnpf/bizcommon/audit/service/sign/AuditSignMetaData.java b/jnpf-biz-common/jnpf-biz-common-audit/src/main/java/jnpf/bizcommon/audit/service/sign/AuditSignMetaData.java
new file mode 100644
index 0000000..c1ba6ea
--- /dev/null
+++ b/jnpf-biz-common/jnpf-biz-common-audit/src/main/java/jnpf/bizcommon/audit/service/sign/AuditSignMetaData.java
@@ -0,0 +1,75 @@
+package jnpf.bizcommon.audit.service.sign;
+
+import jnpf.util.JsonUtil;
+
+import java.util.Map;
+
+/**
+ * 瑙f瀽 {@code lims_sign.meta_data}鈥斺�斿墠绔鍚嶆椂涓�骞舵彁浜ょ殑涓氬姟鍏冩暟鎹��
+ *
+ * <p><b>鏈被鍙毚闇� D5 璁ゅ彲鐨勪笁鏍�</b>锛氭寜閽悕銆佹槸鍚﹀鏍搞�佸師濮� biz_data锛堜粎渚涚暀妗o級銆�
+ * <b>鍒绘剰涓嶆彁渚�</b>浠� {@code biz_data} 鍙栦笟鍔″瓧娈靛�肩殑鏂规硶锛氫笟鍔℃暟鎹竴寰嬩互鍚庣鏌ュ簱涓哄噯
+ * 锛圖2锛夛紝寮�浜嗚繖涓彛瀛愯繜鏃╂湁浜烘嬁鍓嶇鎶ユ枃褰撲簨瀹炩�斺�旇�屽畠鏄彲绡℃敼鐨勩��
+ *
+ * <p>鍓嶇瀹炴祴涓ょ褰㈡�侊細
+ * <pre>
+ * {"is_review_button": true,  "biz_button": "澶嶆牳",     "biz_data": [...], "is_biz_form": true}
+ * {"is_review_button": false, "biz_button": "鎵归噺鎸夐挳", "biz_data": [...], "is_biz_form": false}
+ * </pre>
+ * {@code biz_module} / {@code biz_title} 鍓嶇<b>姘歌繙鏄┖涓�</b>锛堜笁涓粍瑁呯偣鍏ㄧ‖缂栫爜锛夛紝鍒寚鏈涖��
+ *
+ * <p>姘镐笉鎶涘紓甯革細瑙f瀽澶辫触杩斿洖 {@link #EMPTY}銆傚姩浣滆涔夋嬁涓嶅埌鍙璁� action_label 绯欎竴鐐癸紝
+ * 涓嶈璁┿�岃繖娆℃敼杩囥�嶇己甯��
+ */
+public final class AuditSignMetaData {
+
+    public static final AuditSignMetaData EMPTY = new AuditSignMetaData(null, false, null);
+
+    private final String bizButton;
+    private final boolean reviewButton;
+    private final String rawBizData;
+
+    private AuditSignMetaData(String bizButton, boolean reviewButton, String rawBizData) {
+        this.bizButton = bizButton;
+        this.reviewButton = reviewButton;
+        this.rawBizData = rawBizData;
+    }
+
+    public static AuditSignMetaData parse(String json) {
+        if (json == null || json.trim().isEmpty()) {
+            return EMPTY;
+        }
+        try {
+            Map<String, Object> root = JsonUtil.stringToMap(json);
+            if (root == null) {
+                return EMPTY;
+            }
+            Object button = root.get("biz_button");
+            String name = button == null ? null : String.valueOf(button).trim();
+            if (name != null && name.isEmpty()) {
+                name = null;
+            }
+            boolean review = Boolean.TRUE.equals(root.get("is_review_button"));
+            Object data = root.get("biz_data");
+            String rawData = data == null ? null : JsonUtil.getObjectToString(data);
+            return new AuditSignMetaData(name, review, rawData);
+        } catch (Throwable t) {
+            return EMPTY;
+        }
+    }
+
+    /** 鐢ㄦ埛鐐圭殑鎸夐挳鏂囨锛屽銆岀‘瀹氥�嶃�屽鏍搞�嶃�屾壒閲忔寜閽�嶃�傚彇涓嶅埌杩斿洖 null銆� */
+    public String bizButton() {
+        return bizButton;
+    }
+
+    /** 鏄惁澶嶆牳鎸夐挳銆傚眰 0 浠� type 鍒嗕笉鍑哄鏍镐笌鏅�氫繚瀛橈紝鍙兘闈犲畠銆� */
+    public boolean isReviewButton() {
+        return reviewButton;
+    }
+
+    /** 鍓嶇褰撴椂灞曠ず鐨勬暟鎹紝鍘熸牱 JSON銆�<b>浠呬緵 extra 鐣欐。锛屼笉浣滃噯</b>銆� */
+    public String rawBizData() {
+        return rawBizData;
+    }
+}

--
Gitblit v1.8.0