解析空货位信息;修改货位盘点图片地址

nanjing-yancao-wuliuzhongxin-qsl
QuShuailong 3 years ago
parent 5141c80e63
commit edcfd17897

@ -25,6 +25,4 @@ public class EmptyCheck {
private Integer emptyStatus; private Integer emptyStatus;
private LocalDateTime createTime; private LocalDateTime createTime;
} }

@ -236,20 +236,22 @@ public class EmptyCheckService {
emptyCheck.setOrderNum(ecTransmission.getTaskId()); emptyCheck.setOrderNum(ecTransmission.getTaskId());
emptyCheck.setSide(ecTransmission.getSide()); emptyCheck.setSide(ecTransmission.getSide());
emptyCheck.setDirection(ecTransmission.getDirection()); emptyCheck.setDirection(ecTransmission.getDirection());
//0:未知 1空 2非空 //0:未盘点 1有货 2无货
if(ecTransmission.getIsEmpty().equals("N")){ if(ecTransmission.getIsEmpty().equals("0")){
emptyCheck.setEmptyStatus(1);
}else {
emptyCheck.setEmptyStatus(2); emptyCheck.setEmptyStatus(2);
}else {
emptyCheck.setEmptyStatus(1);
} }
emptyCheck.setRow(ecTransmission.getRow()); emptyCheck.setRow(ecTransmission.getRow());
emptyCheck.setColumn(ecTransmission.getColumn()); emptyCheck.setColumn(ecTransmission.getColumn());
}else { }else {
emptyCheck.setOrderNum(ecTransmission.getTaskId()); emptyCheck.setOrderNum(ecTransmission.getTaskId());
if(ecTransmission.getIsEmpty().equals("N")){ if(ecTransmission.getIsEmpty().equals("0")){
emptyCheck.setEmptyStatus(1); log.info("goodsLocation:{}, status: {}", ecTransmission.getGoodsLocation(), ecTransmission.getIsEmpty());
}else {
emptyCheck.setEmptyStatus(2); emptyCheck.setEmptyStatus(2);
}else {
log.info("goodsLocation:{}, status: {}", ecTransmission.getGoodsLocation(), ecTransmission.getIsEmpty());
emptyCheck.setEmptyStatus(1);
} }
} }
emptyCheckMapper.insertOrUpdate(emptyCheck); emptyCheckMapper.insertOrUpdate(emptyCheck);

@ -429,10 +429,7 @@ public class PlcService {
* @return * @return
*/ */
public Boolean check(PlcCmdInfo plcCmdInfo,String cmdCode,String wmsCode,String wmsTrayCode){ public Boolean check(PlcCmdInfo plcCmdInfo,String cmdCode,String wmsCode,String wmsTrayCode){
long startTime = System.currentTimeMillis(); long startTime = System.currentTimeMillis();
long end = System.currentTimeMillis(); long end = System.currentTimeMillis();
long s = end - startTime; long s = end - startTime;
log.info("time:{}millisecond",s); log.info("time:{}millisecond",s);
@ -447,10 +444,10 @@ public class PlcService {
public Stock checkStart(TMTransmission tmTransmission){ public Stock checkStart(TMTransmission tmTransmission){
log.info("【开始盘点货位】save stock info ,taskId:{},SRMNumber:{}goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation()); log.info("【开始盘点货位】save stock info ,taskId:{},SRMNumber:{}goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation());
Street street = streetService.getStreetByPlcId(tmTransmission.getSRMNumber()); Street street = streetService.getStreetByPlcId(tmTransmission.getSRMNumber());
Integer row = Integer.valueOf(tmTransmission.getGoodsLocation().substring(5,8)); Integer row = Integer.valueOf(tmTransmission.getGoodsLocation().substring(8,10));
Integer column = Integer.valueOf(tmTransmission.getGoodsLocation().substring(8,10)); Integer column = Integer.valueOf(tmTransmission.getGoodsLocation().substring(5,8));
Integer leftRight = Integer.valueOf(tmTransmission.getGoodsLocation().substring(4,5)); Integer leftRight = Integer.valueOf(tmTransmission.getGoodsLocation().substring(4,5));
Integer inout = Integer.valueOf(tmTransmission.getGoodsLocation().substring(10,12)); Integer inout = Integer.valueOf(tmTransmission.getGoodsLocation().substring(11,12));
Stock old = stockMapper.getByStreetAndDirectionAndSideAndRowColumn(street.getId(),leftRight,inout,row,column); Stock old = stockMapper.getByStreetAndDirectionAndSideAndRowColumn(street.getId(),leftRight,inout,row,column);
if(old == null){ if(old == null){
old = new Stock(); old = new Stock();
@ -463,7 +460,8 @@ public class PlcService {
old.setColumn(column); old.setColumn(column);
old.setDirection(leftRight); old.setDirection(leftRight);
old.setSide(inout); old.setSide(inout);
old.setWmsCode(tmTransmission.getCode()); old.setWmsCode(tmTransmission.getGoodsLocation());
old.setWmsCategory(tmTransmission.getCategory());
old.setWmsCount(tmTransmission.getCount()); old.setWmsCount(tmTransmission.getCount());
old.setStreetId(street.getId()); old.setStreetId(street.getId());
old.setExportTime(LocalDateTime.now()); old.setExportTime(LocalDateTime.now());
@ -472,7 +470,7 @@ public class PlcService {
}else { }else {
old.setLotnum(tmTransmission.getTaskNo()); old.setLotnum(tmTransmission.getTaskNo());
old.setExportTime(LocalDateTime.now()); old.setExportTime(LocalDateTime.now());
old.setWmsCode(tmTransmission.getCode()); old.setWmsCode(tmTransmission.getGoodsLocation());
old.setWmsCount(tmTransmission.getCount()); old.setWmsCount(tmTransmission.getCount());
old.setCheckNum(tmTransmission.getTaskNo()); old.setCheckNum(tmTransmission.getTaskNo());
old.setWmsTrayCode(""); old.setWmsTrayCode("");
@ -489,21 +487,23 @@ public class PlcService {
public Stock checkEnd(TMTransmission tmTransmission){ public Stock checkEnd(TMTransmission tmTransmission){
log.info("【盘点货位结果返回】update stock info ,taskId:{},SRMNumber:{},goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation()); log.info("【盘点货位结果返回】update stock info ,taskId:{},SRMNumber:{},goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation());
Street street = streetService.getStreetByPlcId(tmTransmission.getSRMNumber()); Street street = streetService.getStreetByPlcId(tmTransmission.getSRMNumber());
Integer row = Integer.valueOf(tmTransmission.getGoodsLocation().substring(5,8)); Integer row = Integer.valueOf(tmTransmission.getGoodsLocation().substring(8,10));
Integer column = Integer.valueOf(tmTransmission.getGoodsLocation().substring(8,10)); Integer column = Integer.valueOf(tmTransmission.getGoodsLocation().substring(5,8));
Integer leftRight = Integer.valueOf(tmTransmission.getGoodsLocation().substring(4,5)); Integer leftRight = Integer.valueOf(tmTransmission.getGoodsLocation().substring(4,5));
Integer inout = Integer.valueOf(tmTransmission.getGoodsLocation().substring(10,12)); Integer inout = Integer.valueOf(tmTransmission.getGoodsLocation().substring(11,12));
Stock stock = stockMapper.getByStreetAndDirectionAndSideAndRowColumn(street.getId(),leftRight,inout,row,column); Stock stock = stockMapper.getByStreetAndDirectionAndSideAndRowColumn(street.getId(),leftRight,inout,row,column);
if(stock != null){ if(stock != null){
stock.setCount(tmTransmission.getCount()); stock.setCount(tmTransmission.getRstCount());
stock.setCode(tmTransmission.getCode()); stock.setCategory(tmTransmission.getRstCategory());
stock.setCode(tmTransmission.getGoodsLocation());
stock.setWmsCategory(tmTransmission.getCategory());
//盘点正确 2 //盘点正确 2
//盘点异常 1 //盘点异常 1
Integer status = tmTransmission.getCount().equals(stock.getWmsCount()) && tmTransmission.getCode().equals(stock.getWmsCode()) ? 2: 1; Integer status = tmTransmission.getRstCount().equals(stock.getWmsCount()) && tmTransmission.getRstCategory().equals(stock.getWmsCategory()) ? 2: 1;
stock.setStatus(status); stock.setStatus(status);
stock.setTrayCode(tmTransmission.getTrayNo()); stock.setTrayCode(tmTransmission.getTrayNo());
stockMapper.updateById(stock); stockMapper.updateById(stock);
log.info("update check info,taskId:{},SRMNumber:{},count:{},code:{}",stock.getCheckNum(),tmTransmission.getSRMNumber(),tmTransmission.getCount(),tmTransmission.getCode()); log.info("update check info,taskId:{},SRMNumber:{},goodsLocation:{}",stock.getCheckNum(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation());
}else { }else {
log.info("check end,but no stock info ,taskId:{},SRMNumber:{},goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation()); log.info("check end,but no stock info ,taskId:{},SRMNumber:{},goodsLocation:{}",tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),tmTransmission.getGoodsLocation());
stock = new Stock(); stock = new Stock();
@ -511,11 +511,10 @@ public class PlcService {
stock.setCode(tmTransmission.getCode()); stock.setCode(tmTransmission.getCode());
stock.setStatus(1); stock.setStatus(1);
} }
checkLog(stock); // checkLog(stock);
return stock; return stock;
} }
public void checkLog(Stock stock){ public void checkLog(Stock stock){
CheckLog checkLog = new CheckLog(); CheckLog checkLog = new CheckLog();
checkLog.setCheckNum(stock.getCheckNum()); checkLog.setCheckNum(stock.getCheckNum());
@ -528,11 +527,12 @@ public class PlcService {
checkLog.setStatus(stock.getStatus()); checkLog.setStatus(stock.getStatus());
checkLog.setRow(stock.getRow()); checkLog.setRow(stock.getRow());
checkLog.setColumn(stock.getColumn()); checkLog.setColumn(stock.getColumn());
checkLog.setCreateTime(LocalDateTime.now());
checkLog.setTrayCode(stock.getTrayCode()); checkLog.setTrayCode(stock.getTrayCode());
checkLog.setWmsTrayCode(stock.getWmsTrayCode()); checkLog.setWmsTrayCode(stock.getWmsTrayCode());
checkLog.setLotnum(stock.getLotnum()); checkLog.setLotnum(stock.getLotnum());
checkLog.setCreateTime(LocalDateTime.now());
checkLogMapper.insert(checkLog); checkLogMapper.insert(checkLog);
log.info("checkLogMapper insert");
} }
public void truncateStock(){ public void truncateStock(){
stockMapper.truncate(); stockMapper.truncate();
@ -567,12 +567,10 @@ public class PlcService {
} }
return tags; return tags;
} }
public ConfigProperties getConfigProperties(){ public ConfigProperties getConfigProperties(){
return configProperties; return configProperties;
} }
/** /**
* *
* C1 * C1
@ -582,7 +580,7 @@ public class PlcService {
public String IntoStock(String SRMNumber,String taskId,String goodsLocation){ public String IntoStock(String SRMNumber,String taskId,String goodsLocation){
Street street = streetService.getStreetByPlcId(SRMNumber); Street street = streetService.getStreetByPlcId(SRMNumber);
if (street == null){ if (street == null){
log.error("SRMNum: {} 对应的巷道不存在"); log.error("SRMNum: {} 对应的巷道不存在", SRMNumber);
} }
//南京烟草物流只有一个相机 //南京烟草物流只有一个相机
Integer cameraId = street.getCamera1Id() == null ? street.getCamera2Id():street.getCamera1Id(); Integer cameraId = street.getCamera1Id() == null ? street.getCamera2Id():street.getCamera1Id();

@ -335,7 +335,7 @@ public class StockService {
stock.setOveroperationPic(stockLogs.get(0).getPic()); stock.setOveroperationPic(stockLogs.get(0).getPic());
stock.setPreoperationPic(stockLogs.get(1).getPic()); stock.setPreoperationPic(stockLogs.get(1).getPic());
} }
String ip ="http://"+ street.getPlcIp()+":9009/pic/"+stock.getCode()+"/"+stock.getLotnum()+"/"+stock.getLotnum()+"/"; String ip ="http://"+ street.getPlcIp()+":9009/pic/"+stock.getCode()+"/"+stock.getCheckNum()+"/";
stock.setSidePic1(String.format("%s1.png",ip)); stock.setSidePic1(String.format("%s1.png",ip));
stock.setSidePic2(String.format("%s2.png",ip)); stock.setSidePic2(String.format("%s2.png",ip));
stock.setSidePic3(String.format("%s3.png",ip)); stock.setSidePic3(String.format("%s3.png",ip));

@ -64,7 +64,7 @@ public class ClientChanel {
InetSocketAddress socketAddress = (InetSocketAddress) channel.remoteAddress(); InetSocketAddress socketAddress = (InetSocketAddress) channel.remoteAddress();
String clientIp = socketAddress.getAddress().getHostAddress(); String clientIp = socketAddress.getAddress().getHostAddress();
putSRMNUmber_Ip(SRMNumber, clientIp); putSRMNUmber_Ip(SRMNumber, clientIp);
log.info("connect 巷道 "); log.info("connect:{}巷道 ", SRMNumber);
} }
public static void disConnect(String key){ public static void disConnect(String key){

@ -14,6 +14,7 @@ import org.slf4j.LoggerFactory;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@ -119,7 +120,7 @@ public class Decoder extends DelimiterBasedFrameDecoder {
//发送给客户端 //发送给客户端
PTCheckContent ptCheckContent = PTCheckContent.CheckContentSC01(ptData.getContent()); PTCheckContent ptCheckContent = PTCheckContent.CheckContentSC01(ptData.getContent());
TMTransmission tmTransmission = new TMTransmission(ptCheckContent.getSRMNUmber(),ptCheckContent.getTaskNo(),ptCheckContent.getGoodsLocation(),ptCheckContent.getCode(), ptCheckContent.getCount(), "N"); TMTransmission tmTransmission = new TMTransmission(ptCheckContent.getSRMNUmber(),ptCheckContent.getTaskNo(),ptCheckContent.getGoodsLocation(),ptCheckContent.getCode(), ptCheckContent.getCount(), "N");
// plcService.checkStart(tmTransmission); plcService.checkStart(tmTransmission);
String tmTransmissionStr = tmTransmission.toString(); String tmTransmissionStr = tmTransmission.toString();
ClientChanel.write(tmTransmissionStr,ptCheckContent.getSRMNUmber()); ClientChanel.write(tmTransmissionStr,ptCheckContent.getSRMNUmber());
in.release(); in.release();
@ -140,10 +141,10 @@ public class Decoder extends DelimiterBasedFrameDecoder {
//保存order标表 //保存order标表
PTOrderContent ptOrderContent = PTOrderContent.OrderContentIS01And03(ptData.getContent()); PTOrderContent ptOrderContent = PTOrderContent.OrderContentIS01And03(ptData.getContent());
String srmNumber = ptOrderContent.getSRMNUmber(); String srmNumber = ptOrderContent.getSRMNUmber();
if (srmNumber.length() < 3){ // if (srmNumber.length() < 3){
Integer number = Integer.valueOf(srmNumber); // Integer number = Integer.valueOf(srmNumber);
srmNumber = String.format("%03d", number); // srmNumber = String.format("%03d", number);
} // }
String picPath = plcService.IntoStock(srmNumber, ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation()); String picPath = plcService.IntoStock(srmNumber, ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation());
//返回普天 //返回普天
PTData resData = PTData.IntoStock02(ptOrderContent.getSRMNUmber(), ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation(),picPath); PTData resData = PTData.IntoStock02(ptOrderContent.getSRMNUmber(), ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation(),picPath);
@ -155,10 +156,10 @@ public class Decoder extends DelimiterBasedFrameDecoder {
PuTianNettyClient.write(ptDataSend); PuTianNettyClient.write(ptDataSend);
PTOrderContent ptOrderContent = PTOrderContent.OrderContentIS01And03(ptData.getContent()); PTOrderContent ptOrderContent = PTOrderContent.OrderContentIS01And03(ptData.getContent());
String srmNumber = ptOrderContent.getSRMNUmber(); String srmNumber = ptOrderContent.getSRMNUmber();
if (srmNumber.length() < 3){ // if (srmNumber.length() < 3){
Integer number = Integer.valueOf(srmNumber); // Integer number = Integer.valueOf(srmNumber);
srmNumber = String.format("%03d", number); // srmNumber = String.format("%03d", number);
} // }
String picPath = plcService.IntoStockOver(srmNumber, ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation()); String picPath = plcService.IntoStockOver(srmNumber, ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation());
PTData resData = PTData.IntoStock04(ptOrderContent.getSRMNUmber(), ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation(), picPath, ptOrderContent.getGoodsLocation()); PTData resData = PTData.IntoStock04(ptOrderContent.getSRMNUmber(), ptOrderContent.getTaskNo(), ptOrderContent.getGoodsLocation(), picPath, ptOrderContent.getGoodsLocation());
PuTianNettyClient.write(resData); PuTianNettyClient.write(resData);
@ -182,12 +183,12 @@ public class Decoder extends DelimiterBasedFrameDecoder {
PuTianNettyClient.write(ptData); PuTianNettyClient.write(ptData);
}else { }else {
//收到盘点结果 //收到盘点结果
// Stock stock = plcService.checkEnd(tmTransmission); Stock stock = plcService.checkEnd(tmTransmission);
//将盘点结果发给普天 //将盘点结果发给普天
PTData ptData = PTData.StockCheck04(tmTransmission); PTData ptData = PTData.StockCheck04(tmTransmission);
PuTianNettyClient.write(ptData); PuTianNettyClient.write(ptData);
//添加到实时信息里 //添加到实时信息里
// RealtimeCheckMap.put(tmTransmission.getSRMNumber(),tmTransmission.checkInfo()); RealtimeCheckMap.put(tmTransmission.getSRMNumber(),tmTransmission.checkInfo());
//更新盤點統計 //更新盤點統計
// emptyCheckService.updateCheckLastTime(tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),stock.getCode()); // emptyCheckService.updateCheckLastTime(tmTransmission.getTaskNo(),tmTransmission.getSRMNumber(),stock.getCode());
} }
@ -204,19 +205,23 @@ public class Decoder extends DelimiterBasedFrameDecoder {
} }
else if(body.startsWith(ECTransmission.getHEADER())){ else if(body.startsWith(ECTransmission.getHEADER())){
//空货位盘点 //空货位盘点
ECTransmission ecTransmission = new ECTransmission(body); ECResultMessage ecResultMessage = new ECResultMessage(body);
log.info("empty result: {}", body); log.info("empty result: {}", body);
//将库位的盘点结果发给普天 //将库位的盘点结果发给普天
StringBuffer strBff = new StringBuffer(ecTransmission.getSRMNumber()); StringBuffer strBff = new StringBuffer(ecResultMessage.getSRMNumber());
strBff.append("*").append(ecTransmission.getTaskId()).append("*").append(ecTransmission.getEmptyMsg()); strBff.append("*").append(ecResultMessage.getTaskId()).append("*").append(ecResultMessage.getEmptyCheckMsg());
// strBff.append(",").append(ecTransmission.getIsEmpty()); // strBff.append(",").append(ecTransmission.getIsEmpty());
String content = strBff.toString(); String content = strBff.toString();
PTData ptData = new PTData(content, PTData.FLOW_R, PTData.EMPTY_CHECK_03); PTData ptData = new PTData(content, PTData.FLOW_R, PTData.EMPTY_CHECK_03);
log.info("ptData:{}", ptData);
PuTianNettyClient.write(ptData); PuTianNettyClient.write(ptData);
//保存空货位条码 //保存空货位条码
EmptyCheckCodeInfo.addCode(ecTransmission.getSRMNumber(),ecTransmission.getRow(),ecTransmission.getStartColumn(), ecTransmission.getEndColumn(), ecTransmission.getOriginCode()); // EmptyCheckCodeInfo.addCode(ecTransmission.getSRMNumber(),ecTransmission.getRow(),ecTransmission.getStartColumn(), ecTransmission.getEndColumn(), ecTransmission.getOriginCode());
//保存空货位信息 //保存空货位信息
emptyCheckService.emptyCheckLog(ecTransmission); List<ECTransmission> ecTransmissionList = ecResultMessage.getEcTransMissionList();
for (ECTransmission ecTransmission : ecTransmissionList) {
emptyCheckService.emptyCheckLog(ecTransmission);
}
in.release(); in.release();
} }
else if(body.startsWith("DC")){ else if(body.startsWith("DC")){

@ -0,0 +1,50 @@
package com.zhehekeji.web.service.client;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data
/**
*
*
* EC&6&17455&UL061001050111,1;UL061002050111,0;UL061003050111,1;>
* UL061001050111,1 ,01
*/
public class ECResultMessage {
private static String HEADER = "EC";
private static String SPLIT = "&";
private static String SPLIT_EMP = ";";
private String SRMNumber;
private String taskId;
private String emptyCheckMsg;
private List<ECTransmission> ecTransMissionList;
public ECResultMessage(String body){
ecTransMissionList = new ArrayList<>();
log.info("body: {}", body);
String [] strings = body.split(SPLIT);
if(strings != null && strings.length == 4 && HEADER.equals(strings[0])){
SRMNumber = strings[1];
taskId = strings[2];
emptyCheckMsg = strings[3];
log.info("srmNumber:{}, taskId:{},emptyCheckMsg:{}", SRMNumber, taskId, emptyCheckMsg);
String[] checkMsgStrs = emptyCheckMsg.split(SPLIT_EMP);
for (String checkMsgStr : checkMsgStrs) {
if (!checkMsgStr.isEmpty() && checkMsgStr.contains(",")){
log.info("checkMsgStr: {}", checkMsgStr);
String[] msgStrs = checkMsgStr.split(",");
String goodsLocation = msgStrs[0];
String empty = msgStrs[1];
ECTransmission ecTransmission = new ECTransmission(SRMNumber, taskId, goodsLocation, empty);
ecTransMissionList.add(ecTransmission);
}
}
}
}
}

@ -90,6 +90,19 @@ public class ECTransmission {
} }
} }
public ECTransmission(String srmNumber, String id, String location, String empty){
SRMNumber = srmNumber;
taskId = id;
goodsLocation = location;
isEmpty = empty;
// UL061001050111
row = Integer.valueOf(goodsLocation.substring(8,10));
column = Integer.valueOf(goodsLocation.substring(5,8));
direction = Integer.valueOf(goodsLocation.substring(4,5));
side = Integer.valueOf(goodsLocation.substring(11,12));
}
/** /**
* *
* @return * @return

@ -19,7 +19,7 @@ public class LCTransmission {
private Integer status; private Integer status;
public String toString(){ public String toString(){
return HEADER + "," + SRMNumber+","+status; return HEADER + "&" + SRMNumber+"&"+status;
} }
public static String getHEADER(){ public static String getHEADER(){

@ -14,7 +14,7 @@ public class RealtimeCheckMap {
public static void put(String SRMNumber,CheckInfo checkInfo){ public static void put(String SRMNumber,CheckInfo checkInfo){
checkInfo.setTime(LocalDateTime.now()); checkInfo.setTime(LocalDateTime.now());
String ip ="http://"+ClientChanel.getIpFromId(SRMNumber)+":9009/pic/"+checkInfo.getCheckCode()+"/"+checkInfo.getTaskNo()+"/"+checkInfo.getTaskNo()+"/"; String ip ="http://"+ClientChanel.getIpFromId(SRMNumber)+":9009/pic/"+checkInfo.getCheckCode()+"/"+checkInfo.getTaskNo()+"/";
checkInfo.setIP(ip); checkInfo.setIP(ip);
checkInfo.setSidePic1(String.format("%s1.png",ip)); checkInfo.setSidePic1(String.format("%s1.png",ip));
checkInfo.setSidePic2(String.format("%s2.png",ip)); checkInfo.setSidePic2(String.format("%s2.png",ip));

@ -1,7 +1,9 @@
package com.zhehekeji.web.service.client; package com.zhehekeji.web.service.client;
import lombok.Data; import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
/** /**
* *
* *
@ -29,19 +31,19 @@ public class TMTransmission {
*/ */
private String trayNo; private String trayNo;
private String code;
/** /**
* *
*/ */
private String code; private String category;
private Integer count; private Integer count;
/** /**
* *
*/ */
private String rstCode; private String rstCategory;
private Integer rstCount;
private String rstCount;
private String visualTest; private String visualTest;
@ -111,20 +113,22 @@ public class TMTransmission {
// //goodsLocation = strings[3]; // //goodsLocation = strings[3];
// } // }
// } // }
//TM&6&UL062009050111&2121&11010019&30&NULL&NULL
public TMTransmission(String body){ public TMTransmission(String body){
log.info("tmtrans body: {}", body);
String [] strings = body.split(Split); String [] strings = body.split(Split);
if(strings != null && strings.length >= 9 && strings[0].equals(header)){ if(strings != null && strings.length >= 9 && strings[0].equals(header)){
if(strings.length == 9){ if(strings.length == 9){
SRMNumber = strings[1]; SRMNumber = strings[1];
goodsLocation = strings[2]; goodsLocation = strings[2];
taskNo = strings[3]; taskNo = strings[3];
code = strings[4]; category = strings[4];
count = Integer.valueOf(strings[5]); count = Integer.valueOf(strings[5]);
rstCode = strings[6]; rstCategory = strings[6];
rstCount = strings[7]; rstCount = strings[7].contains("NULL") ? -1 : Integer.valueOf(strings[7]);
checkRst = strings[8]; checkRst = strings[8];
collectOver = false; collectOver = false;
log.info("taskNo:{}, srmNumber:{}, goodsLocation:{}", taskNo, SRMNumber, goodsLocation);
// if("Y".equals(isDisConnect)){ // if("Y".equals(isDisConnect)){
// //需要拆分之前的 // //需要拆分之前的
// } // }
@ -155,22 +159,22 @@ public class TMTransmission {
} }
public RealtimeCheckMap.CheckInfo checkInfo(){ public RealtimeCheckMap.CheckInfo checkInfo(){
log.info("cheinfo start");
RealtimeCheckMap.CheckInfo checkInfo = new RealtimeCheckMap.CheckInfo(); RealtimeCheckMap.CheckInfo checkInfo = new RealtimeCheckMap.CheckInfo();
checkInfo.setCheckCategory(code); Integer row = Integer.valueOf(goodsLocation.substring(8,10));
Integer row = Integer.valueOf(goodsLocation.substring(3,7)); Integer column = Integer.valueOf(goodsLocation.substring(5,8));
Integer column = Integer.valueOf(goodsLocation.substring(7)); Integer leftRight = Integer.valueOf(goodsLocation.substring(4,5));
Integer leftRight = goodsLocation.substring(0,1).equals("L")?1:2; Integer inout = Integer.valueOf(goodsLocation.substring(11,12));
Integer inout = Integer.valueOf(goodsLocation.substring(1,3));
checkInfo.setDirection(leftRight); checkInfo.setDirection(leftRight);
checkInfo.setColumn(column); checkInfo.setColumn(column);
checkInfo.setRow(row); checkInfo.setRow(row);
checkInfo.setSide(inout); checkInfo.setSide(inout);
checkInfo.setTaskNo(this.taskNo); checkInfo.setTaskNo(this.taskNo);
//checkInfo.setWMSCategory(); // checkInfo.setWMSCategory(category);
//checkInfo.setWMSCount(); // checkInfo.setWMSCount(count);
//checkInfo.setWMSCode(); // checkInfo.setWMSCode(code);
checkInfo.setCheckCode(code); checkInfo.setCheckCode(goodsLocation);
checkInfo.setCheckCount(count); checkInfo.setCheckCount(rstCount);
//checkInfo.setCheckCategory(); //checkInfo.setCheckCategory();
return checkInfo; return checkInfo;
} }

@ -6,7 +6,9 @@ import com.zhehekeji.web.service.client.ClientChanel;
import com.zhehekeji.web.service.client.TMTransmission; import com.zhehekeji.web.service.client.TMTransmission;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data @Data
@NoArgsConstructor @NoArgsConstructor
public class PTData { public class PTData {
@ -91,14 +93,14 @@ public class PTData {
public static PTData IntoStock02(String SRMNumber,String taskId,String goodsLocation,String picPath){ public static PTData IntoStock02(String SRMNumber,String taskId,String goodsLocation,String picPath){
StringBuffer contentSB = new StringBuffer(); StringBuffer contentSB = new StringBuffer();
contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(picPath); contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(picPath);
PTData ptData = new PTData(contentSB.toString(),FLOW_NO_NEED_RES,Into_Stock_02); PTData ptData = new PTData(contentSB.toString(),FLOW_R,Into_Stock_02);
return ptData; return ptData;
} }
public static PTData IntoStock04(String SRMNumber,String taskId,String goodsLocation,String picPath,String code){ public static PTData IntoStock04(String SRMNumber,String taskId,String goodsLocation,String picPath,String code){
StringBuffer contentSB = new StringBuffer(); StringBuffer contentSB = new StringBuffer();
contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(picPath).append(",").append(code); contentSB.append(SRMNumber).append(",").append(taskId).append(",").append(goodsLocation).append(",").append(picPath).append(",").append(code);
PTData ptData = new PTData(contentSB.toString(),FLOW_NO_NEED_RES,Into_Stock_04); PTData ptData = new PTData(contentSB.toString(),FLOW_R,Into_Stock_04);
return ptData; return ptData;
} }
@ -109,13 +111,7 @@ public class PTData {
return ptData; return ptData;
} }
/**
*
* @param SRMNumber
* @param taskId
* @param goodsLocation
* @return
*/
// public static PTData StockCheck04(String SRMNumber, String taskId, String goodsLocation, Stock stock){ // public static PTData StockCheck04(String SRMNumber, String taskId, String goodsLocation, Stock stock){
// StringBuffer contentSB = new StringBuffer(); // StringBuffer contentSB = new StringBuffer();
// String status = stock.getStatus().equals("2")?"Y":"N"; // String status = stock.getStatus().equals("2")?"Y":"N";
@ -132,16 +128,23 @@ public class PTData {
// PTData ptData = new PTData(contentSB.toString(),FLOW_R,STOCK_CHECK_04); // PTData ptData = new PTData(contentSB.toString(),FLOW_R,STOCK_CHECK_04);
// return ptData; // return ptData;
// } // }
/**
*
* @param SRMNumber
* @param taskId
* @param goodsLocation
* @return
*/
public static PTData StockCheck04(TMTransmission tmTransmission){ public static PTData StockCheck04(TMTransmission tmTransmission){
StringBuffer contentSB = new StringBuffer(); StringBuffer contentSB = new StringBuffer();
String SRMNumber = tmTransmission.getSRMNumber(); String SRMNumber = tmTransmission.getSRMNumber();
String goodsLocation = tmTransmission.getGoodsLocation(); String goodsLocation = tmTransmission.getGoodsLocation();
String taskId = tmTransmission.getTaskNo(); String taskId = tmTransmission.getTaskNo();
String smokeCode = tmTransmission.getCode(); String smokeCategory = tmTransmission.getCategory();
String smokeCount = tmTransmission.getCount().toString(); String smokeCount = tmTransmission.getCount().toString();
String checkSmokeCode = tmTransmission.getRstCode(); String smokeRstCategory = tmTransmission.getRstCategory();
String checkSmokeCount = tmTransmission.getRstCount(); Integer rstCount = tmTransmission.getRstCount();
String smokeRstCount = rstCount == -1 ? "NULL" : rstCount.toString();
String checkRst = tmTransmission.getCheckRst().equals("1")?"Y":"N"; String checkRst = tmTransmission.getCheckRst().equals("1")?"Y":"N";
String ip ="http://"+ClientChanel.getIpFromId(tmTransmission.getSRMNumber())+":9009/pic/"+tmTransmission.getGoodsLocation()+"/" String ip ="http://"+ClientChanel.getIpFromId(tmTransmission.getSRMNumber())+":9009/pic/"+tmTransmission.getGoodsLocation()+"/"
+tmTransmission.getTaskNo()+"/"; +tmTransmission.getTaskNo()+"/";
@ -151,9 +154,10 @@ public class PTData {
String pic4 = ip + 4 + ".png"; String pic4 = ip + 4 + ".png";
String pic5 = ip + 5 + ".png"; String pic5 = ip + 5 + ".png";
String pic6 = ip + 6 + ".png"; String pic6 = ip + 6 + ".png";
contentSB.append(SRMNumber).append(",").append(goodsLocation).append(",").append(taskId).append(",").append(smokeCode).append(",").append(smokeCount) contentSB.append(SRMNumber).append(",").append(goodsLocation).append(",").append(taskId).append(",").append(smokeCategory).append(",").append(smokeCount)
.append(",").append(checkSmokeCode).append(",").append(checkSmokeCount).append(",").append(checkRst).append(",").append(pic1) .append(",").append(smokeRstCategory).append(",").append(smokeRstCount).append(",").append(checkRst).append(",").append(pic1)
.append("*").append(pic2).append("*").append(pic3).append("*").append(pic4).append("*").append(pic5).append("*").append(pic6); .append("*").append(pic2).append("*").append(pic3).append("*").append(pic4).append("*").append(pic5).append("*").append(pic6);
log.info("stock check message:{}", contentSB.toString());
PTData ptData = new PTData(contentSB.toString(),FLOW_R,STOCK_CHECK_04); PTData ptData = new PTData(contentSB.toString(),FLOW_R,STOCK_CHECK_04);
return ptData; return ptData;
} }

Loading…
Cancel
Save