边带设备

This commit is contained in:
cwchen 2024-03-28 10:20:06 +08:00
parent d27bcc2824
commit 41ef871f46
5 changed files with 92 additions and 14 deletions

View File

@ -12,6 +12,8 @@ import java.util.List;
public class Constant {
public final static Integer PARENT_ID = 0;
public final static int addType = 1;
public final static int editType = 2;
public final static Integer MENU_TYPE = 2;

View File

@ -0,0 +1,23 @@
package com.securitycontrol.entity.background.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @authorcwchen
* @date2024-03-28-9:44
* @version1.0
* @description边带设备绑定记录
*/
@Data
public class ProBdDevVo {
@ApiModelProperty("ID")
private String id;
@ApiModelProperty("边带ID")
private String devId;
@ApiModelProperty("标段编码")
private String bidCode;
@ApiModelProperty("绑定时间")
private String bidTime;
}

View File

@ -3,6 +3,7 @@ package com.securitycontrol.background.mapper;
import com.securitycontrol.entity.background.dto.DeviceBdDto;
import com.securitycontrol.entity.background.vo.DeviceBdChildVo;
import com.securitycontrol.entity.background.vo.DeviceBdVo;
import com.securitycontrol.entity.background.vo.ProBdDevVo;
import org.springframework.stereotype.Repository;
import java.util.List;
@ -124,10 +125,31 @@ public interface IDeviceOfBdMapper {
/**
* 删除边带设备
*
* @param dto
* @description
* @author cwchen
* @date 2024/3/20 19:52
*/
void delDeviceBdChildById(DeviceBdDto dto);
/**
* 边带设备绑定记录
*
* @param proBdDevVo
* @description
* @author cwchen
* @date 2024/3/28 9:50
*/
void addProBdDevData(ProBdDevVo proBdDevVo);
/**
* 边带是否绑定重复工程
* @param vo
* @return int
* @description
* @author cwchen
* @date 2024/3/28 9:57
*/
int isRepeatBanding(DeviceBdVo vo);
}

View File

@ -1,21 +1,18 @@
package com.securitycontrol.background.service.impl;
import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A;
import com.securitycontrol.background.mapper.IDeviceOfBdMapper;
import com.securitycontrol.background.service.IDeviceOfBdService;
import com.securitycontrol.common.core.constant.Constant;
import com.securitycontrol.common.core.utils.StringUtils;
import com.securitycontrol.common.core.utils.aes.DateTimeHelper;
import com.securitycontrol.common.core.utils.uuid.IdUtils;
import com.securitycontrol.common.core.web.domain.AjaxResult;
import com.securitycontrol.common.security.utils.SecurityUtils;
import com.securitycontrol.common.security.utils.ValidatorsUtils;
import com.securitycontrol.entity.background.dto.DeviceBdDto;
import com.securitycontrol.entity.background.vo.DeviceBdChildVo;
import com.securitycontrol.entity.background.vo.DeviceBdVo;
import com.securitycontrol.entity.system.base.vo.ProVo;
import com.securitycontrol.entity.system.vo.ResourceFileVo;
import com.securitycontrol.entity.background.vo.ProBdDevVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
@ -23,7 +20,6 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* @authorcwchen
@ -47,7 +43,7 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
try {
list = mapper.getDeviceBdList(dto);
} catch (Exception e) {
log.error("获取边带列表",e);
log.error("获取边带列表", e);
}
return list;
}
@ -61,7 +57,8 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
return AjaxResult.error(validResult);
}
int result = mapper.isBdCodeExist(vo);
if(result > 0){
int isRepeatBanding = 0;
if (result > 0) {
return AjaxResult.error("边带编码不能重复");
}
if (StringUtils.isEmpty(vo.getId())) {
@ -70,12 +67,26 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
vo.setType(1);
vo.setCreateTime(DateTimeHelper.getNowTime());
vo.setUpdateTime(DateTimeHelper.getNowTime());
vo.setBindTime(DateTimeHelper.getNowTime());
vo.setBindTime(StringUtils.isNotEmpty(vo.getBidCode()) ? DateTimeHelper.getNowTime() : null);
} else {
vo.setType(2);
vo.setBindTime(DateTimeHelper.getNowTime());
if (StringUtils.isNotEmpty(vo.getBidCode())) {
isRepeatBanding = mapper.isRepeatBanding(vo);
if (isRepeatBanding == 0) {
vo.setBindTime(DateTimeHelper.getNowTime());
}
}
}
mapper.addOrUpdateDeviceBd(vo);
// 边带 绑定工程则新增边带绑定记录
if (!(StringUtils.isEmpty(vo.getBidCode()) || isRepeatBanding > 0)) {
ProBdDevVo proBdDevVo = new ProBdDevVo();
proBdDevVo.setId(IdUtils.getUUId());
proBdDevVo.setDevId(vo.getId());
proBdDevVo.setBidTime(vo.getBindTime());
proBdDevVo.setBidCode(vo.getBidCode());
mapper.addProBdDevData(proBdDevVo);
}
} catch (Exception e) {
log.error("新增/修改边带", e);
return AjaxResult.error();
@ -89,7 +100,7 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
try {
vo = mapper.getDeviceBdById(dto);
} catch (Exception e) {
log.error("边带设备详情",e);
log.error("边带设备详情", e);
}
return AjaxResult.success(vo);
}
@ -121,7 +132,7 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
try {
list = mapper.getDeviceBdChildList(dto);
} catch (Exception e) {
log.error("获取边带子设备列表",e);
log.error("获取边带子设备列表", e);
}
return list;
}
@ -135,7 +146,7 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
return AjaxResult.error(validResult);
}
int result = mapper.isDeviceCodeExist(vo);
if(result > 0){
if (result > 0) {
return AjaxResult.error("设备编码不能重复");
}
if (StringUtils.isEmpty(vo.getDeviceId())) {
@ -162,7 +173,7 @@ public class DeviceOfBdServiceImpl implements IDeviceOfBdService {
try {
vo = mapper.getDeviceBdChildById(dto);
} catch (Exception e) {
log.error("边带子设备详情",e);
log.error("边带子设备详情", e);
}
return AjaxResult.success(vo);
}

View File

@ -98,6 +98,22 @@
WHERE device_id = #{deviceId}
</if>
</insert>
<!--边带设备绑定记录-->
<insert id="addProBdDevData">
INSERT INTO tb_pro_bd_dev
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null and id != ''">id,</if>
<if test="devId != null and devId!=''">dev_id,</if>
<if test="bidCode != null and bidCode!=''">bid_code,</if>
<if test="bidTime != null and bidTime!=''">bid_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null and id != ''">#{id},</if>
<if test="devId != null and devId!=''">#{devId},</if>
<if test="bidCode != null and bidCode!=''">#{bidCode},</if>
<if test="bidTime != null and bidTime!=''">#{bidTime},</if>
</trim>
</insert>
<!--删除边带设备-->
<delete id="delDeviceBdById">
UPDATE tb_pro_bd SET del_flag = 0 WHERE id = #{id}
@ -214,4 +230,8 @@
FROM tb_bd_device tbd
WHERE device_id = #{id}
</select>
<!--边带是否绑定重复工程-->
<select id="isRepeatBanding" resultType="java.lang.Integer">
SELECT COUNT(*) FROM tb_pro_bd WHERE id = #{id} AND bid_code = #{bidCode}
</select>
</mapper>