|
@@ -16,11 +16,15 @@ import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.collection.CollStreamUtil;
|
|
import cn.hutool.core.collection.CollStreamUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
+import jakarta.annotation.Resource;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
+import vip.xiaonuo.coldchain.modular.monitordevice.entity.MonitorDevice;
|
|
|
|
+import vip.xiaonuo.coldchain.modular.monitordevice.service.MonitorDeviceService;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.entity.MonitorTarget;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.entity.MonitorTarget;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.mapper.MonitorTargetMapper;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.mapper.MonitorTargetMapper;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetAddParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetAddParam;
|
|
@@ -28,6 +32,8 @@ import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetEditParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetIdParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetIdParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetPageParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.param.MonitorTargetPageParam;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.service.MonitorTargetService;
|
|
import vip.xiaonuo.coldchain.modular.monitortarget.service.MonitorTargetService;
|
|
|
|
+import vip.xiaonuo.coldchain.modular.monitortargetregion.entity.MonitorTargetRegion;
|
|
|
|
+import vip.xiaonuo.coldchain.modular.monitortargetregion.service.MonitorTargetRegionService;
|
|
import vip.xiaonuo.common.enums.CommonSortOrderEnum;
|
|
import vip.xiaonuo.common.enums.CommonSortOrderEnum;
|
|
import vip.xiaonuo.common.exception.CommonException;
|
|
import vip.xiaonuo.common.exception.CommonException;
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
@@ -43,6 +49,11 @@ import java.util.List;
|
|
@Service
|
|
@Service
|
|
public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, MonitorTarget> implements MonitorTargetService {
|
|
public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, MonitorTarget> implements MonitorTargetService {
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private MonitorTargetRegionService monitorTargetRegionService;
|
|
|
|
+ @Resource
|
|
|
|
+ private MonitorDeviceService monitorDeviceService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public Page<MonitorTarget> page(MonitorTargetPageParam monitorTargetPageParam) {
|
|
public Page<MonitorTarget> page(MonitorTargetPageParam monitorTargetPageParam) {
|
|
QueryWrapper<MonitorTarget> queryWrapper = new QueryWrapper<MonitorTarget>().checkSqlInjection();
|
|
QueryWrapper<MonitorTarget> queryWrapper = new QueryWrapper<MonitorTarget>().checkSqlInjection();
|
|
@@ -56,7 +67,12 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
|
|
} else {
|
|
} else {
|
|
queryWrapper.lambda().orderByAsc(MonitorTarget::getId);
|
|
queryWrapper.lambda().orderByAsc(MonitorTarget::getId);
|
|
}
|
|
}
|
|
- return this.page(CommonPageRequest.defaultPage(), queryWrapper);
|
|
|
|
|
|
+ Page<MonitorTarget> page = this.page(CommonPageRequest.defaultPage(), queryWrapper);
|
|
|
|
+ //获取设备区域列表并赋值返回
|
|
|
|
+ page.getRecords().forEach(monitorTarget -> {
|
|
|
|
+ monitorTarget.setMonitorTargetRegionList(monitorTargetRegionService.getRegionListByTargetId(monitorTarget.getId()));
|
|
|
|
+ });
|
|
|
|
+ return page;
|
|
}
|
|
}
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -77,6 +93,12 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Override
|
|
@Override
|
|
public void delete(List<MonitorTargetIdParam> monitorTargetIdParamList) {
|
|
public void delete(List<MonitorTargetIdParam> monitorTargetIdParamList) {
|
|
|
|
+ for (MonitorTargetIdParam monitorTargetIdParam : monitorTargetIdParamList) {
|
|
|
|
+ List<MonitorTargetRegion> regionList = monitorTargetRegionService.getRegionListByTargetId(monitorTargetIdParam.getId());
|
|
|
|
+ if (!regionList.isEmpty()) {
|
|
|
|
+ throw new CommonException("监控对象下仍存在分区,无法删除!");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
// 执行删除
|
|
// 执行删除
|
|
this.removeByIds(CollStreamUtil.toList(monitorTargetIdParamList, MonitorTargetIdParam::getId));
|
|
this.removeByIds(CollStreamUtil.toList(monitorTargetIdParamList, MonitorTargetIdParam::getId));
|
|
}
|
|
}
|
|
@@ -94,4 +116,16 @@ public class MonitorTargetServiceImpl extends ServiceImpl<MonitorTargetMapper, M
|
|
}
|
|
}
|
|
return monitorTarget;
|
|
return monitorTarget;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public List<MonitorTarget> getListByUser(String userId) {
|
|
|
|
+ LambdaQueryWrapper<MonitorTarget> queryWrapper = new LambdaQueryWrapper<MonitorTarget>();
|
|
|
|
+ queryWrapper.eq(MonitorTarget::getCreatedBy,userId).orderByDesc(MonitorTarget::getCreatedTime);
|
|
|
|
+ List<MonitorTarget> monitorTargetList = list(queryWrapper);
|
|
|
|
+ monitorTargetList.forEach(monitorTarget -> {
|
|
|
|
+ monitorTarget.setMonitorTargetRegionList(monitorTargetRegionService.getRegionListByTargetId(monitorTarget.getId()));
|
|
|
|
+ });
|
|
|
|
+ return monitorTargetList;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|