From 405e94c5d08e89c9bf2bd0820d39ceeaa049211d Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 16 十月 2024 08:11:11 +0800
Subject: [PATCH] 流水记录表

---
 src/main/java/com/zy/asrs/controller/OrderController.java         |  104 +++++++++++++
 src/main/java/com/zy/asrs/entity/FlowLog.java                     |   26 ++-
 src/main/java/com/zy/asrs/mapper/LocDetlMapper.java               |    2 
 src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java |    6 
 src/main/java/com/zy/asrs/service/LocDetlService.java             |    2 
 src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java             |    2 
 src/main/resources/mapper/LocDetlMapper.xml                       |   16 ++
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java    |    5 
 src/main/resources/mapper/OrderDetlMapper.xml                     |   11 +
 src/main/java/com/zy/asrs/service/AgvLocDetlService.java          |    3 
 src/main/webapp/static/js/flowLog/flowLog.js                      |    9 
 src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java            |    4 
 src/main/java/com/zy/asrs/service/OrderDetlService.java           |    2 
 src/main/java/com/zy/asrs/controller/AgvMobileController.java     |   33 ++++
 src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java  |    5 
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java       |    7 
 src/main/webapp/views/flowLog/flowLog.html                        |   50 +++++
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java    |  188 +++++++++++++++++++++++
 18 files changed, 454 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index 1c35546..e1f9782 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -5,6 +5,7 @@
 import com.core.annotations.ManagerAuth;
 import com.core.common.Cools;
 import com.core.common.R;
+import com.core.common.SnowflakeIdWorker;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.*;
@@ -47,6 +48,10 @@
     private AgvWrkMastService agvWrkMastService;
     @Autowired
     private AgvWrkDetlService agvWrkDetlService;
+    @Autowired
+    private SnowflakeIdWorker snowflakeIdWorker;
+    @Autowired
+    private FlowLogService flowLogService;
 
 
     /*
@@ -545,6 +550,7 @@
             }
             AgvWrkMast wrkMast = createWrkMast(ioType, 22L, locNo, "", barcode, now, getUserId(), 30,floor);
             // 鍚屾璋冩嫧鍗�
+            long flowId = snowflakeIdWorker.nextId();
             List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
             for (AgvLocDetl agvLocDetl : agvLocDetls) {
                 AgvWrkDetl wrkDetl = new AgvWrkDetl();
@@ -559,8 +565,35 @@
                 if (!agvWrkDetlService.insert(wrkDetl)) {
                     throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
                 }
+
                 // 鏇存柊璁㈠崟
                 OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                flowLog.setLocNo(wrkMast.getSourceLocNo());
+                flowLog.setSpare1(barcode);
+                flowLog.setOpType(5L);
+                flowLog.setOrderNo(orderDetl.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode());
+                flowLog.setMatnr(agvLocDetl.getMatnr());
+                flowLog.setMaktx(agvLocDetl.getMaktx());
+                flowLog.setOrderPrevious(orderDetl.getAnfme());
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(0.0);
+
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty() + agvLocDetl.getAnfme());
+                flowLog.setQtyChanged(agvLocDetl.getAnfme());
+
+                flowLog.setLocPrevious(agvLocDetl.getAnfme());
+                flowLog.setLocCurrent(0.0d);
+                flowLog.setLocChanged(agvLocDetl.getAnfme());
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                }
                 orderDetl.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
                 if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
                     throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index adfbd0d..06465ac 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -56,6 +56,8 @@
     private MatService matService;
     @Autowired
     private AgvLocDetlService agvLocDetlService;
+    @Autowired
+    private FlowLogService flowLogService;
 
     @GetMapping("/doc/type/list")
     @Transactional
@@ -359,6 +361,7 @@
     @Transactional
     public R formAdd(@RequestBody OrderDomainParam param){
         Order order = orderService.selectByNo(param.getOrderNo());
+        long flowId = snowflakeIdWorker.nextId();
         if (order != null) {
             return R.error("鍗曟嵁缂栧彿宸插瓨鍦�");
         }
@@ -417,9 +420,29 @@
             DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
             if (DetlDto.has(list, dto)) {
                 OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                Double anfme = item.getAnfme();
                 item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                 if (!orderDetlService.updateById(item)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(anfme);
+                flowLog.setOrderCurrent(anfme + orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             } else {
                 list.add(dto);
@@ -434,6 +457,25 @@
                 orderDetl.setQty(0.0D);
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(1L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(0.0D);
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(0.0D);
+                flowLog.setQtyCurrent(0.0D);
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             }
         }
@@ -570,11 +612,33 @@
                         if (!orderDetlService.insert(orderDetl)) {
                             throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
                         }
+                        // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                        FlowLog flowLog = new FlowLog();
+                        flowLog.setFid(String.valueOf(flowId));
+                        flowLog.setOpType(1L);
+                        flowLog.setOrderNo(param.getOrderNo());
+                        flowLog.setThreeCode(orderDetl.getThreeCode());
+                        flowLog.setMatnr(orderDetl.getMatnr());
+                        flowLog.setMaktx(orderDetl.getMaktx());
+                        flowLog.setOrderPrevious(0.0D);
+                        flowLog.setOrderCurrent(orderDetl.getAnfme());
+                        flowLog.setOrderChanged(orderDetl.getAnfme());
+                        flowLog.setQtyPrevious(0.0D);
+                        flowLog.setQtyCurrent(0.0D);
+                        flowLog.setQtyChanged(0.0D);
+                        flowLog.setUserId(getUserId());
+                        flowLog.setAppeTime(now);
+                        if (!flowLogService.insert(flowLog)) {
+                            throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                        }
+
                     }
+
                 }
 
             }
         }
+
         return R.ok("璁㈠崟娣诲姞鎴愬姛");
     }
 
@@ -583,6 +647,7 @@
     @Transactional
     public R formModify(@RequestBody OrderDomainParam param){
         Order order = orderService.selectById(param.getOrderId());
+        long flowId = snowflakeIdWorker.nextId();
         int docType = param.getDocType().intValue();
         if (order == null || order.getStatus() == 0) {
             return R.error("璁㈠崟涓嶅瓨鍦�");
@@ -610,9 +675,29 @@
             DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getAnfme(), orderDetl.getProcessSts());
             if (DetlDto.has(list, dto)) {
                 OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                Double anfme = item.getAnfme();
                 item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                 if (!orderDetlService.updateById(item)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(anfme);
+                flowLog.setOrderCurrent(anfme + orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             } else {
                 if (docType == 35 && orderDetl.getProcessSts() == 1) {
@@ -638,6 +723,25 @@
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
                 }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(0.0D);
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                }
             }
         }
         return R.ok("璁㈠崟淇敼鎴愬姛");
diff --git a/src/main/java/com/zy/asrs/entity/FlowLog.java b/src/main/java/com/zy/asrs/entity/FlowLog.java
index 18c4dcd..4146d9e 100644
--- a/src/main/java/com/zy/asrs/entity/FlowLog.java
+++ b/src/main/java/com/zy/asrs/entity/FlowLog.java
@@ -22,7 +22,7 @@
      * 鏁版嵁缂栧彿
      */
     @ApiModelProperty(value= "鏁版嵁缂栧彿")
-    @TableId(value = "id", type = IdType.INPUT)
+    @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
     /**
@@ -245,17 +245,25 @@
     public String getOpType$() {
         String otp = "";
         if (this.opType == 1L) {
-            otp = "1";
+            otp = "鏂板璁㈠崟";
         } else if (this.opType == 2L) {
-            otp = "2";
+            otp = "淇敼璁㈠崟";
         } else if (this.opType == 3L) {
-            otp = "3";
-        } else if (this.opType == 3L) {
-            otp = "3";
-        } else if (this.opType == 3L) {
-            otp = "3";
+            otp = "缁勬墭鍏ュ簱";
+        } else if (this.opType == 4L) {
+            otp = "璁㈠崟鍑哄簱";
+        } else if (this.opType == 5L) {
+            otp = "璋冩嫧鍑哄簱";
+        } else if (this.opType == 6L) {
+            otp = "鍔犲伐鍑哄簱";
+        } else if (this.opType == 7L) {
+            otp = "鍙栨秷鍏ュ簱";
+        } else if (this.opType == 8L) {
+            otp = "鍙栨秷绉诲簱";
+        } else if (this.opType == 9L) {
+            otp = "鍙栨秷璋冩嫧";
         }
-        return "";
+        return otp;
     }
 
 
diff --git a/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
index b0f3a46..71d1aa4 100644
--- a/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.zy.asrs.entity.AgvLocDetl;
+import com.zy.asrs.entity.LocDetl;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -25,6 +26,9 @@
     @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr} AND a.three_code = #{threeCode}")
     Double selectSumAnfmeByMatnr(@Param("matnr") String matnr,@Param("threeCode") String threeCode);
 
+    @Select("select * from agv_loc_detl where 1=1 and loc_no = #{locNo} and matnr = #{matnr} and three_code = #{csocode}")
+    AgvLocDetl selectItemByOrderNo(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
+
     @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr} AND a.three_code = #{threeCode} AND a.process_sts = 1")
     Double selectSumAnfmeByMatnrProcess(@Param("matnr") String matnr,@Param("threeCode") String threeCode);
 
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index c650abe..187d7cd 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -19,6 +19,8 @@
 
     LocDetl selectItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch,@Param("suppCode")String suppCode);
 
+    LocDetl selectItemByOrderNo(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
+
     int deleteItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("suppCode")String suppCode, @Param("threeCode")String threeCode, @Param("deadTime")String deadTime);
 
     int updateAnfme(@Param("anfme")Double anfme, @Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("suppCode")String suppCode, @Param("threeCode")String threeCode, @Param("deadTime")String deadTime);
diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
index 31be85f..f605a1b 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
@@ -23,6 +23,8 @@
      */
     OrderDetl selectItemByOrderNo(@Param("orderNo") String orderNo, @Param("matnr") String matnr, @Param("batch") String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
 
+    OrderDetl selectItemByOrderNo2(@Param("orderNo") String orderNo, @Param("matnr") String matnr, @Param("threeCode") String threeCode);
+
     OrderDetl selectItemNoneOfBatch(@Param("orderNo")String orderNo, @Param("matnr")String matnr);
 
     OrderDetl selectItemOfBatch(@Param("matnr")String matnr, @Param("batch")String batch);
diff --git a/src/main/java/com/zy/asrs/service/AgvLocDetlService.java b/src/main/java/com/zy/asrs/service/AgvLocDetlService.java
index 8a669fe..781e690 100644
--- a/src/main/java/com/zy/asrs/service/AgvLocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/AgvLocDetlService.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.plugins.Page;
 import com.baomidou.mybatisplus.service.IService;
 import com.zy.asrs.entity.AgvLocDetl;
+import com.zy.asrs.entity.LocDetl;
 import com.zy.common.model.LocDto;
 import com.zy.common.model.TaskDto;
 import org.springframework.web.multipart.MultipartFile;
@@ -14,6 +15,8 @@
 
     public void addLocDetlInfo(String locNo, int taskCode);
 
+    AgvLocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoCode);
+
     public double queryStockAndSetLocDto(String matnr, String batch, String orderNo, List<LocDto> locDtoList, double issued, String csocode, String isoseq, String type);
 
     public void updateStock(String sourceLoc, String targetLoc);
diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java
index 674438a..d8580cc 100644
--- a/src/main/java/com/zy/asrs/service/LocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -13,6 +13,8 @@
 
     LocDetl selectItem(String locNo, String matnr, String batch,String suppCode);
 
+    LocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoCode);
+
     Page<LocDetl> getStockOut(Page<LocDetl> page);
 
     /**
diff --git a/src/main/java/com/zy/asrs/service/OrderDetlService.java b/src/main/java/com/zy/asrs/service/OrderDetlService.java
index 1a7f9c1..02ee354 100644
--- a/src/main/java/com/zy/asrs/service/OrderDetlService.java
+++ b/src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -18,6 +18,8 @@
 
     OrderDetl selectItem(String orderNo, String matnr, String batch, String csocode, String isoCode);
 
+    OrderDetl selectItem(String orderNo, String matnr, String threeCode);
+
     OrderDetl selectItemNoneOfBatch(String orderNo, String matnr);
 
     OrderDetl selectItemOfBatch(String matnr, String batch);
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
index 104572f..17fe2ca 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
@@ -9,6 +9,7 @@
 import com.zy.asrs.entity.AgvLocDetl;
 import com.zy.asrs.entity.AgvLocMast;
 import com.zy.asrs.entity.AgvWrkDetl;
+import com.zy.asrs.entity.LocDetl;
 import com.zy.asrs.mapper.AgvLocDetlMapper;
 import com.zy.asrs.service.AgvBasDevpService;
 import com.zy.asrs.service.AgvLocDetlService;
@@ -130,6 +131,11 @@
     }
 
     @Override
+    public AgvLocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoCode) {
+        return this.baseMapper.selectItemByOrderNo(locNo, matnr, batch,csocode,isoCode);
+    }
+
+    @Override
     public Double getSumAnfmeProcess(String matnr, String threeCode) {
         return this.baseMapper.selectSumAnfmeByMatnrProcess(matnr, threeCode);
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index debe0a6..59d0999 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -5,6 +5,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.core.common.SnowflakeIdWorker;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.LocDetlAdjustParam;
@@ -73,6 +74,12 @@
     private WrkMastExecuteService wrkMastExecuteService;
     @Autowired
     private ConfigService configService;
+    @Autowired
+    private SnowflakeIdWorker snowflakeIdWorker;
+    @Autowired
+    private FlowLogService flowLogService;
+    @Autowired
+    private LocDetlServiceImpl locDetlService;
 
 
     /*
@@ -143,6 +150,7 @@
             //鐢熸垚宸ヤ綔妗�
             AgvWrkMast wrkMast = createWrkMast(ioType,wrkSts,sourceLocNo,targetLocNo,containerCode,now,userId,Short.valueOf(containerCode.substring(0,2)));
             //鐢熸垚宸ヤ綔妗f槑缁�
+            long flowId = snowflakeIdWorker.nextId();
             taskDto.getLocDtos().forEach(locDto -> {
                 if (!BaseController.isJSON(locDto.getOrderNo())) {
                     //鏄庣粏妗f墍闇�鍙傛暟
@@ -157,6 +165,36 @@
                             locDto.getCsocode(),
                             locDto.getIsoseq(),
                             locDto.getProcessSts());
+                    OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getCsocode(), locDto.getIsoseq());
+                    AgvLocDetl locDetl = agvLocDetlService.selectItem(wrkMast.getSourceLocNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getCsocode(), locDto.getIsoseq());
+                    // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                    FlowLog flowLog = new FlowLog();
+                    flowLog.setFid(String.valueOf(flowId));
+                    flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                    flowLog.setLocNo(wrkMast.getSourceLocNo());
+                    flowLog.setSpare1(containerCode);
+                    flowLog.setOpType(4L);
+                    flowLog.setOrderNo(locDto.getOrderNo());
+                    flowLog.setThreeCode(locDto.getCsocode());
+                    flowLog.setMatnr(locDto.getMatnr());
+                    flowLog.setMaktx(locDto.getMaktx());
+                    flowLog.setOrderPrevious(orderDetl.getAnfme());
+                    flowLog.setOrderCurrent(orderDetl.getAnfme());
+                    flowLog.setOrderChanged(0.0);
+
+                    flowLog.setQtyPrevious(orderDetl.getQty());
+                    flowLog.setQtyCurrent(orderDetl.getQty() + locDto.getAnfme());
+                    flowLog.setQtyChanged(locDto.getAnfme());
+
+                    flowLog.setLocPrevious(locDetl.getAnfme());
+                    flowLog.setLocCurrent(locDetl.getAnfme() - locDto.getAnfme());
+                    flowLog.setLocChanged(locDto.getAnfme());
+                    flowLog.setUserId(userId);
+                    flowLog.setAppeTime(now);
+                    if (!flowLogService.insert(flowLog)) {
+                        throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                    }
+
                 }else {
                     List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class);
                     orderDtoList.forEach(orderDto -> {
@@ -174,6 +212,7 @@
                                 locDto.getProcessSts());
                     });
                 }
+
 
                 //淇敼璁㈠崟淇℃伅
                 modifyOrderDetl(locDto, userId);
@@ -217,6 +256,7 @@
             //鐢熸垚宸ヤ綔妗�
             AgvWrkMast wrkMast = createWrkMast(ioType,wrkSts,sourceLocNo,targetLocNo,containerCode,now,userId,Short.valueOf(containerCode.substring(0,2)));
             //鐢熸垚宸ヤ綔妗f槑缁�
+            long flowId = snowflakeIdWorker.nextId();
             taskDto.getLocDtos().forEach(locDto -> {
                 if (!BaseController.isJSON(locDto.getOrderNo())) {
                     //鏄庣粏妗f墍闇�鍙傛暟
@@ -231,6 +271,35 @@
                             locDto.getCsocode(),
                             locDto.getIsoseq(),
                             locDto.getProcessSts());
+                    OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getCsocode(), locDto.getIsoseq());
+                    AgvLocDetl locDetl = agvLocDetlService.selectItem(wrkMast.getSourceLocNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getCsocode(), locDto.getIsoseq());
+
+                    FlowLog flowLog = new FlowLog();
+                    flowLog.setFid(String.valueOf(flowId));
+                    flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                    flowLog.setLocNo(wrkMast.getSourceLocNo());
+                    flowLog.setSpare1(containerCode);
+                    flowLog.setOpType(6L);
+                    flowLog.setOrderNo(locDto.getOrderNo());
+                    flowLog.setThreeCode(locDto.getCsocode());
+                    flowLog.setMatnr(locDto.getMatnr());
+                    flowLog.setMaktx(locDto.getMaktx());
+                    flowLog.setOrderPrevious(orderDetl.getAnfme());
+                    flowLog.setOrderCurrent(orderDetl.getAnfme());
+                    flowLog.setOrderChanged(0.0);
+
+                    flowLog.setQtyPrevious(orderDetl.getQty());
+                    flowLog.setQtyCurrent(orderDetl.getQty() + locDto.getAnfme());
+                    flowLog.setQtyChanged(locDto.getAnfme());
+
+                    flowLog.setLocPrevious(locDetl.getAnfme());
+                    flowLog.setLocCurrent(locDetl.getAnfme() - locDto.getAnfme());
+                    flowLog.setLocChanged(locDto.getAnfme());
+                    flowLog.setUserId(userId);
+                    flowLog.setAppeTime(now);
+                    if (!flowLogService.insert(flowLog)) {
+                        throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                    }
                 }else {
                     List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class);
                     orderDtoList.forEach(orderDto -> {
@@ -437,7 +506,7 @@
             br = 2;
         }
         if (agvBasDevp.getLocType1() != br) {
-            throw new CoolException("绔欑偣寮傚父锛�");
+            throw new CoolException("绔欑偣绫诲瀷鍜岃揣鏋剁被鍨嬩笉绗︼紒");
         }
         if (containerType == 40) {
             locType = 5;
@@ -510,8 +579,37 @@
             //鐢熸垚宸ヤ綔妗�
             AgvWrkMast wrkMast = createWrkMast(1,201L,devNo,locNo,containerCode,now,userId, containerType);
             //鐢熸垚宸ヤ綔妗f槑缁�
+            long flowId = snowflakeIdWorker.nextId();
             agvWaitPakinList.forEach(wp -> {
                 createWrkDetlReWrite(wp.getMatnr(),wrkMast.getWrkNo(),wp.getOrderNo(),wp.getBatch(),wp.getAnfme(),wp.getSuppCode(),now,userId,wp.getThreeCode(),wp.getDeadTime(),wp.getProcessSts());
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                OrderDetl orderDetl = orderDetlService.selectItem(wp.getOrderNo(), wp.getMatnr(), wp.getThreeCode());
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                flowLog.setLocNo(locNo);
+                flowLog.setSpare1(containerCode);
+                flowLog.setOpType(3L);
+                flowLog.setOrderNo(wp.getOrderNo());
+                flowLog.setThreeCode(wp.getThreeCode());
+                flowLog.setMatnr(wp.getMatnr());
+                flowLog.setMaktx(wp.getMaktx());
+                flowLog.setOrderPrevious(orderDetl.getAnfme());
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(0.0);
+                flowLog.setQtyPrevious(orderDetl.getQty()-wp.getAnfme());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(wp.getAnfme());
+
+                flowLog.setLocPrevious(0.0D);
+                flowLog.setLocCurrent(wp.getAnfme());
+                flowLog.setLocChanged(wp.getAnfme());
+
+                flowLog.setUserId(userId);
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                }
             });
             //淇敼鍏ュ簱閫氱煡妗g姸鎬�
             agvWaitPakinService.updateIoStatus(containerCode,"Y");
@@ -760,6 +858,7 @@
     @Transactional
     public void cancelWrkMast(String workNo, Long userId,Integer type) {
         AgvWrkMast wrkMast = agvWrkMastService.selectById(workNo);
+        long flowId = snowflakeIdWorker.nextId();
         if (Cools.isEmpty(wrkMast)){
             throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
         }
@@ -825,8 +924,36 @@
                         // 鍥炴粴鍏ュ簱璁㈠崟
                         OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvWaitPakin.getThreeCode()).eq("matnr", agvWaitPakin.getMatnr()).eq("order_no", agvWaitPakin.getOrderNo()));
                         orderDetl.setQty(orderDetl.getQty() - agvWaitPakin.getAnfme());
+
                         if (!orderDetlService.updateById(orderDetl)) {
                             throw new CoolException("璁㈠崟鍥炴粴澶辫触");
+                        }
+                        FlowLog flowLog = new FlowLog();
+                        flowLog.setFid(String.valueOf(flowId));
+                        flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                        flowLog.setLocNo(locNo);
+                        flowLog.setSpare1(wrkMast.getBarcode());
+                        flowLog.setOpType(3L);
+                        flowLog.setOrderNo(agvWaitPakin.getOrderNo());
+                        flowLog.setThreeCode(agvWaitPakin.getThreeCode());
+                        flowLog.setMatnr(agvWaitPakin.getMatnr());
+                        flowLog.setMaktx(agvWaitPakin.getMaktx());
+                        flowLog.setOrderPrevious(orderDetl.getAnfme());
+                        flowLog.setOrderCurrent(orderDetl.getAnfme());
+                        flowLog.setOrderChanged(0.0);
+
+                        flowLog.setQtyPrevious(orderDetl.getQty());
+                        flowLog.setQtyCurrent(orderDetl.getQty()-agvWaitPakin.getAnfme());
+                        flowLog.setQtyChanged(-agvWaitPakin.getAnfme());
+
+                        flowLog.setLocPrevious(0.0);
+                        flowLog.setLocCurrent(0.0);
+                        flowLog.setLocChanged(-agvWaitPakin.getAnfme());
+
+                        flowLog.setUserId(userId);
+                        flowLog.setAppeTime(new Date());
+                        if (!flowLogService.insert(flowLog)) {
+                            throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                         }
                         // 鍒犻櫎缁勬墭妗�
                         if (!agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",agvWaitPakin.getSuppCode()).eq("matnr",agvWaitPakin.getMatnr()).eq("three_code",agvWaitPakin.getThreeCode()))) {
@@ -857,10 +984,40 @@
                         OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("order_no", "DB" + agvLocDetl.getOrderNo()));
                         orderDetl.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
                         if (!orderDetlService.updateById(orderDetl)) {
-                            throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+                            throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触");
+                        }
+                        FlowLog flowLog = new FlowLog();
+                        flowLog.setFid(String.valueOf(flowId));
+                        flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                        flowLog.setLocNo(locNo);
+                        flowLog.setSpare1(wrkMast.getBarcode());
+                        flowLog.setOpType(8L);
+                        flowLog.setOrderNo(agvLocDetl.getOrderNo());
+                        flowLog.setThreeCode(agvLocDetl.getThreeCode());
+                        flowLog.setMatnr(agvLocDetl.getMatnr());
+                        flowLog.setMaktx(agvLocDetl.getMaktx());
+                        flowLog.setOrderPrevious(orderDetl.getAnfme());
+                        flowLog.setOrderCurrent(orderDetl.getAnfme());
+                        flowLog.setOrderChanged(0.0);
+
+                        flowLog.setQtyPrevious(orderDetl.getQty());
+                        flowLog.setQtyCurrent(orderDetl.getQty() + agvLocDetl.getAnfme());
+                        flowLog.setQtyChanged(-agvLocDetl.getAnfme());
+
+                        flowLog.setLocPrevious(0.0);
+                        flowLog.setLocCurrent(agvLocDetl.getAnfme());
+                        flowLog.setLocChanged(agvLocDetl.getAnfme());
+
+                        flowLog.setUserId(userId);
+                        flowLog.setAppeTime(new Date());
+                        if (!flowLogService.insert(flowLog)) {
+                            throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                         }
                     }
+                } else {
+
                 }
+
                 // 鑷姩璋冩嫧鍑哄簱鍙栨秷
             } else if(wrkMast.getIoType() == 108 || wrkMast.getIoType() == 111 || wrkMast.getIoType() == 112) {
                 if (wrkMast.getIoType() == 112) {
@@ -895,6 +1052,33 @@
                     if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no","DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
                         throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
                     }
+                    FlowLog flowLog = new FlowLog();
+                    flowLog.setFid(String.valueOf(flowId));
+                    flowLog.setSpare2(wrkMast.getWrkNo().toString());
+                    flowLog.setLocNo(locNo);
+                    flowLog.setSpare1(wrkMast.getBarcode());
+                    flowLog.setOpType(9L);
+                    flowLog.setOrderNo(agvLocDetl.getOrderNo());
+                    flowLog.setThreeCode(agvLocDetl.getThreeCode());
+                    flowLog.setMatnr(agvLocDetl.getMatnr());
+                    flowLog.setMaktx(agvLocDetl.getMaktx());
+                    flowLog.setOrderPrevious(orderDetl.getAnfme());
+                    flowLog.setOrderCurrent(orderDetl.getAnfme());
+                    flowLog.setOrderChanged(0.0);
+
+                    flowLog.setQtyPrevious(orderDetl.getQty());
+                    flowLog.setQtyCurrent(orderDetl.getQty() - agvLocDetl.getAnfme());
+                    flowLog.setQtyChanged(- agvLocDetl.getAnfme());
+
+                    flowLog.setLocPrevious(0.0);
+                    flowLog.setLocCurrent(agvLocDetl.getAnfme());
+                    flowLog.setLocChanged(agvLocDetl.getAnfme());
+
+                    flowLog.setUserId(userId);
+                    flowLog.setAppeTime(new Date());
+                    if (!flowLogService.insert(flowLog)) {
+                        throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                    }
                 }
                 //鍑哄簱鍙栨秷
             } else {
diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index 00fe50d..cb0369f 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -218,6 +218,11 @@
     }
 
     @Override
+    public LocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoCode) {
+        return this.baseMapper.selectItemByOrderNo(locNo, matnr, batch,csocode,isoCode);
+    }
+
+    @Override
     public List<LocDetl> searchByLike(String orderNo, String matnr, String maktx, String specs, String locNo) {
         if (Cools.isEmpty(orderNo) && Cools.isEmpty(matnr) && Cools.isEmpty(maktx) && Cools.isEmpty(specs) && Cools.isEmpty(locNo)) {
             return new ArrayList<LocDetl>();
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
index 9b99ae0..b0e109e 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -48,6 +48,11 @@
     }
 
     @Override
+    public OrderDetl selectItem(String orderNo, String matnr, String threeCode) {
+        return this.baseMapper.selectItemByOrderNo2(orderNo, matnr, threeCode);
+    }
+
+    @Override
     public OrderDetl selectItemNoneOfBatch(String orderNo, String matnr) {
         return this.baseMapper.selectItemNoneOfBatch(orderNo, matnr);
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 81c4791..31f28f8 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -84,6 +84,10 @@
     private DocTypeService docTypeService;
     @Autowired
     private AgvWaitPakinService agvWaitPakinService;
+    @Autowired
+    private AgvLocDetlService agvLocDetlService;
+    @Autowired
+    private FlowLogService flowLogService;
 
     @Override
     @Transactional
@@ -1119,10 +1123,12 @@
             throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
         }
         // 璁㈠崟鍏宠仈
+        long flowId = snowflakeIdWorker.nextId();
         List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
         for (WrkDetl wrkDetl : wrkDetls) {
             if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
                 if (!BaseController.isJSON(wrkDetl.getOrderNo())) {
+
                     if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme(),wrkDetl.getThreeCode(),wrkDetl.getDeadTime())) {
                         throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
                     }
@@ -1150,6 +1156,7 @@
                     }
                 }
             }
+
         }
         // 鍙栨秷鎿嶄綔浜哄憳璁板綍
         wrkMast.setManuType("鎵嬪姩鍙栨秷");
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index b12be7f..5dcc275 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -76,6 +76,22 @@
         <include refid="batchSeq"></include>
     </select>
 
+    <select id="selectItemByOrderNo" resultMap="BaseResultMap">
+        select * from asr_loc_detl
+        where 1=1
+        and loc_no = #{locNo}
+        and matnr = #{matnr}
+        <if test="batch!=null and batch!='' ">
+            and batch = #{batch}
+        </if>
+        <if test="csocode!=null and csocode!='' ">
+            and three_code = #{csocode}
+        </if>
+        <if test="isocode!=null and isocode!='' ">
+            and dead_time = #{isocode}
+        </if>
+    </select>
+
     <delete id="deleteItem">
         delete from asr_loc_detl
         where 1=1
diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index 339287a..7b50892 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -96,6 +96,17 @@
         </if>
     </select>
 
+    <select id="selectItemByOrderNo2" resultMap="BaseResultMap">
+        select * from man_order_detl
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <if test="threeCode!=null and threeCode!='' ">
+            and three_code = #{threeCode}
+        </if>
+
+    </select>
+
     <select id="selectItemNoneOfBatch" resultMap="BaseResultMap">
         select top 1 * from man_order_detl
         where 1=1
diff --git a/src/main/webapp/static/js/flowLog/flowLog.js b/src/main/webapp/static/js/flowLog/flowLog.js
index c16df4a..d21becb 100644
--- a/src/main/webapp/static/js/flowLog/flowLog.js
+++ b/src/main/webapp/static/js/flowLog/flowLog.js
@@ -20,14 +20,17 @@
         toolbar: '#toolbar',
         cellMinWidth: 50,
         height: 'full-120',
+        even: true,
         cols: [[
-            {type: 'checkbox'}
+            {type: 'checkbox', merge: ['fid']}
             ,{field: 'id', align: 'center',title: '鏁版嵁缂栧彿',hide: true}
-            ,{field: 'fid', align: 'center',title: '娴佹按鍙�'}
-            ,{field: 'opType', align: 'center',title: '鎿嶄綔绫诲瀷'}
+            ,{field: 'fid', align: 'center',title: '娴佹按鍙�',merge: true}
+            ,{field: 'spare2', align: 'center',title: '宸ヤ綔鍙�'}
+            ,{field: 'opType$', align: 'center',title: '鎿嶄綔绫诲瀷'}
             ,{field: 'orderNo', align: 'center',title: '璁㈠崟鍙�'}
             ,{field: 'threeCode', align: 'center',title: '閿�鍞崟鍙�'}
             ,{field: 'locNo', align: 'center',title: '搴撲綅鍙�'}
+            ,{field: 'spare1', align: 'center',title: '璐ф灦鐮�'}
             ,{field: 'matnr', align: 'center',title: '鐗╂枡鍙�'}
             ,{field: 'maktx', align: 'center',title: '鐗╂枡鍚嶇О'}
             ,{field: 'orderPrevious', align: 'center',title: '璁㈠崟鏁伴噺鍙樻洿鍓�'}
diff --git a/src/main/webapp/views/flowLog/flowLog.html b/src/main/webapp/views/flowLog/flowLog.html
index c02584b..de12354 100644
--- a/src/main/webapp/views/flowLog/flowLog.html
+++ b/src/main/webapp/views/flowLog/flowLog.html
@@ -19,19 +19,54 @@
                 <div class="layui-form-item">
                     <div class="layui-inline">
                         <div class="layui-input-inline">
-                            <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
-                        </div>
-                    </div>
-                     <div class="layui-inline" style="width: 300px">
-                        <div class="layui-input-inline">
-                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">
+                            <input class="layui-input" type="text" name="fid" placeholder="娴佹按鍙�" autocomplete="off">
                         </div>
                     </div>
                     <div class="layui-inline">
                         <div class="layui-input-inline">
-                            <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off">
+                            <input class="layui-input" type="text" name="spare2" placeholder="宸ヤ綔鍙�" autocomplete="off">
                         </div>
                     </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="order_no" placeholder="璁㈠崟鍙�" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="three_code" placeholder="閿�鍞崟鍙�" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="loc_no" placeholder="搴撲綅鍙�" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="spare1" placeholder="璐ф灦鐮�" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="matnr" placeholder="鐗╂枡鍙�" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="userId" placeholder="鎿嶄綔鍛�" autocomplete="off">
+                        </div>
+                    </div>
+<!--                     <div class="layui-inline" style="width: 300px">-->
+<!--                        <div class="layui-input-inline">-->
+<!--                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">-->
+<!--                        </div>-->
+<!--                    </div>-->
+<!--                    <div class="layui-inline">-->
+<!--                        <div class="layui-input-inline">-->
+<!--                            <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off">-->
+<!--                        </div>-->
+<!--                    </div>-->
                     <div class="layui-inline">&emsp;
                         <button class="layui-btn icon-btn" lay-filter="search" lay-submit>
                             <i class="layui-icon">&#xe615;</i>鎼滅储
@@ -84,6 +119,7 @@
                         <input class="layui-input" name="fid" placeholder="璇疯緭鍏ユ祦姘村彿">
                     </div>
                 </div>
+
                 <div class="layui-form-item">
                     <label class="layui-form-label">鎿嶄綔绫诲瀷: </label>
                     <div class="layui-input-block">

--
Gitblit v1.9.1