增加数字孪生设备接口

This commit is contained in:
lxj
2025-09-12 14:02:32 +08:00
parent 0389aa9d7b
commit db80fab091
156 changed files with 383 additions and 263 deletions

View File

@@ -1,60 +0,0 @@
package org.dromara.property.controller.BigScreen;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.domain.R;
import org.dromara.common.web.core.BaseController;
import org.dromara.property.domain.MeetBooking;
import org.dromara.property.domain.vo.BigScreen.TodayMeetCountVo;
import org.dromara.property.domain.vo.BigScreen.TodayVisitorCountVo;
import org.dromara.property.domain.vo.BigScreen.TypeWorkOrderHistogramVo;
import org.dromara.property.service.IMeetBookingService;
import org.dromara.property.service.IServiceWorkOrdersService;
import org.dromara.property.service.ITbVisitorManagementService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
/**
* @author yuyongle
* @version 1.0
* @description: 大屏接口
* @date 2025/9/9 9:57
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/screen")
public class ScreenController extends BaseController {
private final IServiceWorkOrdersService serviceWorkOrdersService;
private final IMeetBookingService meetBookingService;
private final ITbVisitorManagementService tbVisitorManagementService;
/**
* 大屏工单柱状图
*/
@GetMapping("/typeWorkOrderHistogram")
public R<List<TypeWorkOrderHistogramVo>> typeWorkOrderHistogram() {
return R.ok(serviceWorkOrdersService.typeWorkOrderHistogram());
}
/**
* 大屏会议室总数和当天预约数统计
*/
@GetMapping("/todayMeetCount")
public R<TodayMeetCountVo> todayMeetCount() {
return R.ok(meetBookingService.todayMeetCount());
}
/**
* 大屏访客记录统计
*/
@GetMapping("/todayVisitorCount")
public R<List<TodayVisitorCountVo>> todayVisitorCount() {
return R.ok(tbVisitorManagementService.todayVisitorCount());
}
}

View File

@@ -1,13 +1,86 @@
package org.dromara.property.controller.cockpit;
import cn.hutool.core.lang.Assert;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.core.domain.R;
import org.dromara.property.domain.vo.cockpit.DeviceState;
import org.dromara.sis.api.RemoteDeviceService;
import org.dromara.sis.api.domain.RemoteDeviceStateStatistics;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
/**
* 大屏设备接口
* 大屏设备相关接口
*/
@Slf4j
@RestController
@RequestMapping("/cockpit")
public class DriverController {
@Resource
private ScheduledExecutorService executeService;
@DubboReference
private RemoteDeviceService remoteDeviceService;
/**
* 获取设备状态接口
*
* @param deviceType 0:全部1监控设备2水表3t电表4灯孔5门禁
* @return 返回设备状态数据
*/
@GetMapping("/device/state/{deviceType}")
public R<?> getDeviceState(@PathVariable Integer deviceType) throws InterruptedException {
Assert.isTrue(deviceType <= 5 && deviceType >= 0, "未知的设备类型");
int searchNum = deviceType == 0 ? 5 : 1;
List<DeviceState> result = new ArrayList<>(searchNum);
CountDownLatch countDownLatch = new CountDownLatch(searchNum);
// 查询监控设备状态
if (deviceType == 0 || deviceType == 1) {
executeService.execute(() -> {
RemoteDeviceStateStatistics remoteDeviceStateStatistics = remoteDeviceService.statisticsMonitorState();
if (remoteDeviceStateStatistics != null) {
DeviceState state = new DeviceState();
state.setType(1);
state.setTypeName("监控设备");
state.setOnLine(remoteDeviceStateStatistics.getOnLine());
state.setTotal(remoteDeviceStateStatistics.getTotal());
result.add(state);
}
countDownLatch.countDown();
});
}
//查询水表
if (deviceType == 0 || deviceType == 2) {
}
// 查询电表
if (deviceType == 0 || deviceType == 3) {
}
// 查询灯
if (deviceType == 0 || deviceType == 4) {
}
// 查询门禁
if (deviceType == 0 || deviceType == 5) {
}
/**
* 默认10S超过自动结束
*/
countDownLatch.await(10, TimeUnit.SECONDS);
return R.ok(result);
}
}

View File

@@ -1,11 +1,20 @@
package org.dromara.property.controller.cockpit;
import jakarta.annotation.Resource;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.core.domain.R;
import org.dromara.property.domain.vo.BigScreen.TodayMeetCountVo;
import org.dromara.property.domain.vo.BigScreen.TodayVisitorCountVo;
import org.dromara.property.domain.vo.BigScreen.TypeWorkOrderHistogramVo;
import org.dromara.property.service.IMeetBookingService;
import org.dromara.property.service.IServiceWorkOrdersService;
import org.dromara.property.service.ITbVisitorManagementService;
import org.dromara.system.api.RemoteUserService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
/**
@@ -14,6 +23,14 @@ import java.util.Map;
@RestController
@RequestMapping("/cockpit")
public class PropertyPersonController {
@Resource
private IServiceWorkOrdersService serviceWorkOrdersService;
@Resource
private IMeetBookingService meetBookingService;
@Resource
private ITbVisitorManagementService tbVisitorManagementService;
@DubboReference
private RemoteUserService remoteUserService;
@@ -22,4 +39,27 @@ public class PropertyPersonController {
return R.ok(remoteUserService.seelectOrgcount());
}
/**
* 大屏工单柱状图
*/
@GetMapping("/screen/typeWorkOrderHistogram")
public R<List<TypeWorkOrderHistogramVo>> typeWorkOrderHistogram() {
return R.ok(serviceWorkOrdersService.typeWorkOrderHistogram());
}
/**
* 大屏会议室总数和当天预约数统计
*/
@GetMapping("/screen/todayMeetCount")
public R<TodayMeetCountVo> todayMeetCount() {
return R.ok(meetBookingService.todayMeetCount());
}
/**
* 大屏访客记录统计
*/
@GetMapping("/screen/todayVisitorCount")
public R<List<TodayVisitorCountVo>> todayVisitorCount() {
return R.ok(tbVisitorManagementService.todayVisitorCount());
}
}

View File

@@ -0,0 +1,26 @@
package org.dromara.property.domain.vo.cockpit;
import lombok.Data;
@Data
public class DeviceState {
/**
* 设备类型
*/
private Integer type;
/**
* 设备类型名称
*/
private String typeName;
/**
* 在线数
*/
private Integer onLine;
/**
* 总数
*/
private Integer total;
}

View File

@@ -1,5 +1,6 @@
package org.dromara.property.tasks;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Component;
import java.util.Map;
@@ -12,7 +13,10 @@ import java.util.concurrent.*;
*/
@Component
public class HeartbeatTasks {
private final ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();
@Resource
private ScheduledExecutorService scheduler;
private final Map<String, ScheduledFuture<?>> tasks = new ConcurrentHashMap<>();
public void startHeartbeatTask(String taskId, Runnable task, long intervalMs, long durationMs) {

View File

@@ -2,7 +2,7 @@ package org.dromara.sis.controller;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.sis.domain.AlarmRecord;
import org.dromara.sis.domain.entity.AlarmRecord;
import org.dromara.sis.domain.bo.SisAlarmEventsBo;
import org.dromara.sis.domain.enums.EventBigTypeEnum;
import org.dromara.sis.domain.enums.EventSmallTypeEnum;
@@ -10,6 +10,7 @@ import org.dromara.sis.service.AlarmRecordService;
import org.dromara.sis.service.ISisAlarmEventsService;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -30,6 +31,8 @@ public class AlarmPushController {
private final AlarmRecordService alarmRecordService;
private final ISisAlarmEventsService sisAlarmEventsService;
private final ThreadPoolTaskExecutor executor;
/**
* 接收单条告警数据推送

View File

@@ -7,7 +7,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisAcDeviceRef;
import org.dromara.sis.domain.entity.SisAcDeviceRef;
/**
* 门禁⇄监控点关联业务对象 sis_ac_device_ref

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisAccessControl;
import org.dromara.sis.domain.entity.SisAccessControl;
import java.util.List;

View File

@@ -7,7 +7,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisAlarmEventAttachments;
import org.dromara.sis.domain.entity.SisAlarmEventAttachments;
/**
* 【请填写功能名称】业务对象 sis_alarm_event_attachments

View File

@@ -7,7 +7,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisAlarmEventProcess;
import org.dromara.sis.domain.entity.SisAlarmEventProcess;
import java.util.Date;

View File

@@ -7,7 +7,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisAlarmEvents;
import org.dromara.sis.domain.entity.SisAlarmEvents;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisAuthGroup;
import org.dromara.sis.domain.entity.SisAuthGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisAuthGroupRef;
import org.dromara.sis.domain.entity.SisAuthGroupRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisAuthRecord;
import org.dromara.sis.domain.entity.SisAuthRecord;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
@@ -9,7 +9,6 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 授权记录业务对象 sis_auth_record

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisDeviceBindRef;
import org.dromara.sis.domain.entity.SisDeviceBindRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisDeviceChannel;
import org.dromara.sis.domain.entity.SisDeviceChannel;
/**
* 设备通道管理业务对象 sis_device_channel

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisDeviceGroup;
import org.dromara.sis.domain.entity.SisDeviceGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.domain.entity.SisDeviceManage;
/**
* 设备管理业务对象 sis_device_manage

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisDevicePoint;
import org.dromara.sis.domain.entity.SisDevicePoint;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisEEightRef;
import org.dromara.sis.domain.entity.SisEEightRef;
import java.util.List;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisElevatorFloorChannelRef;
import org.dromara.sis.domain.entity.SisElevatorFloorChannelRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisElevatorFloorRef;
import org.dromara.sis.domain.entity.SisElevatorFloorRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisElevatorInfo;
import org.dromara.sis.domain.entity.SisElevatorInfo;
import java.util.Date;
import java.util.List;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisLibDeviceImgRef;
import org.dromara.sis.domain.entity.SisLibDeviceImgRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -4,7 +4,7 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisLibDeviceRef;
import org.dromara.sis.domain.entity.SisLibDeviceRef;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import jakarta.validation.constraints.*;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisLibImgRef;
import org.dromara.sis.domain.entity.SisLibImgRef;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.SisPersonLib;
import org.dromara.sis.domain.entity.SisPersonLib;
/**
* 人像库业务对象 tb_person_lib

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.bo;
import org.dromara.sis.domain.SisPersonLibImg;
import org.dromara.sis.domain.entity.SisPersonLibImg;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

View File

@@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.sis.domain.TbFactory;
import org.dromara.sis.domain.entity.TbFactory;
/**
* 厂商管理业务对象 td_factory

View File

@@ -3,8 +3,8 @@ package org.dromara.sis.domain.covert;
import org.dromara.sis.api.domain.RemoteSdkChannel;
import org.dromara.sis.api.domain.RemoteSisDeviceChannel;
import org.dromara.sis.api.domain.RemoteSisDeviceManage;
import org.dromara.sis.domain.SisDeviceChannel;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.domain.entity.SisDeviceChannel;
import org.dromara.sis.domain.entity.SisDeviceManage;
import org.dromara.sis.sdk.hik.DeviceInfo;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,11 +1,10 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -1,4 +1,4 @@
package org.dromara.sis.domain;
package org.dromara.sis.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@@ -2,7 +2,7 @@ package org.dromara.sis.domain.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.domain.entity.SisDeviceManage;
@EqualsAndHashCode(callSuper = true)
@Data

View File

@@ -0,0 +1,14 @@
package org.dromara.sis.domain.vo;
import lombok.Data;
@Data
public class DeviceStateStatistics {
private Integer onLine;
private Integer offLine;
private Integer total;
}

View File

@@ -2,16 +2,12 @@ package org.dromara.sis.domain.vo;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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 org.dromara.sis.domain.SisAcDeviceRef;
import org.dromara.sis.domain.entity.SisAcDeviceRef;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisAccessControl;
import org.dromara.sis.domain.entity.SisAccessControl;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -6,7 +6,7 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import org.dromara.sis.domain.SisAlarmEventAttachments;
import org.dromara.sis.domain.entity.SisAlarmEventAttachments;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -4,7 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.sis.domain.SisAlarmEventProcess;
import org.dromara.sis.domain.entity.SisAlarmEventProcess;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -6,7 +6,7 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import org.dromara.sis.domain.SisAlarmEvents;
import org.dromara.sis.domain.entity.SisAlarmEvents;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisAuthGroupRef;
import org.dromara.sis.domain.entity.SisAuthGroupRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;

View File

@@ -1,18 +1,14 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisAuthGroup;
import org.dromara.sis.domain.entity.SisAuthGroup;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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.Collection;
import java.util.Date;
/**

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.domain.vo;
import java.util.Date;
import org.dromara.sis.domain.SisAuthRecord;
import org.dromara.sis.domain.entity.SisAuthRecord;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -1,17 +1,13 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisDeviceBindRef;
import org.dromara.sis.domain.entity.SisDeviceBindRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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;
/**

View File

@@ -1,17 +1,13 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisDeviceChannel;
import org.dromara.sis.domain.entity.SisDeviceChannel;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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;
/**

View File

@@ -1,17 +1,13 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisDeviceGroup;
import org.dromara.sis.domain.entity.SisDeviceGroup;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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;
/**

View File

@@ -6,7 +6,7 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.domain.entity.SisDeviceManage;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -6,7 +6,7 @@ import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import org.dromara.sis.domain.SisDevicePoint;
import org.dromara.sis.domain.entity.SisDevicePoint;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,16 +1,13 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisEEightRef;
import org.dromara.sis.domain.entity.SisEEightRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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;
import java.util.List;

View File

@@ -1,17 +1,13 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisElevatorFloorChannelRef;
import org.dromara.sis.domain.entity.SisElevatorFloorChannelRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.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;
/**

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisElevatorFloorRef;
import org.dromara.sis.domain.entity.SisElevatorFloorRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -4,7 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.sis.domain.SisElevatorInfo;
import org.dromara.sis.domain.entity.SisElevatorInfo;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisLibDeviceImgRef;
import org.dromara.sis.domain.entity.SisLibDeviceImgRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisLibDeviceRef;
import org.dromara.sis.domain.entity.SisLibDeviceRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.domain.vo;
import org.dromara.sis.domain.SisLibImgRef;
import org.dromara.sis.domain.entity.SisLibImgRef;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;

View File

@@ -4,7 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.sis.domain.SisPersonLibImg;
import org.dromara.sis.domain.entity.SisPersonLibImg;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -4,7 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.sis.domain.SisPersonLib;
import org.dromara.sis.domain.entity.SisPersonLib;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -4,7 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.sis.domain.TbFactory;
import org.dromara.sis.domain.entity.TbFactory;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -5,12 +5,15 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboService;
import org.dromara.sis.api.RemoteDeviceService;
import org.dromara.sis.api.domain.RemoteDeviceStateStatistics;
import org.dromara.sis.api.domain.RemoteSdkChannel;
import org.dromara.sis.api.domain.RemoteSisDeviceChannel;
import org.dromara.sis.api.domain.RemoteSisDeviceManage;
import org.dromara.sis.domain.SisDeviceChannel;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.api.enums.DeviceTypeEnum;
import org.dromara.sis.domain.covert.CommonBeanCovert;
import org.dromara.sis.domain.entity.SisDeviceChannel;
import org.dromara.sis.domain.entity.SisDeviceManage;
import org.dromara.sis.domain.vo.DeviceStateStatistics;
import org.dromara.sis.sdk.hik.HikConstants;
import org.dromara.sis.service.ISisDeviceChannelService;
import org.dromara.sis.service.ISisDeviceManageService;
@@ -114,4 +117,17 @@ public class RemoteDeviceServiceImpl implements RemoteDeviceService {
}
return num;
}
@Override
public RemoteDeviceStateStatistics statisticsMonitorState() {
DeviceStateStatistics deviceStateStatistics = deviceChannelService.statisticsDeviceState(DeviceTypeEnum.IPC.getType());
if (deviceStateStatistics != null) {
RemoteDeviceStateStatistics stateStatistics = new RemoteDeviceStateStatistics();
stateStatistics.setOnLine(deviceStateStatistics.getOnLine());
stateStatistics.setOffLine(deviceStateStatistics.getOffLine());
stateStatistics.setTotal(deviceStateStatistics.getTotal());
return stateStatistics;
}
return null;
}
}

View File

@@ -7,7 +7,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboService;
import org.dromara.sis.api.RemoteSos;
import org.dromara.sis.api.domain.RemoteAlarmRecord;
import org.dromara.sis.domain.AlarmRecord;
import org.dromara.sis.domain.entity.AlarmRecord;
import org.dromara.sis.service.AlarmRecordService;
import org.springframework.beans.BeanUtils;

View File

@@ -3,7 +3,7 @@ package org.dromara.sis.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.dromara.sis.domain.AlarmRecord;
import org.dromara.sis.domain.entity.AlarmRecord;
import org.springframework.stereotype.Repository;
/**

View File

@@ -2,7 +2,7 @@ package org.dromara.sis.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.dromara.sis.domain.AlarmTaskOperator;
import org.dromara.sis.domain.entity.AlarmTaskOperator;
import org.springframework.stereotype.Repository;
/**

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisAcDeviceRef;
import org.dromara.sis.domain.entity.SisAcDeviceRef;
import org.dromara.sis.domain.model.SisAcDevice;
import org.dromara.sis.domain.vo.SisAcDeviceRefVo;

View File

@@ -2,7 +2,7 @@ package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisAccessControl;
import org.dromara.sis.domain.entity.SisAccessControl;
import org.dromara.sis.domain.vo.SisAccessControlVo;
/**

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisAlarmEventAttachments;
import org.dromara.sis.domain.entity.SisAlarmEventAttachments;
import org.dromara.sis.domain.vo.SisAlarmEventAttachmentsVo;
/**

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.mapper;
import org.dromara.sis.domain.SisAlarmEventProcess;
import org.dromara.sis.domain.entity.SisAlarmEventProcess;
import org.dromara.sis.domain.vo.SisAlarmEventProcessVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -5,7 +5,7 @@ import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.annotation.DataColumn;
import org.dromara.common.mybatis.annotation.DataPermission;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisAlarmEvents;
import org.dromara.sis.domain.entity.SisAlarmEvents;
import org.dromara.sis.domain.bo.SisAlarmEventsBo;
import org.dromara.sis.domain.vo.QueryStatisticsAlarmVo;
import org.dromara.sis.domain.vo.SisAlarmEventsVo;

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.dromara.sis.domain.SisAuthGroup;
import org.dromara.sis.domain.entity.SisAuthGroup;
import org.dromara.sis.domain.vo.SisAuthGroupVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.dromara.sis.domain.SisAuthGroupRef;
import org.dromara.sis.domain.entity.SisAuthGroupRef;
import org.dromara.sis.domain.vo.SisAuthGroupRefVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.dromara.sis.domain.SisAuthRecord;
import org.dromara.sis.domain.entity.SisAuthRecord;
import org.dromara.sis.domain.vo.SisAuthRecordVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.dromara.sis.domain.SisAlarmEvents;
import org.dromara.sis.domain.entity.SisAlarmEvents;
public interface SisDataSyncMapper extends BaseMapper<SisAlarmEvents> {
}

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.mapper;
import org.dromara.sis.domain.SisDeviceBindRef;
import org.dromara.sis.domain.entity.SisDeviceBindRef;
import org.dromara.sis.domain.vo.SisDeviceBindRefVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -2,7 +2,8 @@ package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.SisDeviceChannel;
import org.dromara.sis.domain.entity.SisDeviceChannel;
import org.dromara.sis.domain.vo.DeviceStateStatistics;
import org.dromara.sis.domain.vo.SisDeviceChannelVo;
/**
@@ -14,4 +15,6 @@ import org.dromara.sis.domain.vo.SisDeviceChannelVo;
public interface SisDeviceChannelMapper extends BaseMapperPlus<SisDeviceChannel, SisDeviceChannelVo> {
SisDeviceChannel queryChannels(@Param("deviceIp") String deviceIp, @Param("channelNo") String channelNo);
DeviceStateStatistics statisticsDeviceState(int type);
}

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.mapper;
import org.dromara.sis.domain.SisDeviceGroup;
import org.dromara.sis.domain.entity.SisDeviceGroup;
import org.dromara.sis.domain.vo.SisDeviceGroupVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -2,7 +2,7 @@ package org.dromara.sis.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.dromara.sis.domain.SisDeviceManage;
import org.dromara.sis.domain.entity.SisDeviceManage;
import org.dromara.sis.domain.bo.SisDeviceManageBo;
import org.dromara.sis.domain.vo.SisDeviceManageVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.mapper;
import org.dromara.sis.domain.SisDevicePoint;
import org.dromara.sis.domain.entity.SisDevicePoint;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.sis.domain.vo.SisDevicePointVo;

View File

@@ -1,6 +1,6 @@
package org.dromara.sis.mapper;
import org.dromara.sis.domain.SisEEightRef;
import org.dromara.sis.domain.entity.SisEEightRef;
import org.dromara.sis.domain.vo.SisEEightRefVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

View File

@@ -1,7 +1,7 @@
package org.dromara.sis.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.dromara.sis.domain.SisElevatorFloorChannelRef;
import org.dromara.sis.domain.entity.SisElevatorFloorChannelRef;
import org.dromara.sis.domain.vo.SisElevatorFloorChannelRefVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

Some files were not shown because too many files have changed in this diff Show More