From 18813ca83b94c807e35756a8a5f52effa5b99ba8 Mon Sep 17 00:00:00 2001
From: zepengdev <lzpsmith@outlook.com>
Date: Tue, 17 Jun 2025 16:00:42 +0800
Subject: [PATCH] feat(product): 新增商品批量查询接口

---
 oying-system/src/main/java/com/oying/modules/pc/common/ValueUpdate.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/pc/common/ValueUpdate.java b/oying-system/src/main/java/com/oying/modules/pc/common/ValueUpdate.java
new file mode 100644
index 0000000..01a8cdd
--- /dev/null
+++ b/oying-system/src/main/java/com/oying/modules/pc/common/ValueUpdate.java
@@ -0,0 +1,37 @@
+package com.oying.modules.pc.common;
+
+import cn.hutool.core.util.ObjUtil;
+import lombok.Data;
+
+/**
+ * 用于封装字段值的变化记录,支持泛型比较逻辑
+ * @param <T>
+ */
+@Data
+public class ValueUpdate<T> {
+
+    private final T newValue;
+    private final T oldValue;
+
+    public ValueUpdate(T newValue, T oldValue) {
+        this.newValue = newValue;
+        this.oldValue = oldValue;
+    }
+
+    public boolean isChange() {
+        return isChange(newValue, oldValue);
+    }
+
+    public boolean isChangeAndOldValueNotEmpty() {
+        return isChangeAndOldValueNotEmpty(newValue, oldValue);
+    }
+
+    public static <T> boolean isChange(T newValue, T oldValue) {
+        return ObjUtil.isNotEmpty(newValue) && !newValue.equals(oldValue);
+    }
+
+    public static <T> boolean isChangeAndOldValueNotEmpty(T newValue, T oldValue) {
+        return ObjUtil.isNotEmpty(oldValue) && isChange(newValue, oldValue);
+    }
+
+}

--
Gitblit v1.9.3