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; 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); } 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> 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); } 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); } } 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; 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); } } 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; /** * æ§è¡ä»£ç */ @ApiModelProperty(value = "æ§è¡ä»£ç ") private String executingcode; /** * ç¨åºå· */ @ApiModelProperty(value = "ç¨åºå·") private String Sequencenumber; /** * åç¨åºå· */ @ApiModelProperty(value = "åç¨åºå·") private String ProductName; /** * è½´ä¿¡æ¯ */ @ApiModelProperty(value = "è½´ä¿¡æ¯") private List<EquipmentXYZDto> xyzDtoList; } 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"; } 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); } 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; } }