From 2e45217fdaba7573fa3cac3c712b7d6672fa8297 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期三, 31 七月 2024 14:31:30 +0800 Subject: [PATCH] # --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/TaskDetlLog.java | 66 +++++++++++++++++++++++++++++++- 1 files changed, 63 insertions(+), 3 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/TaskDetlLog.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/TaskDetlLog.java index fd97a50..7088727 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/TaskDetlLog.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/TaskDetlLog.java @@ -1,9 +1,13 @@ package com.zy.asrs.wms.asrs.entity; import com.baomidou.mybatisplus.annotation.TableLogic; -import java.text.SimpleDateFormat; -import java.util.Date; +import java.lang.reflect.Field; +import java.text.SimpleDateFormat; +import java.util.*; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.zy.asrs.common.utils.Synchro; import com.zy.asrs.wms.asrs.service.MatService; import com.zy.asrs.wms.asrs.service.OrderDetlLogService; import com.zy.asrs.wms.asrs.service.OrderLogService; @@ -39,7 +43,7 @@ * ID */ @ApiModelProperty(value= "ID") - @TableId(value = "id", type = IdType.AUTO) + @TableId(value = "id", type = IdType.INPUT) private Long id; /** @@ -298,5 +302,61 @@ return null; } + public void sync(Object source) { + Synchro.Copy(source, this); + } + + //鍔ㄦ�佹墿灞曞瓧娈� + public transient Map<String, Object> dynamicFields = new HashMap<>(); + + @JsonAnyGetter + public Map<String,Object> getDynamicFields() { + return dynamicFields; + } + + public void syncField(List<TaskDetlFieldLog> list) { + ArrayList<String> keys = new ArrayList<>(); + Field[] fields = this.getClass().getFields(); + for (Field field : fields) { + keys.add(field.getName()); + } + + Map<String, Object> dynamicFields = new HashMap<>(); + for (TaskDetlFieldLog taskDetlFieldLog : list) { + if (keys.contains(taskDetlFieldLog.getName())) { + continue; + } + dynamicFields.put(taskDetlFieldLog.getName(), taskDetlFieldLog.getValue()); + } + + this.dynamicFields = dynamicFields; + } + + public void syncFieldMap(Map<String, Object> map) { + ArrayList<String> keys = new ArrayList<>(); + Field[] fields = this.getClass().getDeclaredFields(); + for (Field field : fields) { + keys.add(field.getName()); + } + keys.add("detlId"); + + Map<String, Object> dynamicFields = new HashMap<>(); + for (Map.Entry<String, Object> entry : map.entrySet()) { + if (keys.contains(entry.getKey())) { + continue; + } + dynamicFields.put(entry.getKey(), entry.getValue()); + } + + this.dynamicFields = dynamicFields; + } + + public String getFieldString(String key) { + return dynamicFields.get(key).toString(); + } + + public void setField(String key, Object value) { + dynamicFields.put(key, value); + } } -- Gitblit v1.9.1