客户端协议问题修改

nanjing-yancao-wuliuzhongxin
qiushui 3 years ago
parent 05d106ac33
commit a45334f310

@ -38,7 +38,7 @@ public class ClientTestController {
public Result<String> startEmptyCheck(@ApiParam("巷道标识")@RequestParam String SRMNumber,@ApiParam("盘点批次ID") @RequestParam String taskId, @ApiParam("检测第几行")@RequestParam Integer row, public Result<String> startEmptyCheck(@ApiParam("巷道标识")@RequestParam String SRMNumber,@ApiParam("盘点批次ID") @RequestParam String taskId, @ApiParam("检测第几行")@RequestParam Integer row,
@ApiParam("开始列")@RequestParam Integer startColumn,@ApiParam("结束列")@RequestParam Integer endColumn){ @ApiParam("开始列")@RequestParam Integer startColumn,@ApiParam("结束列")@RequestParam Integer endColumn){
emptyCheckService.emptyCheckStart(SRMNumber,taskId,row,startColumn,endColumn); emptyCheckService.emptyCheckStart(SRMNumber,taskId,row,startColumn,endColumn);
String msg = ECTransmission.toEmptyCheckStartString(SRMNumber); String msg = ECTransmission.toEmptyCheckStartString(SRMNumber,taskId,row,startColumn,endColumn);
ClientChanel.write(msg,SRMNumber); ClientChanel.write(msg,SRMNumber);
return Result.success(msg); return Result.success(msg);
} }
@ -47,7 +47,7 @@ public class ClientTestController {
@GetMapping("/emptyCheck/stop") @GetMapping("/emptyCheck/stop")
public Result<String> stopEmptyCheck(@ApiParam("巷道标识")@RequestParam String SRMNumber,@ApiParam("盘点批次ID") @RequestParam String taskId, @ApiParam("检测第几行")@RequestParam Integer row, public Result<String> stopEmptyCheck(@ApiParam("巷道标识")@RequestParam String SRMNumber,@ApiParam("盘点批次ID") @RequestParam String taskId, @ApiParam("检测第几行")@RequestParam Integer row,
@ApiParam("开始列")@RequestParam Integer startColumn,@ApiParam("结束列")@RequestParam Integer endColumn){ @ApiParam("开始列")@RequestParam Integer startColumn,@ApiParam("结束列")@RequestParam Integer endColumn){
String msg = ECTransmission.toEmptyCheckEndString(SRMNumber); String msg = ECTransmission.toEmptyCheckEndString(SRMNumber,taskId,row,startColumn,endColumn);
ClientChanel.write(msg,SRMNumber); ClientChanel.write(msg,SRMNumber);
//获取空货位的结果信息 //获取空货位的结果信息
// 返回给普天 // 返回给普天

@ -67,9 +67,9 @@ public class ECTransmission {
* *
* @return * @return
*/ */
public static String toEmptyCheckStartString(String SRMNumber){ public static String toEmptyCheckStartString(String SRMNumber,String taskId,Integer row,Integer startColumn,Integer endColumn){
StringBuffer sb = new StringBuffer(HEADER); StringBuffer sb = new StringBuffer(HEADER);
sb.append(Split).append(SRMNumber).append(Split).append("START"); sb.append(Split).append(SRMNumber).append(Split).append(taskId).append(Split).append(row).append(Split).append(startColumn).append(Split).append(endColumn).append("START");
return sb.toString(); return sb.toString();
} }
@ -77,9 +77,9 @@ public class ECTransmission {
* *
* @return * @return
*/ */
public static String toEmptyCheckEndString(String SRMNumber){ public static String toEmptyCheckEndString(String SRMNumber,String taskId,Integer row,Integer startColumn,Integer endColumn){
StringBuffer sb = new StringBuffer(HEADER); StringBuffer sb = new StringBuffer(HEADER);
sb.append(Split).append(SRMNumber).append(Split).append("END"); sb.append(Split).append(SRMNumber).append(Split).append(taskId).append(Split).append(row).append(Split).append(startColumn).append(Split).append(endColumn).append("END");
return sb.toString(); return sb.toString();
} }
} }

@ -0,0 +1,64 @@
package com.zhehekeji.web.service.client;
import com.zhehekeji.web.service.StreetConn;
import com.zhehekeji.web.service.ksec.KsecInfo;
import com.zhehekeji.web.service.ksec.KsecNettyClient;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundHandlerAdapter;
import io.netty.handler.timeout.IdleStateEvent;
import lombok.extern.slf4j.Slf4j;
/**
* PLC
*
* @author Administrator
*
*/
@Slf4j
public class NettyConnectHandler extends ChannelInboundHandlerAdapter {
/** 客户端请求的心跳命令 */
private KsecInfo heart;
private KsecNettyClient nettyClient;
public NettyConnectHandler(KsecInfo ksecInfo, KsecNettyClient nettyClient){
this.heart = ksecInfo;
this.nettyClient = nettyClient;
}
/**
*
*/
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
log.info("upPc connected ");
StreetConn.conn(1);
ctx.fireChannelActive();
}
/**
*
*/
@Override
public void channelInactive(ChannelHandlerContext ctx) throws Exception {
log.info("upPc closed");
}
/**
* 4;
*
*/
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object obj) throws Exception {
if (obj instanceof IdleStateEvent) {
log.debug("upPc send heart");
ctx.channel().writeAndFlush(heart);
IdleStateEvent event = (IdleStateEvent) obj;
}
}
}

@ -58,7 +58,7 @@ public class TMTransmission {
StringBuffer sb = new StringBuffer(header); StringBuffer sb = new StringBuffer(header);
sb.append(Split).append(SRMNumber).append(Split).append(taskNo).append(Split) sb.append(Split).append(SRMNumber).append(Split).append(taskNo).append(Split)
.append(goodsLocation).append(Split).append(trayNo).append(Split).append(code) .append(goodsLocation).append(Split).append(trayNo).append(Split).append(code)
.append(Split).append(count).append(Split).append(count).append(Split).append(visualTest); .append(Split).append(count).append(Split).append(visualTest);
return sb.toString(); return sb.toString();
} }
@ -91,12 +91,12 @@ public class TMTransmission {
} }
} }
}else { }else if(strings.length == 3){
//是盘点数据采集完成的信号 //是盘点数据采集完成的信号
collectOver = true; collectOver = true;
SRMNumber = strings[1]; SRMNumber = strings[1];
taskNo = strings[2]; taskNo = strings[2];
goodsLocation = strings[3]; //goodsLocation = strings[3];
} }
} }

@ -48,13 +48,13 @@ public class PTDecoder extends LineBasedFrameDecoder {
PTEmptyCheckContent checkContent = PTEmptyCheckContent.EmptyCheck(ptData.getContent()); PTEmptyCheckContent checkContent = PTEmptyCheckContent.EmptyCheck(ptData.getContent());
emptyCheckService.emptyCheckStart(checkContent.getSRMNUmber(), checkContent.getTaskNo(), checkContent.getRow(),checkContent.getStartColumn(),checkContent.getEndColumn()); emptyCheckService.emptyCheckStart(checkContent.getSRMNUmber(), checkContent.getTaskNo(), checkContent.getRow(),checkContent.getStartColumn(),checkContent.getEndColumn());
String startEmptyCheckStr = ECTransmission.toEmptyCheckStartString(checkContent.getSRMNUmber()); String startEmptyCheckStr = ECTransmission.toEmptyCheckStartString(checkContent.getSRMNUmber(),checkContent.getTaskNo(),checkContent.getRow(),checkContent.getStartColumn(),checkContent.getEndColumn());
//通知客户端开始检测 //通知客户端开始检测
ClientChanel.write(startEmptyCheckStr,checkContent.getSRMNUmber()); ClientChanel.write(startEmptyCheckStr,checkContent.getSRMNUmber());
}else if(ptData.getType().equals(PTData.EMPTY_CHECK_02)){ }else if(ptData.getType().equals(PTData.EMPTY_CHECK_02)){
log.info("空货位检测结束"); log.info("空货位检测结束");
PTEmptyCheckContent checkContent = PTEmptyCheckContent.EmptyCheck(ptData.getContent()); PTEmptyCheckContent checkContent = PTEmptyCheckContent.EmptyCheck(ptData.getContent());
String endEmptyCheckStr = ECTransmission.toEmptyCheckEndString(checkContent.getSRMNUmber()); String endEmptyCheckStr = ECTransmission.toEmptyCheckEndString(checkContent.getSRMNUmber(),checkContent.getTaskNo(),checkContent.getRow(),checkContent.getStartColumn(),checkContent.getEndColumn());
//通知客户端结束检测 //通知客户端结束检测
ClientChanel.write(endEmptyCheckStr,checkContent.getSRMNUmber()); ClientChanel.write(endEmptyCheckStr,checkContent.getSRMNUmber());
//等待3s把空货位盘点的结果发给普天 //等待3s把空货位盘点的结果发给普天

Loading…
Cancel
Save