From 5bdfdd5d241ee7d14856baf9ef3a8fe5651dada7 Mon Sep 17 00:00:00 2001 From: zhang <2012681011@qq.com> Date: Mon, 9 Dec 2024 09:30:26 +0800 Subject: [PATCH] =?UTF-8?q?=E9=95=BF=E5=85=B4=E7=89=B9=E7=A7=91=E6=8B=89?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../run/OneNDCSocketConnectionAutoRun.java | 2 +- .../run/TwoNDCSocketConnectionAutoRun.java | 2 +- .../conveyor/belt_conveyor/ItemProtocol.java | 2 +- .../impl/InstructionAgvServiceImpl.java | 13 +- .../java/org/nl/hand/rest/HandController.java | 10 +- .../org/nl/hand/rest/HandPbController.java | 72 +++++ .../org/nl/hand/service/HandPbService.java | 31 ++ .../hand/service/impl/HandPbServiceImpl.java | 276 ++++++++++++++++++ .../target/classes/config/application-dev.yml | 2 +- .../run/OneNDCSocketConnectionAutoRun.class | Bin 9809 -> 9752 bytes .../run/TwoNDCSocketConnectionAutoRun.class | Bin 12947 -> 12890 bytes .../conveyor/belt_conveyor/ItemProtocol.class | Bin 5998 -> 5997 bytes .../org/nl/hand/rest/HandController.class | Bin 4645 -> 4686 bytes .../src/layout/components/Navbar.vue | 8 +- 14 files changed, 400 insertions(+), 18 deletions(-) create mode 100644 acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandPbController.java create mode 100644 acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/HandPbService.java create mode 100644 acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/impl/HandPbServiceImpl.java diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java index 19f5de09..318b80fc 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java @@ -38,7 +38,7 @@ import static org.nl.acs.agv.server.impl.NDCAgvServiceImpl.Bytes2HexString; * @date 2023/12/06 */ @Slf4j -@Component +//@Component public class OneNDCSocketConnectionAutoRun extends AbstractAutoRunnable { Socket s; diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java index 7ee74df3..3b64895f 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java @@ -42,7 +42,7 @@ import static org.nl.acs.agv.server.impl.NDCAgvServiceImpl.Bytes2HexString; @Slf4j -@Component +//@Component public class TwoNDCSocketConnectionAutoRun extends AbstractAutoRunnable { Socket s; diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.java index 8bce5c4e..ee829f29 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.java @@ -49,7 +49,7 @@ public class ItemProtocol { /** * 下发命令 */ - public static String item_to_command = "to_command"; + public static String item_to_command = "toCommand"; /** * 下发托盘类型 */ diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionAgvServiceImpl.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionAgvServiceImpl.java index a76ec342..910e4589 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionAgvServiceImpl.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionAgvServiceImpl.java @@ -39,10 +39,9 @@ import java.util.Objects; @Slf4j public class InstructionAgvServiceImpl implements InstructionAgvService { - @Autowired - private TaskAgvService taskService; + private final TaskAgvService taskService; - private final IInstructionServiceMapper instructionService; + private final IInstructionServiceMapper instructionService; private final IRouteLineServiceMapper routeLineServiceDao; @@ -115,6 +114,10 @@ public class InstructionAgvServiceImpl implements InstructionAgvService { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("task_id", entity.getTask_id()); + List statusList=new ArrayList<>(); + statusList.add(InstructionStatusEnum.READY.getIndex()); + statusList.add(InstructionStatusEnum.BUSY.getIndex()); + queryWrapper.in("instruction_status",statusList); List list=instructionService.selectList(queryWrapper); if(!list.isEmpty()){ throw new Exception(entity.getTask_code() + ":该任务已存在待完成指令!"); @@ -198,9 +201,9 @@ public class InstructionAgvServiceImpl implements InstructionAgvService { if (resp.isSuccess()) { entity.setSend_status("1"); }else{ - entity.setSend_status("2"); - entity.setRemark(resp.getMessage()); log.error("下发指令到Agv,下发失败:{}",resp.getMessage()); + throw new BadRequestException("下发指令到Agv,下发失败!"); + } //更新下发状态 String now = DateUtil.now(); diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandController.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandController.java index be11c2cb..3ab89486 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandController.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandController.java @@ -29,7 +29,7 @@ import java.util.Map; @RestController @RequiredArgsConstructor @Api(tags = "手持接口") -@RequestMapping("api/hand") +@RequestMapping("api/handds") @Slf4j public class HandController { @Autowired @@ -82,8 +82,8 @@ public class HandController { } @PostMapping("/tasks") - @Log("查询未完成指令") - @ApiOperation("查询未完成指令") + @Log("查询未完成任务") + @ApiOperation("查询未完成任务") @SaIgnore //@PreAuthorize("@el.check('sect:list')") public ResponseEntity querytasks(@RequestBody HeadTaskDto dto, HttpServletRequest request ) { @@ -92,8 +92,8 @@ public class HandController { } @PostMapping("/taskoperation") - @Log("指令操作") - @ApiOperation("指令操作") + @Log("任务操作") + @ApiOperation("任务操作") @SaIgnore //@PreAuthorize("@el.check('sect:list')") public ResponseEntity taskOperation(@RequestBody HeadTaskDto dto) throws Exception { diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandPbController.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandPbController.java new file mode 100644 index 00000000..2efeafca --- /dev/null +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/rest/HandPbController.java @@ -0,0 +1,72 @@ +package org.nl.hand.rest; + +import cn.dev33.satoken.annotation.SaIgnore; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.logging.annotation.Log; +import org.nl.hand.dto.HeadDto; +import org.nl.hand.dto.HeadInstDto; +import org.nl.hand.dto.HeadTaskDto; +import org.nl.hand.dto.RegionDto; +import org.nl.hand.service.HandPbService; +import org.nl.hand.service.HandService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; + +/** + * @Author: zhang + * @Date: 2024/12/59:53 + */ + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持平板接口") +@RequestMapping("api/hand") +@Slf4j +public class HandPbController { + + @Autowired + private HandPbService handService; + + @PostMapping("/insts") + @Log("查询未完成指令") + @ApiOperation("查询未完成指令") + @SaIgnore + public ResponseEntity queryInst(@RequestBody HeadInstDto dto) { + return new ResponseEntity<>(handService.queryInst(dto), HttpStatus.OK); + } + + @PostMapping("/inst") + @Log("指令操作") + @ApiOperation("指令操作") + @SaIgnore + public ResponseEntity instOpt(@RequestBody HeadInstDto dto) throws Exception { + return new ResponseEntity<>(handService.instOpt(dto), HttpStatus.OK); + } + + @PostMapping("/tasks") + @Log("查询未完成任务") + @ApiOperation("查询未完成任务") + @SaIgnore + public ResponseEntity querytasks(@RequestBody HeadTaskDto dto, HttpServletRequest request ) { + request.getHeader("Accept-Language"); + return new ResponseEntity<>(handService.querytasks(dto), HttpStatus.OK); + } + + @PostMapping("/taskoperation") + @Log("任务操作") + @ApiOperation("任务操作") + @SaIgnore + public ResponseEntity taskOperation(@RequestBody HeadTaskDto dto) throws Exception { + return new ResponseEntity<>(handService.taskOperation(dto), HttpStatus.OK); + } +} diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/HandPbService.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/HandPbService.java new file mode 100644 index 00000000..898a1df9 --- /dev/null +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/HandPbService.java @@ -0,0 +1,31 @@ +package org.nl.hand.service; + + +import org.nl.hand.dto.HeadDto; +import org.nl.hand.dto.HeadInstDto; +import org.nl.hand.dto.HeadTaskDto; + +import java.util.Map; + +public interface HandPbService { + + /* + *查询未完成指令 + */ + Map queryInst(HeadInstDto dto); + + /* + *指令操作 + */ + Map instOpt(HeadInstDto dto) throws Exception; + + /* + *查询未完成任务 + */ + Map querytasks(HeadTaskDto dto); + + /* + *任务操作 + */ + Map taskOperation(HeadTaskDto dto); +} diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/impl/HandPbServiceImpl.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/impl/HandPbServiceImpl.java new file mode 100644 index 00000000..80822b7e --- /dev/null +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/hand/service/impl/HandPbServiceImpl.java @@ -0,0 +1,276 @@ +package org.nl.hand.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.acs.agv.server.NDCAgvService; +import org.nl.acs.common.base.CommonFinalParam; +import org.nl.acs.device.domain.Device; +import org.nl.acs.device.service.DeviceService; +import org.nl.acs.instruction.dao.InstructionEntity; +import org.nl.acs.instruction.domain.Instruction; +import org.nl.acs.instruction.domain.InstructionMybatis; +import org.nl.acs.instruction.enums.InstructionStatusEnum; +import org.nl.acs.instruction.service.InstructionAgvService; +import org.nl.acs.instruction.service.InstructionService; +import org.nl.acs.opc.DeviceAppService; +import org.nl.acs.task.domain.Task; +import org.nl.acs.task.enums.TaskStatusEnum; +import org.nl.acs.task.service.TaskService; +import org.nl.acs.task.service.dto.TaskDto; +import org.nl.acs.task.service.dto.TaskIdAndStatusDTO; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; +import org.nl.config.language.LangProcess; +import org.nl.hand.dto.HeadDto; +import org.nl.hand.dto.HeadInstDto; +import org.nl.hand.dto.HeadTaskDto; +import org.nl.hand.service.HandPbService; +import org.nl.hand.service.HandService; +import org.nl.system.service.dict.ISysDictService; +import org.nl.system.service.dict.dao.Dict; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; + +@Service +@RequiredArgsConstructor +@Slf4j +public class HandPbServiceImpl implements HandPbService { + + @Autowired + private TaskService taskserver; + @Autowired + private InstructionService instructionService; + + private final InstructionAgvService instructionAgvService; + + @Override + public Map queryInst(HeadInstDto dto) { + //查询未完成的指令 + String key = dto.getKeyword(); + String start_point = dto.getStart_devicecode(); + String next_point = dto.getNext_devicecode(); + + List list; + if (StrUtil.isEmpty(key)&&StrUtil.isEmpty(start_point)&&StrUtil.isEmpty(next_point)){ + list = instructionService.lambdaQuery() + .orderByDesc(InstructionMybatis::getCreate_time) + .list(); + }else { + list = instructionService.lambdaQuery() + .like(InstructionMybatis::getStart_device_code, start_point) + .like(InstructionMybatis::getNext_device_code, next_point) + .ne(InstructionMybatis::getInstruction_status, "2") + .eq(InstructionMybatis::getInstruction_code, key) + .or() + .eq(InstructionMybatis::getCarno, key) + .or() + .eq(InstructionMybatis::getVehicle_code, key) + .orderByDesc(InstructionMybatis::getCreate_time) + .list(); + } + if (CollectionUtil.isEmpty(list)){ + throw new BadRequestException(LangProcess.msg("error_no_ins")); + } + JSONArray data = new JSONArray(); + for (int i = 0; i < list.size(); i++) { + + JSONObject inst = new JSONObject(); + inst.put("inst_uuid",list.get(i).getInstruction_id()); + inst.put("task_no",list.get(i).getTask_code()); + inst.put("instruction_code",list.get(i).getInstruction_code()); + inst.put("start_devicecode", list.get(i).getStart_point_code()); + inst.put("next_devicecode", list.get(i).getNext_point_code()); + inst.put("inst_status",list.get(i).getInstruction_status()); + inst.put("carrier",list.get(i).getVehicle_code()); + inst.put("inst_step",list.get(i).getExecute_message()); + inst.put("priority",list.get(i).getPriority()); + inst.put("create_time",list.get(i).getCreate_time()); + inst.put("carno",list.get(i).getCarno()); + data.add(inst); + } + JSONObject resultJson = new JSONObject(); + resultJson.put("message", LangProcess.msg("universal_directives_message1")); + resultJson.put("data", data); + return resultJson; + } + + @Override + public Map instOpt(HeadInstDto dto) throws Exception { + JSONObject resultJson = new JSONObject(); + JSONArray data = new JSONArray(); + String type = dto.getType(); + String inst_uuid = dto.getInst_uuid(); + InstructionMybatis instruction= instructionService.lambdaQuery() + .eq(InstructionMybatis::getInstruction_id, inst_uuid) + .one(); + if(instruction==null){ + resultJson.put("message", "未找到该指令!"); + resultJson.put("data", data); + return resultJson; + } + if (StrUtil.equals(instruction.getInstruction_status(),"2")|| + StrUtil.equals(instruction.getInstruction_status(),"3")){ + resultJson.put("message", "指令已完成或已取消,无法操作!"); + resultJson.put("data", data); + return resultJson; + } + + /* 1 指令撤销 + 2 重新下发 + 3 强制完成*/ + if ("1".equals(type)){ + try { + instructionAgvService.cancel(inst_uuid); + } catch (Exception e) { + resultJson.put("message", e.getMessage()); + resultJson.put("data", data); + return resultJson; + } + }else if ("2".equals(type)){ + try { + instructionAgvService.sendToAgv(inst_uuid); + } catch (Exception e) { + resultJson.put("message", e.getMessage()); + resultJson.put("data", data); + return resultJson; + } + }else if ("3".equals(type)){ + try { + instructionAgvService.finish(inst_uuid); + } catch (Exception e) { + resultJson.put("message", e.getMessage()); + resultJson.put("data", data); + return resultJson; + } + } + + resultJson.put("message", "操作成功"); + resultJson.put("data", data); + return resultJson; + } + + @Override + public Map querytasks(HeadTaskDto dto) { + String key = dto.getKeyword(); + String start_point = dto.getStart_devicecode(); + String next_point = dto.getNext_devicecode(); + + List list; + if (StrUtil.isEmpty(key)&&StrUtil.isEmpty(start_point)&&StrUtil.isEmpty(next_point)){ + list = taskserver.lambdaQuery() + .orderByDesc(Task::getCreate_time) + .list(); + }else { + list = taskserver.lambdaQuery() + .like(Task::getStart_device_code, start_point) + .like(Task::getNext_device_code, next_point) + .lt(Task::getTask_status, "2") + .eq(Task::getTask_code, key) + .or() + .eq(Task::getVehicle_code, key) + .or() + .eq(Task::getTask_id, key) + .orderByDesc(Task::getCreate_time) + .list(); + } + if (CollectionUtil.isEmpty(list)){ + throw new BadRequestException(LangProcess.msg("error_no_ins")); + } + JSONArray data = new JSONArray(); + if (CollUtil.isNotEmpty(list)) { + for (int i = 0; i < list.size(); i++) { + + JSONObject task = new JSONObject(); + task.put("task_uuid", list.get(i).getTask_id()); + task.put("task_no", list.get(i).getTask_code()); + task.put("start_devicecode", list.get(i).getStart_point_code()); + task.put("next_devicecode", list.get(i).getNext_point_code()); + task.put("task_status", list.get(i).getTask_status()); + task.put("priority", list.get(i).getPriority()); + task.put("create_time", list.get(i).getCreate_time()); + task.put("carrier", list.get(i).getVehicle_code()); + data.add(task); + } + } + JSONObject resultJson = new JSONObject(); + resultJson.put("message", LangProcess.msg("universal_directives_message1")); + resultJson.put("data", data); + return resultJson; + } + + @Override + public Map taskOperation(HeadTaskDto dto) { + JSONObject resultJson = new JSONObject(); + JSONArray data = new JSONArray(); + String type = dto.getType(); + String task_uuid = dto.getTask_uuid(); + if (StrUtil.isEmpty(type)){ + throw new BadRequestException("操作类型不能为空!"); + } + if (StrUtil.isEmpty(task_uuid)){ + throw new BadRequestException("id不能为空!"); + } + TaskDto taskDto = taskserver.findById(task_uuid); + if (BeanUtil.isEmpty(taskDto)){ + throw new BadRequestException("任务为空!"); + } + String task_code = taskDto.getTask_code(); + String start_device_code = taskDto.getStart_device_code(); + String next_device_code = taskDto.getNext_device_code(); + String task_id = taskDto.getTask_id(); + + if(StrUtil.equals(taskDto.getTask_status(),"2")||StrUtil.equals(taskDto.getTask_status(),"3")){ + resultJson.put("message", "任务已完成或已取消,无法操作"); + resultJson.put("data", data); + return resultJson; + } + if ("1".equals(type)){ + //重新生成指令 + try{ + InstructionEntity instructionEntity = new InstructionEntity(); + BeanUtils.copyProperties(taskDto,instructionEntity); + instructionEntity.setInstruction_type(taskDto.getTask_type()); + instructionEntity.setInstruction_id(IdUtil.simpleUUID()); + String now = DateUtil.now(); + instructionEntity.setCreate_time(now); + instructionEntity.setCreate_by("auto"); + instructionEntity.setInstruction_status(InstructionStatusEnum.READY.getIndex()); + instructionEntity.setInstruction_code(CodeUtil.getNewCode("INSTRUCT_NO")); + instructionAgvService.create(instructionEntity); + } catch (Exception e){ + resultJson.put("message", e.getMessage()); + resultJson.put("data", data); + return resultJson; + } + }else if ("2".equals(type)){ + //强制完成 + Instruction instruction = instructionService.findByTaskid(task_uuid, "instruction_status <2 "); + if (instruction!=null){ + resultJson.put("message", "有指令未完成!"); + resultJson.put("data", data); + return resultJson; + } + TaskIdAndStatusDTO taskIdAndStatusDTO = new TaskIdAndStatusDTO(); + taskIdAndStatusDTO.setTask_id(task_uuid); + taskIdAndStatusDTO.setTask_status(TaskStatusEnum.FINISHED.getIndex()); + taskserver.finish(taskIdAndStatusDTO); + } + resultJson.put("message", "操作成功"); + resultJson.put("data", data); + return resultJson; + } +} diff --git a/acs/nladmin-system/nlsso-server/target/classes/config/application-dev.yml b/acs/nladmin-system/nlsso-server/target/classes/config/application-dev.yml index 62721414..0a518f27 100644 --- a/acs/nladmin-system/nlsso-server/target/classes/config/application-dev.yml +++ b/acs/nladmin-system/nlsso-server/target/classes/config/application-dev.yml @@ -10,7 +10,7 @@ spring: driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy # url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:stand_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true # url: jdbc:log4jdbc:mysql://${DB_HOST:47.111.78.178}:${DB_PORT:3306}/${DB_NAME:lzhl_two_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true - url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.251}:${DB_PORT:3306}/${DB_NAME:斗山_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true + url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.251}:${DB_PORT:3306}/${DB_NAME:tekela_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true username: ${DB_USER:root} # password: ${DB_PWD:Root.123456} diff --git a/acs/nladmin-system/nlsso-server/target/classes/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.class b/acs/nladmin-system/nlsso-server/target/classes/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.class index f03607e8456177d151584de900081ba1524a7660..fdaac0e94d463d7bf725a0a1e3246c06ad739de8 100644 GIT binary patch delta 1126 zcmZXSSyYu(6vxj`7o2m?JzP)_Xdr_kR4mk>#Gyj4Qb{cvtZX160*yj#P&>NU3-8Vt9|t40}oxm67`3Eb}QNVDM%%bnaM8;T0ttyz)a5ADCyHI{pb8ConW zxmR;vJa5GE#KP2L$I1TBS+t64wb$=Xvr2QnX0_%4|5NxLG;4wbrj!*yT4-UsBNWA~ z#77((cr-p3-cQj+HfbJnJT56sMRiksw4rf|<_X7Up7d2}E1D__ z>Z%$G7DX$URy9f=TY^1FIp!&z7Sb8~l9X+_ct*&x!I(&Pc&p<%0>?JC2PKj0RIhgP zyrYL50xzI4f>?S+ur87{v4@>vd(qLWx*ab`+{?rrudqw=s^c~K92?n%8XL4nGJ{_u zp^-hj9vqEK&g^%*!EVQ!s@pHoF(6e3{gktkCuO`Pri`#U)%78-r=^L(=?wuzTiv8SK?1Sw!NBY!JGxNn=7m88*8Fs|D delta 1146 zcmZWnYgd$26y6WBVxKv4<|51>nOcy9fHi8EBxV{=nWT2NvXpcpOlPKXB<#XinU@fi zUMNb_phzh)ZORK7WMvn#((Yxo`VeG)AhXQX*?w#Fet7nN_WkVrwpSmm&Odazw~vTQ z@w29tbW+h@ZW=*<3!D=8hg%AYQVPZrcm;d{envo3E}gW1Ap%)q&SnHPLda1V>P9Zk zRv4yn4u&&EXpF?UjPn?IjC{uVj8TjN#s!Q*#%ReeViYTsc&GqlG%mzN3So`0DU4%` z*E9haOH?Uif{;rzm0_Y-${3f5Ws;`JC>P6Qh08=v@!)by74tO46`CsT8&P2;Ds5p@ ziFT#HRg9}O%@Fr=D{+m$41sE$qD)-tp%TpWP$6b%%*J)1U9WJ1MBJ!wlfumkw>B5X_enF;+9yFrBtDFxEOpR0SHHpnJ9p zRP1bYg+fb{kwhexTpo{vD`HFHv1lZkEKe_V$Dp1-lc5f*bB^iqsm%uKsT<^jr%o)pkS0H`BvlS!T@eJcxgH6&z)zsFIJ+gq{}((&GWouunnyS+tKX=eR%<^zKmB4dhn{i4yVdDv8V^H3E63|i@FV7 zmw+_hFnANY8G8)&VxK`fb~|0ZQLY~JI){DZa^Eu8kGBo_sM~JUpkMmDgH|WxA3OAb zkazK(!TUI9@PX9*(E8^3=eRzya*w|x^s&V3l4ggn&z{8K6C8F<_@}r&#b-`gpds}+ zju;%JPJ=I`z?Y(ZMV+9)uX~#YHniB447TkYY~C@6@wLG>_}1V%@n MO;%NP+44fd1pyJa(l9Zz%#6Nl zvDK_BHKZsdQ_Hf=q^vN@v`xVFva-@ln(H5()9E|s`_0^Ye|PTc74Dmuy7R>5ZA8?M za}2FRsz#cRlF&mST_8iDr>;)Uh;l-8Ubjkxp@tHWDlkkSM_9uZat%h{9F36*=Ng=c z^A#>o$WypbVU)r}3KuI}qA*%vjJS-|xYUnv$X6JzahadeaJj)1n4oc`!Bx0g;Tl8z z5mC6-&_JY$Q$eL%CkhlQTqkFdp&^(g#>om(L^IXUa1@JXn%qh>N+nR4!E}@hVTMA5 zp**Q}rkt}R-fX$e5t!@4^|(P{o}sbAnJ?#!0+puH;R1u3uu!AQP%IYtDIGU!EEfAM z8cQ^8)woS#sh=`&yT&quJFr}+cWP8?+~ud<@FbVJHC7nhgL?(;6S!XctGPp z$?74={9&;@V(=(dx&A+9Xf{?WJZ@+%R%<*VPERVVF*F}f3H52wtd(chX{=XxMx(}1 z6*g$pYCJ2v=R~d(cwXZL39?aRlgRY~FKTSocu6wYBH^}5tgRZ`@-<%8c*VHpZr6BK z<28*P;{LkE8yatFyyd4Xye-SLQ{x?jU1*RAZ5Mbq#;uzBLQ4$Z!)}fD4L-n!3XOF; zcz_z2dva&o!u)4j+#)DCr09qno5CK2j}-R0wR9!B+7vzpnGtge3d<@cmzKEMe&Xet z;<^K-3VI(twX_TSy-9XZ^Z|>{yft=o?B^C=;LEyJyBo1zSsX-@x2J7#Vl!G44q1Fn zjUW{%npIX>?gD;e@h!gd;sZ&^--7~EBC{gllERAcn9_o&g%y@+XoJNM_|f7g{Osii z67^yHB2jOun;z`s z)dYP}#BIIJ!R(O%w7MXfii4Khah&B4$2&z9h$m!OZqFSocf@h0%66@`+{xv_odvoG zoWco~6ZurHZ@cvNe(vh}$K5O^xeTz^ax$lQwe3>8yx7h$mb-I;lX5asIRO+p*}CFL zNm2OUaam5I2FpFD(Q>*xpU4?r*SI-RJ-L^+GA^S{Z?R;uODxP;-tM@;Q3tt?7YL2h z*`n<0l+!}vwU&ZU<9=R4Xl>rxp@pQw;URN1{q#Gwkq3}qotV7NfJ&?6K^8k~+%8fPe+X>eB4 zlFSB$F`~Rc<3b-U!dQiiHOBcU50@B>$E6yV8C;Gl6simj!j%dW43#2JoF>XGBrr*# zTF$Es4Z&p5O;MOC%rrygs1YVCw}?iq#JSoaiaJ9LrHCn9W2i#vnl9%Ii8oVj^#a!> z;5uBdFw4*wvAIFc27%cEHyYf8IT|+`ipMQJ%Ew%dTSYTZ<2H@kHRfyF;iDonYTRkC z0C$OLlg2^~*WjbRxLcB0q;ZeIy|_={et`$%wZ%T_gC!adN>&d^>Ptnp%wRblR(QnF z46IOi)KEQEXgnr9k1MP+Gz(9NW+?vChyOtk-x-qv2^WY!>1ffoC-~ zNRW*hn?!z2V6(>a8ZSr&TO{6A3AR<^MU9sw|nQ>aup zUtzSjE#4w1+OO!4H#UV26+TkftXebh^uMGvuBQ>>=a3~xrYhG{WK!1WyE$zZyS7yr+ zKC}3oT0sFfJ2Bv#ElK#o;!Au5>g&d(XSu;0{LSdJ9PwXU>_eMdnV6g1j{OSXSbQsv zs;YW=Z6xX~+jkb<;|I4tF(>y&P|}pD=~cmSC>9(YnJ_gJv$U4hSscJm7C++`SD2Ko z58_wJb4~H=-Os+ zjL9;X1>zKUu-uX3L7m-!jLt5_pP2?$qSKZWs8zAC?DL8k=Fj#R&$SaLx=H??ao{A^ z=xOo6TfS)6UT8=v4h zCg*pt+}&##=UC45LSwh(9^4aDvM?*dElpOgB0j@Qq8Dc$=kkj3L`waybJMEA)xqQQ zw%nUqEay|Jc$|q`dI`L6xp5HPe$z z^ogQBiGyxv>R6p14H&>DyJe}X;tumE?(9I9%7Hw{atXD7{QEY|Z(GphO}Bl~`u4`P zrHV@}m+`5VPooyagDnriUQl}5+{X4b%l~gZ)bcPM-n=2OI6IBe!}}i?J!yw`#uLzs F=wG`hKh*#L diff --git a/acs/nladmin-system/nlsso-server/target/classes/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.class b/acs/nladmin-system/nlsso-server/target/classes/org/nl/acs/device_driver/conveyor/belt_conveyor/ItemProtocol.class index 94b2e31f86cee9f670c78f4bd9f421e3126296fc..afed49eb6ef4a859a49b96fec0e0d7b5f0c2090b 100644 GIT binary patch delta 17 ZcmaE-_f~JiZcY}?l6>dQ2RPU90suwy2NnPT delta 18 acmaE>_fBuaZcbLNlKlAO&HFjm@d5x%_y?8% diff --git a/acs/nladmin-system/nlsso-server/target/classes/org/nl/hand/rest/HandController.class b/acs/nladmin-system/nlsso-server/target/classes/org/nl/hand/rest/HandController.class index e89cda1c530da70df160025485f5af3419481f69..b7d522002642f6092a7f3361331881d553bd3cb5 100644 GIT binary patch delta 412 zcmZ3ga!w`j)W2Q(7#J8#7`oXR;yD=v7!tS{5*d;>8Il=NxEL52Qn?t?7}7yv86YAP zL}Y=8Yz~GTZiZZjJP;=zL=F%P&2dQ7}k7kU;_{rozC&pbXLz&A?d95X7Jc(H{&m zD0s43aIR<8iNFYB7s52UDN(@6R+{8ElCG%d1 delta 366 zcmXYtNiRcD7>1wI;@n;*X`99n3thND46(sNY}nXHQSGM2Z}?E6mjyBW5o%liYCq!ofH(^6cxP`1;L(VGL_qD?RT^3 zT{oSQoGUK4RP=GBhz6wS{0iU_C!#n_^F$Q!nyk0R# zweb!m)S1+oMr<>r8$*x!6De#VWTFrCT2&J;%e`!m05 C&PR>_ diff --git a/acs/nladmin-ui/src/layout/components/Navbar.vue b/acs/nladmin-ui/src/layout/components/Navbar.vue index 3eeb596f..63ecc01b 100644 --- a/acs/nladmin-ui/src/layout/components/Navbar.vue +++ b/acs/nladmin-ui/src/layout/components/Navbar.vue @@ -52,9 +52,9 @@ 简体中文 - English - Indonesian - Korean + + + @@ -116,7 +116,7 @@ export default { }, created() { this.setLang(localStorage.getItem('lang')) - this.initWebSocket() + // this.initWebSocket() }, methods: { // 中英文切换