|
@@ -141,6 +141,7 @@ public class ProjectService {
|
|
|
project.setUpdateTime(now);
|
|
project.setUpdateTime(now);
|
|
|
project.setCompanyId(headerData.getCompanyId());
|
|
project.setCompanyId(headerData.getCompanyId());
|
|
|
project.setProjectType(projectAddDto.getProjectType());
|
|
project.setProjectType(projectAddDto.getProjectType());
|
|
|
|
|
+ project.setMountainId(projectAddDto.getMountainId());
|
|
|
List<KwsProject> projectList = projectMapper.selectListByType(projectAddDto.getProjectType());
|
|
List<KwsProject> projectList = projectMapper.selectListByType(projectAddDto.getProjectType());
|
|
|
if (projectList.size() > 99) {
|
|
if (projectList.size() > 99) {
|
|
|
return HttpResult.error(HttpStatus.GLOBAL_EXCEPTION_CODE, "当前类型项目已经增加上限!");
|
|
return HttpResult.error(HttpStatus.GLOBAL_EXCEPTION_CODE, "当前类型项目已经增加上限!");
|
|
@@ -224,6 +225,7 @@ public class ProjectService {
|
|
|
HeaderData headerData = commonService.getHeaderData(request);
|
|
HeaderData headerData = commonService.getHeaderData(request);
|
|
|
KwsProject project = new KwsProject();
|
|
KwsProject project = new KwsProject();
|
|
|
BeanUtils.copyProperties(projectAddDto, project);
|
|
BeanUtils.copyProperties(projectAddDto, project);
|
|
|
|
|
+ project.setMountainId(projectAddDto.getMountainId());
|
|
|
project.setId(Long.parseLong(projectAddDto.getId()));
|
|
project.setId(Long.parseLong(projectAddDto.getId()));
|
|
|
project.setStatus(NumberConstant.ZERO);
|
|
project.setStatus(NumberConstant.ZERO);
|
|
|
LocalDateTime now = LocalDateTime.now();
|
|
LocalDateTime now = LocalDateTime.now();
|
|
@@ -334,6 +336,10 @@ public class ProjectService {
|
|
|
return PageRes.build(info, list);
|
|
return PageRes.build(info, list);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ KwsCompanyMapper companyMapper;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
@Transactional
|
|
@Transactional
|
|
|
public HttpResult deviceBind(BindDevice bindDevice, HttpServletRequest request) {
|
|
public HttpResult deviceBind(BindDevice bindDevice, HttpServletRequest request) {
|
|
|
if (org.apache.commons.lang3.StringUtils.isBlank(bindDevice.getInstallTime())) {
|
|
if (org.apache.commons.lang3.StringUtils.isBlank(bindDevice.getInstallTime())) {
|
|
@@ -342,7 +348,12 @@ public class ProjectService {
|
|
|
HeaderData headerData = commonService.getHeaderData(request);
|
|
HeaderData headerData = commonService.getHeaderData(request);
|
|
|
Long projectId = Long.parseLong(bindDevice.getProjectId());
|
|
Long projectId = Long.parseLong(bindDevice.getProjectId());
|
|
|
KwsProject project = projectMapper.selectOne(new LambdaQueryWrapper<KwsProject>().eq(KwsProject::getId, projectId));
|
|
KwsProject project = projectMapper.selectOne(new LambdaQueryWrapper<KwsProject>().eq(KwsProject::getId, projectId));
|
|
|
- String companyId = project.getCompanyId();
|
|
|
|
|
|
|
+ String mountainId = project.getMountainId();
|
|
|
|
|
+ KwsCompany kwsCompany = companyMapper.selectByPrimaryKey(Long.parseLong(mountainId));
|
|
|
|
|
+ if (kwsCompany == null) {
|
|
|
|
|
+ log.error("projectId:{},mountainId:{}", projectId, mountainId);
|
|
|
|
|
+ throw new BusinessException("公司信息获取异常");
|
|
|
|
|
+ }
|
|
|
List<Long> list = StringUtils.splitStrToList(bindDevice.getDeviceIds(), Long.class);
|
|
List<Long> list = StringUtils.splitStrToList(bindDevice.getDeviceIds(), Long.class);
|
|
|
String bindDeviceId = bindDevice.getBindDeviceId();
|
|
String bindDeviceId = bindDevice.getBindDeviceId();
|
|
|
//设备主从绑定
|
|
//设备主从绑定
|
|
@@ -414,6 +425,14 @@ public class ProjectService {
|
|
|
if (!CollectionUtils.isEmpty(list)) {
|
|
if (!CollectionUtils.isEmpty(list)) {
|
|
|
list.forEach(id -> {
|
|
list.forEach(id -> {
|
|
|
String level = "1";
|
|
String level = "1";
|
|
|
|
|
+ String deviceCode = "";
|
|
|
|
|
+ String companyAllCode = kwsCompany.getCompanyAllCode();
|
|
|
|
|
+ String maxDeviceCode = deviceMapper.getMaxDeviceCodeAndSplit(15, 6);
|
|
|
|
|
+ if (org.apache.commons.lang3.StringUtils.isNotBlank(maxDeviceCode)) {
|
|
|
|
|
+ deviceCode = companyAllCode + maxDeviceCode;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ deviceCode = companyAllCode + StringUtils.addZeroForNum("1", 6);
|
|
|
|
|
+ }
|
|
|
if (bindDeviceId != null) {
|
|
if (bindDeviceId != null) {
|
|
|
KwsDevice kwsDevice = deviceMapper.selectByPrimaryKey(Long.parseLong(bindDeviceId));
|
|
KwsDevice kwsDevice = deviceMapper.selectByPrimaryKey(Long.parseLong(bindDeviceId));
|
|
|
if (kwsDevice == null) {
|
|
if (kwsDevice == null) {
|
|
@@ -424,12 +443,14 @@ public class ProjectService {
|
|
|
kwsDevice.setUpdateTime(LocalDateTime.now());
|
|
kwsDevice.setUpdateTime(LocalDateTime.now());
|
|
|
kwsDevice.setUpdateBy(headerData.getUpdateBy() == null ? null : Long.parseLong(headerData.getUpdateBy()));
|
|
kwsDevice.setUpdateBy(headerData.getUpdateBy() == null ? null : Long.parseLong(headerData.getUpdateBy()));
|
|
|
level = "2";
|
|
level = "2";
|
|
|
|
|
+ deviceMapper.updateById(kwsDevice);
|
|
|
}
|
|
}
|
|
|
KwsDevice kwsDevice = deviceMapper.selectByPrimaryKey(id);
|
|
KwsDevice kwsDevice = deviceMapper.selectByPrimaryKey(id);
|
|
|
deviceMapper.update(null, new LambdaUpdateWrapper<KwsDevice>()
|
|
deviceMapper.update(null, new LambdaUpdateWrapper<KwsDevice>()
|
|
|
.eq(KwsDevice::getId, id)
|
|
.eq(KwsDevice::getId, id)
|
|
|
.set(KwsDevice::getRelevanceLevel, level)
|
|
.set(KwsDevice::getRelevanceLevel, level)
|
|
|
.set(KwsDevice::getInstallTime, localDateTime)
|
|
.set(KwsDevice::getInstallTime, localDateTime)
|
|
|
|
|
+ .set(KwsDevice::getDeviceCode, deviceCode)
|
|
|
.set(KwsDevice::getStatus, DeviceEnum.BE_CHECKING.getCode())
|
|
.set(KwsDevice::getStatus, DeviceEnum.BE_CHECKING.getCode())
|
|
|
.set(KwsDevice::getOnline, 1)
|
|
.set(KwsDevice::getOnline, 1)
|
|
|
.set(KwsDevice::getAlias, bindDevice.getAlias() == null ? kwsDevice.getName() : bindDevice.getAlias())
|
|
.set(KwsDevice::getAlias, bindDevice.getAlias() == null ? kwsDevice.getName() : bindDevice.getAlias())
|
|
@@ -1313,6 +1334,7 @@ public class ProjectService {
|
|
|
.set(KwsDevice::getRelevanceLevel, 0)
|
|
.set(KwsDevice::getRelevanceLevel, 0)
|
|
|
.set(KwsDevice::getInstallTime, null)
|
|
.set(KwsDevice::getInstallTime, null)
|
|
|
.set(KwsDevice::getLogicAlt, null)
|
|
.set(KwsDevice::getLogicAlt, null)
|
|
|
|
|
+ .set(KwsDevice::getDeviceCode, null)
|
|
|
.set(KwsDevice::getLogicLat, null)
|
|
.set(KwsDevice::getLogicLat, null)
|
|
|
.set(KwsDevice::getLogicLng, null)
|
|
.set(KwsDevice::getLogicLng, null)
|
|
|
.set(KwsDevice::getStatus, DeviceEnum.NOT_IN_USE.getCode())
|
|
.set(KwsDevice::getStatus, DeviceEnum.NOT_IN_USE.getCode())
|
|
@@ -1381,7 +1403,7 @@ public class ProjectService {
|
|
|
vo.setProjectTotal(count);
|
|
vo.setProjectTotal(count);
|
|
|
int deviceCount = deviceMapper.selectCountByProject(projectId, companyId);
|
|
int deviceCount = deviceMapper.selectCountByProject(projectId, companyId);
|
|
|
vo.setDeviceTotal(deviceCount);
|
|
vo.setDeviceTotal(deviceCount);
|
|
|
- BigDecimal area=new BigDecimal("0.00");
|
|
|
|
|
|
|
+ BigDecimal area = new BigDecimal("0.00");
|
|
|
LambdaQueryWrapper<KwsProject> projectLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<KwsProject> projectLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
projectLambdaQueryWrapper.eq(KwsProject::getDelFlag, 0);
|
|
projectLambdaQueryWrapper.eq(KwsProject::getDelFlag, 0);
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
|
|
@@ -1401,7 +1423,7 @@ public class ProjectService {
|
|
|
queryWrapper.eq(KwsProjectArea::getDelFlag, 0);
|
|
queryWrapper.eq(KwsProjectArea::getDelFlag, 0);
|
|
|
if (!CollectionUtils.isEmpty(projectIdList) && projectIdList.size() > 0) {
|
|
if (!CollectionUtils.isEmpty(projectIdList) && projectIdList.size() > 0) {
|
|
|
queryWrapper.in(KwsProjectArea::getProjectId, projectIdList);
|
|
queryWrapper.in(KwsProjectArea::getProjectId, projectIdList);
|
|
|
- area = projectAreaMapper.selectList(queryWrapper).stream().map(KwsProjectArea::getArea).reduce(BigDecimal.ZERO,
|
|
|
|
|
|
|
+ area = projectAreaMapper.selectList(queryWrapper).stream().map(KwsProjectArea::getArea).reduce(BigDecimal.ZERO,
|
|
|
BigDecimal::add);
|
|
BigDecimal::add);
|
|
|
}
|
|
}
|
|
|
vo.setProjectTotalArea(area);
|
|
vo.setProjectTotalArea(area);
|
|
@@ -1469,12 +1491,12 @@ public class ProjectService {
|
|
|
vo.setOneAlarmTotal(oneAlarmTotal);
|
|
vo.setOneAlarmTotal(oneAlarmTotal);
|
|
|
List<KwsAlarm> alarms = null;
|
|
List<KwsAlarm> alarms = null;
|
|
|
LambdaQueryWrapper<KwsAlarm> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<KwsAlarm> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(KwsAlarm::getDelFlag,0);
|
|
|
|
|
|
|
+ lambdaQueryWrapper.eq(KwsAlarm::getDelFlag, 0);
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(projectId)) {
|
|
|
- lambdaQueryWrapper.eq(KwsAlarm::getProjectId,projectId);
|
|
|
|
|
|
|
+ lambdaQueryWrapper.eq(KwsAlarm::getProjectId, projectId);
|
|
|
}
|
|
}
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
|
|
|
- lambdaQueryWrapper.eq(KwsAlarm::getCompanyId,companyId);
|
|
|
|
|
|
|
+ lambdaQueryWrapper.eq(KwsAlarm::getCompanyId, companyId);
|
|
|
}
|
|
}
|
|
|
alarms = alarmMapper.selectList(lambdaQueryWrapper);
|
|
alarms = alarmMapper.selectList(lambdaQueryWrapper);
|
|
|
LambdaQueryWrapper<KwsAlarmDetail> lt = new LambdaQueryWrapper<KwsAlarmDetail>()
|
|
LambdaQueryWrapper<KwsAlarmDetail> lt = new LambdaQueryWrapper<KwsAlarmDetail>()
|
|
@@ -1486,7 +1508,7 @@ public class ProjectService {
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(companyId)) {
|
|
|
lt.eq(KwsAlarmDetail::getCompanyId, Long.parseLong(companyId));
|
|
lt.eq(KwsAlarmDetail::getCompanyId, Long.parseLong(companyId));
|
|
|
}
|
|
}
|
|
|
- if (alarms.size()>0 && (!CollectionUtils.isEmpty(alarms))) {
|
|
|
|
|
|
|
+ if (alarms.size() > 0 && (!CollectionUtils.isEmpty(alarms))) {
|
|
|
lt.in(KwsAlarmDetail::getAlarmId, alarms.stream().map(KwsAlarm::getId).distinct().collect(Collectors.toList()));
|
|
lt.in(KwsAlarmDetail::getAlarmId, alarms.stream().map(KwsAlarm::getId).distinct().collect(Collectors.toList()));
|
|
|
}
|
|
}
|
|
|
List<KwsAlarmDetail> kwsAlarms = alarmDetailMapper.selectList(lt
|
|
List<KwsAlarmDetail> kwsAlarms = alarmDetailMapper.selectList(lt
|