From 09cd6fd00c91b8f7cc45ab390f9d4adb5d4c176c Mon Sep 17 00:00:00 2001 From: yiming Date: Tue, 15 Nov 2022 13:58:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=99=AE=E5=A4=A9=E7=9B=98?= =?UTF-8?q?=E7=82=B9=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhehekeji/web/service/PlcService.java | 38 +++++++++++-------- .../zhehekeji/web/service/client/Decoder.java | 2 +- .../zhehekeji/web/service/putian/PTData.java | 18 +++++++-- 3 files changed, 37 insertions(+), 21 deletions(-) diff --git a/web/src/main/java/com/zhehekeji/web/service/PlcService.java b/web/src/main/java/com/zhehekeji/web/service/PlcService.java index 16797af..f51d6fb 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcService.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcService.java @@ -451,23 +451,29 @@ public class PlcService { Integer leftRight = tmTransmission.getGoodsLocation().substring(0,1).equals("L")?1:2; Integer inout = Integer.valueOf(tmTransmission.getGoodsLocation().substring(1,3)); Stock old = stockMapper.getByStreetAndDirectionAndSideAndRowColumn(street.getId(),leftRight,inout,row,column); - if(old != null){ - stockMapper.deleteById(old.getId()); + if(old == null){ + old = new Stock(); + old.setCount(null); + old.setCode(null); + old.setCategory(null); + old.setCheckNum(tmTransmission.getTaskNo()); + old.setRow(row); + old.setColumn(column); + old.setDirection(leftRight); + old.setSide(inout); + old.setWmsCode(tmTransmission.getCode()); + old.setWmsCount(tmTransmission.getCount()); + old.setStreetId(street.getId()); + old.setExportTime(LocalDateTime.now()); + stockMapper.insert(old); + }else { + old.setExportTime(LocalDateTime.now()); + old.setWmsCode(tmTransmission.getCode()); + old.setWmsCount(tmTransmission.getCount()); + old.setCheckNum(tmTransmission.getTaskNo()); + stockMapper.updateById(old); } - Stock stock = new Stock(); - stock.setCount(null); - stock.setCode(null); - stock.setCategory(null); - stock.setCheckNum(tmTransmission.getTaskNo()); - stock.setRow(row); - stock.setColumn(column); - stock.setDirection(leftRight); - stock.setSide(inout); - stock.setWmsCode(tmTransmission.getCode()); - stock.setWmsCount(tmTransmission.getCount()); - stock.setStreetId(street.getId()); - stockMapper.insert(stock); - return stock; + return old; } /** diff --git a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java index decf61e..02f17db 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java @@ -88,7 +88,7 @@ public class Decoder extends DelimiterBasedFrameDecoder { //收到盘点结果 Stock stock = plcService.checkEnd(tmTransmission); //将盘点结果发给普天 - PTData ptData = PTData.StockCheck04(tmTransmission.getSRMNumber(),tmTransmission.getTaskNo(),tmTransmission.getGoodsLocation(),stock.getCode(),stock.getCount()); + PTData ptData = PTData.StockCheck04(tmTransmission.getSRMNumber(),tmTransmission.getTaskNo(),tmTransmission.getGoodsLocation(),stock); PuTianNettyClient.write(ptData); //添加到实时信息里 RealtimeCheckMap.put(tmTransmission.getSRMNumber(),tmTransmission.checkInfo()); diff --git a/web/src/main/java/com/zhehekeji/web/service/putian/PTData.java b/web/src/main/java/com/zhehekeji/web/service/putian/PTData.java index f3adb75..128515c 100644 --- a/web/src/main/java/com/zhehekeji/web/service/putian/PTData.java +++ b/web/src/main/java/com/zhehekeji/web/service/putian/PTData.java @@ -1,5 +1,7 @@ package com.zhehekeji.web.service.putian; +import com.zhehekeji.web.entity.Stock; +import com.zhehekeji.web.service.client.ClientChanel; import lombok.Data; import lombok.NoArgsConstructor; @@ -101,13 +103,21 @@ public class PTData { * @param SRMNumber * @param taskId * @param goodsLocation - * @param code 品规 - * @param count 数量 * @return */ - public static PTData StockCheck04(String SRMNumber,String taskId,String goodsLocation,String code,Integer count){ + public static PTData StockCheck04(String SRMNumber, String taskId, String goodsLocation, Stock stock){ StringBuffer contentSB = new StringBuffer(); - contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(code).append(",").append(count); + String status = stock.getStatus().equals("2")?"Y":"N"; + String ip ="http://"+ClientChanel.getIpFromId(SRMNumber)+":9009/pic/"+stock.getCode()+"/"+stock.getCheckNum(); + String pic1 = ip + 1; + String pic2 = ip + 2; + String pic3 = ip + 3; + String pic4 = ip + 4; + String pic5 = ip + 5; + String pic6 = ip + 6; + contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(stock.getWmsCode()).append(",").append(stock.getWmsCount()) + .append(",").append(stock.getCode()).append(",").append(stock.getCount()).append(",").append(status).append(",").append(pic1) + .append("$").append(pic2).append("$").append(pic3).append("$").append(pic4).append("$").append(pic5).append("$").append(pic6); PTData ptData = new PTData(contentSB.toString(),FLOW_NO_NEED_RES,STOCK_CHECK_04); return ptData; }