mirror of
https://gitee.com/beecue/fastbee.git
synced 2025-12-17 16:36:03 +08:00
设备删除优化
This commit is contained in:
@@ -180,7 +180,7 @@ public interface DeviceMapper
|
|||||||
* @param deviceIds
|
* @param deviceIds
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public int deleteDeviceGroupByDeviceId(UserIdAndDeviceIdModel userIdAndDeviceIdModel);
|
public int deleteDeviceGroupByDeviceId(UserIdDeviceIdModel userDeviceGroupIdModel);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 重置设备状态
|
* 重置设备状态
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package com.ruoyi.iot.mapper;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import com.ruoyi.iot.domain.DeviceUser;
|
import com.ruoyi.iot.domain.DeviceUser;
|
||||||
import com.ruoyi.iot.model.UserIdAndDeviceIdModel;
|
import com.ruoyi.iot.model.UserIdDeviceIdModel;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@ public interface DeviceUserMapper
|
|||||||
* @param UserIdAndDeviceIdModel 用户ID和设备ID
|
* @param UserIdAndDeviceIdModel 用户ID和设备ID
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteDeviceUserByDeviceId(UserIdAndDeviceIdModel userIdAndDeviceIdModel);
|
public int deleteDeviceUserByDeviceId(UserIdDeviceIdModel userDeviceGroupIdModel);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除设备用户
|
* 批量删除设备用户
|
||||||
|
|||||||
@@ -6,17 +6,18 @@ package com.ruoyi.iot.model;
|
|||||||
* @author kerwincui
|
* @author kerwincui
|
||||||
* @date 2021-12-16
|
* @date 2021-12-16
|
||||||
*/
|
*/
|
||||||
public class UserIdAndDeviceIdModel
|
public class UserIdDeviceIdModel
|
||||||
{
|
{
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
private Long deviceId;
|
private Long deviceId;
|
||||||
|
|
||||||
public UserIdAndDeviceIdModel(Long userId,Long deviceId){
|
public UserIdDeviceIdModel(Long userId, Long deviceId){
|
||||||
this.userId=userId;
|
this.userId=userId;
|
||||||
this.deviceId=deviceId;
|
this.deviceId=deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public Long getUserId() {
|
public Long getUserId() {
|
||||||
return userId;
|
return userId;
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,6 @@ import com.ruoyi.common.constant.Constants;
|
|||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.common.core.domain.entity.SysRole;
|
import com.ruoyi.common.core.domain.entity.SysRole;
|
||||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
|
||||||
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.DateUtils;
|
||||||
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import com.ruoyi.common.utils.http.HttpUtils;
|
import com.ruoyi.common.utils.http.HttpUtils;
|
||||||
@@ -867,18 +866,17 @@ public class DeviceServiceImpl implements IDeviceService {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Device device=deviceMapper.selectDeviceByDeviceId(deviceId);
|
Device device=deviceMapper.selectDeviceByDeviceId(deviceId);
|
||||||
if(isGeneralUser && device.getUserId().longValue()!=user.getUserId()){
|
if(isGeneralUser && device.getUserId().longValue()!=user.getUserId()){
|
||||||
// 删除用户的设备用户信息。 普通用户,且不是设备所有者。
|
// 删除用户分组中的设备 普通用户,且不是设备所有者。
|
||||||
deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdAndDeviceIdModel(user.getUserId(),deviceId));
|
deviceMapper.deleteDeviceGroupByDeviceId(new UserIdDeviceIdModel(user.getUserId(),deviceId));
|
||||||
// 删除用户的设备分组
|
// 删除用户的设备用户信息。
|
||||||
deviceMapper.deleteDeviceGroupByDeviceId(new UserIdAndDeviceIdModel(user.getUserId(),deviceId));
|
deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdDeviceIdModel(user.getUserId(),deviceId));
|
||||||
}else{
|
}else{
|
||||||
// 删除设备用户。 租户、管理员和设备所有者
|
// 删除设备分组。 租户、管理员和设备所有者
|
||||||
deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdAndDeviceIdModel(null,deviceId));
|
deviceMapper.deleteDeviceGroupByDeviceId(new UserIdDeviceIdModel(null,deviceId));
|
||||||
// 删除设备分组。
|
// 删除设备用户。
|
||||||
deviceMapper.deleteDeviceGroupByDeviceId(new UserIdAndDeviceIdModel(null,deviceId));
|
deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdDeviceIdModel(null,deviceId));
|
||||||
// 删除定时任务
|
// 删除定时任务
|
||||||
deviceJobService.deleteJobByDeviceIds(new Long[]{deviceId});
|
deviceJobService.deleteJobByDeviceIds(new Long[]{deviceId});
|
||||||
// 批量删除设备日志
|
// 批量删除设备日志
|
||||||
|
|||||||
@@ -4,13 +4,12 @@ import com.ruoyi.common.core.domain.entity.SysUser;
|
|||||||
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.DateUtils;
|
||||||
import com.ruoyi.iot.domain.DeviceUser;
|
import com.ruoyi.iot.domain.DeviceUser;
|
||||||
import com.ruoyi.iot.mapper.DeviceUserMapper;
|
import com.ruoyi.iot.mapper.DeviceUserMapper;
|
||||||
import com.ruoyi.iot.model.UserIdAndDeviceIdModel;
|
import com.ruoyi.iot.model.UserIdDeviceIdModel;
|
||||||
import com.ruoyi.iot.service.IDeviceUserService;
|
import com.ruoyi.iot.service.IDeviceUserService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.dao.DuplicateKeyException;
|
import org.springframework.dao.DuplicateKeyException;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.sql.SQLIntegrityConstraintViolationException;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
|
import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
|
||||||
@@ -104,7 +103,7 @@ public class DeviceUserServiceImpl implements IDeviceUserService
|
|||||||
@Override
|
@Override
|
||||||
public int deleteDeviceUserByDeviceId(Long deviceId)
|
public int deleteDeviceUserByDeviceId(Long deviceId)
|
||||||
{
|
{
|
||||||
return deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdAndDeviceIdModel(null,deviceId));
|
return deviceUserMapper.deleteDeviceUserByDeviceId(new UserIdDeviceIdModel(null,deviceId));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -447,11 +447,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
select count(*) from iot_device where serial_number = #{deviceNum}
|
select count(*) from iot_device where serial_number = #{deviceNum}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<delete id="deleteDeviceGroupByDeviceId" parameterType="com.ruoyi.iot.model.UserIdAndDeviceIdModel">
|
<delete id="deleteDeviceGroupByDeviceId" parameterType="com.ruoyi.iot.model.UserIdDeviceIdModel">
|
||||||
delete from iot_device_group
|
delete from iot_device_group
|
||||||
<where>
|
<where>
|
||||||
<if test="1==1"> and device_id = #{deviceId}</if>
|
<if test="1==1"> and device_id = #{deviceId}</if>
|
||||||
<if test="userId != null">user_id = #{userId}</if>
|
<if test="userId != null"> and group_id in(select group_id from iot_group where user_id = #{userId})</if>
|
||||||
</where>
|
</where>
|
||||||
</delete>
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
@@ -104,11 +104,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
where device_id = #{deviceId} and user_id = #{userId}
|
where device_id = #{deviceId} and user_id = #{userId}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<delete id="deleteDeviceUserByDeviceId" parameterType="com.ruoyi.iot.model.UserIdAndDeviceIdModel">
|
<delete id="deleteDeviceUserByDeviceId" parameterType="com.ruoyi.iot.model.UserIdDeviceIdModel">
|
||||||
delete from iot_device_user
|
delete from iot_device_user
|
||||||
<where>
|
<where>
|
||||||
<if test="1==1"> and device_id = #{deviceId}</if>
|
<if test="1==1"> and device_id = #{deviceId}</if>
|
||||||
<if test="userId != null">user_id = #{userId}</if>
|
<if test="userId != null"> and user_id = #{userId}</if>
|
||||||
</where>
|
</where>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user