update Dms报警规则关系信息、机台添加字段

master
yinq 1 week ago
parent 5a012a38ff
commit aeb72a2501

@ -112,5 +112,27 @@ public class BaseAlarmRule extends TenantEntity {
*/
private String remark;
/**
*
*/
@TableField(exist = false)
private String alarmLevelName;
/**
*
*/
@TableField(exist = false)
private String alarmTypeName;
/**
*
*/
@TableField(exist = false)
private String ruleDeviceName;
/**
*
*/
@TableField(exist = false)
private String ruleDeviceModeName;
}

@ -28,19 +28,19 @@ public class BaseAlarmRuleBo extends BaseEntity {
/**
*
*/
@NotBlank(message = "规则名称不能为空", groups = { AddGroup.class, EditGroup.class })
@NotBlank(message = "规则名称不能为空", groups = {AddGroup.class, EditGroup.class})
private String alarmRuleName;
/**
* hw_alarm_levelalarm_level_id
*/
@NotNull(message = "报警级别关联表hw_alarm_level字段alarm_level_id不能为空", groups = { AddGroup.class, EditGroup.class })
@NotNull(message = "报警级别", groups = {AddGroup.class, EditGroup.class})
private Long alarmLevelId;
/**
* hw_alarm_typealarm_type_id
*/
@NotNull(message = "报警类型关联表hw_alarm_type字段alarm_type_id不能为空", groups = { AddGroup.class, EditGroup.class })
@NotNull(message = "报警类型", groups = {AddGroup.class, EditGroup.class})
private Long alarmTypeId;
/**
@ -66,6 +66,7 @@ public class BaseAlarmRuleBo extends BaseEntity {
/**
* :{}>60 or {}<-88
*/
@NotBlank(message = "表达式不能为空", groups = {AddGroup.class, EditGroup.class})
private String triggerExpression;
/**

@ -141,5 +141,28 @@ public class BaseAlarmRuleVo implements Serializable {
@ExcelProperty(value = "描述")
private String remark;
/**
*
*/
@ExcelProperty(value = "报警级别名称")
private String alarmLevelName;
/**
*
*/
@ExcelProperty(value = "报警类型名称")
private String alarmTypeName;
/**
*
*/
@ExcelProperty(value = "设备名称")
private String ruleDeviceName;
/**
*
*/
@ExcelProperty(value = "设备模型名称")
private String ruleDeviceModeName;
}

@ -7,8 +7,10 @@ import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.dms.domain.BaseAlarmLevel;
import org.dromara.dms.domain.BaseAlarmType;
import org.dromara.dms.domain.DmsDeviceMode;
import org.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.BaseAlarmRuleBo;
import org.dromara.dms.domain.vo.BaseAlarmRuleVo;
@ -39,7 +41,7 @@ public class BaseAlarmRuleServiceImpl implements IBaseAlarmRuleService {
* @return
*/
@Override
public BaseAlarmRuleVo queryById(Long alarmRuleId){
public BaseAlarmRuleVo queryById(Long alarmRuleId) {
return baseMapper.selectVoById(alarmRuleId);
}
@ -73,6 +75,12 @@ public class BaseAlarmRuleServiceImpl implements IBaseAlarmRuleService {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseAlarmRule> lqw = JoinWrappers.lambda(BaseAlarmRule.class)
.selectAll(BaseAlarmRule.class)
.select(BaseAlarmLevel::getAlarmLevelName)
.select(BaseAlarmType::getAlarmTypeName)
.select(DmsDeviceMode::getDeviceModeName)
.leftJoin(BaseAlarmLevel.class, BaseAlarmLevel::getAlarmLevelId, BaseAlarmRule::getAlarmLevelId)
.leftJoin(BaseAlarmType.class, BaseAlarmType::getAlarmTypeId, BaseAlarmRule::getAlarmTypeId)
.leftJoin(DmsDeviceMode.class, DmsDeviceMode::getDeviceModeId, BaseAlarmRule::getRuleDeviceModeId)
.eq(bo.getAlarmRuleId() != null, BaseAlarmRule::getAlarmRuleId, bo.getAlarmRuleId())
.like(StringUtils.isNotBlank(bo.getAlarmRuleName()), BaseAlarmRule::getAlarmRuleName, bo.getAlarmRuleName())
.eq(bo.getAlarmLevelId() != null, BaseAlarmRule::getAlarmLevelId, bo.getAlarmLevelId())
@ -127,7 +135,7 @@ public class BaseAlarmRuleServiceImpl implements IBaseAlarmRuleService {
/**
*
*/
private void validEntityBeforeSave(BaseAlarmRule entity){
private void validEntityBeforeSave(BaseAlarmRule entity) {
//TODO 做一些数据校验,如唯一约束
}
@ -140,7 +148,7 @@ public class BaseAlarmRuleServiceImpl implements IBaseAlarmRuleService {
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
if (isValid) {
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;

@ -0,0 +1,53 @@
package org.dromara.mes.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.tenant.core.TenantEntity;
import java.io.Serial;
/**
* dms_device_mode
*
* @author Yinq
* @date 2025-03-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("dms_device_mode")
public class ProdBaseDeviceMode extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "device_mode_id", type = IdType.AUTO)
private Long deviceModeId;
/**
*
*/
private String deviceModeName;
/**
* 19
*/
private String deviceModeStatus;
/**
*
*/
private String deviceModePic;
/**
*
*/
private String remark;
}

@ -77,9 +77,60 @@ public class ProdBaseMachineInfo extends TenantEntity {
*/
private Long workshopId;
/**
* dms_device_mode
*/
private Long deviceModeId;
/**
* IP
*/
private String machineIp;
/**
*
*/
private Long machinePort;
/**
*
*/
private String accessProtocol;
/**
*
*/
private String registerAddress;
/**
* 1bool2short3int4long5float6byte7ushort8uint9ulong10double11
*/
private String dataType;
/**
*
*/
private Long dataLength;
/**
* 1ASCII,2Unicode,3Unicode-big,4UTF-8,5UTF-32,6ANSI,7GB2312
*/
private String dataEncoding;
/**
*
*/
private Long requestInterval;
/**
*
*/
@TableField(exist = false)
private String workshopName;
/**
*
*/
@TableField(exist = false)
private String deviceModeName;
}

@ -1,5 +1,6 @@
package org.dromara.mes.domain.bo;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.mes.domain.ProdBaseMachineInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
@ -85,5 +86,59 @@ public class ProdBaseMachineInfoBo extends BaseEntity {
*/
private Long workshopId;
/**
* dms_device_mode
*/
@ExcelProperty(value = "设备模型关联设备模型dms_device_mode")
private Long deviceModeId;
/**
* IP
*/
@ExcelProperty(value = "设备IP地址")
private String machineIp;
/**
*
*/
@ExcelProperty(value = "设备端口")
private Long machinePort;
/**
*
*/
@ExcelProperty(value = "设备协议")
private String accessProtocol;
/**
*
*/
@ExcelProperty(value = "寄存器地址")
private String registerAddress;
/**
* 1bool2short3int4long5float6byte7ushort8uint9ulong10double11
*/
@ExcelProperty(value = "数据类型")
private String dataType;
/**
*
*/
@ExcelProperty(value = "数据长度")
private Long dataLength;
/**
* 1ASCII,2Unicode,3Unicode-big,4UTF-8,5UTF-32,6ANSI,7GB2312
*/
@ExcelProperty(value = "数据编码格式")
private String dataEncoding;
/**
*
*/
@ExcelProperty(value = "请求间隔")
private Long requestInterval;
private List<ProdBaseMachineProcess> baseMachineProcessList;
}

@ -131,12 +131,72 @@ public class ProdBaseMachineInfoVo implements Serializable {
*/
private Long workshopId;
/**
* dms_device_mode
*/
@ExcelProperty(value = "设备模型关联设备模型dms_device_mode")
private Long deviceModeId;
/**
* IP
*/
@ExcelProperty(value = "设备IP地址")
private String machineIp;
/**
*
*/
@ExcelProperty(value = "设备端口")
private Long machinePort;
/**
*
*/
@ExcelProperty(value = "设备协议")
private String accessProtocol;
/**
*
*/
@ExcelProperty(value = "寄存器地址")
private String registerAddress;
/**
* 1bool2short3int4long5float6byte7ushort8uint9ulong10double11
*/
@ExcelProperty(value = "数据类型")
private String dataType;
/**
*
*/
@ExcelProperty(value = "数据长度")
private Long dataLength;
/**
* 1ASCII,2Unicode,3Unicode-big,4UTF-8,5UTF-32,6ANSI,7GB2312
*/
@ExcelProperty(value = "数据编码格式")
private String dataEncoding;
/**
*
*/
@ExcelProperty(value = "请求间隔")
private Long requestInterval;
/**
*
*/
@ExcelProperty(value = "车间名称")
private String workshopName;
/**
*
*/
@ExcelProperty(value = "设备模型名称")
private String deviceModeName;
private List<ProdBaseMachineProcess> baseMachineProcessList;
}

@ -0,0 +1,14 @@
package org.dromara.mes.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.mes.domain.ProdBaseDeviceMode;
/**
* Mapper
*
* @author Yinq
* @date 2025-03-11
*/
public interface prodBaseDeviceModeMapper extends BaseMapperPlus<ProdBaseDeviceMode, ProdBaseDeviceMode> {
}

@ -96,7 +96,9 @@ public class ProdBaseMachineInfoServiceImpl implements IProdBaseMachineInfoServi
MPJLambdaWrapper<ProdBaseMachineInfo> lqw = JoinWrappers.lambda(ProdBaseMachineInfo.class)
.selectAll(ProdBaseMachineInfo.class)
.select(ProdBaseWorkshopInfo::getWorkshopName)
.select(ProdBaseDeviceMode::getDeviceModeName)
.leftJoin(ProdBaseWorkshopInfo.class, ProdBaseWorkshopInfo::getWorkshopId, ProdBaseMachineInfo::getWorkshopId)
.leftJoin(ProdBaseDeviceMode.class, ProdBaseDeviceMode::getDeviceModeId, ProdBaseMachineInfo::getDeviceModeId)
.eq(bo.getMachineId() != null, ProdBaseMachineInfo::getMachineId, bo.getMachineId())
.like(StringUtils.isNotBlank(bo.getMachineCode()), ProdBaseMachineInfo::getMachineCode, bo.getMachineCode())
.like(StringUtils.isNotBlank(bo.getMachineName()), ProdBaseMachineInfo::getMachineName, bo.getMachineName())

Loading…
Cancel
Save