From 12b8c4a439de305f7ff60ee55a8fba1e56fb28ea Mon Sep 17 00:00:00 2001 From: yinq Date: Fri, 23 Aug 2024 10:54:17 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20addAGV=E4=BD=8D=E7=A7=BB=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/modelInterfacesController.java | 41 +++ .../java/com/hw/dms/domain/WcsAgvStatus.java | 264 ++++++++++++++++++ .../com/hw/dms/domain/vo/ModelBoardVo.java | 17 ++ .../com/hw/dms/mapper/WcsAgvStatusMapper.java | 61 ++++ .../dms/service/IModelInterfacesService.java | 24 ++ .../impl/ModelInterfacesServiceImpl.java | 39 +++ .../mapper/dms/WcsAgvStatusMapper.xml | 152 ++++++++++ .../hw/mes/service/impl/MesImportImpl.java | 2 +- 8 files changed, 599 insertions(+), 1 deletion(-) create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/controller/modelInterfacesController.java create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/domain/WcsAgvStatus.java create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/domain/vo/ModelBoardVo.java create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/mapper/WcsAgvStatusMapper.java create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/service/IModelInterfacesService.java create mode 100644 hw-modules/hw-dms/src/main/java/com/hw/dms/service/impl/ModelInterfacesServiceImpl.java create mode 100644 hw-modules/hw-dms/src/main/resources/mapper/dms/WcsAgvStatusMapper.xml diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/controller/modelInterfacesController.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/controller/modelInterfacesController.java new file mode 100644 index 00000000..352e7201 --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/controller/modelInterfacesController.java @@ -0,0 +1,41 @@ +package com.hw.dms.controller; + +import java.util.HashMap; + +import com.hw.dms.domain.vo.ModelBoardVo; +import com.hw.dms.service.IModelInterfacesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.hw.dms.domain.WcsAgvStatus; +import com.hw.common.core.web.controller.BaseController; +import com.hw.common.core.web.domain.AjaxResult; + + +/** + * AGV位移状态Controller + * + * @author Yinq + * @date 2024-08-21 + */ +@RestController +@RequestMapping("/model") +public class modelInterfacesController extends BaseController { + + @Autowired + private IModelInterfacesService modelInterfacesService; + + /** + * 查询AGV设备状态列表 + * @param modelBoardVo + * @return + */ + @GetMapping("/getAgvDeviceStatus") + public AjaxResult getAgvDeviceStatus(ModelBoardVo modelBoardVo) { + HashMap result = modelInterfacesService.getAgvDeviceStatus(modelBoardVo); + return success(result); + } + + +} diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/WcsAgvStatus.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/WcsAgvStatus.java new file mode 100644 index 00000000..6c944bcf --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/WcsAgvStatus.java @@ -0,0 +1,264 @@ +package com.hw.dms.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.hw.common.core.annotation.Excel; +import com.hw.common.core.web.domain.BaseEntity; + +/** + * AGV位移状态对象 wcs_agv_status + * + * @author Yinq + * @date 2024-08-21 + */ +public class WcsAgvStatus extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 电量 */ + @Excel(name = "电量") + private String battery; + + /** 是否已被排除,被排除后不接受新任务( 1-排除, 0-正常) */ + @Excel(name = "是否已被排除,被排除后不接受新任务", readConverterExp = "1=-排除,,0=-正常") + private String exclType; + + /** 地图编号 */ + @Excel(name = "地图编号") + private String mapCode; + + /** 是否在线 */ + @Excel(name = "是否在线") + private String online; + + /** 路线 */ + @Excel(name = "路线") + private String path; + + /** 背货架的编号 */ + @Excel(name = "背货架的编号") + private String podCode; + + /** 背货架的方向 */ + @Excel(name = "背货架的方向") + private String podDir; + + /** X */ + @Excel(name = "X") + private String posX; + + /** Y */ + @Excel(name = "Y") + private String posY; + + /** 机器人编号 */ + private String robotCode; + + /** 机器人方向 (范围 -180~360度) */ + @Excel(name = "机器人方向 (范围 -180~360度)") + private String robotDir; + + /** 机器人Ip */ + @Excel(name = "机器人Ip") + private String robotIp; + + /** 机器人速度 */ + @Excel(name = "机器人速度") + private String speed; + + /** 机器人状态 */ + @Excel(name = "机器人状态") + private String status; + + /** 是否暂停 0-否 1-是 */ + @Excel(name = "是否暂停 0-否 1-是") + private String stop; + + /** 时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date timestamp; + + /** 小车名称 */ + @Excel(name = "小车名称") + private String agvName; + + public void setBattery(String battery) + { + this.battery = battery; + } + + public String getBattery() + { + return battery; + } + public void setExclType(String exclType) + { + this.exclType = exclType; + } + + public String getExclType() + { + return exclType; + } + public void setMapCode(String mapCode) + { + this.mapCode = mapCode; + } + + public String getMapCode() + { + return mapCode; + } + public void setOnline(String online) + { + this.online = online; + } + + public String getOnline() + { + return online; + } + public void setPath(String path) + { + this.path = path; + } + + public String getPath() + { + return path; + } + public void setPodCode(String podCode) + { + this.podCode = podCode; + } + + public String getPodCode() + { + return podCode; + } + public void setPodDir(String podDir) + { + this.podDir = podDir; + } + + public String getPodDir() + { + return podDir; + } + public void setPosX(String posX) + { + this.posX = posX; + } + + public String getPosX() + { + return posX; + } + public void setPosY(String posY) + { + this.posY = posY; + } + + public String getPosY() + { + return posY; + } + public void setRobotCode(String robotCode) + { + this.robotCode = robotCode; + } + + public String getRobotCode() + { + return robotCode; + } + public void setRobotDir(String robotDir) + { + this.robotDir = robotDir; + } + + public String getRobotDir() + { + return robotDir; + } + public void setRobotIp(String robotIp) + { + this.robotIp = robotIp; + } + + public String getRobotIp() + { + return robotIp; + } + public void setSpeed(String speed) + { + this.speed = speed; + } + + public String getSpeed() + { + return speed; + } + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + public void setStop(String stop) + { + this.stop = stop; + } + + public String getStop() + { + return stop; + } + public void setTimestamp(Date timestamp) + { + this.timestamp = timestamp; + } + + public Date getTimestamp() + { + return timestamp; + } + public void setAgvName(String agvName) + { + this.agvName = agvName; + } + + public String getAgvName() + { + return agvName; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("battery", getBattery()) + .append("exclType", getExclType()) + .append("mapCode", getMapCode()) + .append("online", getOnline()) + .append("path", getPath()) + .append("podCode", getPodCode()) + .append("podDir", getPodDir()) + .append("posX", getPosX()) + .append("posY", getPosY()) + .append("robotCode", getRobotCode()) + .append("robotDir", getRobotDir()) + .append("robotIp", getRobotIp()) + .append("speed", getSpeed()) + .append("status", getStatus()) + .append("stop", getStop()) + .append("timestamp", getTimestamp()) + .append("agvName", getAgvName()) + .toString(); + } +} diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/vo/ModelBoardVo.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/vo/ModelBoardVo.java new file mode 100644 index 00000000..9bad0f5f --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/domain/vo/ModelBoardVo.java @@ -0,0 +1,17 @@ +package com.hw.dms.domain.vo; + +import com.hw.common.core.web.domain.BaseEntity; + + +/** + * 模型看板Vo对象 ModelBoardVo + * + * @author Yinq + * @date 2024-08-21 + */ +public class ModelBoardVo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + +} diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/mapper/WcsAgvStatusMapper.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/mapper/WcsAgvStatusMapper.java new file mode 100644 index 00000000..c99e1430 --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/mapper/WcsAgvStatusMapper.java @@ -0,0 +1,61 @@ +package com.hw.dms.mapper; + +import java.util.List; +import com.hw.dms.domain.WcsAgvStatus; + +/** + * AGV位移状态Mapper接口 + * + * @author Yinq + * @date 2024-08-21 + */ +public interface WcsAgvStatusMapper +{ + /** + * 查询AGV位移状态 + * + * @param robotCode AGV位移状态主键 + * @return AGV位移状态 + */ + public WcsAgvStatus selectWcsAgvStatusByRobotCode(String robotCode); + + /** + * 查询AGV位移状态列表 + * + * @param wcsAgvStatus AGV位移状态 + * @return AGV位移状态集合 + */ + public List selectWcsAgvStatusList(WcsAgvStatus wcsAgvStatus); + + /** + * 新增AGV位移状态 + * + * @param wcsAgvStatus AGV位移状态 + * @return 结果 + */ + public int insertWcsAgvStatus(WcsAgvStatus wcsAgvStatus); + + /** + * 修改AGV位移状态 + * + * @param wcsAgvStatus AGV位移状态 + * @return 结果 + */ + public int updateWcsAgvStatus(WcsAgvStatus wcsAgvStatus); + + /** + * 删除AGV位移状态 + * + * @param robotCode AGV位移状态主键 + * @return 结果 + */ + public int deleteWcsAgvStatusByRobotCode(String robotCode); + + /** + * 批量删除AGV位移状态 + * + * @param robotCodes 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteWcsAgvStatusByRobotCodes(String[] robotCodes); +} diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/service/IModelInterfacesService.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/service/IModelInterfacesService.java new file mode 100644 index 00000000..461b69a7 --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/service/IModelInterfacesService.java @@ -0,0 +1,24 @@ +package com.hw.dms.service; + +import java.util.HashMap; + +import com.hw.dms.domain.vo.ModelBoardVo; + +/** + * AGV位移状态Service接口 + * + * @author Yinq + * @date 2024-08-21 + */ +public interface IModelInterfacesService +{ + + /** + * 查询AGV设备状态列表 + * @param modelBoardVo + * @return + */ + HashMap getAgvDeviceStatus(ModelBoardVo modelBoardVo); + + +} diff --git a/hw-modules/hw-dms/src/main/java/com/hw/dms/service/impl/ModelInterfacesServiceImpl.java b/hw-modules/hw-dms/src/main/java/com/hw/dms/service/impl/ModelInterfacesServiceImpl.java new file mode 100644 index 00000000..e2850b44 --- /dev/null +++ b/hw-modules/hw-dms/src/main/java/com/hw/dms/service/impl/ModelInterfacesServiceImpl.java @@ -0,0 +1,39 @@ +package com.hw.dms.service.impl; + +import java.util.HashMap; +import java.util.List; + +import com.hw.dms.domain.vo.ModelBoardVo; +import com.hw.dms.service.IModelInterfacesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.hw.dms.mapper.WcsAgvStatusMapper; +import com.hw.dms.domain.WcsAgvStatus; + +/** + * AGV位移状态Service业务层处理 + * + * @author Yinq + * @date 2024-08-21 + */ +@Service +public class ModelInterfacesServiceImpl implements IModelInterfacesService +{ + @Autowired + private WcsAgvStatusMapper wcsAgvStatusMapper; + + /** + * 查询AGV设备状态列表 + * @param modelBoardVo + * @return + */ + @Override + public HashMap getAgvDeviceStatus(ModelBoardVo modelBoardVo) { + HashMap result = new HashMap<>(); + WcsAgvStatus wcsAgvStatus = new WcsAgvStatus(); + List agvStatusList = wcsAgvStatusMapper.selectWcsAgvStatusList(wcsAgvStatus); + result.put("agvStatusList", agvStatusList); + return result; + } + +} diff --git a/hw-modules/hw-dms/src/main/resources/mapper/dms/WcsAgvStatusMapper.xml b/hw-modules/hw-dms/src/main/resources/mapper/dms/WcsAgvStatusMapper.xml new file mode 100644 index 00000000..ee497ffe --- /dev/null +++ b/hw-modules/hw-dms/src/main/resources/mapper/dms/WcsAgvStatusMapper.xml @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select battery, + exclType, + mapCode, + online, + path, + podCode, + podDir, + posX, + posY, + robotCode, + robotDir, + robotIp, + speed, + status, + stop, timestamp, agvName + from wcs_agv_status + + + + + + + + insert into wcs_agv_status + + battery, + exclType, + mapCode, + online, + path, + podCode, + podDir, + posX, + posY, + robotCode, + robotDir, + robotIp, + speed, + status, + stop, + timestamp, + agvName, + + + #{battery}, + #{exclType}, + #{mapCode}, + #{online}, + #{path}, + #{podCode}, + #{podDir}, + #{posX}, + #{posY}, + #{robotCode}, + #{robotDir}, + #{robotIp}, + #{speed}, + #{status}, + #{stop}, + #{timestamp}, + #{agvName}, + + + + + update wcs_agv_status + + battery = #{battery}, + exclType = #{exclType}, + mapCode = #{mapCode}, + online = #{online}, + path = #{path}, + podCode = #{podCode}, + podDir = #{podDir}, + posX = #{posX}, + posY = #{posY}, + robotDir = #{robotDir}, + robotIp = #{robotIp}, + speed = #{speed}, + status = #{status}, + stop = #{stop}, + timestamp = #{timestamp}, + agvName = #{agvName}, + + where robotCode = #{robotCode} + + + + delete + from wcs_agv_status + where robotCode = #{robotCode} + + + + delete from wcs_agv_status where robotCode in + + #{robotCode} + + + \ No newline at end of file diff --git a/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesImportImpl.java b/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesImportImpl.java index 0676ed11..9332e357 100644 --- a/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesImportImpl.java +++ b/hw-modules/hw-mes/src/main/java/com/hw/mes/service/impl/MesImportImpl.java @@ -181,7 +181,7 @@ public class MesImportImpl implements IMesImportService { i = i + 3;//标题下一行 MesMaterialBom selectBom = new MesMaterialBom(); selectBom.setMaterialId(productMaterial.getMaterialId()); - selectBom.setMaterialNameDesc(productMaterial.getMaterialName()); + selectBom.setMaterialBomDesc(productMaterial.getMaterialName()); List productBomList = mesMaterialBomService.selectMesMaterialBomList(selectBom); Long parentBomId = 0L; String parentBomDesc = productMaterial.getMaterialName();