From a2b6595d2e1232457e1bc52ce8df79317f342385 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LAPTOP-S9HJSOEB=5C=E6=98=8A=E5=A4=A9?= Date: Wed, 30 Jul 2025 11:55:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E7=9C=8B=E7=9B=98?= =?UTF-8?q?=E7=82=B9=E9=80=BB=E8=BE=91=20=E4=BF=AE=E6=94=B9=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/StockController.java | 2 +- .../java/com/zhehekeji/web/lib/OrderInfo.java | 59 +++++++++++++++++++ .../zhehekeji/web/lib/joyware/CallBack.java | 3 +- .../zhehekeji/web/pojo/stock/StockCheck.java | 1 + .../zhehekeji/web/service/StockService.java | 36 ++++++++++- 5 files changed, 97 insertions(+), 4 deletions(-) diff --git a/web/src/main/java/com/zhehekeji/web/controller/StockController.java b/web/src/main/java/com/zhehekeji/web/controller/StockController.java index 0d625f1..10ea002 100644 --- a/web/src/main/java/com/zhehekeji/web/controller/StockController.java +++ b/web/src/main/java/com/zhehekeji/web/controller/StockController.java @@ -167,7 +167,7 @@ public class StockController { @ApiOperation(value = "人工复核") @RequestMapping(value = "/checkCorrect", method = RequestMethod.POST) public Result check(@RequestBody StockCheck stockCheck) { - validatorUtil.validate(stockCheck); +// validatorUtil.validate(stockCheck); return Result.success(stockService.checkCorrect(stockCheck)); } diff --git a/web/src/main/java/com/zhehekeji/web/lib/OrderInfo.java b/web/src/main/java/com/zhehekeji/web/lib/OrderInfo.java index 04b4b5f..9667bbe 100644 --- a/web/src/main/java/com/zhehekeji/web/lib/OrderInfo.java +++ b/web/src/main/java/com/zhehekeji/web/lib/OrderInfo.java @@ -6,6 +6,16 @@ import lombok.AllArgsConstructor; import lombok.Getter; import lombok.Setter; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + @AllArgsConstructor @Getter @Setter @@ -68,5 +78,54 @@ public class OrderInfo { cmdCode = c; } + public static List readLinesToList(String path) { + List lines = new ArrayList<>(); + + try (BufferedReader reader = new BufferedReader( new InputStreamReader(Files.newInputStream(Paths.get(path)), StandardCharsets.UTF_8))) { + //InputStreamReader isr = new InputStreamReader(reader,"UTF-8");//避免中文乱码 + String line; + while ((line = reader.readLine()) != null) { +// lines.add(line); + String [] split = line.split(";"); + for (String s : split){ + if (s.contains("error")){ + System.out.println(s); + }else { + if (s.contains("4.PNG")){ + System.out.println(s.replace("4.PNG","2.PNG")); + }else { + System.out.println(s.replace("3.PNG","1.PNG")); + } + } + } + } + }catch (IOException e){ + + } + + return lines; + } + + public static void main(String[] args) { + String filePath = "E://91.txt"; + String result = readLinesWithSemicolon(filePath); + + if (result != null) { + System.out.println(result); + } else { + System.err.println("Failed to read file: " + filePath); + } + } + public static String readLinesWithSemicolon(String path) { + try { + List lines = readLinesToList(path); + + return null; + } catch (Exception e) { + System.err.println("Error: " + e.getMessage()); + e.printStackTrace(); + return null; + } + } } diff --git a/web/src/main/java/com/zhehekeji/web/lib/joyware/CallBack.java b/web/src/main/java/com/zhehekeji/web/lib/joyware/CallBack.java index 4e4aca3..c51a98f 100644 --- a/web/src/main/java/com/zhehekeji/web/lib/joyware/CallBack.java +++ b/web/src/main/java/com/zhehekeji/web/lib/joyware/CallBack.java @@ -2,6 +2,7 @@ package com.zhehekeji.web.lib.joyware; import com.sun.jna.Pointer; import com.zhehekeji.web.lib.CameraConnMap; +import com.zhehekeji.web.lib.OrderInfo; import lombok.extern.slf4j.Slf4j; @Slf4j @@ -69,7 +70,7 @@ public class CallBack { // if(PTZInfo.bState == 2){ // Integer cameraId = CameraConnMap.getCameraIdByLoginId(lLoginId); // if(cameraId != null){ - // OrderInfo orderInfo = CameraCaptureMap.getOrderInfoByStreetId(cameraId); +// OrderInfo orderInfo = CameraCaptureMap.getOrderInfoByStreetId(cameraId); // log.info("cameraId:{}",cameraId); // if(orderInfo != null && !"C6".equals(orderInfo.getCode())){ // log.info("cameraId:{} 到位 拍照,code:{},orderNUm:{}",cameraId,orderInfo.getCode(),orderInfo.getOrderNum()); diff --git a/web/src/main/java/com/zhehekeji/web/pojo/stock/StockCheck.java b/web/src/main/java/com/zhehekeji/web/pojo/stock/StockCheck.java index 5d59f0a..2167265 100644 --- a/web/src/main/java/com/zhehekeji/web/pojo/stock/StockCheck.java +++ b/web/src/main/java/com/zhehekeji/web/pojo/stock/StockCheck.java @@ -28,4 +28,5 @@ public class StockCheck { private Integer column; private Integer ok; + private Integer id; } diff --git a/web/src/main/java/com/zhehekeji/web/service/StockService.java b/web/src/main/java/com/zhehekeji/web/service/StockService.java index 9302a8c..85f18f2 100644 --- a/web/src/main/java/com/zhehekeji/web/service/StockService.java +++ b/web/src/main/java/com/zhehekeji/web/service/StockService.java @@ -84,6 +84,32 @@ public class StockService { } + public static void main(String[] args) { + // 示例main函数,用于读取指定文件并将每行中含有"time:"的部分提取出来 + + + String filePath ="E:\\m\\duoji-web-info.log"; + System.out.println("正在读取文件: " + filePath); + + try { + java.nio.file.Path path = java.nio.file.Paths.get(filePath); + java.nio.file.Files.lines(path) + .filter(line -> line.contains("time:")) + .forEach(line -> { + int startIndex = line.indexOf("time:") + 5; // "time:"的长度是5 + // 提取"time:"后面的内容 + String timeValue = line.substring(startIndex).trim(); +// 去除millisecond + timeValue = timeValue.replace("millisecond",""); + if (Integer.valueOf(timeValue) > 4000) + System.out.println(timeValue); + }); + } catch (Exception e) { + System.err.println("读取文件时发生错误: " + e.getMessage()); + e.printStackTrace(); + } + } + public CheckStatus statusByRowColumn(RowColumnStatus rowColumnStatus){ CheckStatus checkStatus = new CheckStatus(); checkStatus.setColumnStart(rowColumnStatus.getColumnStart()); @@ -109,7 +135,7 @@ public class StockService { } Map columnTabCorrectCount = new LinkedHashMap<>(); Map rowTabCorrectCount = new LinkedHashMap<>(); - List stocks = stockMapper.selectList(new QueryWrapper().select("status","`row`","`column`","tray_code").eq("`street_id`",rowColumnStatus.getStreetId()).eq("direction",rowColumnStatus.getDirection()).eq("side",rowColumnStatus.getSide())); + List stocks = stockMapper.selectList(new QueryWrapper().select("id","status","`row`","`column`","tray_code","wms_tray_code").eq("`street_id`",rowColumnStatus.getStreetId()).eq("direction",rowColumnStatus.getDirection()).eq("side",rowColumnStatus.getSide())); if(CollectionUtils.isEmpty(stocks)){ stockInit(rowColumnStatus.getRowStart(), rowColumnStatus.getRowEnd(), rowColumnStatus.getColumnStart(), rowColumnStatus.getColumnEnd(), null,stocks); checkStatus.setStocks(stocks); @@ -361,7 +387,13 @@ public class StockService { * @param stockCheck */ public Stock checkCorrect(StockCheck stockCheck) { - Stock stock = stockInfo(stockCheck); + + Stock stock = null; + if (stockCheck.getId() != null){ + stock = stockMapper.selectById(stockCheck.getId()); + }else { + stockInfo(stockCheck); + } Assert.isTrue(stock != null && stock.getId() != null, "该货位暂时没有记录"); Integer oldStatus = stock.getStatus(); //Assert.isTrue(StockStatus.ERROR.getStatus().equals(oldStatus), "无需核对");