From 65eed03dbcf98ee1cd061bbe06b420009b68822a Mon Sep 17 00:00:00 2001
From: "USER-20220102CG\\noblelift" <546428999@qq.com>
Date: Mon, 30 May 2022 10:55:37 +0800
Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E9=99=A4mongodb?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 nladmin-system/pom.xml                        |   5 -
 .../hailiang_coating/ItemProtocol.java        |   1 -
 .../HaiLiangFeedingDeviceDriver.java          |   3 -
 .../HaiLiangFeedingTrunkDeviceDriver.java     |  42 ++-
 .../HaiLiangStrappingDeviceDriver.java        |  13 -
 .../LnshMixingMillDeviceDriver.java           |   2 -
 .../org/nl/acs/log/rest/LogsController.java   |   9 +-
 .../org/nl/acs/log/service/LogServer.java     |   5 -
 .../acs/log/service/impl/LogServerImpl.java   |  15 +-
 .../order/rest/CustomerbaseController.java    |  12 +-
 .../order/rest/MaterialbaseController.java    |  13 +-
 .../order/service/CustomerbaseService.java    |   7 +-
 .../order/service/MaterialbaseService.java    |   7 +-
 .../service/ProduceshiftorderService.java     |  21 +-
 .../order/service/dto/CustomerbaseDto.java    |   5 +-
 .../order/service/dto/MaterialbaseDto.java    |   1 +
 .../service/dto/ProduceshiftorderDto.java     |   9 +
 .../dto/ProduceshiftorderdetailDto.java       |   1 +
 .../service/impl/CustomerbaseServiceImpl.java |  30 +-
 .../service/impl/MaterialbaseServiceImpl.java |  31 +-
 .../impl/ProduceshiftorderServiceImpl.java    | 273 ++++++++++++++++--
 .../org/nl/acs/order/service/wql/order.xls    | Bin 191488 -> 191488 bytes
 .../org/nl/modules/log/LogMarkerTypeEnum.java |  33 ---
 .../org/nl/modules/log/LogMarkerUtil.java     |   9 -
 .../org/nl/modules/log/MongoDBAppender.java   |  55 ----
 .../nl/modules/log/MongoDBAppenderBase.java   | 109 -------
 .../modules/log/rest/RootLogController.java   |  47 ---
 .../modules/log/service/RootLogService.java   |  29 --
 .../log/service/impl/RootLogServiceImpl.java  |  76 -----
 .../modules/quartz/task/AutoCreateInst.java   |  25 --
 .../quartz/task/queryAOrderDterail.java       |   3 -
 .../main/resources/config/application-dev.yml |  10 +-
 .../resources/config/application-prod.yml     |  10 +-
 .../resources/config/application-test.yml     |  10 +-
 .../src/main/resources/log/AcsToErp.xml       |  33 ++-
 .../src/main/resources/log/AcsToWms.xml       |  31 +-
 .../resources/log/AgvFeedbackServiceImpl.xml  |  16 -
 .../main/resources/log/AgvLeaveServlet.xml    |  18 --
 .../src/main/resources/log/AgvServiceImpl.xml |  32 ++
 .../src/main/resources/log/AgvackServlet.xml  |  32 ++
 .../src/main/resources/log/AutoCreateInst.xml |  33 ++-
 .../log/NDCSocketConnectionAutoRun.xml        |  31 +-
 .../main/resources/log/QueryAgvTaskStatus.xml |  33 ++-
 .../resources/log/QueryXZAgvTaskStatus.xml    |  35 ++-
 .../src/main/resources/log/ScannerBarcode.xml |  32 ++
 .../src/main/resources/log/WmsToAcs.xml       |  35 ++-
 .../src/main/resources/logback-spring.xml     |  14 -
 47 files changed, 659 insertions(+), 637 deletions(-)
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/LogMarkerTypeEnum.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/LogMarkerUtil.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppender.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppenderBase.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/rest/RootLogController.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/service/RootLogService.java
 delete mode 100644 nladmin-system/src/main/java/org/nl/modules/log/service/impl/RootLogServiceImpl.java
 delete mode 100644 nladmin-system/src/main/resources/log/AgvFeedbackServiceImpl.xml
 delete mode 100644 nladmin-system/src/main/resources/log/AgvLeaveServlet.xml
 create mode 100644 nladmin-system/src/main/resources/log/AgvServiceImpl.xml
 create mode 100644 nladmin-system/src/main/resources/log/AgvackServlet.xml
 create mode 100644 nladmin-system/src/main/resources/log/ScannerBarcode.xml

diff --git a/nladmin-system/pom.xml b/nladmin-system/pom.xml
index 2419605..2cdb753 100644
--- a/nladmin-system/pom.xml
+++ b/nladmin-system/pom.xml
@@ -26,11 +26,6 @@
             <version>6.6</version>
         </dependency>
 
-        <dependency>
-            <groupId>org.mongodb</groupId>
-            <artifactId>mongo-java-driver</artifactId>
-            <version>3.4.2</version>
-        </dependency>
 <!--
         <dependency>
             <groupId>ch.qos.logback</groupId>
diff --git a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_coating/ItemProtocol.java b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_coating/ItemProtocol.java
index 5e6f01c..17e721b 100644
--- a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_coating/ItemProtocol.java
+++ b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_coating/ItemProtocol.java
@@ -2,7 +2,6 @@ package org.nl.acs.device_driver.hailiang.hailiang_coating;
 
 import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.device.device_driver.standard_inspect.ItemDto;
-import org.nl.acs.device_driver.hailiang.hailiang_strapping.HaiLiangStrappingDeviceDriver;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java
index 754b6a2..31aeada 100644
--- a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java
+++ b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java
@@ -1,6 +1,5 @@
 package org.nl.acs.device_driver.hailiang.hailiang_feeding;
 
-import cn.hutool.core.util.StrUtil;
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -8,9 +7,7 @@ import org.nl.acs.device_driver.DeviceDriver;
 import org.nl.acs.device_driver.RouteableDeviceDriver;
 import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
 import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
-import org.nl.acs.instruction.service.dto.Instruction;
 import org.nl.acs.opc.Device;
-import java.util.List;
 
 /**
  * 海亮-上料线体
diff --git a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java
index cba1993..641d041 100644
--- a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java
+++ b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java
@@ -1,5 +1,6 @@
 package org.nl.acs.device_driver.hailiang.hailiang_feeding_trunk;
 
+import cn.hutool.core.util.ObjectUtil;
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -7,12 +8,14 @@ import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
 import org.nl.acs.device_driver.DeviceDriver;
 import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
 import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
-import org.nl.acs.instruction.service.dto.Instruction;
 import org.nl.acs.opc.Device;
+import org.nl.acs.order.service.ProduceshiftorderService;
+import org.nl.acs.order.service.dto.ProduceshiftorderDto;
+import org.nl.exception.BadRequestException;
 import org.openscada.opc.lib.da.Server;
+import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 
 /**
@@ -24,6 +27,9 @@ import java.util.Map;
 public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver {
     protected ItemProtocol itemProtocol = new ItemProtocol(this);
 
+    @Autowired
+    ProduceshiftorderService produceshiftorderService;
+
     @Override
     public Device getDevice() {
         return this.device;
@@ -95,6 +101,38 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
     }
 
     public boolean apply_order() throws Exception {
+        ProduceshiftorderDto dto = produceshiftorderService.apply_order();
+        if(ObjectUtil.isEmpty(dto)){
+            throw new BadRequestException("未找到可下发工单!");
+        }
+        String order = dto.getOrder_code();
+        //是否刻字
+        String is_lettering = dto.getIs_lettering();
+        //是否套冒
+        String is_risking = dto.getIs_risking();
+        //捆扎
+        String is_strapping = dto.getIs_strapping();
+        //裹膜
+        String is_coating =  dto.getIs_coating();
+        //贴标
+        String is_labeling = dto.getIs_labeling();
+        String outer_diameter = dto.getOuter_diameter();
+        String wall_thickness = dto.getWall_thickness();
+        String length = dto.getLength();
+        String qty = dto.getQty();
+        writing(ItemProtocol.item_to_order,order);
+        writing(ItemProtocol.item_to_order_feeding_qty,qty);
+        writing(ItemProtocol.item_to_outer_diameter,outer_diameter);
+        writing(ItemProtocol.item_to_wall_thickness,wall_thickness);
+        writing(ItemProtocol.item_to_length,length);
+        writing(ItemProtocol.item_to_is_labeling,is_labeling);
+        writing(ItemProtocol.item_to_is_risking,is_risking);
+        writing(ItemProtocol.item_to_is_strapping,is_strapping);
+        writing(ItemProtocol.item_to_is_coating,is_coating);
+        writing(ItemProtocol.item_to_is_lettering,is_lettering);
+        dto.setOrder_status("02");
+        produceshiftorderService.update(dto);
+
 
         return true;
     }
diff --git a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_strapping/HaiLiangStrappingDeviceDriver.java b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_strapping/HaiLiangStrappingDeviceDriver.java
index 0447c2a..559f698 100644
--- a/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_strapping/HaiLiangStrappingDeviceDriver.java
+++ b/nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_strapping/HaiLiangStrappingDeviceDriver.java
@@ -1,25 +1,12 @@
 package org.nl.acs.device_driver.hailiang.hailiang_strapping;
 
-import com.alibaba.fastjson.JSONObject;
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
-import org.nl.acs.device.service.DeviceService;
 import org.nl.acs.device_driver.DeviceDriver;
 import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
 import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
-import org.nl.acs.instruction.service.InstructionService;
 import org.nl.acs.opc.Device;
-import org.nl.acs.route.service.RouteLineService;
-import org.nl.acs.task.service.TaskService;
-import org.nl.utils.SpringContextHolder;
-import org.openscada.opc.lib.da.Server;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * 海亮-捆扎线体
diff --git a/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_mixing_mill/LnshMixingMillDeviceDriver.java b/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_mixing_mill/LnshMixingMillDeviceDriver.java
index 8bc820b..33052ce 100644
--- a/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_mixing_mill/LnshMixingMillDeviceDriver.java
+++ b/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_mixing_mill/LnshMixingMillDeviceDriver.java
@@ -16,8 +16,6 @@ import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
 import org.nl.acs.instruction.service.InstructionService;
 import org.nl.acs.instruction.service.dto.Instruction;
 import org.nl.acs.opc.Device;
-import org.nl.acs.opc.DeviceAppService;
-import org.nl.acs.opc.DeviceAppServiceImpl;
 import org.nl.acs.opc.WcsConfig;
 import org.nl.acs.route.service.RouteLineService;
 import org.nl.acs.route.service.dto.RouteLineDto;
diff --git a/nladmin-system/src/main/java/org/nl/acs/log/rest/LogsController.java b/nladmin-system/src/main/java/org/nl/acs/log/rest/LogsController.java
index 96de472..8bb497e 100644
--- a/nladmin-system/src/main/java/org/nl/acs/log/rest/LogsController.java
+++ b/nladmin-system/src/main/java/org/nl/acs/log/rest/LogsController.java
@@ -6,16 +6,15 @@ import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.log.service.LogServer;
-import org.nl.acs.log.service.dto.LogDto;
 import org.nl.annotation.Log;
 import org.springframework.data.domain.Pageable;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.text.ParseException;
 import java.util.Map;
 
diff --git a/nladmin-system/src/main/java/org/nl/acs/log/service/LogServer.java b/nladmin-system/src/main/java/org/nl/acs/log/service/LogServer.java
index 52ea2ae..b2539e5 100644
--- a/nladmin-system/src/main/java/org/nl/acs/log/service/LogServer.java
+++ b/nladmin-system/src/main/java/org/nl/acs/log/service/LogServer.java
@@ -1,14 +1,9 @@
 
 package org.nl.acs.log.service;
 
-import com.alibaba.fastjson.JSONObject;
-import org.nl.acs.log.service.dto.LogDto;
 import org.springframework.data.domain.Pageable;
 
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.text.ParseException;
-import java.util.List;
 import java.util.Map;
 
 /**
diff --git a/nladmin-system/src/main/java/org/nl/acs/log/service/impl/LogServerImpl.java b/nladmin-system/src/main/java/org/nl/acs/log/service/impl/LogServerImpl.java
index ba92ed3..2700bc6 100644
--- a/nladmin-system/src/main/java/org/nl/acs/log/service/impl/LogServerImpl.java
+++ b/nladmin-system/src/main/java/org/nl/acs/log/service/impl/LogServerImpl.java
@@ -3,22 +3,13 @@ package org.nl.acs.log.service.impl;
 
 
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.map.MapUtil;
-import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.log.service.LogServer;
 import org.nl.acs.log.service.dto.LogDto;
-import org.nl.exception.BadRequestException;
-import org.nl.utils.FileUtil;
 import org.nl.utils.SecurityUtils;
-import org.nl.wql.WQL;
-import org.nl.wql.core.bean.WQLObject;
-import org.nl.wql.core.engine.object.WO;
-import org.nl.wql.util.WqlUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.domain.Sort;
@@ -26,11 +17,9 @@ import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.*;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @author loujf
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/rest/CustomerbaseController.java b/nladmin-system/src/main/java/org/nl/acs/order/rest/CustomerbaseController.java
index d12e317..002e561 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/rest/CustomerbaseController.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/rest/CustomerbaseController.java
@@ -2,20 +2,22 @@
 package org.nl.acs.order.rest;
 
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.order.service.CustomerbaseService;
 import org.nl.acs.order.service.dto.CustomerbaseDto;
-import org.springframework.data.domain.Pageable;
-import lombok.RequiredArgsConstructor;
 import org.nl.annotation.Log;
+import org.springframework.data.domain.Pageable;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-import io.swagger.annotations.*;
-import java.io.IOException;
+
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.util.Map;
-import lombok.extern.slf4j.Slf4j;
 
 /**
 * @author wangs
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/rest/MaterialbaseController.java b/nladmin-system/src/main/java/org/nl/acs/order/rest/MaterialbaseController.java
index 3cf9b9f..15dbe79 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/rest/MaterialbaseController.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/rest/MaterialbaseController.java
@@ -2,21 +2,22 @@
 package org.nl.acs.order.rest;
 
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.order.service.MaterialbaseService;
 import org.nl.acs.order.service.dto.MaterialbaseDto;
-import org.springframework.data.domain.Pageable;
-import lombok.RequiredArgsConstructor;
 import org.nl.annotation.Log;
+import org.springframework.data.domain.Pageable;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-import io.swagger.annotations.*;
-import java.io.IOException;
+
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.util.Map;
-import lombok.extern.slf4j.Slf4j;
 
 /**
 * @author wangs
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/CustomerbaseService.java b/nladmin-system/src/main/java/org/nl/acs/order/service/CustomerbaseService.java
index abdd688..60dc659 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/CustomerbaseService.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/CustomerbaseService.java
@@ -3,10 +3,11 @@ package org.nl.acs.order.service;
 
 import org.nl.acs.order.service.dto.CustomerbaseDto;
 import org.springframework.data.domain.Pageable;
-import java.util.Map;
-import java.util.List;
-import java.io.IOException;
+
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
 
 /**
 * @description 服务接口
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/MaterialbaseService.java b/nladmin-system/src/main/java/org/nl/acs/order/service/MaterialbaseService.java
index ff9dbd0..b4b72a0 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/MaterialbaseService.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/MaterialbaseService.java
@@ -3,10 +3,11 @@ package org.nl.acs.order.service;
 
 import org.nl.acs.order.service.dto.MaterialbaseDto;
 import org.springframework.data.domain.Pageable;
-import java.util.Map;
-import java.util.List;
-import java.io.IOException;
+
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
 
 /**
 * @description 服务接口
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java b/nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java
index 4d764f1..d50a992 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java
@@ -4,7 +4,6 @@ package org.nl.acs.order.service;
 import com.alibaba.fastjson.JSONArray;
 import org.nl.acs.order.service.dto.ProduceshiftorderDto;
 import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
-import org.nl.acs.task.service.dto.TaskDto;
 import org.springframework.data.domain.Pageable;
 
 import javax.servlet.http.HttpServletResponse;
@@ -47,7 +46,13 @@ public interface ProduceshiftorderService {
     List<ProduceshiftorderDto> queryAll(Map whereJson);
 
 
-
+    /**
+     * 查询所有数据不分页
+     *
+     * @param whereJson 条件参数
+     * @return List<ProduceshiftorderDto>
+     */
+    List<ProduceshiftorderDto> queryAll(String whereJson);
 
     /**
      * 查询所有未完成工单
@@ -179,4 +184,16 @@ public interface ProduceshiftorderService {
 
     JSONArray getDtl(Map whereJson);
 
+    ProduceshiftorderDto findOrderByOrderCodeFromCache(String order_id);
+
+    ProduceshiftorderDto findOrderByOrderIdFromCache(String order_code);
+
+    List<ProduceshiftorderdetailDto> findOrderDetailByOrderIdFromCache(String order_id);
+
+    List<ProduceshiftorderdetailDto> findOrderDetailByOrderCodeFromCache(String order_code);
+
+    ProduceshiftorderDto apply_order();
+
+    List<ProduceshiftorderDto> findOrderByOrderStatusFromCache(String order_status);
+
 }
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/CustomerbaseDto.java b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/CustomerbaseDto.java
index 0bbf9de..073cdb4 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/CustomerbaseDto.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/CustomerbaseDto.java
@@ -1,9 +1,10 @@
 package org.nl.acs.order.service.dto;
 
-import lombok.Data;
-import java.io.Serializable;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import lombok.Data;
+
+import java.io.Serializable;
 
 /**
  * @description /
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/MaterialbaseDto.java b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/MaterialbaseDto.java
index 3689bcd..67d54c2 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/MaterialbaseDto.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/MaterialbaseDto.java
@@ -1,6 +1,7 @@
 package org.nl.acs.order.service.dto;
 
 import lombok.Data;
+
 import java.io.Serializable;
 
 /**
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderDto.java b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderDto.java
index 2acaecd..89b040f 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderDto.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderDto.java
@@ -1,6 +1,7 @@
 package org.nl.acs.order.service.dto;
 
 import lombok.Data;
+
 import java.io.Serializable;
 
 /**
@@ -21,6 +22,10 @@ public class ProduceshiftorderDto implements Serializable {
     private String is_unbundling;
 
     /** 工单状态 */
+    //00-就绪、01-已确认、02-已下发 03-执行中
+    //04-下发工单明细暂停 05-工单明细暂停
+    //06-下发强制完成 07-强制完成
+    //08-自动完成
     private String order_status;
 
     /** 下料数量 */
@@ -85,4 +90,8 @@ public class ProduceshiftorderDto implements Serializable {
 
     /** 是否删除 */
     private String is_deleted;
+
+    private String children;
+
+
 }
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java
index 67a0c11..b30170e 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java
@@ -1,6 +1,7 @@
 package org.nl.acs.order.service.dto;
 
 import lombok.Data;
+
 import java.io.Serializable;
 
 /**
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/CustomerbaseServiceImpl.java b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/CustomerbaseServiceImpl.java
index f368057..48716e3 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/CustomerbaseServiceImpl.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/CustomerbaseServiceImpl.java
@@ -2,32 +2,30 @@
 package org.nl.acs.order.service.impl;
 
 
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.IdUtil;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.order.service.CustomerbaseService;
 import org.nl.acs.order.service.dto.CustomerbaseDto;
 import org.nl.exception.BadRequestException;
+import org.nl.utils.FileUtil;
+import org.nl.utils.SecurityUtils;
+import org.nl.wql.core.bean.ResultBean;
+import org.nl.wql.core.bean.WQLObject;
+import org.nl.wql.util.WqlUtil;
+import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import org.springframework.data.domain.Pageable;
-import java.util.List;
-import java.util.Map;
-import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
-
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.IdUtil;
-import cn.hutool.core.bean.BeanUtil;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import org.nl.utils.SecurityUtils;
-import org.nl.wql.core.bean.ResultBean;
-import org.nl.wql.core.bean.WQLObject;
-import org.nl.wql.util.WqlUtil;
-import org.nl.utils.FileUtil;
-import lombok.extern.slf4j.Slf4j;
+import java.util.List;
+import java.util.Map;
 
 /**
 * @description 服务实现
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/MaterialbaseServiceImpl.java b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/MaterialbaseServiceImpl.java
index 6b0fcb8..1f39d52 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/MaterialbaseServiceImpl.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/MaterialbaseServiceImpl.java
@@ -2,33 +2,30 @@
 package org.nl.acs.order.service.impl;
 
 
-import com.alibaba.fastjson.JSON;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.IdUtil;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.order.service.MaterialbaseService;
 import org.nl.acs.order.service.dto.MaterialbaseDto;
 import org.nl.exception.BadRequestException;
+import org.nl.utils.FileUtil;
+import org.nl.utils.SecurityUtils;
+import org.nl.wql.core.bean.ResultBean;
+import org.nl.wql.core.bean.WQLObject;
+import org.nl.wql.util.WqlUtil;
+import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import org.springframework.data.domain.Pageable;
-import java.util.List;
-import java.util.Map;
-import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
-
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.IdUtil;
-import cn.hutool.core.bean.BeanUtil;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import org.nl.utils.SecurityUtils;
-import org.nl.wql.core.bean.ResultBean;
-import org.nl.wql.core.bean.WQLObject;
-import org.nl.wql.util.WqlUtil;
-import org.nl.utils.FileUtil;
-import lombok.extern.slf4j.Slf4j;
+import java.util.List;
+import java.util.Map;
 
 /**
 * @description 服务实现
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java
index a7ae33c..8d70481 100644
--- a/nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java
+++ b/nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java
@@ -12,10 +12,7 @@ import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.nl.acs.device_driver.hailiang.hailiang_feeding_trunk.HaiLiangFeedingTrunkDeviceDriver;
-import org.nl.acs.opc.Device;
 import org.nl.acs.opc.DeviceAppService;
-import org.nl.acs.opc.DeviceAppServiceImpl;
-import org.nl.acs.opc.DeviceType;
 import org.nl.acs.order.service.ProduceshiftorderService;
 import org.nl.acs.order.service.dto.ProduceshiftorderDto;
 import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
@@ -24,11 +21,11 @@ import org.nl.modules.system.util.CodeUtil;
 import org.nl.start.auto.initial.ApplicationAutoInitial;
 import org.nl.utils.FileUtil;
 import org.nl.utils.SecurityUtils;
-import org.nl.utils.SpringContextHolder;
 import org.nl.wql.WQL;
 import org.nl.wql.core.bean.ResultBean;
 import org.nl.wql.core.bean.WQLObject;
 import org.nl.wql.util.WqlUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.stereotype.Service;
@@ -54,7 +51,8 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
 
     private final MongoTemplate mongoTemplate;
 
-    DeviceAppService deviceAppService = SpringContextHolder.getBean(DeviceAppServiceImpl.class);
+    @Autowired
+    DeviceAppService deviceAppService;
 
 
     @Override
@@ -83,6 +81,8 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
                 for (int j = 0; j < orderDteail_ja.size(); j++) {
                     JSONObject orderDteail_jo = orderDteail_ja.getJSONObject(j);
                     JSONObject new_jo = new JSONObject();
+                    new_jo.put("parent_order_id", orderDteail_jo.getString("order_id"));
+                    new_jo.put("parent_order_code", orderDteail_jo.getString("order_code"));
                     new_jo.put("order_id", orderDteail_jo.getString("order_detail_id"));
                     new_jo.put("order_code", orderDteail_jo.getString("order_detail_code"));
                     new_jo.put("order_status", orderDteail_jo.getString("order_detail_status"));
@@ -97,7 +97,7 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
                     new_jo.put("cust_name", orderDteail_jo.getString("cust_name"));
                     new_jo.put("qty", orderDteail_jo.getString("order_detail_qty"));
                     new_jo.put("type", "orderDteail");
-                    jo.put("is_flag", "0");
+                    new_jo.put("is_flag", "0");
                     children.add(new_jo);
                 }
                 jo.put("children", children);
@@ -117,6 +117,55 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
         return null;
     }
 
+    @Override
+    public List<ProduceshiftorderDto> queryAll(String whereJson) {
+        List<ProduceshiftorderDto> list = null;
+        WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder");
+        if(StrUtil.isEmpty(whereJson)){
+            whereJson ="1=1";
+        }
+        ResultBean rb = wo.query(whereJson, "order_id desc");
+        final JSONObject json = rb.pageResult();
+        JSONArray newja = new JSONArray();
+        JSONArray ja = json.getJSONArray("content");
+        for (int i = 0; i < ja.size(); i++) {
+            JSONObject jo = (JSONObject) ja.get(i);
+            JSONArray orderDteail_ja = WQLObject.getWQLObject("acs_produceshiftorderdetail").query("is_deleted= '0' and order_id ='" + jo.getString("order_id") + "'").getResultJSONArray(0);
+            if (orderDteail_ja.size() > 0) {
+                JSONArray children = new JSONArray();
+                for (int j = 0; j < orderDteail_ja.size(); j++) {
+                    JSONObject orderDteail_jo = orderDteail_ja.getJSONObject(j);
+                    JSONObject new_jo = new JSONObject();
+                    new_jo.put("parent_order_id", orderDteail_jo.getString("order_id"));
+                    new_jo.put("parent_order_code", orderDteail_jo.getString("order_code"));
+                    new_jo.put("order_id", orderDteail_jo.getString("order_detail_id"));
+                    new_jo.put("order_code", orderDteail_jo.getString("order_detail_code"));
+                    new_jo.put("order_status", orderDteail_jo.getString("order_detail_status"));
+                    new_jo.put("is_active", orderDteail_jo.getString("is_active"));
+                    new_jo.put("is_delete", orderDteail_jo.getString("is_delete"));
+                    new_jo.put("create_by", orderDteail_jo.getString("create_by"));
+                    new_jo.put("create_time", orderDteail_jo.getString("create_time"));
+                    new_jo.put("update_by", orderDteail_jo.getString("update_by"));
+                    new_jo.put("update_time", orderDteail_jo.getString("update_time"));
+                    new_jo.put("cust_id", orderDteail_jo.getString("cust_id"));
+                    new_jo.put("cust_code", orderDteail_jo.getString("cust_code"));
+                    new_jo.put("cust_name", orderDteail_jo.getString("cust_name"));
+                    new_jo.put("qty", orderDteail_jo.getString("order_detail_qty"));
+                    new_jo.put("type", "orderDteail");
+                    new_jo.put("is_flag", "0");
+                    children.add(new_jo);
+                }
+                jo.put("children", children);
+            }
+            jo.put("type", "order");
+            //区分工单明细
+            jo.put("is_flag", "1");
+            newja.add(jo);
+            ProduceshiftorderDto produceshiftorderDto = JSONObject.toJavaObject(jo, ProduceshiftorderDto.class);
+            list.add(produceshiftorderDto);
+        }
+        return list;
+    }
 
     @Override
     public List<ProduceshiftorderDto> queryAllOrder(String whereJson) {
@@ -251,6 +300,20 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
         WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder");
         JSONObject json= (JSONObject) JSONObject.toJSON(dto);
         wo.update(json);
+
+        Iterator<ProduceshiftorderDto> iterator = order.iterator();
+        while (iterator.hasNext()) {
+            ProduceshiftorderDto produceshiftorderDto = iterator.next();
+            if (produceshiftorderDto.getOrder_id().equals(dto.getOrder_id())) {
+                iterator.remove();
+            }
+        }
+        if (StrUtil.equals(dto.getOrder_id(), "07") || StrUtil.equals(dto.getOrder_id(), "08")) {
+            order.add(dto);
+        }
+
+
+
     }
 
     @Override
@@ -290,17 +353,12 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
         if(!ObjectUtil.isEmpty(checkone)){
             throw new BadRequestException("存在已确认的工单,请先暂停或完成!");
         }
-
-
         HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
-        List<Device> deviceAll = deviceAppService.findDevice(DeviceType.conveyor);
-        for(int i=0;i<deviceAll.size();i++){
-            Device device = deviceAll.get(0);
-            if (device.getDeviceDriver() instanceof HaiLiangFeedingTrunkDeviceDriver) {
-                haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) device.getDeviceDriver();
-                if(haiLiangFeedingTrunkDeviceDriver.getReady() != 1){
-                    throw new BadRequestException("设备未就绪,无法下发!");
-                }
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2 || haiLiangFeedingTrunkDeviceDriver.getReady() != 1){
+                throw new BadRequestException("设备未就绪,无法下发!");
             }
         }
         entity.setOrder_status("01");
@@ -310,27 +368,119 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
 
     @Override
     public void device_pause() {
-
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备未联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getPause() == 1 ){
+                throw new BadRequestException("设备已处于暂停状态,无法下发暂停!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_pause","1");
+        }
     }
 
     @Override
     public void clear() {
-
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备未联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getClear() == 1 ){
+                throw new BadRequestException("设备已处于清料状态,无法下发清料!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_clear","1");
+        }
     }
 
     @Override
-    public void order_pause(String id) {
+    public void order_pause(Map whereJson) {
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备未联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getPause() == 0 ){
+                throw new BadRequestException("设备已处于恢复状态,无法下发恢复!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_pause","0");
+        }
+    }
 
+    @Override
+    public void order_force_complete(Map whereJson) {
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备未联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getOrder() == 0 ){
+                throw new BadRequestException("设备已处于恢复状态,无法下发恢复!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_pause","0");
+        }
     }
 
+
     @Override
-    public void order_force_complete(String id) {
+    public void detail_pause(Map whereJson) {
+        String is_flag = MapUtil.getStr(whereJson, "is_flag");
+        //工单明细编号
+        String order_detail_code = MapUtil.getStr(whereJson, "order_code");
+        String order_detail_id = MapUtil.getStr(whereJson, "order_id");
+        String order_id = MapUtil.getStr(whereJson, "parent_order_id");
+        String order_code = MapUtil.getStr(whereJson, "parent_order_code");
+        //is_flag=0为明细记录 is_flag=1为工单记录
+        if(StrUtil.equals(is_flag,"1")){
+            throw new BadRequestException("业务校验错误,该按钮为工单明细暂停!");
+        }
+
+        ProduceshiftorderDto order = findOrderByOrderCodeFromCache(order_id);
+        if(ObjectUtil.isEmpty(order)){
+            throw new BadRequestException("未完成工单中未找到对应工单!");
+        }
+        if(!StrUtil.equals(order.getOrder_status(),"03")){
+            throw new BadRequestException("当前工单未开始执行,无法暂停!");
+        }
 
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备未联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getPause() == 1 ){
+                throw new BadRequestException("设备已处于暂停状态,无法下发!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_pause","0");
+        }
     }
 
-    @Override
-    public void detail_force_complete(String id) {
 
+    @Override
+    public void detail_force_complete(Map whereJson) {
+        HaiLiangFeedingTrunkDeviceDriver haiLiangFeedingTrunkDeviceDriver;
+        List<HaiLiangFeedingTrunkDeviceDriver> deviceAll = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class);
+        if (deviceAll.get(0) instanceof HaiLiangFeedingTrunkDeviceDriver) {
+            haiLiangFeedingTrunkDeviceDriver = (HaiLiangFeedingTrunkDeviceDriver) deviceAll.get(0);
+            if(haiLiangFeedingTrunkDeviceDriver.getMode() !=2){
+                throw new BadRequestException("设备联机,无法下发暂停!");
+            }
+            if(haiLiangFeedingTrunkDeviceDriver.getPause() == 0 ){
+                throw new BadRequestException("设备已处于恢复状态,无法下发恢复!");
+            }
+            haiLiangFeedingTrunkDeviceDriver.writing("item_to_pause","0");
+        }
     }
 
 
@@ -395,6 +545,81 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
         return arr;
     }
 
+    @Override
+    public ProduceshiftorderDto findOrderByOrderCodeFromCache(String order_id) {
+        Iterator var3 = order.iterator();
+        while (var3.hasNext()) {
+            ProduceshiftorderDto oneorder = (ProduceshiftorderDto) var3.next();
+            if (StrUtil.equals(oneorder.getOrder_id(), order_id)) {
+                return oneorder;
+            }
+        }
+        return null;
+    }
+
+    @Override
+    public ProduceshiftorderDto findOrderByOrderIdFromCache(String order_code) {
+        Iterator var3 = order.iterator();
+        while (var3.hasNext()) {
+            ProduceshiftorderDto oneorder = (ProduceshiftorderDto) var3.next();
+            if (StrUtil.equals(oneorder.getOrder_code(), order_code)) {
+                return oneorder;
+            }
+        }
+        return null;
+    }
+
+    @Override
+    public List<ProduceshiftorderdetailDto> findOrderDetailByOrderIdFromCache(String order_id) {
+        List<ProduceshiftorderdetailDto> list = null;
+        Iterator var3 = detail.iterator();
+        while (var3.hasNext()) {
+            ProduceshiftorderdetailDto oneorderDetail = (ProduceshiftorderdetailDto) var3.next();
+            if (StrUtil.equals(oneorderDetail.getOrder_id(), order_id)) {
+                list.add(oneorderDetail);
+            }
+        }
+        return list;
+    }
+
+    @Override
+    public List<ProduceshiftorderdetailDto> findOrderDetailByOrderCodeFromCache(String order_code) {
+        List<ProduceshiftorderdetailDto> list = null;
+        Iterator var3 = detail.iterator();
+        while (var3.hasNext()) {
+            ProduceshiftorderdetailDto oneorderDetail = (ProduceshiftorderdetailDto) var3.next();
+            if (StrUtil.equals(oneorderDetail.getOrder_code(), order_code)) {
+                list.add(oneorderDetail);
+            }
+        }
+        return list;
+    }
+
+    @Override
+    public ProduceshiftorderDto apply_order() {
+        List<ProduceshiftorderDto> list = this.findOrderByOrderStatusFromCache("01");
+        if(ObjectUtil.isEmpty(list)){
+          throw new BadRequestException("未找到处于已下发状态的工单!");
+        }
+        if(list.size() !=1){
+          throw new BadRequestException("已下发状态的工单数量不唯一,请校验!");
+        }
+        ProduceshiftorderDto dto = list.get(0);
+        return dto;
+    }
+
+    @Override
+    public List<ProduceshiftorderDto> findOrderByOrderStatusFromCache(String order_status) {
+        List<ProduceshiftorderDto> list = null;
+        Iterator var3 = detail.iterator();
+        while (var3.hasNext()) {
+            ProduceshiftorderDto oneorder = (ProduceshiftorderDto) var3.next();
+            if (StrUtil.equals(oneorder.getOrder_status(), order_status)) {
+                list.add(oneorder);
+            }
+        }
+        return list;
+    }
 
 
     @Override
@@ -413,6 +638,8 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
                 for (int j = 0; j < orderDteail_ja.size(); j++) {
                     JSONObject orderDteail_jo = orderDteail_ja.getJSONObject(j);
                     JSONObject new_jo = new JSONObject();
+                    new_jo.put("parent_order_id", orderDteail_jo.getString("order_id"));
+                    new_jo.put("parent_order_code", orderDteail_jo.getString("order_code"));
                     new_jo.put("order_id", orderDteail_jo.getString("order_detail_id"));
                     new_jo.put("order_code", orderDteail_jo.getString("order_detail_code"));
                     new_jo.put("order_status", orderDteail_jo.getString("order_detail_status"));
@@ -427,7 +654,7 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
                     new_jo.put("cust_name", orderDteail_jo.getString("cust_name"));
                     new_jo.put("qty", orderDteail_jo.getString("order_detail_qty"));
                     new_jo.put("type", "orderDteail");
-                    jo.put("is_flag", "0");
+                    new_jo.put("is_flag", "0");
                     children.add(new_jo);
                 }
                 jo.put("children", children);
diff --git a/nladmin-system/src/main/java/org/nl/acs/order/service/wql/order.xls b/nladmin-system/src/main/java/org/nl/acs/order/service/wql/order.xls
index cbbe8432d5863dac469a1fac5fa8d87a96337ca3..cf6cb49a61e8707003ecea8677f1659e2b963784 100644
GIT binary patch
delta 29
lcmZp;!QF6!dqWNj+lGC$vr-D1i&)x=SQxh#u`u;L2LQVS3*rC(

delta 29
lcmZp;!QF6!dqWNj+Xb~9)6EN-i&)x=SQxh#u`u;L2LQ9a3v>Vg

diff --git a/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerTypeEnum.java b/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerTypeEnum.java
deleted file mode 100644
index 8041541..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerTypeEnum.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.nl.modules.log;
-
-import org.slf4j.Marker;
-import org.slf4j.MarkerFactory;
-
-public enum LogMarkerTypeEnum {
-    DEFAULT("default", "默认日志"),
-    REQUEST("request", "请求日志"),
-    QUARTZ("quartz", "定时器日志"),
-    DEVICE_EXECUTE("device_execute", "设备执行日志"),
-    AGV_TASK_STATUS("agv_task_status", "agv任务状态日志"),
-    AGV_FEEDBACK_SERVLET("agv_feedback_servlet", "反馈AGV请求"),
-    AGV_LEAVE_SERVLET("agv_leave_servlet", "AGV请求离开"),
-    ACS_TO_ERP("acs_to_erp", "ACS请求ERP"),
-    ACS_TO_WMS("acs_to_wms", "ACS请求WMS"),
-    AUTO_CREATE_INST("auto_create_inst", "自动创建指令"),
-    NDC_SOCKET_CONNECTION_AUTORUN("ndc_socket_connection_autorun", "NDC自动连接"),
-    XZ_AGV_TASK_STATUS("xz_agv_task_status", "仙知AGV指令状态"),
-    WMS_TO_ACS("wms_to_acs", "WMS下发ACS");
-    // 成员变量
-    private String name;
-    private String code;
-
-    // 构造方法
-    private LogMarkerTypeEnum(String code, String name) {
-        this.code = code;
-        this.name = name;
-    }
-
-    public static Marker getMarker(LogMarkerTypeEnum logType) {
-        return MarkerFactory.getMarker(logType.code);
-    }
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerUtil.java b/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerUtil.java
deleted file mode 100644
index a428159..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/LogMarkerUtil.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.nl.modules.log;
-
-import org.slf4j.Marker;
-import org.slf4j.MarkerFactory;
-
-public class LogMarkerUtil {
-    private static final Marker MARKER = MarkerFactory.getMarker("test_marker");
-
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppender.java b/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppender.java
deleted file mode 100644
index 5abe4fd..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppender.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.nl.modules.log;
-
-import ch.qos.logback.classic.spi.ILoggingEvent;
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.IdUtil;
-import cn.hutool.core.util.ObjectUtil;
-import org.bson.Document;
-import org.slf4j.Marker;
-
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-
-/**
- * https://www.cnblogs.com/lzghyh/p/14913230.html
- * https://juejin.cn/post/6844903488896385037
- * https://cloud.tencent.com/developer/article/1384035
- * https://www.freesion.com/article/229560377/
- */
-public class MongoDBAppender extends MongoDBAppenderBase<ILoggingEvent> {
-    public MongoDBAppender() {
-        super("loggingEvents");
-    }
-
-    @Override
-    protected Document toMongoDocument(ILoggingEvent eventObject) {
-
-        final Document doc = new Document();
-        doc.append("_id",IdUtil.simpleUUID());
-
-        doc.append("date", DateUtil.now());
-        doc.append("source", source);
-        try {
-            doc.append("ip", InetAddress.getLocalHost().getHostAddress());
-        } catch (UnknownHostException e) {
-            e.printStackTrace();
-        }
-
-        Marker marker = eventObject.getMarker();
-        if (!ObjectUtil.isEmpty(marker)) {
-            doc.append("marker", marker.getName());
-        }else {
-            doc.append("marker", "default");
-        }
-
-        doc.append("level", eventObject.getLevel().toString());
-        doc.append("logger", eventObject.getLoggerName());
-        doc.append("thread", eventObject.getThreadName());
-        doc.append("message", eventObject.getFormattedMessage());
-        if (eventObject.getMDCPropertyMap() != null && !eventObject.getMDCPropertyMap().isEmpty())
-            doc.append("mdc", eventObject.getMDCPropertyMap());
-        // ...
-        return doc;
-    }
-
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppenderBase.java b/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppenderBase.java
deleted file mode 100644
index 3aece6e..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/MongoDBAppenderBase.java
+++ /dev/null
@@ -1,109 +0,0 @@
-package org.nl.modules.log;
-
-import ch.qos.logback.classic.spi.ILoggingEvent;
-import ch.qos.logback.core.UnsynchronizedAppenderBase;
-import cn.hutool.core.util.ObjectUtil;
-import com.mongodb.MongoClient;
-import com.mongodb.MongoClientOptions;
-import com.mongodb.MongoCredential;
-import com.mongodb.ServerAddress;
-import com.mongodb.client.MongoCollection;
-import com.mongodb.client.MongoDatabase;
-import lombok.Data;
-import org.bson.Document;
-import org.slf4j.Marker;
-
-import java.net.UnknownHostException;
-import java.util.Collections;
-
-/**
- * MongoDBAppender适配类
- */
-@Data
-public abstract class MongoDBAppenderBase<E> extends UnsynchronizedAppenderBase<E> {
-    private MongoClient mongo;
-    MongoDatabase db;
-    private MongoCollection<Document> eventsCollection;
-
-    private String host = "192.168.81.251"; // 地址
-    private int port = 27017;           // 端口号
-    private String dbName = "db";       // 库名
-    private String collectionName;      // 集合名
-    private String username;            // 用户名
-    private String password;            // 密码
-    protected String source;
-
-    private int connectionsPerHost = 10; // 空闲线程池中最大链接数
-    private int threadsAllowedToBlockForConnectionMultiplier = 5; //一个线程等待链接可用的最大等待毫秒数
-    private int maxWaitTime = 1000 * 60 * 2;  // 最长等待时间
-    private int connectTimeout;
-    private int socketTimeout;
-    private int wtimeout;
-
-    MongoDBAppenderBase(String collectionName) {
-        this.collectionName = collectionName;
-    }
-
-    @Override
-    public void start() {
-        try {
-            connectToMongoDB();
-            super.start();
-        } catch (UnknownHostException e) {
-            addError("Error connecting to MongoDB server: " + host + ":" + port,
-                    e);
-        }
-    }
-
-    private void connectToMongoDB() throws UnknownHostException {
-        // 用户名 数据库 密码
-        if (username != null && password != null) {
-
-            MongoCredential credential = MongoCredential.createCredential(
-                    username, dbName, password.toCharArray());
-            ServerAddress serverAddress = new ServerAddress(host, port);
-            mongo = new MongoClient(serverAddress, Collections.singletonList(credential), buildOptions());
-        } else {
-            mongo = new MongoClient(new ServerAddress(host, port), buildOptions());
-        }
-
-        db = mongo.getDatabase(dbName);
-        eventsCollection = db.getCollection(collectionName);
-
-    }
-
-    private MongoClientOptions buildOptions() {
-        final MongoClientOptions.Builder options = new MongoClientOptions.Builder();
-        options.connectionsPerHost(connectionsPerHost);
-        options.threadsAllowedToBlockForConnectionMultiplier(threadsAllowedToBlockForConnectionMultiplier);
-        options.maxWaitTime(maxWaitTime);
-        options.connectTimeout(connectTimeout);
-        options.socketTimeout(socketTimeout);
-        options.maxWaitTime(wtimeout);
-        return options.build();
-    }
-
-    protected abstract Document toMongoDocument(E event);
-
-    @Override
-    protected void append(E eventObject) {
-        if (eventObject instanceof ILoggingEvent) {
-            ILoggingEvent evt = (ILoggingEvent) eventObject;
-            Marker marker = evt.getMarker();
-            if (ObjectUtil.isEmpty(marker))
-                marker = LogMarkerTypeEnum.getMarker(LogMarkerTypeEnum.DEFAULT);
-            eventsCollection = db.getCollection(marker.getName());
-
-        }
-
-        eventsCollection.insertOne(toMongoDocument(eventObject));
-    }
-
-    @Override
-    public void stop() {
-        if (mongo != null)
-            mongo.close();
-        super.stop();
-    }
-
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/rest/RootLogController.java b/nladmin-system/src/main/java/org/nl/modules/log/rest/RootLogController.java
deleted file mode 100644
index 3363c3b..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/rest/RootLogController.java
+++ /dev/null
@@ -1,47 +0,0 @@
-
-package org.nl.modules.log.rest;
-
-
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.nl.annotation.Log;
-import org.nl.modules.log.service.RootLogService;
-import org.springframework.data.domain.Pageable;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-
-import java.text.ParseException;
-import java.util.Map;
-
-/**
- * @author loujf
- * @date 2021-04-02
- **/
-@RestController
-@RequiredArgsConstructor
-@Api(tags = "系统日志")
-@RequestMapping("/api/rootLog")
-@Slf4j
-public class RootLogController {
-
-    private final RootLogService rootLogService;
-
-    @GetMapping
-    @Log("查询日志")
-    @ApiOperation("查询日志")
-    //@PreAuthorize("@el.check('log:list')")
-    public ResponseEntity<Object> query(@RequestParam Map whereJson, Pageable page) throws ParseException {
-        return new ResponseEntity<>(rootLogService.queryAll(whereJson, page), HttpStatus.OK);
-    }
-
-    @PostMapping( "/error")
-    @Log("查询异常详情")
-    @ApiOperation("查询异常详情")
-    public ResponseEntity<Object> findError(@RequestBody Map whereJson) {
-        return new ResponseEntity<>(rootLogService.findError(whereJson), HttpStatus.OK);
-    }
-
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/service/RootLogService.java b/nladmin-system/src/main/java/org/nl/modules/log/service/RootLogService.java
deleted file mode 100644
index 9ad1227..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/service/RootLogService.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.nl.modules.log.service;
-
-import org.springframework.data.domain.Pageable;
-
-import java.text.ParseException;
-import java.util.Map;
-
-/**
- * 系统日志查询
- */
-public interface RootLogService {
-    /**
-     * 查询数据分页
-     *
-     * @param whereJson 条件
-     * @param page      分页参数
-     * @return Map<String, Object>
-     */
-    Object queryAll(Map whereJson, Pageable page) throws ParseException;
-
-
-    /**
-     * 查询异常详情
-     *
-     * @param whereJson
-     * @return Log
-     */
-    String findError(Map whereJson);
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/log/service/impl/RootLogServiceImpl.java b/nladmin-system/src/main/java/org/nl/modules/log/service/impl/RootLogServiceImpl.java
deleted file mode 100644
index 7efc415..0000000
--- a/nladmin-system/src/main/java/org/nl/modules/log/service/impl/RootLogServiceImpl.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.nl.modules.log.service.impl;
-
-import cn.hutool.core.util.StrUtil;
-import com.alibaba.fastjson.JSONObject;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.nl.acs.log.service.LogServer;
-import org.nl.modules.log.service.RootLogService;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.domain.Sort;
-import org.springframework.data.mongodb.core.MongoTemplate;
-import org.springframework.data.mongodb.core.query.Criteria;
-import org.springframework.data.mongodb.core.query.Query;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * @author loujf
- * @description 服务实现
- * @date 2022-04-02
- **/
-@Service
-@RequiredArgsConstructor
-@Slf4j
-public class RootLogServiceImpl implements RootLogService {
-
-    private final MongoTemplate mongoTemplate;
-
-    private final LogServer logServer;
-
-    @Override
-    public Map<String, Object> queryAll(Map whereJson, Pageable page){
-        String log_type = (String) whereJson.get("log_type");
-        String log_level = (String) whereJson.get("log_level");
-        String begin_time = (String) whereJson.get("begin_time");
-        String end_time = (String) whereJson.get("end_time");
-
-        Query query = new Query().with(Sort.by("date"));
-
-        if (StrUtil.isEmpty(log_type)) {
-            log_type = "default";
-        }
-        if (StrUtil.isNotEmpty(log_level)){
-            query.addCriteria(Criteria.where("level").is(log_level));
-        }
-        if (StrUtil.isNotEmpty(begin_time) && StrUtil.isNotEmpty(end_time)) {
-            query.addCriteria(Criteria.where("date")
-                    .gte(begin_time)
-                    .lte(end_time));
-        }
-
-        //根据条件得到的总条数
-        long totalSize = mongoTemplate.count(query, Map.class, log_type);
-
-        //处理分页
-        query.skip(page.getPageNumber()).limit(page.getPageSize());
-        List<Map> list = mongoTemplate.find(query,Map.class, log_type);
-        //封装前端分页查询结果
-        JSONObject result = new JSONObject();
-        result.put("content", list);
-        result.put("totalElements", totalSize);
-        return result;
-    }
-
-    @Override
-    public String findError(Map map) {
-        String id = (String) map.get("id");
-        String marker = (String) map.get("marker");
-        Query query = Query.query(Criteria.where("_id").is(id)).with(Sort.by("date"));
-        JSONObject list =  mongoTemplate.findOne(query,JSONObject.class,marker);
-
-        return list.getString("message");
-    }
-}
diff --git a/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java b/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java
index 8c1179c..5c0edd7 100644
--- a/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java
+++ b/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoCreateInst.java
@@ -1,33 +1,8 @@
 package org.nl.modules.quartz.task;
 
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.IdUtil;
-import cn.hutool.core.util.StrUtil;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ObjectUtils;
-import org.nl.acs.config.AcsConfig;
-import org.nl.acs.config.server.AcsConfigService;
-import org.nl.acs.device_driver.lamp_three_color.LampThreecolorDeviceDriver;
-import org.nl.acs.device_driver.standard_emptypallet_site.StandardEmptyPalletSiteDeviceDriver;
-import org.nl.acs.device_driver.standard_inspect_site.StandardInspectSiteDeviceDriver;
-import org.nl.acs.device_driver.standard_ordinary_site.StandardOrdinarySiteDeviceDriver;
-import org.nl.acs.instruction.service.InstructionService;
-import org.nl.acs.instruction.service.dto.Instruction;
-import org.nl.acs.opc.Device;
-import org.nl.acs.opc.DeviceAppService;
-import org.nl.acs.opc.DeviceAppServiceImpl;
-import org.nl.acs.route.service.RouteLineService;
-import org.nl.acs.route.service.dto.RouteLineDto;
-import org.nl.acs.task.enums.TaskTypeEnum;
-import org.nl.acs.task.service.TaskService;
-import org.nl.acs.task.service.dto.TaskDto;
-import org.nl.modules.log.LogMarkerTypeEnum;
-import org.nl.utils.SpringContextHolder;
 import org.springframework.stereotype.Component;
 
-import java.util.Arrays;
-import java.util.List;
-
 /**
  * 自动创建指令
  */
diff --git a/nladmin-system/src/main/java/org/nl/modules/quartz/task/queryAOrderDterail.java b/nladmin-system/src/main/java/org/nl/modules/quartz/task/queryAOrderDterail.java
index ef86639..42c768c 100644
--- a/nladmin-system/src/main/java/org/nl/modules/quartz/task/queryAOrderDterail.java
+++ b/nladmin-system/src/main/java/org/nl/modules/quartz/task/queryAOrderDterail.java
@@ -15,7 +15,6 @@
  */
 package org.nl.modules.quartz.task;
 
-import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import lombok.extern.slf4j.Slf4j;
@@ -24,8 +23,6 @@ import org.nl.modules.mnt.websocket.SocketMsg;
 import org.nl.modules.mnt.websocket.WebSocketServer;
 import org.nl.wql.core.bean.ResultBean;
 import org.nl.wql.core.bean.WQLObject;
-import org.nl.wql.util.WqlUtil;
-import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Component;
 
 import java.io.IOException;
diff --git a/nladmin-system/src/main/resources/config/application-dev.yml b/nladmin-system/src/main/resources/config/application-dev.yml
index fd4192d..70dab9d 100644
--- a/nladmin-system/src/main/resources/config/application-dev.yml
+++ b/nladmin-system/src/main/resources/config/application-dev.yml
@@ -55,11 +55,11 @@ spring:
         wall:
           config:
             multi-statement-alagvslow: true
-  data:
-    mongodb:
-      host: 192.168.81.251
-      port: 27017
-      database: nlacs
+#  data:
+#    mongodb:
+#      host: 192.168.81.251
+#      port: 27017
+#      database: nlacs
   redis:
     #数据库索引
     database: ${REDIS_DB:0}
diff --git a/nladmin-system/src/main/resources/config/application-prod.yml b/nladmin-system/src/main/resources/config/application-prod.yml
index cfb77a3..0b69047 100644
--- a/nladmin-system/src/main/resources/config/application-prod.yml
+++ b/nladmin-system/src/main/resources/config/application-prod.yml
@@ -53,11 +53,11 @@ spring:
         wall:
           config:
             multi-statement-allow: true
-  data:
-    mongodb:
-      host: 127.0.0.1
-      port: 27017
-      database: logdb
+#  data:
+#    mongodb:
+#      host: 127.0.0.1
+#      port: 27017
+#      database: logdb
   redis:
     #数据库索引
     database: ${REDIS_DB:0}
diff --git a/nladmin-system/src/main/resources/config/application-test.yml b/nladmin-system/src/main/resources/config/application-test.yml
index f7f4ec6..305de4c 100644
--- a/nladmin-system/src/main/resources/config/application-test.yml
+++ b/nladmin-system/src/main/resources/config/application-test.yml
@@ -55,11 +55,11 @@ spring:
         wall:
           config:
             multi-statement-alagvslow: true
-  data:
-    mongodb:
-      host: 47.97.157.227
-      port: 27017
-      database: nlacs
+#  data:
+#    mongodb:
+#      host: 47.97.157.227
+#      port: 27017
+#      database: nlacs
   redis:
     #数据库索引
     database: ${REDIS_DB:0}
diff --git a/nladmin-system/src/main/resources/log/AcsToErp.xml b/nladmin-system/src/main/resources/log/AcsToErp.xml
index 3eef302..4050229 100644
--- a/nladmin-system/src/main/resources/log/AcsToErp.xml
+++ b/nladmin-system/src/main/resources/log/AcsToErp.xml
@@ -1,17 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="acs_to_erp" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>acs_to_erp</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE7" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/ACS请求ERP/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
 
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
     <!-- 打印sql -->
-    <logger name="org.nl.acs.ext.erp.service.impl.AcsToErpServiceImpl" level="info" additivity="false">
-        <appender-ref ref="acs_to_erp"/>
+    <logger name=" org.nl.acs.ext.erp.service.impl.AcsToErpServiceImpl" level="info" additivity="false">
+        <appender-ref ref="FILE7"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/AcsToWms.xml b/nladmin-system/src/main/resources/log/AcsToWms.xml
index 6ba12f1..0b25379 100644
--- a/nladmin-system/src/main/resources/log/AcsToWms.xml
+++ b/nladmin-system/src/main/resources/log/AcsToWms.xml
@@ -1,17 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="acs_to_wms" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>acs_to_wms</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE8" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/ACS请求WMS/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
 
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
     <!-- 打印sql -->
     <logger name="org.nl.acs.ext.wms.service.impl.AcsToWmsServiceImpl" level="info" additivity="false">
-        <appender-ref ref="acs_to_wms"/>
+        <appender-ref ref="FILE8"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/AgvFeedbackServiceImpl.xml b/nladmin-system/src/main/resources/log/AgvFeedbackServiceImpl.xml
deleted file mode 100644
index c236d0c..0000000
--- a/nladmin-system/src/main/resources/log/AgvFeedbackServiceImpl.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<included>
-    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="agv_feedback_servlet" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>agv_feedback_servlet</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
-    </appender>
-    <!-- 打印sql -->
-    <logger name="org.nl.acs.agv.server.impl.AgvServiceImpl" level="info" additivity="false">
-        <appender-ref ref="agv_feedback_servlet"/>
-    </logger>
-</included>
diff --git a/nladmin-system/src/main/resources/log/AgvLeaveServlet.xml b/nladmin-system/src/main/resources/log/AgvLeaveServlet.xml
deleted file mode 100644
index 3c9d096..0000000
--- a/nladmin-system/src/main/resources/log/AgvLeaveServlet.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<included>
-    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="agv_leave_servlet" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>agv_leave_servlet</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
-    </appender>
-
-    <!-- 打印sql -->
-    <logger name="org.nl.acs.device_driver.electric_fence.ItemProtocol" level="info" additivity="false">
-        <appender-ref ref="agv_leave_servlet"/>
-    </logger>
-
-</included>
diff --git a/nladmin-system/src/main/resources/log/AgvServiceImpl.xml b/nladmin-system/src/main/resources/log/AgvServiceImpl.xml
new file mode 100644
index 0000000..9da02c8
--- /dev/null
+++ b/nladmin-system/src/main/resources/log/AgvServiceImpl.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<included>
+    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE5" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/反馈AGV请求/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
+    </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
+    <!-- 打印sql -->
+    <logger name="org.nl.acs.agv.server.impl.AgvServiceImpl" level="info" additivity="false">
+        <appender-ref ref="FILE5"/>
+    </logger>
+</included>
diff --git a/nladmin-system/src/main/resources/log/AgvackServlet.xml b/nladmin-system/src/main/resources/log/AgvackServlet.xml
new file mode 100644
index 0000000..4956055
--- /dev/null
+++ b/nladmin-system/src/main/resources/log/AgvackServlet.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<included>
+    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE6" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/AGV请求离开/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
+    </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
+    <!-- 打印sql -->
+    <logger name="org.nl.acs.device_driver.magic_agv.AgvackServlet" level="info" additivity="false">
+        <appender-ref ref="FILE6"/>
+    </logger>
+</included>
diff --git a/nladmin-system/src/main/resources/log/AutoCreateInst.xml b/nladmin-system/src/main/resources/log/AutoCreateInst.xml
index 3117421..fe653c6 100644
--- a/nladmin-system/src/main/resources/log/AutoCreateInst.xml
+++ b/nladmin-system/src/main/resources/log/AutoCreateInst.xml
@@ -1,16 +1,31 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="auto_create_inst" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>auto_create_inst</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE3" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/自动创建指令/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
     </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
     <!-- 打印sql -->
-    <logger name="org.nl.modules.quartz.task1.AutoCreateInst" level="info" additivity="false">
-        <appender-ref ref="auto_create_inst"/>
+    <logger name="org.nl.modules.quartz.task.AutoCreateInst" level="info" additivity="false">
+        <appender-ref ref="FILE3"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml b/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml
index e908af7..27c2b31 100644
--- a/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml
+++ b/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml
@@ -1,17 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="ndc_socket_connection_autorun" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>ndc_socket_connection_autorun</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE10" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/NDC/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
 
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
     <!-- 打印sql -->
     <logger name="org.nl.start.auto.run.NDCSocketConnectionAutoRun" level="info" additivity="false">
-        <appender-ref ref="ndc_socket_connection_autorun"/>
+        <appender-ref ref="FILE10"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml b/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml
index 565a189..7d4d2e6 100644
--- a/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml
+++ b/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml
@@ -1,15 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="agv_task_status" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>agv_task_status</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE4" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/查询AGV指令状态/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
+    <!-- 打印sql -->
     <logger name="org.nl.modules.quartz.task.QueryMagicAgvTaskStatus" level="info" additivity="false">
-        <appender-ref ref="agv_task_status"/>
+        <appender-ref ref="FILE4"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml b/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml
index 4dd0141..7f573f5 100644
--- a/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml
+++ b/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml
@@ -1,15 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="xz_agv_task_status" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>xz_agv_task_status</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE10" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/查询仙知AGV指令状态/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
-    <logger name="org.nl.modules.quartz.task1.QueryXZAgvTaskStatus" level="info" additivity="false">
-        <appender-ref ref="xz_agv_task_status"/>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
+    <!-- 打印sql -->
+    <logger name="org.nl.modules.quartz.task.QueryXZAgvTaskStatus" level="info" additivity="false">
+        <appender-ref ref="FILE10"/>
     </logger>
 </included>
diff --git a/nladmin-system/src/main/resources/log/ScannerBarcode.xml b/nladmin-system/src/main/resources/log/ScannerBarcode.xml
new file mode 100644
index 0000000..c0e5d9a
--- /dev/null
+++ b/nladmin-system/src/main/resources/log/ScannerBarcode.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<included>
+    <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE11" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/扫码记录/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
+    </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
+    <!-- 打印sql -->
+    <logger name="org.nl.acs.device_driver.standard_scanner.StandardScannerDeviceDriver" level="info" additivity="false">
+        <appender-ref ref="FILE11"/>
+    </logger>
+</included>
diff --git a/nladmin-system/src/main/resources/log/WmsToAcs.xml b/nladmin-system/src/main/resources/log/WmsToAcs.xml
index 51e95e9..61a4cbd 100644
--- a/nladmin-system/src/main/resources/log/WmsToAcs.xml
+++ b/nladmin-system/src/main/resources/log/WmsToAcs.xml
@@ -1,19 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <included>
     <springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
-    <appender name="wms_to_acs" class="org.nl.modules.log.MongoDBAppender">
-        <dbName>acs_log</dbName>
-        <collectionName>wms_to_acs</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
+    <property name="LOG_HOME" value="${logPath}"/>
+    <!-- 按照每天生成日志文件 -->
+    <appender name="FILE9" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <!--日志文件输出的文件名-->
+            <FileNamePattern>${LOG_HOME}/WMS下发ACS/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+            <!--日志文件保留天数-->
+            <maxHistory>15</maxHistory>
+            <!--单个日志最大容量 至少10MB才能看得出来-->
+            <maxFileSize>200MB</maxFileSize>
+            <!--所有日志最多占多大容量-->
+            <totalSizeCap>20GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
+            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        </encoder>
+
     </appender>
+
+    <!--  <logger name="org.nl.start.Init" level="info" additivity="false">
+          <appender-ref ref="FILE3"/>
+      </logger>-->
+
     <!-- 打印sql -->
     <logger name="org.nl.acs.ext.wms.service.impl.WmsToAcsServiceImpl" level="info" additivity="false">
-        <appender-ref ref="wms_to_acs"/>
+        <appender-ref ref="FILE9"/>
     </logger>
-    <!--<logger name="org.nl.acs.device_driver.electric_fence.ItemProtocol" level="info" additivity="false">
-        <appender-ref ref="wms_to_acs"/>
-    </logger>-->
 </included>
diff --git a/nladmin-system/src/main/resources/logback-spring.xml b/nladmin-system/src/main/resources/logback-spring.xml
index 0bb9721..9e7b6a0 100644
--- a/nladmin-system/src/main/resources/logback-spring.xml
+++ b/nladmin-system/src/main/resources/logback-spring.xml
@@ -57,19 +57,6 @@ https://juejin.cn/post/6844903775631572999
         </encoder>-->
     </appender>
 
-    <appender name="MONGO" class="org.nl.modules.log.MongoDBAppender">
-        <host>192.168.81.251</host>
-        <port>27017</port>
-      <!--   <username>admin</username>
-         <password>123456</password>-->
-         <dbName>acs_log</dbName>
-        <collectionName>default</collectionName>
-        <source>${CONTEXT_NAME}</source>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
-    </appender>
-
 
     <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
     <property name="LOG_HOME" value="${logPath}"/>
@@ -104,7 +91,6 @@ https://juejin.cn/post/6844903775631572999
     <springProfile name="dev">
         <root level="info">
             <appender-ref ref="CONSOLE"/>
-            <appender-ref ref="MONGO"/>
         </root>
 
         <logger name="jdbc.audit" level="ERROR" additivity="false">