From eb7c692d55307f2a573c04f8f2e49615cf954d36 Mon Sep 17 00:00:00 2001
From: liyongde <1419499670@qq.com>
Date: Wed, 10 Jan 2024 10:32:58 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E6=97=A5=E5=BF=97ip=E5=9C=B0=E5=9D=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../nl/common/logging/aspect/LogAspect.java   |  6 ++++--
 .../org/nl/config/lucene/LuceneAppender.java  | 14 ++++++++++----
 .../java/org/nl/config/lucene/Searcher.java   | 19 ++++++++-----------
 .../acs/service/impl/AcsToWmsServiceImpl.java |  1 +
 .../dao/PdmBdRequestMaterialRecord.java       | 11 +++++++++++
 .../controller/SchBasePointController.java    |  1 -
 .../src/main/resources/logback-spring.xml     |  2 +-
 .../src/views/wms/pdm/record/index.vue        |  1 +
 8 files changed, 36 insertions(+), 19 deletions(-)

diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java
index d6d1298..47096a2 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java
@@ -32,6 +32,7 @@ import org.nl.common.utils.StringUtils;
 import org.nl.common.utils.ThrowableUtil;
 import org.nl.system.service.logging.ISysLogService;
 import org.nl.system.service.logging.dao.SysLog;
+import org.slf4j.MDC;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -85,8 +86,9 @@ public class LogAspect {
         ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
         HttpServletRequest request = attributes.getRequest();
         HttpServletResponse response = attributes.getResponse();
-
-
+        // 将ip记录MDC,方便日志追寻
+        String clientIP = request.getRemoteAddr();
+        MDC.put("clientIP", clientIP);
         MethodSignature signature = (MethodSignature) joinPoint.getSignature();
         Method method = signature.getMethod();
         // 方法路径
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
index d342c3a..ab9854f 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
@@ -65,12 +65,18 @@ public class LuceneAppender extends AppenderBase<ILoggingEvent> {
         Map<String, String> mdcPropertyMap = event.getMDCPropertyMap();
         Document doc = new Document();
         long timeStamp = event.getTimeStamp();
+
         // 获取本机的IP地址
         String ipAddress = "-";
-        try {
-            ipAddress = InetAddress.getLocalHost().getHostAddress();
-        } catch (UnknownHostException e) {
-            throw new RuntimeException(e);
+        String clientIpAddress = event.getMDCPropertyMap().get("clientIP");
+        if (ObjectUtil.isNotEmpty(clientIpAddress)) {
+            ipAddress = clientIpAddress;
+        } else {
+            try {
+                ipAddress = InetAddress.getLocalHost().getHostAddress();
+            } catch (UnknownHostException e) {
+                throw new RuntimeException(e);
+            }
         }
         String formattedDateTime = DateUtil.format(new java.util.Date(timeStamp), "yyyy-MM-dd HH:mm:ss.SSS");
         doc.add(new LongPoint(LogMessageConstant.FIELD_SORT_NAME, timeStamp));
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
index 2e51775..ec651e9 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
@@ -3,6 +3,7 @@ package org.nl.config.lucene;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.lucene.analysis.Analyzer;
@@ -56,19 +57,15 @@ public class Searcher {
         TopDocs docs = null;
         BooleanQuery.Builder booleanQueryBuilder = new BooleanQuery.Builder();
         //时间范围查询
-        String startDate = whereJson.getString("begin_time");
-        String endDate = whereJson.getString("end_time");
         Calendar calendar = Calendar.getInstance();
         calendar.set(1970, 0, 1);
-        if (startDate == null) {
-            startDate = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss.SSS");
-        } else {
-            startDate = LuceneIndexWriter.getDate(startDate);
-        }
-        if (endDate == null) {
-            endDate = DateUtil.format(new DateTime(), "yyyy-MM-dd HH:mm:ss.SSS");
-        } else {
-            endDate = LuceneIndexWriter.getDate(endDate);
+        JSONArray createTime = whereJson.getJSONArray("createTime");
+        String startDate = DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss.SSS");
+        String endDate = DateUtil.format(new DateTime(), "yyyy-MM-dd HH:mm:ss.SSS");
+
+        if (createTime != null) {
+            startDate = createTime.getString(0);
+            endDate = createTime.getString(1);
         }
         // 字段之间的与或非关系,MUST表示and,MUST_NOT表示not,SHOULD表示or,有几个fields就必须有几个clauses
         TermRangeQuery termRangeQuery = new TermRangeQuery("timestamp", new BytesRef(startDate),
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
index 60b23ab..8bec5c1 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
@@ -720,6 +720,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
             if (list.size() > 0) {
                 PdmBdRequestMaterialRecord record = list.get(0);
                 record.setIs_delete(true);
+                record.setUsed_time(DateUtil.now());
                 requestMaterialRecordService.updateById(record);
             }
             // 回传给mes系统
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/record/service/dao/PdmBdRequestMaterialRecord.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/record/service/dao/PdmBdRequestMaterialRecord.java
index 82f9a29..8d6cef2 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/record/service/dao/PdmBdRequestMaterialRecord.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/record/service/dao/PdmBdRequestMaterialRecord.java
@@ -12,6 +12,15 @@ import java.io.Serializable;
  * @author lyd
  * @description /
  * @date 2023-07-05
+ * 要料记录标识
+ * 压机编号
+ * 物料
+ * 工单
+ * 叫料时间
+ * 是否上料完成
+ * 上料时间
+ * 是否删除
+ * 下料时间
  **/
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -42,4 +51,6 @@ public class PdmBdRequestMaterialRecord implements Serializable {
 
     private String update_time;
 
+    private String used_time;
+
 }
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java
index cc30369..c158408 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/point/controller/SchBasePointController.java
@@ -31,7 +31,6 @@ public class SchBasePointController {
 
     @GetMapping
     @Log("查询点位管理")
-
     //@SaCheckPermission("@el.check('schBasePoint:list')")
     public ResponseEntity<Object> query(SchBasePointQuery whereJson, PageQuery page) {
         return new ResponseEntity<>(TableDataInfo.build(schBasePointService.queryAll(whereJson, page)), HttpStatus.OK);
diff --git a/lms/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml b/lms/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml
index c534be8..4d56868 100644
--- a/lms/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml
+++ b/lms/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml
@@ -71,8 +71,8 @@ https://juejin.cn/post/6844903775631572999
     <!--开发环境:打印控制台-->
     <springProfile name="dev">
         <root level="DEBUG">
-            <appender-ref ref="asyncFileAppender"/>
             <appender-ref ref="asyncLuceneAppender"/>
+            <appender-ref ref="asyncFileAppender"/>
             <appender-ref ref="CONSOLE"/>
         </root>
         <logger name="com.baomidou.mybatisplus.core.MybatisConfiguration" level="ERROR" additivity="false">
diff --git a/lms/nladmin-ui/src/views/wms/pdm/record/index.vue b/lms/nladmin-ui/src/views/wms/pdm/record/index.vue
index 59062b2..99f6e59 100644
--- a/lms/nladmin-ui/src/views/wms/pdm/record/index.vue
+++ b/lms/nladmin-ui/src/views/wms/pdm/record/index.vue
@@ -42,6 +42,7 @@
             {{ scope.row.is_delete ? '是' : '否'}}
           </template>
         </el-table-column>
+        <el-table-column prop="used_time" label="下料时间" :min-width="flexWidth('used_time',crud.data,'叫料时间')"/>
         <el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
           <template slot-scope="scope">
             <udOperation