From d8047152e563ba7816208a3fe9cf1ffdc9cddc83 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期三, 21 六月 2023 23:36:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 igds-inout/src/main/java/com/ld/igds/m/service/HMAtockChangeService.java |   40 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/igds-inout/src/main/java/com/ld/igds/m/service/HMAtockChangeService.java b/igds-inout/src/main/java/com/ld/igds/m/service/HMAtockChangeService.java
index e24e7c7..9206fc1 100644
--- a/igds-inout/src/main/java/com/ld/igds/m/service/HMAtockChangeService.java
+++ b/igds-inout/src/main/java/com/ld/igds/m/service/HMAtockChangeService.java
@@ -4,11 +4,16 @@
 import com.bstek.dorado.data.provider.Page;
 import com.ld.igds.models.InoutStockChange;
 import com.ld.igds.util.ContextUtil;
+import com.ld.igds.util.DateUtil;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.time.DateFormatUtils;
+import org.apache.commons.lang3.time.DateUtils;
 import org.hibernate.Session;
 import org.springframework.stereotype.Service;
+
 import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 @Service
@@ -47,10 +52,24 @@
         data.setUpdateTime(new Date());
         data.setUpdateUser(ContextUtil.getLoginUserCName());
         try {
-            if (null == data.getId()) {
-                data.setId(ContextUtil.getUUID());
+            if (null == data.getCzbz()) {
+                Map<String, Object> param = new HashMap<>();
+                param.put("dateTime", data.getChangeDate());
+                List<InoutStockChange> list = queryAll(param);
+                int max = 0;
+                if (list.size() != 0) {
+                    int num;
+                    for (InoutStockChange stockChange : list) {
+                        num = Integer.parseInt(stockChange.getId().substring(stockChange.getId().length() - 4));
+                        max = Math.max(max, num);
+                    }
+                }
+                String date = DateFormatUtils.format(new Date(), "yyyyMMdd");
+                data.setId(date + String.format("%04d", max + 1));
+                data.setCzbz("i");
                 session.save(data);
             } else {
+                data.setCzbz("u");
                 session.update(data);
             }
         } catch (Exception e) {
@@ -60,6 +79,7 @@
             session.close();
         }
     }
+
     public String delData(InoutStockChange data) {
         Session session = this.getSessionFactory().openSession();
         try {
@@ -74,4 +94,20 @@
         }
         return null;
     }
+
+
+    public List<InoutStockChange> queryAll(Map<String, Object> param) {
+
+        String hql = "from " + InoutStockChange.class.getName() + " where 1 = 1 ";
+        Map<String, Object> args = new HashMap<String, Object>();
+        Date date = (Date) param.get("dateTime");
+        if (null != date) {
+            hql += " and updateTime >= :startTime and updateTime < :endTime";
+            args.put("startTime", DateUtil.getCurZero(date));
+            args.put("endTime", DateUtil.getNextZero(date));
+        }
+        hql += " order by  updateTime desc";
+        return this.query(hql, args);
+    }
+
 }

--
Gitblit v1.9.3