From 7d8887e36acb71ee20bf2f55170571b3fa7621b7 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期四, 31 十月 2024 15:47:12 +0800 Subject: [PATCH] update --- lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/controller/MdcSubLargeScreenController.java | 9 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentXYZServiceImpl.java | 5 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcComponentInfo.java | 3 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentXYZMapper.java | 3 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentXYZService.java | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentXYZMapper.xml | 10 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentXYZDto.java | 31 +++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentInfoDto.java | 126 +++++++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/MdcSubLargeScreenService.java | 9 + lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcSubLargeScreenServiceImpl.java | 105 ++++++++++++++++- 11 files changed, 295 insertions(+), 10 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcComponentInfo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcComponentInfo.java index 3cfab7a..76a80c5 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcComponentInfo.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcComponentInfo.java @@ -1,8 +1,5 @@ package org.jeecg.modules.mdc.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentXYZMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentXYZMapper.java index 3726834..fb4a4eb 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentXYZMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentXYZMapper.java @@ -1,6 +1,7 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.EquipmentXYZ; /** @@ -8,4 +9,6 @@ * @create: 2023-04-07 14:41 */ public interface EquipmentXYZMapper extends BaseMapper<EquipmentXYZ> { + + EquipmentXYZ findByEquipmentId(@Param("equipmentId") String equipmentId); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentXYZMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentXYZMapper.xml index 2aa8691..a570cae 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentXYZMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentXYZMapper.xml @@ -2,4 +2,14 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.jeecg.modules.mdc.mapper.EquipmentXYZMapper"> + <select id="findByEquipmentId" resultType="org.jeecg.modules.mdc.entity.EquipmentXYZ"> + SELECT TOP + 1 * + FROM + EquipmentXYZ + WHERE + EquipmentID = #{equipmentId} + ORDER BY + CollectTime DESC + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentXYZService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentXYZService.java index b6cc4a6..b229d5c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentXYZService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentXYZService.java @@ -9,4 +9,6 @@ */ public interface IEquipmentXYZService extends IService<EquipmentXYZ> { EquipmentXYZ getByEquipmentId(String equipmentId); + + EquipmentXYZ findByEquipmentId(String equipmentId); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentXYZServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentXYZServiceImpl.java index bf71411..364cc6c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentXYZServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentXYZServiceImpl.java @@ -17,4 +17,9 @@ public EquipmentXYZ getByEquipmentId(String equipmentId) { return this.getOne(new LambdaQueryWrapper<EquipmentXYZ>().eq(EquipmentXYZ::getEquipmentid, equipmentId)); } + + @Override + public EquipmentXYZ findByEquipmentId(String equipmentId) { + return this.baseMapper.findByEquipmentId(equipmentId); + } } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java index d9ef6a6..feb3306 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java @@ -204,7 +204,7 @@ //鑾峰彇璁惧杩愯鏁版嵁 MdcEquipmentStatisticalShiftInfo mdcEquipmentStatisticalShiftInfo = mdcEquipmentStatisticalShiftInfoService.getOne(new LambdaQueryWrapper<MdcEquipmentStatisticalShiftInfo>() .eq(MdcEquipmentStatisticalShiftInfo::getEquipmentId, equipment.getEquipmentid()) - .eq(MdcEquipmentStatisticalShiftInfo::getTheDate, validDate) + .eq(MdcEquipmentStatisticalShiftInfo::getTheDate, validDate.replaceAll("-", "")) .eq(MdcEquipmentStatisticalShiftInfo::getShiftSubId, id)); if (mdcEquipmentStatisticalShiftInfo == null) { continue; diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/controller/MdcSubLargeScreenController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/controller/MdcSubLargeScreenController.java index 4f0fb3f..df7ca86 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/controller/MdcSubLargeScreenController.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/controller/MdcSubLargeScreenController.java @@ -6,11 +6,13 @@ import org.jeecg.common.api.vo.Result; import org.jeecg.modules.mdc.entity.EquipmentAlarm; import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor; +import org.jeecg.modules.screen.dto.EquipmentInfoDto; import org.jeecg.modules.screen.dto.MdcProductDayscheduleDto; import org.jeecg.modules.screen.dto.ToolLifeDto; import org.jeecg.modules.screen.service.MdcSubLargeScreenService; 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; import javax.annotation.Resource; @@ -57,5 +59,12 @@ return Result.ok(result); } + @ApiOperation(value = "鍒嗘帶鐪嬫澘-璁惧璇︾粏淇℃伅", notes = "鍒嗘帶鐪嬫澘-璁惧璇︾粏淇℃伅") + @GetMapping("/equipmentInfo") + public Result<?> equipmentInfo(@RequestParam(name = "equipmentId", required = true) String equipmentId) { + EquipmentInfoDto result = mdcSubLargeScreenService.equipmentInfo(equipmentId); + return Result.ok(result); + } + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentInfoDto.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentInfoDto.java new file mode 100644 index 0000000..b9f7604 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentInfoDto.java @@ -0,0 +1,126 @@ +package org.jeecg.modules.screen.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author Lius + * @date 2024/10/31 10:20 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "璁惧璇︾粏淇℃伅", description = "閲囬泦璁惧琛�") +public class EquipmentInfoDto { + + /** + * 璁惧缂栫爜 + */ + @ApiModelProperty(value = "璁惧缂栫爜") + private String equipmentId; + /** + * 璁惧鍚嶇О + */ + @ApiModelProperty(value = "璁惧鍚嶇О") + private String equipmentName; + /** + * 璁惧鍨嬪彿 + */ + @ApiModelProperty(value = "璁惧鍨嬪彿") + private String equipmentModel; + /** + * 鏈�澶ц酱鏁� + */ + @ApiModelProperty(value = "鏈�澶ц酱鏁�") + private String maxAxis; + /** + * 鏈夋晥杞存暟 + */ + @ApiModelProperty(value = "鏈夋晥杞存暟") + private String validAxis; + /** + * 璁惧IP + */ + @ApiModelProperty(value = "璁惧IP") + private String equipmentIp; + /** + * 杩涚粰鍊嶇巼 + */ + @ApiModelProperty(value = "杩涚粰鍊嶇巼") + private String feedbeilv; + /** + * 涓昏酱鍊嶇巼 + */ + @ApiModelProperty(value = "涓昏酱鍊嶇巼") + private String spindlebeilv; + /** + * 涓昏酱璐熻浇 + */ + @ApiModelProperty(value = "涓昏酱璐熻浇") + private String spindleload; + /** + * 涓昏酱杞�� + */ + @ApiModelProperty(value = "涓昏酱杞��") + private String spindlespeed; + /** + * 杩涚粰閫熷害 + */ + @ApiModelProperty(value = "杩涚粰閫熷害") + private String feedrate; + + + /** + * 杩愯妯″紡 + */ + @ApiModelProperty(value = "杩愯妯″紡") + private String runModble; + /** + * 宸ヤ綔鐘舵�� + */ + @ApiModelProperty(value = "宸ヤ綔鐘舵��") + private String workstate; + /** + * 鎬ュ仠鐘舵�� + */ + @ApiModelProperty(value = "鎬ュ仠鐘舵��") + private String emergency; + /** + * 鏁版帶绯荤粺鍨嬪彿 + */ + @ApiModelProperty(value = "鏁版帶绯荤粺鍨嬪彿") + private String controlsystem; + /** + * 鍒�鍏峰彿 + */ + @ApiModelProperty(value = "鍒�鍏峰彿") + private String ToolNum; + + + /** + * 鎵ц浠g爜 + */ + @ApiModelProperty(value = "鎵ц浠g爜") + private String executingcode; + /** + * 绋嬪簭鍙� + */ + @ApiModelProperty(value = "绋嬪簭鍙�") + private String Sequencenumber; + /** + * 瀛愮▼搴忓彿 + */ + @ApiModelProperty(value = "瀛愮▼搴忓彿") + private String ProductName; + + /** + * 杞翠俊鎭� + */ + @ApiModelProperty(value = "杞翠俊鎭�") + private List<EquipmentXYZDto> xyzDtoList; +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentXYZDto.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentXYZDto.java new file mode 100644 index 0000000..fb4cf4b --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/EquipmentXYZDto.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.screen.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @author Lius + * @date 2024/10/31 10:51 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "璁惧杞翠俊鎭�", description = "閲囬泦璁惧琛�") +public class EquipmentXYZDto { + + @ApiModelProperty(value = "杞寸被鍨�") + private String axisType; + @ApiModelProperty(value = "缁濆鍧愭爣") + private String absolute; + @ApiModelProperty(value = "鏈哄簥鍧愭爣") + private String machine; + @ApiModelProperty(value = "鐩稿鍧愭爣") + private String relative; + @ApiModelProperty(value = "杞存俯搴�") + private String temperature = "0"; + @ApiModelProperty(value = "浼烘湇璺熼殢璇樊") + private String lag = "0.000"; +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/MdcSubLargeScreenService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/MdcSubLargeScreenService.java index 70008dd..78ade73 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/MdcSubLargeScreenService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/MdcSubLargeScreenService.java @@ -2,6 +2,7 @@ import org.jeecg.modules.mdc.entity.EquipmentAlarm; import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor; +import org.jeecg.modules.screen.dto.EquipmentInfoDto; import org.jeecg.modules.screen.dto.MdcProductDayscheduleDto; import org.jeecg.modules.screen.dto.ToolLifeDto; @@ -43,4 +44,12 @@ * @return */ List<ToolLifeDto> toolLifeList(String productionId); + + /** + * 鍒嗘帶鐪嬫澘璁惧璇︾粏淇℃伅 + * + * @param equipmentId + * @return + */ + EquipmentInfoDto equipmentInfo(String equipmentId); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcSubLargeScreenServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcSubLargeScreenServiceImpl.java index 1e18d1b..1a9272c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcSubLargeScreenServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcSubLargeScreenServiceImpl.java @@ -1,12 +1,25 @@ package org.jeecg.modules.screen.service.impl; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.system.vo.DictModel; +import org.jeecg.modules.mdc.entity.Equipment; import org.jeecg.modules.mdc.entity.EquipmentAlarm; +import org.jeecg.modules.mdc.entity.EquipmentXYZ; import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor; import org.jeecg.modules.mdc.mapper.EquipmentAlarmMapper; +import org.jeecg.modules.mdc.mapper.EquipmentMapper; +import org.jeecg.modules.mdc.service.IEquipmentService; +import org.jeecg.modules.mdc.service.IEquipmentWorkLineService; +import org.jeecg.modules.mdc.service.IEquipmentXYZService; +import org.jeecg.modules.screen.dto.EquipmentInfoDto; +import org.jeecg.modules.screen.dto.EquipmentXYZDto; import org.jeecg.modules.screen.dto.MdcProductDayscheduleDto; import org.jeecg.modules.screen.dto.ToolLifeDto; import org.jeecg.modules.screen.mapper.MdcSubLargeScreenMapper; import org.jeecg.modules.screen.service.MdcSubLargeScreenService; +import org.jeecg.modules.system.service.ISysDictService; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -18,6 +31,7 @@ import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; +import java.util.Map; /** * @author Lius @@ -31,6 +45,18 @@ @Resource private EquipmentAlarmMapper equipmentAlarmMapper; + + @Resource + private IEquipmentService equipmentService; + + @Resource + private IEquipmentWorkLineService equipmentWorkLineService; + + @Resource + private IEquipmentXYZService equipmentXYZService; + + @Resource + private ISysDictService sysDictService; private final String today = LocalDate.now().toString(); @@ -111,12 +137,79 @@ */ @Override public List<ToolLifeDto> toolLifeList(String productionId) { -// List<ToolLifeDto> toolLifeList = mdcSubLargeScreenMapper.toolLifeList(productionId); -// if (toolLifeList != null && !toolLifeList.isEmpty()) { -// for (ToolLifeDto toolLifeDto : toolLifeList) { -// toolLifeDto.setTId("T" + toolLifeDto.getTId()); -// } -// } return mdcSubLargeScreenMapper.toolLifeList(productionId); } + + /** + * 璁惧璇︾粏淇℃伅 + * + * @param equipmentId + * @return + */ + @Override + public EquipmentInfoDto equipmentInfo(String equipmentId) { + EquipmentInfoDto equipmentInfoDto = new EquipmentInfoDto(); + Equipment equipment = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, equipmentId)); + if (equipment == null) { + return null; + } + equipmentInfoDto.setEquipmentId(equipment.getEquipmentid()); + equipmentInfoDto.setEquipmentName(equipment.getEquipmentname()); + equipmentInfoDto.setEquipmentModel(equipment.getEquipmentmodel()); + equipmentInfoDto.setEquipmentIp(equipment.getEquipmentip()); + equipmentInfoDto.setControlsystem(equipment.getControlsystem()); + switch (equipment.getOporation()) { + case 1: + case 2: + equipmentInfoDto.setWorkstate("寰呮満"); + break; + case 3: + equipmentInfoDto.setWorkstate("杩愯"); + break; + case 22: + equipmentInfoDto.setWorkstate("鎶ヨ"); + break; + default: + equipmentInfoDto.setWorkstate("鍏虫満"); + break; + } + String saveTableName = equipment.getSavetablename(); + Map<String, Object> mapData = equipmentWorkLineService.getDataList(saveTableName); + if (mapData != null) { + equipmentInfoDto.setRunModble(mapData.get("runModble") == null ? "0" : mapData.get("runModble").toString()); + equipmentInfoDto.setEmergency(mapData.get("emergency") == null ? "0" : mapData.get("emergency").toString()); + equipmentInfoDto.setToolNum(mapData.get("Toolnum") == null ? "0" : mapData.get("Toolnum").toString()); + equipmentInfoDto.setMaxAxis(mapData.get("maxaxisNUM") == null ? "0" : mapData.get("maxaxisNUM").toString()); + equipmentInfoDto.setValidAxis(mapData.get("validaxisNUM") == null ? "0": mapData.get("validaxisNUM").toString()); + equipmentInfoDto.setFeedbeilv(mapData.get("feedbeilv") == null ? "0" : mapData.get("feedbeilv").toString()); + equipmentInfoDto.setSpindlebeilv(mapData.get("spindlebeilv") == null ? "0" : mapData.get("spindlebeilv").toString()); + equipmentInfoDto.setSpindleload(mapData.get("spindleload") == null ? "0" : mapData.get("spindleload").toString()); + equipmentInfoDto.setSpindlespeed(mapData.get("spindlespeed") == null ? "0" : mapData.get("spindlespeed").toString()); + equipmentInfoDto.setFeedrate(mapData.get("feedrate") == null ? "0" : mapData.get("feedrate").toString()); + equipmentInfoDto.setExecutingcode(mapData.get("executingcode") == null ? "0" : mapData.get("executingcode").toString()); + equipmentInfoDto.setSequencenumber(mapData.get("Sequencenumber") == null ? "0" : mapData.get("Sequencenumber").toString()); + equipmentInfoDto.setProductName(mapData.get("ProductName") == null ? "0" : mapData.get("ProductName").toString()); + } + //杞翠俊鎭� + List<DictModel> dictList = sysDictService.queryEnableDictItemsByCode(CommonConstant.AXIS_TYPE); + List<EquipmentXYZDto> equipmentXYZDtoList = new ArrayList<>(); + if (dictList != null && !dictList.isEmpty()) { + EquipmentXYZ equipmentXYZ = equipmentXYZService.findByEquipmentId(equipmentId); + JSONObject jsonEquipmentXYZ = (JSONObject) JSONObject.toJSON(equipmentXYZ); + for (DictModel dictModel : dictList) { + EquipmentXYZDto equipmentXYZDto = new EquipmentXYZDto(); + equipmentXYZDto.setAxisType(dictModel.getText()); + equipmentXYZDto.setAbsolute(jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Machine") == null ? null : jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Machine").toString()); + equipmentXYZDto.setMachine(jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Machine") == null ? null : jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Machine").toString()); + equipmentXYZDto.setRelative(jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Absolute") == null ? null : jsonEquipmentXYZ.get(dictModel.getText().toLowerCase() + "Absolute").toString()); + if (mapData != null) { + equipmentXYZDto.setTemperature(mapData.get("motorTemperature" + dictModel.getText()) == null ? "0" : mapData.get("motorTemperature" + dictModel.getText()).toString()); + equipmentXYZDto.setLag(mapData.get("lag" + dictModel.getValue()) == null ? "0.000" : mapData.get("lag" + dictModel.getValue()).toString()); + } + equipmentXYZDtoList.add(equipmentXYZDto); + } + equipmentInfoDto.setXyzDtoList(equipmentXYZDtoList); + } + return equipmentInfoDto; + } } -- Gitblit v1.9.3