Merge remote-tracking branch 'origin/master'

master
wanghao
commit 7f85222d6a

@ -0,0 +1,117 @@
package org.dromara.dms.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.dms.domain.vo.BaseAlarmLevelVo;
import org.dromara.dms.domain.bo.BaseAlarmLevelBo;
import org.dromara.dms.service.IBaseAlarmLevelService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
*
* 访:/dms/alarmLevel
*
* @author Yinq
* @date 2025-03-17
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/alarmLevel")
public class BaseAlarmLevelController extends BaseController {
private final IBaseAlarmLevelService baseAlarmLevelService;
/**
*
*/
@SaCheckPermission("dms:alarmLevel:list")
@GetMapping("/list")
public TableDataInfo<BaseAlarmLevelVo> list(BaseAlarmLevelBo bo, PageQuery pageQuery) {
return baseAlarmLevelService.queryPageList(bo, pageQuery);
}
/**
*
*/
@SaCheckPermission("dms:alarmLevel:export")
@Log(title = "报警级别", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(BaseAlarmLevelBo bo, HttpServletResponse response) {
List<BaseAlarmLevelVo> list = baseAlarmLevelService.queryList(bo);
ExcelUtil.exportExcel(list, "报警级别", BaseAlarmLevelVo.class, response);
}
/**
*
*
* @param alarmLevelId
*/
@SaCheckPermission("dms:alarmLevel:query")
@GetMapping("/{alarmLevelId}")
public R<BaseAlarmLevelVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long alarmLevelId) {
return R.ok(baseAlarmLevelService.queryById(alarmLevelId));
}
/**
*
*/
@SaCheckPermission("dms:alarmLevel:add")
@Log(title = "报警级别", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody BaseAlarmLevelBo bo) {
return toAjax(baseAlarmLevelService.insertByBo(bo));
}
/**
*
*/
@SaCheckPermission("dms:alarmLevel:edit")
@Log(title = "报警级别", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody BaseAlarmLevelBo bo) {
return toAjax(baseAlarmLevelService.updateByBo(bo));
}
/**
*
*
* @param alarmLevelIds
*/
@SaCheckPermission("dms:alarmLevel:remove")
@Log(title = "报警级别", businessType = BusinessType.DELETE)
@DeleteMapping("/{alarmLevelIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] alarmLevelIds) {
return toAjax(baseAlarmLevelService.deleteWithValidByIds(List.of(alarmLevelIds), true));
}
/**
*
*/
@GetMapping("/getBaseAlarmLevelList")
public R<List<BaseAlarmLevelVo>> getBaseAlarmLevelList(BaseAlarmLevelBo bo) {
List<BaseAlarmLevelVo> list = baseAlarmLevelService.queryList(bo);
return R.ok(list);
}
}

@ -0,0 +1,117 @@
package org.dromara.dms.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.dms.domain.vo.BaseAlarmRuleVo;
import org.dromara.dms.domain.bo.BaseAlarmRuleBo;
import org.dromara.dms.service.IBaseAlarmRuleService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
*
* 访:/dms/alarmRule
*
* @author Yinq
* @date 2025-03-17
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/alarmRule")
public class BaseAlarmRuleController extends BaseController {
private final IBaseAlarmRuleService baseAlarmRuleService;
/**
*
*/
@SaCheckPermission("dms:alarmRule:list")
@GetMapping("/list")
public TableDataInfo<BaseAlarmRuleVo> list(BaseAlarmRuleBo bo, PageQuery pageQuery) {
return baseAlarmRuleService.queryPageList(bo, pageQuery);
}
/**
*
*/
@SaCheckPermission("dms:alarmRule:export")
@Log(title = "报警规则", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(BaseAlarmRuleBo bo, HttpServletResponse response) {
List<BaseAlarmRuleVo> list = baseAlarmRuleService.queryList(bo);
ExcelUtil.exportExcel(list, "报警规则", BaseAlarmRuleVo.class, response);
}
/**
*
*
* @param alarmRuleId
*/
@SaCheckPermission("dms:alarmRule:query")
@GetMapping("/{alarmRuleId}")
public R<BaseAlarmRuleVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long alarmRuleId) {
return R.ok(baseAlarmRuleService.queryById(alarmRuleId));
}
/**
*
*/
@SaCheckPermission("dms:alarmRule:add")
@Log(title = "报警规则", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody BaseAlarmRuleBo bo) {
return toAjax(baseAlarmRuleService.insertByBo(bo));
}
/**
*
*/
@SaCheckPermission("dms:alarmRule:edit")
@Log(title = "报警规则", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody BaseAlarmRuleBo bo) {
return toAjax(baseAlarmRuleService.updateByBo(bo));
}
/**
*
*
* @param alarmRuleIds
*/
@SaCheckPermission("dms:alarmRule:remove")
@Log(title = "报警规则", businessType = BusinessType.DELETE)
@DeleteMapping("/{alarmRuleIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] alarmRuleIds) {
return toAjax(baseAlarmRuleService.deleteWithValidByIds(List.of(alarmRuleIds), true));
}
/**
*
*/
@GetMapping("/getBaseAlarmRuleList")
public R<List<BaseAlarmRuleVo>> getBaseAlarmRuleList(BaseAlarmRuleBo bo) {
List<BaseAlarmRuleVo> list = baseAlarmRuleService.queryList(bo);
return R.ok(list);
}
}

@ -0,0 +1,117 @@
package org.dromara.dms.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.dms.domain.vo.BaseAlarmRuleLinkVo;
import org.dromara.dms.domain.bo.BaseAlarmRuleLinkBo;
import org.dromara.dms.service.IBaseAlarmRuleLinkService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
*
* 访:/dms/alarmRuleLink
*
* @author Yinq
* @date 2025-03-17
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/alarmRuleLink")
public class BaseAlarmRuleLinkController extends BaseController {
private final IBaseAlarmRuleLinkService baseAlarmRuleLinkService;
/**
*
*/
@SaCheckPermission("dms:alarmRuleLink:list")
@GetMapping("/list")
public TableDataInfo<BaseAlarmRuleLinkVo> list(BaseAlarmRuleLinkBo bo, PageQuery pageQuery) {
return baseAlarmRuleLinkService.queryPageList(bo, pageQuery);
}
/**
*
*/
@SaCheckPermission("dms:alarmRuleLink:export")
@Log(title = "报警规则联动信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(BaseAlarmRuleLinkBo bo, HttpServletResponse response) {
List<BaseAlarmRuleLinkVo> list = baseAlarmRuleLinkService.queryList(bo);
ExcelUtil.exportExcel(list, "报警规则联动信息", BaseAlarmRuleLinkVo.class, response);
}
/**
*
*
* @param ruleLinkId
*/
@SaCheckPermission("dms:alarmRuleLink:query")
@GetMapping("/{ruleLinkId}")
public R<BaseAlarmRuleLinkVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long ruleLinkId) {
return R.ok(baseAlarmRuleLinkService.queryById(ruleLinkId));
}
/**
*
*/
@SaCheckPermission("dms:alarmRuleLink:add")
@Log(title = "报警规则联动信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody BaseAlarmRuleLinkBo bo) {
return toAjax(baseAlarmRuleLinkService.insertByBo(bo));
}
/**
*
*/
@SaCheckPermission("dms:alarmRuleLink:edit")
@Log(title = "报警规则联动信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody BaseAlarmRuleLinkBo bo) {
return toAjax(baseAlarmRuleLinkService.updateByBo(bo));
}
/**
*
*
* @param ruleLinkIds
*/
@SaCheckPermission("dms:alarmRuleLink:remove")
@Log(title = "报警规则联动信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ruleLinkIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ruleLinkIds) {
return toAjax(baseAlarmRuleLinkService.deleteWithValidByIds(List.of(ruleLinkIds), true));
}
/**
*
*/
@GetMapping("/getBaseAlarmRuleLinkList")
public R<List<BaseAlarmRuleLinkVo>> getBaseAlarmRuleLinkList(BaseAlarmRuleLinkBo bo) {
List<BaseAlarmRuleLinkVo> list = baseAlarmRuleLinkService.queryList(bo);
return R.ok(list);
}
}

@ -0,0 +1,117 @@
package org.dromara.dms.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.dms.domain.vo.BaseAlarmTypeVo;
import org.dromara.dms.domain.bo.BaseAlarmTypeBo;
import org.dromara.dms.service.IBaseAlarmTypeService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
*
* 访:/dms/alarmType
*
* @author Yinq
* @date 2025-03-17
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/alarmType")
public class BaseAlarmTypeController extends BaseController {
private final IBaseAlarmTypeService baseAlarmTypeService;
/**
*
*/
@SaCheckPermission("dms:alarmType:list")
@GetMapping("/list")
public TableDataInfo<BaseAlarmTypeVo> list(BaseAlarmTypeBo bo, PageQuery pageQuery) {
return baseAlarmTypeService.queryPageList(bo, pageQuery);
}
/**
*
*/
@SaCheckPermission("dms:alarmType:export")
@Log(title = "报警类型", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(BaseAlarmTypeBo bo, HttpServletResponse response) {
List<BaseAlarmTypeVo> list = baseAlarmTypeService.queryList(bo);
ExcelUtil.exportExcel(list, "报警类型", BaseAlarmTypeVo.class, response);
}
/**
*
*
* @param alarmTypeId
*/
@SaCheckPermission("dms:alarmType:query")
@GetMapping("/{alarmTypeId}")
public R<BaseAlarmTypeVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long alarmTypeId) {
return R.ok(baseAlarmTypeService.queryById(alarmTypeId));
}
/**
*
*/
@SaCheckPermission("dms:alarmType:add")
@Log(title = "报警类型", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody BaseAlarmTypeBo bo) {
return toAjax(baseAlarmTypeService.insertByBo(bo));
}
/**
*
*/
@SaCheckPermission("dms:alarmType:edit")
@Log(title = "报警类型", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody BaseAlarmTypeBo bo) {
return toAjax(baseAlarmTypeService.updateByBo(bo));
}
/**
*
*
* @param alarmTypeIds
*/
@SaCheckPermission("dms:alarmType:remove")
@Log(title = "报警类型", businessType = BusinessType.DELETE)
@DeleteMapping("/{alarmTypeIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] alarmTypeIds) {
return toAjax(baseAlarmTypeService.deleteWithValidByIds(List.of(alarmTypeIds), true));
}
/**
*
*/
@GetMapping("/getBaseAlarmTypeList")
public R<List<BaseAlarmTypeVo>> getBaseAlarmTypeList(BaseAlarmTypeBo bo) {
List<BaseAlarmTypeVo> list = baseAlarmTypeService.queryList(bo);
return R.ok(list);
}
}

@ -0,0 +1,57 @@
package org.dromara.dms.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* base_alarm_level
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_alarm_level")
public class BaseAlarmLevel extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "alarm_level_id", type = IdType.AUTO)
private Long alarmLevelId;
/**
*
*/
private String alarmLevelName;
/**
*
*/
private Long levelNumber;
/**
* 19
*/
@TableLogic(value="1", delval="9")
private String levelStatus;
/**
* 12345,
*/
private String defaultNotifyMode;
/**
*
*/
private String remark;
}

@ -0,0 +1,116 @@
package org.dromara.dms.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* base_alarm_rule
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_alarm_rule")
public class BaseAlarmRule extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "alarm_rule_id", type = IdType.AUTO)
private Long alarmRuleId;
/**
*
*/
private String alarmRuleName;
/**
* hw_alarm_levelalarm_level_id
*/
private Long alarmLevelId;
/**
* hw_alarm_typealarm_type_id
*/
private Long alarmTypeId;
/**
* 12
*/
private String ruleType;
/**
* hw_devicedevice_id
*/
private Long ruleDeviceId;
/**
* hw_device_modedevice_mode_id
*/
private Long ruleDeviceModeId;
/**
*
*/
private Long ruleFunctionTotal;
/**
* :{}>60 or {}<-88
*/
private String triggerExpression;
/**
* 10
*/
private String linkFlag;
/**
* (10
*/
private String alarmRuleStatus;
/**
* (10
*/
private String alarmPushFlag;
/**
*
*/
private String alarmPushContent;
/**
*
*/
private String alarmRecoverContent;
/**
*
*/
private Long triggerTimeFrame;
/**
*
*/
private Long triggerNumber;
/**
*
*/
private Long triggerDeadzone;
/**
*
*/
private String remark;
}

@ -0,0 +1,66 @@
package org.dromara.dms.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* base_alarm_rule_link
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_alarm_rule_link")
public class BaseAlarmRuleLink extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "rule_link_id", type = IdType.AUTO)
private Long ruleLinkId;
/**
* (1=,2=线)
*/
private String alarmRuleType;
/**
* IDhw_alarm_rulealarm_rule_id
*/
private Long alarmRuleId;
/**
* 12
*/
private String linkType;
/**
* hw_devicedevice_id
*/
private Long linkDeviceId;
/**
* hw_device_mode_functionmode_function_id
*/
private Long linkDeviceFunctionId;
/**
* 线30
*/
private String linkDeviceFunctionIdentifier;
/**
* json
*/
private String linkDeviceFunctionData;
}

@ -0,0 +1,73 @@
package org.dromara.dms.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* base_alarm_type
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_alarm_type")
public class BaseAlarmType extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "alarm_type_id", type = IdType.AUTO)
private Long alarmTypeId;
/**
*
*/
private String alarmTypeCode;
/**
*
*/
private String alarmTypeName;
/**
* ID
*/
private Long deviceCategoryId;
/**
* ID
*/
private Long deviceTypeId;
/**
* 19
*/
@TableLogic(value="1", delval="9")
private String typeStatus;
/**
*
*/
private String remark;
/**
*
*/
@TableField(exist = false)
private String deviceCategoryName;
/**
*
*/
@TableField(exist = false)
private String deviceTypeName;
}

@ -0,0 +1,53 @@
package org.dromara.dms.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;
/**
* base_device_category
*
* @author xins
* @date 2025-02-21
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_device_category")
public class DmsBaseDeviceCategory extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "device_category_id", type = IdType.AUTO)
private Long deviceCategoryId;
/**
*
*/
private String deviceCategoryCode;
/**
*
*/
private String deviceCategoryName;
/**
* 1 0
*/
private String activeFlag;
/**
*
*/
private String remark;
}

@ -0,0 +1,65 @@
package org.dromara.dms.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.tenant.core.TenantEntity;
import java.io.Serial;
/**
* base_device_type
*
* @author xins
* @date 2025-02-21
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_device_type")
public class DmsBaseDeviceType extends TenantEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
private Long deviceTypeId;
/**
*
*/
private Long parentId;
/**
*
*/
private String deviceTypeCode;
/**
*
*/
private String deviceTypeName;
/**
*
*/
private String ancestors;
/**
* IDIDbase_categorycategory_type2
*/
private Long deviceCategoryId;
/**
* 1 0
*/
private String activeFlag;
/**
*
*/
private String remark;
}

@ -0,0 +1,56 @@
package org.dromara.dms.domain.bo;
import org.dromara.dms.domain.BaseAlarmLevel;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* base_alarm_level
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BaseAlarmLevel.class, reverseConvertGenerate = false)
public class BaseAlarmLevelBo extends BaseEntity {
/**
* ID
*/
private Long alarmLevelId;
/**
*
*/
@NotBlank(message = "报警级别名称不能为空", groups = {AddGroup.class, EditGroup.class})
private String alarmLevelName;
/**
*
*/
private Long levelNumber;
/**
* 19
*/
private String levelStatus;
/**
* 12345,
*/
@NotBlank(message = "默认通知方式1、邮箱2、短信3、钉钉4、微信公众号5、企业微信多个保存用,隔开。不能为空", groups = {AddGroup.class, EditGroup.class})
private String defaultNotifyMode;
/**
*
*/
private String remark;
}

@ -0,0 +1,117 @@
package org.dromara.dms.domain.bo;
import org.dromara.dms.domain.BaseAlarmRule;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* base_alarm_rule
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BaseAlarmRule.class, reverseConvertGenerate = false)
public class BaseAlarmRuleBo extends BaseEntity {
/**
* ID
*/
private Long alarmRuleId;
/**
*
*/
@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 })
private Long alarmLevelId;
/**
* hw_alarm_typealarm_type_id
*/
@NotNull(message = "报警类型关联表hw_alarm_type字段alarm_type_id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long alarmTypeId;
/**
* 12
*/
private String ruleType;
/**
* hw_devicedevice_id
*/
private Long ruleDeviceId;
/**
* hw_device_modedevice_mode_id
*/
private Long ruleDeviceModeId;
/**
*
*/
private Long ruleFunctionTotal;
/**
* :{}>60 or {}<-88
*/
private String triggerExpression;
/**
* 10
*/
private String linkFlag;
/**
* (10
*/
private String alarmRuleStatus;
/**
* (10
*/
private String alarmPushFlag;
/**
*
*/
private String alarmPushContent;
/**
*
*/
private String alarmRecoverContent;
/**
*
*/
private Long triggerTimeFrame;
/**
*
*/
private Long triggerNumber;
/**
*
*/
private Long triggerDeadzone;
/**
*
*/
private String remark;
}

@ -0,0 +1,68 @@
package org.dromara.dms.domain.bo;
import org.dromara.dms.domain.BaseAlarmRuleLink;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* base_alarm_rule_link
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BaseAlarmRuleLink.class, reverseConvertGenerate = false)
public class BaseAlarmRuleLinkBo extends BaseEntity {
/**
* ID
*/
private Long ruleLinkId;
/**
* (1=,2=线)
*/
@NotBlank(message = "报警规则类型(1=设备报警规则,2=离线报警规则)不能为空", groups = { AddGroup.class, EditGroup.class })
private String alarmRuleType;
/**
* IDhw_alarm_rulealarm_rule_id
*/
@NotNull(message = "报警规则ID关联hw_alarm_rule的alarm_rule_id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long alarmRuleId;
/**
* 12
*/
@NotBlank(message = "联动类型1、控制2、采集不能为空", groups = { AddGroup.class, EditGroup.class })
private String linkType;
/**
* hw_devicedevice_id
*/
@NotNull(message = "联动设备关联表hw_device字段device_id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long linkDeviceId;
/**
* hw_device_mode_functionmode_function_id
*/
private Long linkDeviceFunctionId;
/**
* 线30
*/
private String linkDeviceFunctionIdentifier;
/**
* json
*/
private String linkDeviceFunctionData;
}

@ -0,0 +1,61 @@
package org.dromara.dms.domain.bo;
import org.dromara.dms.domain.BaseAlarmType;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* base_alarm_type
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = BaseAlarmType.class, reverseConvertGenerate = false)
public class BaseAlarmTypeBo extends BaseEntity {
/**
* ID
*/
private Long alarmTypeId;
/**
*
*/
@NotBlank(message = "报警类型编号不能为空", groups = {AddGroup.class, EditGroup.class})
private String alarmTypeCode;
/**
*
*/
@NotBlank(message = "报警类型名称不能为空", groups = {AddGroup.class, EditGroup.class})
private String alarmTypeName;
/**
* ID
*/
private Long deviceCategoryId;
/**
* ID
*/
private Long deviceTypeId;
/**
* 19
*/
private String typeStatus;
/**
*
*/
private String remark;
}

@ -8,6 +8,9 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import org.dromara.dms.domain.DmsDeviceModeParameter;
import java.util.List;
/**
* dms_device_mode_function
@ -127,5 +130,15 @@ public class DmsDeviceModeFunctionBo extends BaseEntity {
*/
private String propertyField;
/**
*
*/
private List<DmsDeviceModeParameter> inputParametersData;
/**
*
*/
private List<DmsDeviceModeParameter> outputParametersData;
}

@ -0,0 +1,71 @@
package org.dromara.dms.domain.vo;
import org.dromara.dms.domain.BaseAlarmLevel;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* base_alarm_level
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = BaseAlarmLevel.class)
public class BaseAlarmLevelVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@ExcelProperty(value = "报警级别ID")
private Long alarmLevelId;
/**
*
*/
@ExcelProperty(value = "报警级别名称")
private String alarmLevelName;
/**
*
*/
@ExcelProperty(value = "严重程度", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "数=字越大,级别越高")
private Long levelNumber;
/**
* 19
*/
@ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_level_status")
private String levelStatus;
/**
* 12345,
*/
@ExcelProperty(value = "默认通知方式", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_default_notify_mode")
private String defaultNotifyMode;
/**
*
*/
@ExcelProperty(value = "描述")
private String remark;
}

@ -0,0 +1,83 @@
package org.dromara.dms.domain.vo;
import org.dromara.dms.domain.BaseAlarmRuleLink;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* base_alarm_rule_link
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = BaseAlarmRuleLink.class)
public class BaseAlarmRuleLinkVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@ExcelProperty(value = "报警规则关联ID主键")
private Long ruleLinkId;
/**
* (1=,2=线)
*/
@ExcelProperty(value = "报警规则类型(1=设备报警规则,2=离线报警规则)", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_alarm_rule_type")
private String alarmRuleType;
/**
* IDhw_alarm_rulealarm_rule_id
*/
@ExcelProperty(value = "报警规则ID关联hw_alarm_rule的alarm_rule_id")
private Long alarmRuleId;
/**
* 12
*/
@ExcelProperty(value = "联动类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_link_type")
private String linkType;
/**
* hw_devicedevice_id
*/
@ExcelProperty(value = "联动设备关联表hw_device字段device_id")
private Long linkDeviceId;
/**
* hw_device_mode_functionmode_function_id
*/
@ExcelProperty(value = "联动设备功能关联表hw_device_mode_function字段mode_function_id")
private Long linkDeviceFunctionId;
/**
* 线30
*/
@ExcelProperty(value = "标识符", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "支=持大小写字母、数字和下划线对外暂时不超过30个字符")
private String linkDeviceFunctionIdentifier;
/**
* json
*/
@ExcelProperty(value = "联动设备服务的参数值json格式保存")
private String linkDeviceFunctionData;
}

@ -0,0 +1,145 @@
package org.dromara.dms.domain.vo;
import org.dromara.dms.domain.BaseAlarmRule;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* base_alarm_rule
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = BaseAlarmRule.class)
public class BaseAlarmRuleVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@ExcelProperty(value = "报警规则ID主键")
private Long alarmRuleId;
/**
*
*/
@ExcelProperty(value = "规则名称")
private String alarmRuleName;
/**
* hw_alarm_levelalarm_level_id
*/
@ExcelProperty(value = "报警级别关联表hw_alarm_level字段alarm_level_id")
private Long alarmLevelId;
/**
* hw_alarm_typealarm_type_id
*/
@ExcelProperty(value = "报警类型关联表hw_alarm_type字段alarm_type_id")
private Long alarmTypeId;
/**
* 12
*/
@ExcelProperty(value = "规则类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_rule_type")
private String ruleType;
/**
* hw_devicedevice_id
*/
@ExcelProperty(value = "关联表hw_device字段device_id。")
private Long ruleDeviceId;
/**
* hw_device_modedevice_mode_id
*/
@ExcelProperty(value = "关联表hw_device_mode字段device_mode_id")
private Long ruleDeviceModeId;
/**
*
*/
@ExcelProperty(value = "一共有几个属性规则")
private Long ruleFunctionTotal;
/**
* :{}>60 or {}<-88
*/
@ExcelProperty(value = "表达式,例如:{}>60 or {}<-88")
private String triggerExpression;
/**
* 10
*/
@ExcelProperty(value = "联动标识", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "active_flag")
private String linkFlag;
/**
* (10
*/
@ExcelProperty(value = "报警启用状态(1、是0、否", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "active_flag")
private String alarmRuleStatus;
/**
* (10
*/
@ExcelProperty(value = "报警推送标识(1、是0、否", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "active_flag")
private String alarmPushFlag;
/**
*
*/
@ExcelProperty(value = "报警推送内容")
private String alarmPushContent;
/**
*
*/
@ExcelProperty(value = "恢复正常推送内容")
private String alarmRecoverContent;
/**
*
*/
@ExcelProperty(value = "时间范围", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "单=位:秒")
private Long triggerTimeFrame;
/**
*
*/
@ExcelProperty(value = "触发阈值次数")
private Long triggerNumber;
/**
*
*/
@ExcelProperty(value = "触发死区")
private Long triggerDeadzone;
/**
*
*/
@ExcelProperty(value = "描述")
private String remark;
}

@ -0,0 +1,83 @@
package org.dromara.dms.domain.vo;
import org.dromara.dms.domain.BaseAlarmType;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* base_alarm_type
*
* @author Yinq
* @date 2025-03-17
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = BaseAlarmType.class)
public class BaseAlarmTypeVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@ExcelProperty(value = "报警类型ID")
private Long alarmTypeId;
/**
*
*/
@ExcelProperty(value = "报警类型编号")
private String alarmTypeCode;
/**
*
*/
@ExcelProperty(value = "报警类型名称")
private String alarmTypeName;
/**
* ID
*/
@ExcelProperty(value = "设备大类ID")
private Long deviceCategoryId;
/**
* ID
*/
@ExcelProperty(value = "设备类型ID")
private Long deviceTypeId;
/**
* 19
*/
@ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "dms_level_status")
private String typeStatus;
/**
*
*/
@ExcelProperty(value = "备注")
private String remark;
/**
*
*/
@ExcelProperty(value = "设备大类名称")
private String deviceCategoryName;
/**
*
*/
@ExcelProperty(value = "设备类型名称")
private String deviceTypeName;
}

@ -7,11 +7,12 @@ import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.dms.domain.DmsDeviceModeParameter;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
@ -164,5 +165,13 @@ public class DmsDeviceModeFunctionVo implements Serializable {
@ExcelProperty(value = "预留字段")
private String propertyField;
/**
*
*/
private List<DmsDeviceModeParameter> inputParametersData;
/**
*
*/
private List<DmsDeviceModeParameter> outputParametersData;
}

@ -0,0 +1,15 @@
package org.dromara.dms.mapper;
import org.dromara.dms.domain.BaseAlarmLevel;
import org.dromara.dms.domain.vo.BaseAlarmLevelVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* Mapper
*
* @author Yinq
* @date 2025-03-17
*/
public interface BaseAlarmLevelMapper extends BaseMapperPlus<BaseAlarmLevel, BaseAlarmLevelVo> {
}

@ -0,0 +1,15 @@
package org.dromara.dms.mapper;
import org.dromara.dms.domain.BaseAlarmRuleLink;
import org.dromara.dms.domain.vo.BaseAlarmRuleLinkVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* Mapper
*
* @author Yinq
* @date 2025-03-17
*/
public interface BaseAlarmRuleLinkMapper extends BaseMapperPlus<BaseAlarmRuleLink, BaseAlarmRuleLinkVo> {
}

@ -0,0 +1,15 @@
package org.dromara.dms.mapper;
import org.dromara.dms.domain.BaseAlarmRule;
import org.dromara.dms.domain.vo.BaseAlarmRuleVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* Mapper
*
* @author Yinq
* @date 2025-03-17
*/
public interface BaseAlarmRuleMapper extends BaseMapperPlus<BaseAlarmRule, BaseAlarmRuleVo> {
}

@ -0,0 +1,15 @@
package org.dromara.dms.mapper;
import org.dromara.dms.domain.BaseAlarmType;
import org.dromara.dms.domain.vo.BaseAlarmTypeVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* Mapper
*
* @author Yinq
* @date 2025-03-17
*/
public interface BaseAlarmTypeMapper extends BaseMapperPlus<BaseAlarmType, BaseAlarmTypeVo> {
}

@ -0,0 +1,14 @@
package org.dromara.dms.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.dms.domain.DmsBaseDeviceCategory;
/**
* Mapper
*
* @author Yinq
* @date 2025-02-21
*/
public interface DmsDeviceCategoryMapper extends BaseMapperPlus<DmsBaseDeviceCategory, DmsBaseDeviceCategory> {
}

@ -0,0 +1,14 @@
package org.dromara.dms.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.dms.domain.DmsBaseDeviceType;
/**
* Mapper
*
* @author Yinq
* @date 2025-02-21
*/
public interface DmsDeviceTypeMapper extends BaseMapperPlus<DmsBaseDeviceType, DmsBaseDeviceType> {
}

@ -0,0 +1,69 @@
package org.dromara.dms.service;
import org.dromara.dms.domain.BaseAlarmLevel;
import org.dromara.dms.domain.vo.BaseAlarmLevelVo;
import org.dromara.dms.domain.bo.BaseAlarmLevelBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
public interface IBaseAlarmLevelService {
/**
*
*
* @param alarmLevelId
* @return
*/
BaseAlarmLevelVo queryById(Long alarmLevelId);
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
TableDataInfo<BaseAlarmLevelVo> queryPageList(BaseAlarmLevelBo bo, PageQuery pageQuery);
/**
*
*
* @param bo
* @return
*/
List<BaseAlarmLevelVo> queryList(BaseAlarmLevelBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean insertByBo(BaseAlarmLevelBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean updateByBo(BaseAlarmLevelBo bo);
/**
*
*
* @param ids
* @param isValid
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

@ -0,0 +1,69 @@
package org.dromara.dms.service;
import org.dromara.dms.domain.BaseAlarmRuleLink;
import org.dromara.dms.domain.vo.BaseAlarmRuleLinkVo;
import org.dromara.dms.domain.bo.BaseAlarmRuleLinkBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
public interface IBaseAlarmRuleLinkService {
/**
*
*
* @param ruleLinkId
* @return
*/
BaseAlarmRuleLinkVo queryById(Long ruleLinkId);
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
TableDataInfo<BaseAlarmRuleLinkVo> queryPageList(BaseAlarmRuleLinkBo bo, PageQuery pageQuery);
/**
*
*
* @param bo
* @return
*/
List<BaseAlarmRuleLinkVo> queryList(BaseAlarmRuleLinkBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean insertByBo(BaseAlarmRuleLinkBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean updateByBo(BaseAlarmRuleLinkBo bo);
/**
*
*
* @param ids
* @param isValid
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

@ -0,0 +1,69 @@
package org.dromara.dms.service;
import org.dromara.dms.domain.BaseAlarmRule;
import org.dromara.dms.domain.vo.BaseAlarmRuleVo;
import org.dromara.dms.domain.bo.BaseAlarmRuleBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
public interface IBaseAlarmRuleService {
/**
*
*
* @param alarmRuleId
* @return
*/
BaseAlarmRuleVo queryById(Long alarmRuleId);
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
TableDataInfo<BaseAlarmRuleVo> queryPageList(BaseAlarmRuleBo bo, PageQuery pageQuery);
/**
*
*
* @param bo
* @return
*/
List<BaseAlarmRuleVo> queryList(BaseAlarmRuleBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean insertByBo(BaseAlarmRuleBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean updateByBo(BaseAlarmRuleBo bo);
/**
*
*
* @param ids
* @param isValid
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

@ -0,0 +1,69 @@
package org.dromara.dms.service;
import org.dromara.dms.domain.BaseAlarmType;
import org.dromara.dms.domain.vo.BaseAlarmTypeVo;
import org.dromara.dms.domain.bo.BaseAlarmTypeBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
public interface IBaseAlarmTypeService {
/**
*
*
* @param alarmTypeId
* @return
*/
BaseAlarmTypeVo queryById(Long alarmTypeId);
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
TableDataInfo<BaseAlarmTypeVo> queryPageList(BaseAlarmTypeBo bo, PageQuery pageQuery);
/**
*
*
* @param bo
* @return
*/
List<BaseAlarmTypeVo> queryList(BaseAlarmTypeBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean insertByBo(BaseAlarmTypeBo bo);
/**
*
*
* @param bo
* @return
*/
Boolean updateByBo(BaseAlarmTypeBo bo);
/**
*
*
* @param ids
* @param isValid
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

@ -0,0 +1,136 @@
package org.dromara.dms.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
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.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.BaseAlarmLevelBo;
import org.dromara.dms.domain.vo.BaseAlarmLevelVo;
import org.dromara.dms.domain.BaseAlarmLevel;
import org.dromara.dms.mapper.BaseAlarmLevelMapper;
import org.dromara.dms.service.IBaseAlarmLevelService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
@RequiredArgsConstructor
@Service
public class BaseAlarmLevelServiceImpl implements IBaseAlarmLevelService {
private final BaseAlarmLevelMapper baseMapper;
/**
*
*
* @param alarmLevelId
* @return
*/
@Override
public BaseAlarmLevelVo queryById(Long alarmLevelId){
return baseMapper.selectVoById(alarmLevelId);
}
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
@Override
public TableDataInfo<BaseAlarmLevelVo> queryPageList(BaseAlarmLevelBo bo, PageQuery pageQuery) {
MPJLambdaWrapper<BaseAlarmLevel> lqw = buildQueryWrapper(bo);
Page<BaseAlarmLevelVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
*
*
* @param bo
* @return
*/
@Override
public List<BaseAlarmLevelVo> queryList(BaseAlarmLevelBo bo) {
MPJLambdaWrapper<BaseAlarmLevel> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private MPJLambdaWrapper<BaseAlarmLevel> buildQueryWrapper(BaseAlarmLevelBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseAlarmLevel> lqw = JoinWrappers.lambda(BaseAlarmLevel.class)
.selectAll(BaseAlarmLevel.class)
.eq(bo.getAlarmLevelId() != null, BaseAlarmLevel::getAlarmLevelId, bo.getAlarmLevelId())
.like(StringUtils.isNotBlank(bo.getAlarmLevelName()), BaseAlarmLevel::getAlarmLevelName, bo.getAlarmLevelName())
.eq(bo.getLevelNumber() != null, BaseAlarmLevel::getLevelNumber, bo.getLevelNumber())
.eq(StringUtils.isNotBlank(bo.getLevelStatus()), BaseAlarmLevel::getLevelStatus, bo.getLevelStatus())
.eq(StringUtils.isNotBlank(bo.getDefaultNotifyMode()), BaseAlarmLevel::getDefaultNotifyMode, bo.getDefaultNotifyMode())
.orderByAsc(BaseAlarmLevel::getCreateTime);
return lqw;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean insertByBo(BaseAlarmLevelBo bo) {
BaseAlarmLevel add = MapstructUtils.convert(bo, BaseAlarmLevel.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setAlarmLevelId(add.getAlarmLevelId());
}
return flag;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean updateByBo(BaseAlarmLevelBo bo) {
BaseAlarmLevel update = MapstructUtils.convert(bo, BaseAlarmLevel.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
*
*/
private void validEntityBeforeSave(BaseAlarmLevel entity){
//TODO 做一些数据校验,如唯一约束
}
/**
*
*
* @param ids
* @param isValid
* @return
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

@ -0,0 +1,139 @@
package org.dromara.dms.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
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.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.BaseAlarmRuleLinkBo;
import org.dromara.dms.domain.vo.BaseAlarmRuleLinkVo;
import org.dromara.dms.domain.BaseAlarmRuleLink;
import org.dromara.dms.mapper.BaseAlarmRuleLinkMapper;
import org.dromara.dms.service.IBaseAlarmRuleLinkService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
@RequiredArgsConstructor
@Service
public class BaseAlarmRuleLinkServiceImpl implements IBaseAlarmRuleLinkService {
private final BaseAlarmRuleLinkMapper baseMapper;
/**
*
*
* @param ruleLinkId
* @return
*/
@Override
public BaseAlarmRuleLinkVo queryById(Long ruleLinkId){
return baseMapper.selectVoById(ruleLinkId);
}
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
@Override
public TableDataInfo<BaseAlarmRuleLinkVo> queryPageList(BaseAlarmRuleLinkBo bo, PageQuery pageQuery) {
MPJLambdaWrapper<BaseAlarmRuleLink> lqw = buildQueryWrapper(bo);
Page<BaseAlarmRuleLinkVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
*
*
* @param bo
* @return
*/
@Override
public List<BaseAlarmRuleLinkVo> queryList(BaseAlarmRuleLinkBo bo) {
MPJLambdaWrapper<BaseAlarmRuleLink> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private MPJLambdaWrapper<BaseAlarmRuleLink> buildQueryWrapper(BaseAlarmRuleLinkBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseAlarmRuleLink> lqw = JoinWrappers.lambda(BaseAlarmRuleLink.class)
.selectAll(BaseAlarmRuleLink.class)
.eq(bo.getRuleLinkId() != null, BaseAlarmRuleLink::getRuleLinkId, bo.getRuleLinkId())
.eq(StringUtils.isNotBlank(bo.getAlarmRuleType()), BaseAlarmRuleLink::getAlarmRuleType, bo.getAlarmRuleType())
.eq(bo.getAlarmRuleId() != null, BaseAlarmRuleLink::getAlarmRuleId, bo.getAlarmRuleId())
.eq(StringUtils.isNotBlank(bo.getLinkType()), BaseAlarmRuleLink::getLinkType, bo.getLinkType())
.eq(bo.getLinkDeviceId() != null, BaseAlarmRuleLink::getLinkDeviceId, bo.getLinkDeviceId())
.eq(bo.getLinkDeviceFunctionId() != null, BaseAlarmRuleLink::getLinkDeviceFunctionId, bo.getLinkDeviceFunctionId())
.eq(StringUtils.isNotBlank(bo.getLinkDeviceFunctionIdentifier()), BaseAlarmRuleLink::getLinkDeviceFunctionIdentifier, bo.getLinkDeviceFunctionIdentifier())
.eq(StringUtils.isNotBlank(bo.getLinkDeviceFunctionData()), BaseAlarmRuleLink::getLinkDeviceFunctionData, bo.getLinkDeviceFunctionData())
.orderByDesc(BaseAlarmRuleLink::getCreateTime);
return lqw;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean insertByBo(BaseAlarmRuleLinkBo bo) {
BaseAlarmRuleLink add = MapstructUtils.convert(bo, BaseAlarmRuleLink.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setRuleLinkId(add.getRuleLinkId());
}
return flag;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean updateByBo(BaseAlarmRuleLinkBo bo) {
BaseAlarmRuleLink update = MapstructUtils.convert(bo, BaseAlarmRuleLink.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
*
*/
private void validEntityBeforeSave(BaseAlarmRuleLink entity){
//TODO 做一些数据校验,如唯一约束
}
/**
*
*
* @param ids
* @param isValid
* @return
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

@ -0,0 +1,148 @@
package org.dromara.dms.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
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.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.BaseAlarmRuleBo;
import org.dromara.dms.domain.vo.BaseAlarmRuleVo;
import org.dromara.dms.domain.BaseAlarmRule;
import org.dromara.dms.mapper.BaseAlarmRuleMapper;
import org.dromara.dms.service.IBaseAlarmRuleService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
@RequiredArgsConstructor
@Service
public class BaseAlarmRuleServiceImpl implements IBaseAlarmRuleService {
private final BaseAlarmRuleMapper baseMapper;
/**
*
*
* @param alarmRuleId
* @return
*/
@Override
public BaseAlarmRuleVo queryById(Long alarmRuleId){
return baseMapper.selectVoById(alarmRuleId);
}
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
@Override
public TableDataInfo<BaseAlarmRuleVo> queryPageList(BaseAlarmRuleBo bo, PageQuery pageQuery) {
MPJLambdaWrapper<BaseAlarmRule> lqw = buildQueryWrapper(bo);
Page<BaseAlarmRuleVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
*
*
* @param bo
* @return
*/
@Override
public List<BaseAlarmRuleVo> queryList(BaseAlarmRuleBo bo) {
MPJLambdaWrapper<BaseAlarmRule> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private MPJLambdaWrapper<BaseAlarmRule> buildQueryWrapper(BaseAlarmRuleBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseAlarmRule> lqw = JoinWrappers.lambda(BaseAlarmRule.class)
.selectAll(BaseAlarmRule.class)
.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())
.eq(bo.getAlarmTypeId() != null, BaseAlarmRule::getAlarmTypeId, bo.getAlarmTypeId())
.eq(StringUtils.isNotBlank(bo.getRuleType()), BaseAlarmRule::getRuleType, bo.getRuleType())
.eq(bo.getRuleDeviceId() != null, BaseAlarmRule::getRuleDeviceId, bo.getRuleDeviceId())
.eq(bo.getRuleDeviceModeId() != null, BaseAlarmRule::getRuleDeviceModeId, bo.getRuleDeviceModeId())
.eq(bo.getRuleFunctionTotal() != null, BaseAlarmRule::getRuleFunctionTotal, bo.getRuleFunctionTotal())
.eq(StringUtils.isNotBlank(bo.getTriggerExpression()), BaseAlarmRule::getTriggerExpression, bo.getTriggerExpression())
.eq(StringUtils.isNotBlank(bo.getLinkFlag()), BaseAlarmRule::getLinkFlag, bo.getLinkFlag())
.eq(StringUtils.isNotBlank(bo.getAlarmRuleStatus()), BaseAlarmRule::getAlarmRuleStatus, bo.getAlarmRuleStatus())
.eq(StringUtils.isNotBlank(bo.getAlarmPushFlag()), BaseAlarmRule::getAlarmPushFlag, bo.getAlarmPushFlag())
.eq(StringUtils.isNotBlank(bo.getAlarmPushContent()), BaseAlarmRule::getAlarmPushContent, bo.getAlarmPushContent())
.eq(StringUtils.isNotBlank(bo.getAlarmRecoverContent()), BaseAlarmRule::getAlarmRecoverContent, bo.getAlarmRecoverContent())
.eq(bo.getTriggerTimeFrame() != null, BaseAlarmRule::getTriggerTimeFrame, bo.getTriggerTimeFrame())
.eq(bo.getTriggerNumber() != null, BaseAlarmRule::getTriggerNumber, bo.getTriggerNumber())
.eq(bo.getTriggerDeadzone() != null, BaseAlarmRule::getTriggerDeadzone, bo.getTriggerDeadzone())
.orderByAsc(BaseAlarmRule::getCreateTime);
return lqw;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean insertByBo(BaseAlarmRuleBo bo) {
BaseAlarmRule add = MapstructUtils.convert(bo, BaseAlarmRule.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setAlarmRuleId(add.getAlarmRuleId());
}
return flag;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean updateByBo(BaseAlarmRuleBo bo) {
BaseAlarmRule update = MapstructUtils.convert(bo, BaseAlarmRule.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
*
*/
private void validEntityBeforeSave(BaseAlarmRule entity){
//TODO 做一些数据校验,如唯一约束
}
/**
*
*
* @param ids
* @param isValid
* @return
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

@ -0,0 +1,143 @@
package org.dromara.dms.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
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.DmsBaseDeviceCategory;
import org.dromara.dms.domain.DmsBaseDeviceType;
import org.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.BaseAlarmTypeBo;
import org.dromara.dms.domain.vo.BaseAlarmTypeVo;
import org.dromara.dms.domain.BaseAlarmType;
import org.dromara.dms.mapper.BaseAlarmTypeMapper;
import org.dromara.dms.service.IBaseAlarmTypeService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* Service
*
* @author Yinq
* @date 2025-03-17
*/
@RequiredArgsConstructor
@Service
public class BaseAlarmTypeServiceImpl implements IBaseAlarmTypeService {
private final BaseAlarmTypeMapper baseMapper;
/**
*
*
* @param alarmTypeId
* @return
*/
@Override
public BaseAlarmTypeVo queryById(Long alarmTypeId) {
return baseMapper.selectVoById(alarmTypeId);
}
/**
*
*
* @param bo
* @param pageQuery
* @return
*/
@Override
public TableDataInfo<BaseAlarmTypeVo> queryPageList(BaseAlarmTypeBo bo, PageQuery pageQuery) {
MPJLambdaWrapper<BaseAlarmType> lqw = buildQueryWrapper(bo);
Page<BaseAlarmTypeVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
*
*
* @param bo
* @return
*/
@Override
public List<BaseAlarmTypeVo> queryList(BaseAlarmTypeBo bo) {
MPJLambdaWrapper<BaseAlarmType> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private MPJLambdaWrapper<BaseAlarmType> buildQueryWrapper(BaseAlarmTypeBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseAlarmType> lqw = JoinWrappers.lambda(BaseAlarmType.class)
.selectAll(BaseAlarmType.class)
.select(DmsBaseDeviceCategory::getDeviceCategoryName)
.select(DmsBaseDeviceType::getDeviceTypeName)
.leftJoin(DmsBaseDeviceCategory.class, DmsBaseDeviceCategory::getDeviceCategoryId, BaseAlarmType::getDeviceCategoryId)
.leftJoin(DmsBaseDeviceType.class, DmsBaseDeviceType::getDeviceTypeId, BaseAlarmType::getDeviceTypeId)
.eq(bo.getAlarmTypeId() != null, BaseAlarmType::getAlarmTypeId, bo.getAlarmTypeId())
.eq(StringUtils.isNotBlank(bo.getAlarmTypeCode()), BaseAlarmType::getAlarmTypeCode, bo.getAlarmTypeCode())
.like(StringUtils.isNotBlank(bo.getAlarmTypeName()), BaseAlarmType::getAlarmTypeName, bo.getAlarmTypeName())
.eq(bo.getDeviceCategoryId() != null, BaseAlarmType::getDeviceCategoryId, bo.getDeviceCategoryId())
.eq(bo.getDeviceTypeId() != null, BaseAlarmType::getDeviceTypeId, bo.getDeviceTypeId())
.eq(StringUtils.isNotBlank(bo.getTypeStatus()), BaseAlarmType::getTypeStatus, bo.getTypeStatus())
.orderByAsc(BaseAlarmType::getCreateTime);
return lqw;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean insertByBo(BaseAlarmTypeBo bo) {
BaseAlarmType add = MapstructUtils.convert(bo, BaseAlarmType.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setAlarmTypeId(add.getAlarmTypeId());
}
return flag;
}
/**
*
*
* @param bo
* @return
*/
@Override
public Boolean updateByBo(BaseAlarmTypeBo bo) {
BaseAlarmType update = MapstructUtils.convert(bo, BaseAlarmType.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
*
*/
private void validEntityBeforeSave(BaseAlarmType entity) {
//TODO 做一些数据校验,如唯一约束
}
/**
*
*
* @param ids
* @param isValid
* @return
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if (isValid) {
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

@ -7,18 +7,18 @@ 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.DmsDeviceModeParameter;
import org.dromara.dms.mapper.DmsDeviceModeParameterMapper;
import org.springframework.stereotype.Service;
import org.dromara.dms.domain.bo.DmsDeviceModeFunctionBo;
import org.dromara.dms.domain.vo.DmsDeviceModeFunctionVo;
import org.dromara.dms.domain.DmsDeviceModeFunction;
import org.dromara.dms.mapper.DmsDeviceModeFunctionMapper;
import org.dromara.dms.service.IDmsDeviceModeFunctionService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.*;
/**
* Service
@ -32,6 +32,8 @@ public class DmsDeviceModeFunctionServiceImpl implements IDmsDeviceModeFunctionS
private final DmsDeviceModeFunctionMapper baseMapper;
private final DmsDeviceModeParameterMapper dmsDeviceModeParameterMapper;
/**
*
*
@ -40,7 +42,24 @@ public class DmsDeviceModeFunctionServiceImpl implements IDmsDeviceModeFunctionS
*/
@Override
public DmsDeviceModeFunctionVo queryById(Long modeFunctionId) {
return baseMapper.selectVoById(modeFunctionId);
DmsDeviceModeFunctionVo modeFunctionVo = baseMapper.selectVoById(modeFunctionId);
MPJLambdaWrapper<DmsDeviceModeParameter> lqw = JoinWrappers.lambda(DmsDeviceModeParameter.class)
.selectAll(DmsDeviceModeParameter.class)
.eq(DmsDeviceModeParameter::getModeFunctionId, modeFunctionId);
List<DmsDeviceModeParameter> parameterList = dmsDeviceModeParameterMapper.selectList(lqw);
List<DmsDeviceModeParameter> inputParametersData = new ArrayList<>();
List<DmsDeviceModeParameter> outputParametersData = new ArrayList<>();
parameterList.forEach(e -> {
if (e.getParameterType().equals("1")) {
inputParametersData.add(e);
}
if (e.getParameterType().equals("2")) {
outputParametersData.add(e);
}
});
modeFunctionVo.setInputParametersData(inputParametersData);
modeFunctionVo.setOutputParametersData(outputParametersData);
return modeFunctionVo;
}
/**
@ -104,12 +123,27 @@ public class DmsDeviceModeFunctionServiceImpl implements IDmsDeviceModeFunctionS
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean insertByBo(DmsDeviceModeFunctionBo bo) {
DmsDeviceModeFunction add = MapstructUtils.convert(bo, DmsDeviceModeFunction.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setModeFunctionId(add.getModeFunctionId());
List<DmsDeviceModeParameter> inputParametersDataList = bo.getInputParametersData();
List<DmsDeviceModeParameter> outputParametersDataList = bo.getOutputParametersData();
if (inputParametersDataList.size() > 0) {
inputParametersDataList.forEach(e -> {
e.setModeFunctionId(add.getModeFunctionId());
dmsDeviceModeParameterMapper.insert(e);
});
}
if (outputParametersDataList.size() > 0) {
outputParametersDataList.forEach(e -> {
e.setModeFunctionId(add.getModeFunctionId());
dmsDeviceModeParameterMapper.insert(e);
});
}
}
return flag;
}
@ -121,9 +155,25 @@ public class DmsDeviceModeFunctionServiceImpl implements IDmsDeviceModeFunctionS
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean updateByBo(DmsDeviceModeFunctionBo bo) {
DmsDeviceModeFunction update = MapstructUtils.convert(bo, DmsDeviceModeFunction.class);
validEntityBeforeSave(update);
assert update != null;
List<DmsDeviceModeParameter> inputParametersDataList = bo.getInputParametersData();
List<DmsDeviceModeParameter> outputParametersDataList = bo.getOutputParametersData();
if (inputParametersDataList.size() > 0) {
inputParametersDataList.forEach(e -> {
e.setModeFunctionId(update.getModeFunctionId());
dmsDeviceModeParameterMapper.insertOrUpdate(e);
});
}
if (outputParametersDataList.size() > 0) {
outputParametersDataList.forEach(e -> {
e.setModeFunctionId(update.getModeFunctionId());
dmsDeviceModeParameterMapper.insertOrUpdate(e);
});
}
return baseMapper.updateById(update) > 0;
}

@ -83,7 +83,7 @@ public class DmsDeviceModeParameterServiceImpl implements IDmsDeviceModeParamete
.eq(StringUtils.isNotBlank(bo.getDataDefinition()), DmsDeviceModeParameter::getDataDefinition, bo.getDataDefinition())
.eq(StringUtils.isNotBlank(bo.getPropertyUnit()), DmsDeviceModeParameter::getPropertyUnit, bo.getPropertyUnit())
.eq(bo.getPropertyStep() != null, DmsDeviceModeParameter::getPropertyStep, bo.getPropertyStep())
.orderByDesc(DmsDeviceModeParameter::getModeParameterId);
.orderByAsc(DmsDeviceModeParameter::getModeParameterId);
return lqw;
}

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.dms.mapper.BaseAlarmLevelMapper">
</mapper>

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.dms.mapper.BaseAlarmRuleLinkMapper">
</mapper>

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.dms.mapper.BaseAlarmRuleMapper">
</mapper>

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.dms.mapper.BaseAlarmTypeMapper">
</mapper>

@ -49,7 +49,7 @@ public class BaseDeviceType extends TenantEntity {
/**
* IDIDbase_categorycategory_type2
*/
private Long categoryId;
private Long deviceCategoryId;
/**
* 1 0

@ -54,7 +54,7 @@ public class BaseDeviceTypeBo extends BaseEntity {
* IDIDbase_categorycategory_type2
*/
@NotNull(message = "设备大类不能为空", groups = { AddGroup.class, EditGroup.class })
private Long categoryId;
private Long deviceCategoryId;
/**
* 1 0

@ -63,7 +63,7 @@ public class BaseDeviceTypeVo implements Serializable {
*/
@ExcelProperty(value = "设备大类ID", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "大=类ID关联base_category表category_type为2的")
private Long categoryId;
private Long deviceCategoryId;
/**
* 1 0

@ -78,7 +78,7 @@ public class BaseDeviceTypeServiceImpl implements IBaseDeviceTypeService {
.eq(StringUtils.isNotBlank(bo.getDeviceTypeCode()), BaseDeviceType::getDeviceTypeCode, bo.getDeviceTypeCode())
.like(StringUtils.isNotBlank(bo.getDeviceTypeName()), BaseDeviceType::getDeviceTypeName, bo.getDeviceTypeName())
.eq(StringUtils.isNotBlank(bo.getAncestors()), BaseDeviceType::getAncestors, bo.getAncestors())
.eq(bo.getCategoryId() != null, BaseDeviceType::getCategoryId, bo.getCategoryId())
.eq(bo.getDeviceCategoryId() != null, BaseDeviceType::getDeviceCategoryId, bo.getDeviceCategoryId())
.eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseDeviceType::getActiveFlag, bo.getActiveFlag())
.orderByDesc(BaseDeviceType::getCreateTime);
return lqw;

Loading…
Cancel
Save