From ae84fa94bce10dd4fdd311edbecda141af26d307 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Thu, 6 Apr 2023 16:22:26 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=88=BB=E5=AD=97?= =?UTF-8?q?=E5=92=8C=E5=8C=85=E8=A3=85=E4=BB=BB=E5=8A=A1=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/common/enums/AcsTaskEnum.java | 13 +-- .../generator/CodeColumnConfigController.java | 46 ++++++++++ .../generator/CodeGenConfigController.java | 43 ++++++++++ .../generator/ICodeColumnConfigService.java | 27 ++++++ .../generator/ICodeGenConfigService.java | 30 +++++++ .../generator/dao/CodeColumnConfig.java | 58 +++++++++++++ .../service/generator/dao/CodeGenConfig.java | 83 +++++++++++++++++++ .../dao/mapper/CodeColumnConfigMapper.java | 16 ++++ .../dao/mapper/CodeColumnConfigMapper.xml | 5 ++ .../dao/mapper/CodeGenConfigMapper.java | 16 ++++ .../dao/mapper/CodeGenConfigMapper.xml | 5 ++ .../service/generator/dto/TableInfo.java | 32 +++++++ .../impl/CodeColumnConfigServiceImpl.java | 34 ++++++++ .../impl/CodeGenConfigServiceImpl.java | 65 +++++++++++++++ .../wms/ext/acs/service/WmsToAcsService.java | 1 + .../acs/service/impl/AcsToWmsServiceImpl.java | 2 +- .../acs/service/impl/WmsToAcsServiceImpl.java | 22 +++++ .../wms/sch/service/impl/TaskServiceImpl.java | 4 +- .../tasks/callEmpty/PlotterCallEmptyTask.java | 11 ++- .../callMaterial/WrapCallMaterialTask.java | 13 +-- .../tasks/sendEmpty/WrapSendEmptyTask.java | 19 ++--- .../sendMaterial/PlotterSendMaterialTask.java | 11 ++- 22 files changed, 522 insertions(+), 34 deletions(-) create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeColumnConfigController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeGenConfigController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeColumnConfigService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGenConfigService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.xml create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.xml create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dto/TableInfo.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeColumnConfigServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java index b0da6b54..1c2ce95a 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java @@ -44,12 +44,13 @@ public enum AcsTaskEnum { AGV_SYSTEM_NB("1","诺宝机器人任务"), AGV_SYSTEM_XC("1","叉车任务"), - TASK_TYPE_AGV_DOUBLE_STATION("0101","AGV双工位"), - TASK_TYPE_CLEANING_TASK("0102","清洗任务"), - TASK_TYPE_PLOTTER_FULL_OF_MATERIAL("010301","刻字满料"), - TASK_TYPE_PLOTTER_FILL_THE_BLANK_BOX("010302","刻字补空框"), - TASK_TYPE_WARP_CALL_MATERIAL("010401","包装叫料"), - TASK_TYPE_WARP_SEND_BLANK_BOX("010402","包装送空框"), + TASK_TYPE_NOBLE_DOUBLE_TASK("1","诺宝双工任务"), + TASK_TYPE_NOBLE_SINGLE_TASK("2","诺宝单工任务"), + TASK_TYPE_NOBLE_SINGLE_ENTRY_TASK("3","诺宝单入-单任务"), + TASK_TYPE_NOBLE_DOUBLE_ENTRY_TASK("4","诺宝双入-双任务"), + TASK_TYPE_NOBLE_POINT_POINT_TASK("5","诺宝点对点任务"), + TASK_TYPE_WEIGHING_TASK_OF_PS20("6","PS20称重任务(刻字-包装)"), + TASK_TYPE_NON_WEIGHING_TASK_OF_PS20("7","PS20不称重任务(刻字-包装)"), TASK_FINISHED_TYPE_AUTO("1", "自动完成任务"), TASK_FINISHED_TYPE_MANUAL("2", "手动完成任务"), diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeColumnConfigController.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeColumnConfigController.java new file mode 100644 index 00000000..e754f840 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeColumnConfigController.java @@ -0,0 +1,46 @@ +package org.nl.system.controller.generator; + + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.nl.modules.common.utils.PageUtil; +import org.nl.system.service.generator.ICodeColumnConfigService; +import org.nl.system.service.generator.ICodeGenConfigService; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 代码生成字段信息存储 前端控制器 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@RestController +@RequestMapping("/codeColumnConfig") +@RequiredArgsConstructor +@Api(tags = "系统:代码生成管理") +public class CodeColumnConfigController { + private final ICodeGenConfigService genConfigService; + private final ICodeColumnConfigService generatorService; + @Value("${generator.enabled}") + private Boolean generatorEnabled; + @ApiOperation("查询数据库数据") + @GetMapping(value = "/tables") + public ResponseEntity queryTables(@RequestParam(defaultValue = "") String name, + @RequestParam(defaultValue = "0")Integer page, + @RequestParam(defaultValue = "10")Integer size){ + int[] startEnd = PageUtil.transToStartEnd(page, size); + return new ResponseEntity<>(generatorService.getTables(name,startEnd), HttpStatus.OK); +// return null; + } +} + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeGenConfigController.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeGenConfigController.java new file mode 100644 index 00000000..75345cc3 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/generator/CodeGenConfigController.java @@ -0,0 +1,43 @@ +package org.nl.system.controller.generator; + + +import cn.dev33.satoken.annotation.SaIgnore; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.nl.system.service.generator.ICodeGenConfigService; +import org.nl.system.service.generator.dao.CodeGenConfig; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 代码生成器配置 前端控制器 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@RestController +@RequestMapping("/codeGenConfig") +@RequiredArgsConstructor +@Api(tags = "系统:代码生成器配置管理") +@SaIgnore +public class CodeGenConfigController { + private final ICodeGenConfigService genConfigService; + + @ApiOperation("查询") + @GetMapping(value = "/{tableName}") + public ResponseEntity query(@PathVariable String tableName){ + return new ResponseEntity<>(genConfigService.find(tableName), HttpStatus.OK); + } + + @ApiOperation("修改") + @PutMapping + public ResponseEntity update(@Validated @RequestBody CodeGenConfig genConfig){ + return new ResponseEntity<>(genConfigService.update(genConfig.getTableName(), genConfig),HttpStatus.OK); + } +} + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeColumnConfigService.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeColumnConfigService.java new file mode 100644 index 00000000..0484b6dc --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeColumnConfigService.java @@ -0,0 +1,27 @@ +package org.nl.system.service.generator; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.system.service.generator.dao.CodeColumnConfig; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.system.service.generator.dto.TableInfo; + +import java.util.List; + +/** + *

+ * 代码生成字段信息存储 服务类 + *

+ * + * @author generator + * @since 2023-04-06 + */ +public interface ICodeColumnConfigService extends IService { + + /** + * 查询数据库元数据 + * @param name 表名 + * @param startEnd 分页参数 + * @return / + */ + IPage getTables(String name, int[] startEnd); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGenConfigService.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGenConfigService.java new file mode 100644 index 00000000..ad93b682 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGenConfigService.java @@ -0,0 +1,30 @@ +package org.nl.system.service.generator; + +import org.nl.system.service.generator.dao.CodeGenConfig; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 代码生成器配置 服务类 + *

+ * + * @author generator + * @since 2023-04-06 + */ +public interface ICodeGenConfigService extends IService { + + /** + * 根据表名查找 + * @param tableName + * @return + */ + CodeGenConfig find(String tableName); + + /** + * 根据表名更新 + * @param tableName + * @param genConfig + * @return + */ + CodeGenConfig update(String tableName, CodeGenConfig genConfig); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java new file mode 100644 index 00000000..a53daa5b --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java @@ -0,0 +1,58 @@ +package org.nl.system.service.generator.dao; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * 代码生成字段信息存储 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("code_column_config") +public class CodeColumnConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * ID + */ + @TableId(value = "column_id", type = IdType.AUTO) + private Long columnId; + + private String tableName; + + private String columnName; + + private String columnType; + + private String dictName; + + private String extra; + + private Boolean formShow; + + private String formType; + + private String keyType; + + private Boolean listShow; + + private Boolean notNull; + + private String queryType; + + private String remark; + + private String dateAnnotation; + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java new file mode 100644 index 00000000..92a6584c --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java @@ -0,0 +1,83 @@ +package org.nl.system.service.generator.dao; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + *

+ * 代码生成器配置 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = false) +@TableName("code_gen_config") +public class CodeGenConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + public CodeGenConfig(String tableName) { + this.tableName = tableName; + } + + /** + * ID + */ + @TableId(value = "config_id", type = IdType.AUTO) + private Long configId; + + /** + * 表名 + */ + private String tableName; + + /** + * 作者 + */ + private String author; + + /** + * 是否覆盖 + */ + private Boolean cover; + + /** + * 模块名称 + */ + private String moduleName; + + /** + * 至于哪个包下 + */ + private String pack; + + /** + * 前端代码生成的路径 + */ + private String path; + + /** + * 前端Api文件路径 + */ + private String apiPath; + + /** + * 表前缀 + */ + private String prefix; + + /** + * 接口名称 + */ + private String apiAlias; + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java new file mode 100644 index 00000000..79fcde34 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java @@ -0,0 +1,16 @@ +package org.nl.system.service.generator.dao.mapper; + +import org.nl.system.service.generator.dao.CodeColumnConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 代码生成字段信息存储 Mapper 接口 + *

+ * + * @author generator + * @since 2023-04-06 + */ +public interface CodeColumnConfigMapper extends BaseMapper { + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.xml new file mode 100644 index 00000000..31c86e2f --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.java new file mode 100644 index 00000000..ba395277 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.java @@ -0,0 +1,16 @@ +package org.nl.system.service.generator.dao.mapper; + +import org.nl.system.service.generator.dao.CodeGenConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 代码生成器配置 Mapper 接口 + *

+ * + * @author generator + * @since 2023-04-06 + */ +public interface CodeGenConfigMapper extends BaseMapper { + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.xml new file mode 100644 index 00000000..72ca44ce --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeGenConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dto/TableInfo.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dto/TableInfo.java new file mode 100644 index 00000000..fcf2cb53 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/dto/TableInfo.java @@ -0,0 +1,32 @@ +package org.nl.system.service.generator.dto; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author: lyd + * @Description: 表的数据信息 + * @Date: 2023/4/6 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class TableInfo { + + /** 表名称 */ + private Object tableName; + + /** 创建日期 */ + private Object createTime; + + /** 数据库引擎 */ + private Object engine; + + /** 编码集 */ + private Object coding; + + /** 备注 */ + private Object remark; +} + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeColumnConfigServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeColumnConfigServiceImpl.java new file mode 100644 index 00000000..235ed43e --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeColumnConfigServiceImpl.java @@ -0,0 +1,34 @@ +package org.nl.system.service.generator.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.nl.system.service.generator.dao.CodeColumnConfig; +import org.nl.system.service.generator.dao.mapper.CodeColumnConfigMapper; +import org.nl.system.service.generator.ICodeColumnConfigService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.system.service.generator.dto.TableInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 代码生成字段信息存储 服务实现类 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@Service +public class CodeColumnConfigServiceImpl extends ServiceImpl implements ICodeColumnConfigService { + + @Autowired + private CodeColumnConfigMapper codeColumnConfigMapper; + + @Override + public IPage getTables(String name, int[] startEnd) { + IPage page = new Page<>(); + return null; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java new file mode 100644 index 00000000..d357a1a2 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java @@ -0,0 +1,65 @@ +package org.nl.system.service.generator.impl; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.system.service.generator.ICodeGenConfigService; +import org.nl.system.service.generator.dao.CodeGenConfig; +import org.nl.system.service.generator.dao.mapper.CodeGenConfigMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.io.File; + +/** + *

+ * 代码生成器配置 服务实现类 + *

+ * + * @author generator + * @since 2023-04-06 + */ +@Service +public class CodeGenConfigServiceImpl extends ServiceImpl implements ICodeGenConfigService { + + @Autowired + private CodeGenConfigMapper codeGenConfigMapper; + + @Override + public CodeGenConfig find(String tableName) { + CodeGenConfig codeGenConfig = codeGenConfigMapper.selectOne(new LambdaQueryWrapper() + .eq(CodeGenConfig::getTableName, tableName)); + if (ObjectUtil.isEmpty(codeGenConfig)) { + return new CodeGenConfig(tableName); + } + return codeGenConfig; + } + + @Override + public CodeGenConfig update(String tableName, CodeGenConfig genConfig) { + // 如果 api 路径为空,则自动生成路径 + if(StrUtil.isEmpty(genConfig.getApiPath())){ + String separator = File.separator; + String[] paths; + String symbol = "\\"; + if (symbol.equals(separator)) { + paths = genConfig.getPath().split("\\\\"); + } else { + paths = genConfig.getPath().split(File.separator); + } + StringBuilder api = new StringBuilder(); + for (String path : paths) { + api.append(path); + api.append(separator); + if ("src".equals(path)) { + api.append("api"); + break; + } + } + genConfig.setApiPath(api.toString()); + } + codeGenConfigMapper.updateById(genConfig); + return genConfig; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java index c1706a72..ac38b245 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java @@ -18,6 +18,7 @@ public interface WmsToAcsService { */ Map issueTaskToAcs(JSONArray arr); + Map issueTaskToAcs2(JSONArray arr); /** * WMS客户端--->ACS服务端 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index d4f129f3..20ce2683 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -133,7 +133,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{ TaskDto taskDto = taskService.findById(task_id); String processing_class = taskDto.getHandle_class(); //1:执行中,2:完成 ,3:acs取消 - String acs_task_status = row.getString("task_status"); + String acs_task_status = row.getString("status"); String message = ""; String status = ""; if ("1".equals(acs_task_status)) { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java index c5e0a045..e1cb4703 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java @@ -43,6 +43,28 @@ public class WmsToAcsServiceImpl implements WmsToAcsService{ return AcsUtil.notifyAcs(api, form); } + @Override + public Map issueTaskToAcs2(JSONArray arr) { + JSONArray form = new JSONArray(); + for (Object o : arr) { + JSONObject task = (JSONObject) o; + JSONObject param = new JSONObject(MapOf.of("task_id", task.getString("task_id") + , "acs_task_type", task.getString("acs_task_type") + , "task_code", task.getString("task_code") + , "start_point_code", task.getString("point_code1")//起点 + , "next_point_code", task.getString("point_code2")//空盘返回点 + , "task_type", task.getString("task_type") + , "priority", task.getString("priority") + , "is_send", task.getString("is_send") + , "vehicle_code", task.getString("vehicle_code") + , "agv_system_type", task.getString("agv_system_type") + )); + form.add(param); + } + String api = "api/wms/task"; + return AcsUtil.notifyAcs(api, form); + } + @Override public Map cancelToAcs(JSONArray arr) { String api = "api/wms/cancelTask"; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java index be053bbc..55791a7c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java @@ -199,7 +199,7 @@ public class TaskServiceImpl implements TaskService { JSONArray finish = new JSONArray(); JSONObject res = new JSONObject(); res.put("task_id", task_id); - res.put("task_status", "2"); + res.put("status", AcsTaskEnum.STATUS_FINISH.getCode()); res.put("finished_type", AcsTaskEnum.TASK_FINISHED_TYPE_MANUAL.getCode()); // 手动完成 finish.add(res); acsToWmsService.receiveTaskStatusAcs(JSON.toJSONString(finish)); @@ -208,7 +208,7 @@ public class TaskServiceImpl implements TaskService { JSONArray cancel = new JSONArray(); JSONObject res2 = new JSONObject(); res2.put("task_id", task_id); - res2.put("task_status", "3"); + res2.put("status", AcsTaskEnum.STATUS_CANNEL.getCode()); cancel.add(res2); acsToWmsService.receiveTaskStatusAcs(JSON.toJSONString(cancel)); break; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/PlotterCallEmptyTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/PlotterCallEmptyTask.java index 012c611d..efb0ee57 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/PlotterCallEmptyTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/PlotterCallEmptyTask.java @@ -49,7 +49,7 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { // 执行中 // 任务执行中 - taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); + taskObj.put("task_status", StatusEnum.TASK_RUNNING.getCode()); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); } else if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { @@ -84,6 +84,8 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { // 2任务取消 taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); taskObj.put("update_time", DateUtil.now()); + taskObj.put("finished_type", ObjectUtil.isNotEmpty(task.getString("finished_type"))? + task.getString("finished_type"):AcsTaskEnum.TASK_FINISHED_TYPE_AUTO.getCode()); taskTab.update(taskObj); } } @@ -93,7 +95,7 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { public String createTask(JSONObject param) { WQLObject workOrderTab = WQLObject.getWQLObject("PDM_produce_workOrder"); WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); - String end_point_code = param.getString("point_code"); // todo + String end_point_code = param.getString("device_code"); String workorder = param.getString("workorder_code"); if(StrUtil.isEmpty(end_point_code)) { throw new BadRequestException("终点不能为空!"); @@ -119,7 +121,7 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { task.put("task_id", taskdtl_id); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); task.put("task_name", "刻字机呼叫空框"); - task.put("task_type", AcsTaskEnum.TASK_TYPE_PLOTTER_FILL_THE_BLANK_BOX.getCode()); // todo: 未知 + task.put("task_type", AcsTaskEnum.TASK_TYPE_NON_WEIGHING_TASK_OF_PS20.getCode()); // todo: 未知???????? task.put("task_status", StatusEnum.TASK_CREATE.getCode()); task.put("material_id", workOrderObj.getString("material_id")); task.put("point_code2", end_point_code); @@ -133,6 +135,7 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); task.put("priority", "1"); + task.put("agv_system_type", "2"); WQLObject.getWQLObject("SCH_BASE_Task").insert(task); // 找终点 try { @@ -141,7 +144,7 @@ public class PlotterCallEmptyTask extends AbstractAcsTask { JSONObject result = taskTab.query("task_id = '" + taskdtl_id + "'").uniqueResult(0); data.add(result); // 下发 - wms.issueTaskToAcs(data); + wms.issueTaskToAcs2(data); } catch (Exception ex) { // 未找到 task.put("remark", ex.getMessage()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callMaterial/WrapCallMaterialTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callMaterial/WrapCallMaterialTask.java index 56d0be4a..13346fe9 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callMaterial/WrapCallMaterialTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callMaterial/WrapCallMaterialTask.java @@ -50,7 +50,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { // 执行中 // 任务执行中 - taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); + taskObj.put("task_status", StatusEnum.TASK_RUNNING.getCode()); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); } else if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { @@ -59,7 +59,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { // 释放点位并赋值 pointObj.put("lock_type", StatusEnum.LOCK_OFF.getCode()); pointObj.put("point_status", StatusEnum.POINT_STATUS_EMPTY.getCode()); - pointObj.put("material_id", ""); + pointObj.put("material_id", taskObj.getString("material_id")); pointObj.put("update_time", DateUtil.now()); pointTab.update(pointObj); } @@ -85,6 +85,8 @@ public class WrapCallMaterialTask extends AbstractAcsTask { // 2任务取消 taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); taskObj.put("update_time", DateUtil.now()); + taskObj.put("finished_type", ObjectUtil.isNotEmpty(task.getString("finished_type"))? + task.getString("finished_type"):AcsTaskEnum.TASK_FINISHED_TYPE_AUTO.getCode()); taskTab.update(taskObj); } } @@ -94,7 +96,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { public String createTask(JSONObject param) { WQLObject workOrderTab = WQLObject.getWQLObject("PDM_produce_workOrder"); WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); - String end_point_code = param.getString("point_code"); // todo + String end_point_code = param.getString("device_code"); String workorder = param.getString("workorder_code"); if(StrUtil.isEmpty(end_point_code)) { throw new BadRequestException("终点不能为空!"); @@ -118,7 +120,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { task.put("task_id", taskdtl_id); task.put("task_name", "包装叫料"); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); - task.put("task_type", AcsTaskEnum.TASK_TYPE_WARP_CALL_MATERIAL.getCode()); // todo: 未知 + task.put("task_type", AcsTaskEnum.TASK_TYPE_NON_WEIGHING_TASK_OF_PS20.getCode()); // todo: 未知 task.put("task_status", StatusEnum.TASK_CREATE.getCode()); task.put("point_code2", end_point_code); task.put("handle_class", this.getClass().getName()); @@ -131,6 +133,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); task.put("priority", "1"); + task.put("agv_system_type", "2"); WQLObject.getWQLObject("SCH_BASE_Task").insert(task); // 找终点 try { @@ -139,7 +142,7 @@ public class WrapCallMaterialTask extends AbstractAcsTask { JSONObject result = taskTab.query("task_id = '" + taskdtl_id + "'").uniqueResult(0); data.add(result); // 下发 - wms.issueTaskToAcs(data); + wms.issueTaskToAcs2(data); } catch (Exception ex) { // 未找到 task.put("remark", ex.getMessage()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/WrapSendEmptyTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/WrapSendEmptyTask.java index a5dfb6ed..8ae4b23f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/WrapSendEmptyTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/WrapSendEmptyTask.java @@ -49,7 +49,7 @@ public class WrapSendEmptyTask extends AbstractAcsTask { if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { // 执行中 // 任务执行中 - taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); + taskObj.put("task_status", StatusEnum.TASK_RUNNING.getCode()); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); } else if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { @@ -83,16 +83,16 @@ public class WrapSendEmptyTask extends AbstractAcsTask { // 2任务取消 taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); taskObj.put("update_time", DateUtil.now()); + taskObj.put("finished_type", ObjectUtil.isNotEmpty(task.getString("finished_type"))? + task.getString("finished_type"):AcsTaskEnum.TASK_FINISHED_TYPE_AUTO.getCode()); taskTab.update(taskObj); } } @Override public String createTask(JSONObject param) { - WQLObject workOrderTab = WQLObject.getWQLObject("PDM_produce_workOrder"); WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); - String start_point_code = param.getString("point_code"); // todo - String workorder = param.getString("workorder_code"); + String start_point_code = param.getString("device_code"); if(StrUtil.isEmpty(start_point_code)) { throw new BadRequestException("起点不能为空!"); } @@ -103,18 +103,12 @@ public class WrapSendEmptyTask extends AbstractAcsTask { if (ObjectUtil.isNotEmpty(taskObj)) { throw new BadRequestException("当前点位" + start_point_code + "存在未完成的任务"); } - // todo: 判断工单? - // 判断工单 -// JSONObject workOrderObj = workOrderTab.query("workorder_code <> '" + workorder + "' and workorder_status = '" + StatusEnum.TASK_FINISH.getCode() + "' and is_delete ='0'").uniqueResult(0); -// if (ObjectUtil.isEmpty(workOrderObj)){ -// throw new BadRequestException("下发工单不存在未完成工单:"+workorder); -// } String taskdtl_id = IdUtil.getSnowflake(1, 1).nextId() + ""; JSONObject task = new JSONObject(); task.put("task_id", taskdtl_id); task.put("task_name", "包装送空框"); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); - task.put("task_type", AcsTaskEnum.TASK_TYPE_WARP_SEND_BLANK_BOX.getCode()); // todo: 未知 + task.put("task_type", AcsTaskEnum.TASK_TYPE_NON_WEIGHING_TASK_OF_PS20.getCode()); // todo: 未知 task.put("task_status", StatusEnum.TASK_CREATE.getCode()); task.put("point_code1", start_point_code); task.put("handle_class", this.getClass().getName()); @@ -127,6 +121,7 @@ public class WrapSendEmptyTask extends AbstractAcsTask { task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); task.put("priority", "1"); + task.put("agv_system_type", "2"); WQLObject.getWQLObject("SCH_BASE_Task").insert(task); // 找终点 try { @@ -135,7 +130,7 @@ public class WrapSendEmptyTask extends AbstractAcsTask { JSONObject result = taskTab.query("task_id = '" + taskdtl_id + "'").uniqueResult(0); data.add(result); // 下发 - wms.issueTaskToAcs(data); + wms.issueTaskToAcs2(data); } catch (Exception ex) { // 未找到 task.put("remark", ex.getMessage()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/PlotterSendMaterialTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/PlotterSendMaterialTask.java index dd1d5843..090e0902 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/PlotterSendMaterialTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/PlotterSendMaterialTask.java @@ -49,7 +49,7 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { // 执行中 // 任务执行中 - taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); + taskObj.put("task_status", StatusEnum.TASK_RUNNING.getCode()); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); } else if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { @@ -85,6 +85,8 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { // 2任务取消 taskObj.put("task_status", StatusEnum.TASK_CANNEL.getCode()); taskObj.put("update_time", DateUtil.now()); + taskObj.put("finished_type", ObjectUtil.isNotEmpty(task.getString("finished_type"))? + task.getString("finished_type"):AcsTaskEnum.TASK_FINISHED_TYPE_AUTO.getCode()); taskTab.update(taskObj); } } @@ -94,7 +96,7 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { public String createTask(JSONObject param) { WQLObject workOrderTab = WQLObject.getWQLObject("PDM_produce_workOrder"); WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); - String start_point_code = param.getString("point_code"); // todo + String start_point_code = param.getString("device_code"); String workorder = param.getString("workorder_code"); if(StrUtil.isEmpty(start_point_code)) { throw new BadRequestException("起点不能为空!"); @@ -120,7 +122,7 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { task.put("task_id", taskdtl_id); task.put("task_name", "刻字机送料"); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); - task.put("task_type", AcsTaskEnum.TASK_TYPE_PLOTTER_FULL_OF_MATERIAL.getCode()); // todo: 未知 + task.put("task_type", AcsTaskEnum.TASK_TYPE_WEIGHING_TASK_OF_PS20.getCode()); // todo: 未知 task.put("material_id", workOrderObj.getString("material_id")); task.put("task_status", StatusEnum.TASK_CREATE.getCode()); task.put("point_code1", start_point_code); @@ -134,6 +136,7 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); task.put("priority", "1"); + task.put("agv_system_type", "2"); WQLObject.getWQLObject("SCH_BASE_Task").insert(task); // 找终点 try { @@ -142,7 +145,7 @@ public class PlotterSendMaterialTask extends AbstractAcsTask { JSONObject result = taskTab.query("task_id = '" + taskdtl_id + "'").uniqueResult(0); data.add(result); // 下发 - wms.issueTaskToAcs(data); + wms.issueTaskToAcs2(data); } catch (Exception ex) { // 未找到 task.put("remark", ex.getMessage());