手动控制页面开发

master
林颖晨 2 years ago
parent 0d560afee0
commit bacd78e36e
  1. 1
      pom.xml
  2. 2
      psdc-admin/src/main/resources/logback.xml
  3. 15
      psdc-business/src/main/java/com/psdc/entity/PsdcControlLog.java
  4. 36
      psdc-business/src/main/java/com/psdc/entity/vo/DeviceStatusVo.java
  5. 17
      psdc-business/src/main/java/com/psdc/mapper/PsdcControlLogMapper.java
  6. 20
      psdc-business/src/main/java/com/psdc/mapper/PsdcDeviceMapper.java
  7. 47
      psdc-business/src/main/java/com/psdc/service/IPsdcControlLogService.java
  8. 33
      psdc-business/src/main/java/com/psdc/service/IPsdcDeviceService.java
  9. 69
      psdc-business/src/main/java/com/psdc/service/impl/PsdcControlLogServiceImpl.java
  10. 78
      psdc-business/src/main/java/com/psdc/service/impl/PsdcDeviceServiceImpl.java
  11. 72
      psdc-business/src/main/resources/mapper/business/PsdcControlLogMapper.xml
  12. 102
      psdc-business/src/main/resources/mapper/business/PsdcDeviceMapper.xml
  13. 25
      psdc-common/src/main/java/com/psdc/exception/ControlException.java
  14. 7
      psdc-quartz/pom.xml
  15. 0
      psdc-ui/src/api/control/timer.js
  16. 5
      psdc-web/pom.xml
  17. 66
      psdc-web/src/main/java/com/psdc/controller/control/ManualControl.java

@ -159,6 +159,7 @@
<module>psdc-common</module>
<module>psdc-admin</module>
<module>psdc-business</module>
<module>psdc-quartz</module>
</modules>
<packaging>pom</packaging>

@ -72,7 +72,7 @@
</appender>
<!-- 系统模块日志级别控制 -->
<logger name="com.example" level="info" />
<logger name="com.psdc" level="info" />
<!-- Spring日志级别控制 -->
<logger name="org.springframework" level="warn" />

@ -48,6 +48,10 @@ public class PsdcControlLog implements Serializable {
* 控制结果1-控制中2-控制成功3-控制失败
*/
private Integer controlResult;
/**
* 控制结果描述
*/
private String controlContext;
/**
* 创建者
*/
@ -64,4 +68,15 @@ public class PsdcControlLog implements Serializable {
* 更新时间
*/
private String updateTime;
public PsdcControlLog(Integer deviceId, String deviceName, String deviceSn, String controlKey, String controlValue, Integer controlResult,String controlContext, String createBy) {
this.deviceId = deviceId;
this.deviceName = deviceName;
this.deviceSn = deviceSn;
this.controlKey = controlKey;
this.controlValue = controlValue;
this.controlResult = controlResult;
this.controlContext = controlContext;
this.createBy = createBy;
}
}

@ -0,0 +1,36 @@
package com.psdc.entity.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.stereotype.Component;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Component
public class DeviceStatusVo {
/**
* 设备id
*/
private Integer deviceId;
/**
* 设备类型1-监测设备2-运行设备
*/
private Integer deviceType;
/**
* 设备名称
*/
private String deviceName;
/**
* 设备sn
*/
private String deviceSn;
/** 图片地址 */
private String photoUrl ;
/** 设备运行状态:1-开启,2-关闭 */
private Integer deviceRunstatus ;
}

@ -1,10 +1,12 @@
package com.psdc.mapper;
import com.psdc.entity.PsdcControlLog;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface PsdcControlLogMapper{
/**
* 通过ID查询单条数据
@ -13,14 +15,13 @@ public interface PsdcControlLogMapper{
* @return 实例对象
*/
PsdcControlLog queryById(Integer controlLogId);
/**
* 分页查询指定行数据
*
* @param psdcControlLog 查询条件
* @param pageable 分页对象
* @return 对象列表
/**
* 分页查询控制日志
* @param psdcControlLog
*/
List<PsdcControlLog> queryAllByLimit(PsdcControlLog psdcControlLog, @Param("pageable") Pageable pageable);
List<PsdcControlLog> queryControlLogList(PsdcControlLog psdcControlLog);
/**
* 统计总行数
*
@ -49,4 +50,6 @@ public interface PsdcControlLogMapper{
* @return 影响行数
*/
int deleteById(Integer controlLogId);
}

@ -6,9 +6,10 @@ import com.psdc.entity.PsdcDevice;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.data.domain.Pageable;
import org.springframework.security.access.method.P;
/**
/**
* 设备信息表;(psdc_device)表数据库访问层
* @author : http://www.chiner.pro
* @date : 2023-4-23
@ -58,4 +59,19 @@ public interface PsdcDeviceMapper{
* @return 影响行数
*/
int deleteById(Integer deviceId);
}
/**
* 根据用户id查询设备
* @param userId
* @return
*/
List<PsdcDevice> queryByUserId(Long userId);
/**
* 根据设备id修改设备状态
* @param deviceId
* @return
*/
int updateDevRunStatusByDevId(@Param(value = "deviceId") Integer deviceId,
@Param(value = "runStatus") Integer runStatus);
}

@ -0,0 +1,47 @@
package com.psdc.service;
import com.psdc.entity.PsdcControlLog;
import java.util.List;
/**
* 控制日志;(psdc_control_log)表服务接口
* @date : 2023-5-9
*/
public interface IPsdcControlLogService {
/**
* 通过ID查询单条数据
*
* @param controlLogId 主键
* @return 实例对象
*/
PsdcControlLog queryById(Integer controlLogId);
/**
* 新增数据
*
* @param psdcControlLog 实例对象
* @return 实例对象
*/
PsdcControlLog insert(PsdcControlLog psdcControlLog);
/**
* 更新数据
*
* @param psdcControlLog 实例对象
* @return 实例对象
*/
PsdcControlLog update(PsdcControlLog psdcControlLog);
/**
* 通过主键删除数据
*
* @param controlLogId 主键
* @return 是否成功
*/
boolean deleteById(Integer controlLogId);
/**
* 分页查询控制日志
* @param psdcControlLog
*/
List<PsdcControlLog> query(PsdcControlLog psdcControlLog);
}

@ -1,7 +1,9 @@
package com.psdc.service;
import com.psdc.entity.PsdcDevice;
import org.springframework.data.domain.PageRequest;
import com.psdc.entity.vo.DeviceStatusVo;
import java.util.List;
public interface IPsdcDeviceService {
@ -13,6 +15,18 @@ public interface IPsdcDeviceService {
*/
PsdcDevice queryById(Integer deviceId);
/**
* 根据用户id查询设备列表
* @return
*/
List<PsdcDevice> queryByUserId();
/**
* 查询所有设备状态
* @return
*/
List<DeviceStatusVo> queryDeviceStatus();
/**
* 新增数据
*
@ -20,6 +34,7 @@ public interface IPsdcDeviceService {
* @return 实例对象
*/
PsdcDevice insert(PsdcDevice psdcDevice);
/**
* 更新数据
*
@ -35,4 +50,20 @@ public interface IPsdcDeviceService {
*/
boolean deleteById(Integer deviceId);
/**
* 更新设备状态
* @param deviceId
* @param runStatus
* @return
*/
int updateDeviceRunStatus(Integer deviceId,Integer runStatus);
/**
* 控制设备启动停止
* @param deviceId
* @param runStatus
* @return
*/
int controlDeviceStartAndStop(Integer deviceId,Integer runStatus);
}

@ -0,0 +1,69 @@
package com.psdc.service.impl;
import com.psdc.entity.PsdcControlLog;
import com.psdc.mapper.PsdcControlLogMapper;
import com.psdc.service.IPsdcControlLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 控制日志;(psdc_control_log)表服务实现类
* @date : 2023-5-9
*/
@Service
public class PsdcControlLogServiceImpl implements IPsdcControlLogService {
@Autowired
private PsdcControlLogMapper psdcControlLogMapper;
/**
* 通过ID查询单条数据
*
* @param controlLogId 主键
* @return 实例对象
*/
public PsdcControlLog queryById(Integer controlLogId){
return psdcControlLogMapper.queryById(controlLogId);
}
/**
* 新增数据
*
* @param psdcControlLog 实例对象
* @return 实例对象
*/
public PsdcControlLog insert(PsdcControlLog psdcControlLog){
psdcControlLogMapper.insert(psdcControlLog);
return psdcControlLog;
}
/**
* 更新数据
*
* @param psdcControlLog 实例对象
* @return 实例对象
*/
public PsdcControlLog update(PsdcControlLog psdcControlLog){
psdcControlLogMapper.update(psdcControlLog);
return queryById(psdcControlLog.getControlLogId());
}
/**
* 通过主键删除数据
*
* @param controlLogId 主键
* @return 是否成功
*/
public boolean deleteById(Integer controlLogId){
int total = psdcControlLogMapper.deleteById(controlLogId);
return total > 0;
}
@Override
public List<PsdcControlLog> query(PsdcControlLog psdcControlLog) {
return psdcControlLogMapper.queryControlLogList(psdcControlLog);
}
}

@ -1,18 +1,31 @@
package com.psdc.service.impl;
import com.psdc.entity.PsdcControlLog;
import com.psdc.entity.PsdcDevice;
import com.psdc.entity.vo.DeviceStatusVo;
import com.psdc.exception.ControlException;
import com.psdc.mapper.PsdcControlLogMapper;
import com.psdc.mapper.PsdcDeviceMapper;
import com.psdc.service.IPsdcDeviceService;
import com.psdc.utils.SecurityUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@Service
@Slf4j
public class PsdcDeviceServiceImpl implements IPsdcDeviceService{
@Autowired
private PsdcDeviceMapper psdcDeviceMapper;
@Autowired
private PsdcControlLogMapper psdcControlLogMapper;
/**
* 通过ID查询单条数据
*
@ -23,6 +36,23 @@ public class PsdcDeviceServiceImpl implements IPsdcDeviceService{
return psdcDeviceMapper.queryById(deviceId);
}
/**
* 根据用户id查询设备列表
* @return
*/
public List<PsdcDevice> queryByUserId(){
return psdcDeviceMapper.queryByUserId(SecurityUtils.getUserId());
}
public List<DeviceStatusVo> queryDeviceStatus(){
List<PsdcDevice> psdcDevices = psdcDeviceMapper.queryByUserId(SecurityUtils.getUserId());
return psdcDevices.stream().map(psdcDevice -> {
DeviceStatusVo deviceStatusVo = new DeviceStatusVo();
BeanUtils.copyProperties(psdcDevice, deviceStatusVo);
return deviceStatusVo;
}).collect(Collectors.toList());
}
/**
* 新增数据
*
@ -55,4 +85,48 @@ public class PsdcDeviceServiceImpl implements IPsdcDeviceService{
int total = psdcDeviceMapper.deleteById(deviceId);
return total > 0;
}
/**
* 更新设备状态
* @param deviceId
* @param runStatus
* @return
*/
@Override
public int updateDeviceRunStatus(Integer deviceId, Integer runStatus) {
return psdcDeviceMapper.updateDevRunStatusByDevId(deviceId,runStatus);
}
/**
* 控制设备启动停止
* @param deviceId
* @param runStatus
* @return
*/
@Override
public int controlDeviceStartAndStop(Integer deviceId, Integer runStatus) {
String s = "";
if(runStatus == 1){
s = "启动";
} else if ( runStatus == 2 ) {
s = "停止";
}
log.info("设备id:{}",deviceId);
PsdcDevice psdcDevice = psdcDeviceMapper.queryById(deviceId);
if(psdcDevice == null){
psdcControlLogMapper.insert(new PsdcControlLog(deviceId,null,null,"设备启停",s,2,"未找到该设备",SecurityUtils.getUsername()));
throw new ControlException("控制失败,未找到该设备");
}
//TODO 发送MQTT指令
// psdcControlLogMapper.insert(new PsdcControlLog(deviceId,psdcDevice.getDeviceName(),psdcDevice.getDeviceSn(),"设备启停",s,2,"等待终端响应超时",SecurityUtils.getUsername()));
//发送成功
psdcControlLogMapper.insert(new PsdcControlLog(deviceId,psdcDevice.getDeviceName(),psdcDevice.getDeviceSn(),"设备启停",s,2,"控制成功",SecurityUtils.getUsername()));
return psdcDeviceMapper.updateDevRunStatusByDevId(deviceId,runStatus);
}
}

@ -2,31 +2,42 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.psdc.mapper.PsdcControlLogMapper">
<resultMap type="com.psdc.entity.PsdcControlLog" id="PsdcControlLogMap">
<result property="controlLogId" column="control_log_id" />
<result property="deviceId" column="device_id" />
<result property="deviceName" column="device_name" />
<result property="deviceSn" column="device_sn" />
<result property="controlKey" column="control_key" />
<result property="controlValue" column="control_value" />
<result property="controlResult" column="control_result" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="controlLogId" column="control_log_id"/>
<result property="deviceId" column="device_id"/>
<result property="deviceName" column="device_name"/>
<result property="deviceSn" column="device_sn"/>
<result property="controlKey" column="control_key"/>
<result property="controlValue" column="control_value"/>
<result property="controlResult" column="control_result"/>
<result property="controlContext" column="control_context"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<!-- 通过ID查询单条数据 -->
<select id="queryById" resultMap="PsdcControlLogMap">
select
control_log_id,device_id,device_name,device_sn,control_key,control_value,control_result,create_by,create_time,update_by,update_time
select control_log_id,
device_id,
device_name,
device_sn,
control_key,
control_value,
control_result,
control_context,
create_by,
create_time,
update_by,
update_time
from psdc_control_log
where control_log_id = #{controlLogId}
</select>
<!--分页查询指定行数据-->
<select id="queryAllByLimit" resultMap="PsdcControlLogMap">
<select id="queryControlLogList" parameterType="com.psdc.entity.PsdcControlLog" resultMap="PsdcControlLogMap">
select
control_log_id,device_id,device_name,device_sn,control_key,control_value,control_result,create_by,create_time,update_by,update_time
control_log_id,device_id,device_name,device_sn,control_key,control_value,control_result,control_context,create_by,create_time,update_by,update_time
from psdc_control_log
<where>
<if test="controlLogId != null and controlLogId != ''">
@ -50,6 +61,9 @@
<if test="controlResult != null and controlResult != ''">
and control_result = #{controlResult}
</if>
<if test="controlContext != null and controlContext != ''">
and control_context = #{controlContext}
</if>
<if test="createBy != null and createBy != ''">
and create_by = #{createBy}
</if>
@ -63,7 +77,6 @@
and update_time = #{updateTime}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
<!--统计总行数-->
@ -92,6 +105,9 @@
<if test="controlResult != null and controlResult != ''">
and control_result = #{controlResult}
</if>
<if test="controlContext != null and controlContext != ''">
and control_context = #{controlContext}
</if>
<if test="createBy != null and createBy != ''">
and create_by = #{createBy}
</if>
@ -108,18 +124,11 @@
</select>
<!--新增数据-->
<insert id="insert" >
insert into psdc_control_log(control_log_id,device_id,device_name,device_sn,control_key,control_value,control_result,create_by,create_time,update_by,update_time)
values (#{controlLogId},#{deviceId},#{deviceName},#{deviceSn},#{controlKey},#{controlValue},#{controlResult},#{createBy},#{createTime},#{updateBy},#{updateTime})
</insert>
<!-- 批量新增数据 -->
<insert id="insertBatch" >
insert into psdc_control_log(control_log_id,device_id,device_name,device_sn,control_key,control_value,control_result,create_by,create_time,update_by,update_time)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.controlLogId},#{entity.deviceId},#{entity.deviceName},#{entity.deviceSn},#{entity.controlKey},#{entity.controlValue},#{entity.controlResult},#{entity.createBy},#{entity.createTime},#{entity.updateBy},#{entity.updateTime})
</foreach>
<insert id="insert">
insert into psdc_control_log(device_id, device_name, device_sn, control_key, control_value, control_result,control_context,
create_by, create_time, update_by, update_time)
values (#{deviceId}, #{deviceName}, #{deviceSn}, #{controlKey}, #{controlValue}, #{controlResult},#{controlContext}, #{createBy},
sysdate(), #{updateBy}, #{updateTime})
</insert>
@ -148,6 +157,9 @@
<if test="controlResult != null and controlResult != ''">
control_result = #{controlResult},
</if>
<if test="controlContext != null and controlContext != ''">
and control_context = #{controlContext}
</if>
<if test="createBy != null and createBy != ''">
create_by = #{createBy},
</if>
@ -166,6 +178,8 @@
<!--通过主键删除-->
<delete id="deleteById">
delete from psdc_control_log where control_log_id = #{controlLogId}
delete
from psdc_control_log
where control_log_id = #{controlLogId}
</delete>
</mapper>

@ -2,36 +2,71 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.psdc.mapper.PsdcDeviceMapper">
<resultMap type="com.psdc.entity.PsdcDevice" id="PsdcDeviceMap">
<result property="deviceId" column="device_id" />
<result property="userId" column="user_id" />
<result property="deviceType" column="device_type" />
<result property="deviceSn" column="device_sn" />
<result property="deviceName" column="device_name" />
<result property="hardVersion" column="hard_version" />
<result property="softVersion" column="soft_version" />
<result property="deviceAddress" column="device_address" />
<result property="startTime" column="start_time" />
<result property="deviceStatus" column="device_status" />
<result property="photoUrl" column="photo_url" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="deviceId" column="device_id"/>
<result property="userId" column="user_id"/>
<result property="deviceType" column="device_type"/>
<result property="deviceSn" column="device_sn"/>
<result property="deviceName" column="device_name"/>
<result property="hardVersion" column="hard_version"/>
<result property="softVersion" column="soft_version"/>
<result property="deviceAddress" column="device_address"/>
<result property="startTime" column="start_time"/>
<result property="deviceStatus" column="device_status"/>
<result property="deviceRunstatus" column="device_runstatus"/>
<result property="photoUrl" column="photo_url"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<!-- 通过ID查询单条数据 -->
<select id="queryById" resultMap="PsdcDeviceMap">
select
device_id,user_id,device_type,device_sn,device_name,hard_version,soft_version,device_address,start_time,device_status,photo_url,create_by,create_time,update_by,update_time
select device_id,
user_id,
device_type,
device_sn,
device_name,
hard_version,
soft_version,
device_address,
start_time,
device_status,
device_runstatus,
photo_url,
create_by,
create_time,
update_by,
update_time
from psdc_device
where device_id = #{deviceId}
</select>
<select id="queryByUserId" resultMap="PsdcDeviceMap">
select device_id,
user_id,
device_type,
device_sn,
device_name,
hard_version,
soft_version,
device_address,
start_time,
device_status,
device_runstatus,
photo_url,
create_by,
create_time,
update_by,
update_time
from psdc_device
where user_id = #{userId}
</select>
<!--分页查询指定行数据-->
<select id="queryAllByLimit" resultMap="PsdcDeviceMap">
select
device_id,user_id,device_type,device_sn,device_name,hard_version,soft_version,device_address,start_time,device_status,photo_url,create_by,create_time,update_by,update_time
device_id,user_id,device_type,device_sn,device_name,hard_version,soft_version,device_address,start_time,device_status,device_runstatus,photo_url,create_by,create_time,update_by,update_time
from psdc_device
<where>
<if test="deviceId != null and deviceId != ''">
@ -64,6 +99,9 @@
<if test="deviceStatus != null and deviceStatus != ''">
and device_status = #{deviceStatus}
</if>
<if test="deviceRunstatus != null and deviceRunstatus != ''">
and device_runstatus = #{deviceRunstatus}
</if>
<if test="photoUrl != null and photoUrl != ''">
and photo_url = #{photoUrl}
</if>
@ -118,6 +156,9 @@
<if test="deviceStatus != null and deviceStatus != ''">
and device_status = #{deviceStatus}
</if>
<if test="deviceRunstatus != null and deviceRunstatus != ''">
and device_runstatus = #{deviceRunstatus}
</if>
<if test="photoUrl != null and photoUrl != ''">
and photo_url = #{photoUrl}
</if>
@ -137,9 +178,13 @@
</select>
<!--新增数据-->
<insert id="insert" >
insert into psdc_device(user_id,device_type,device_sn,device_name,hard_version,soft_version,device_address,start_time,device_status,photo_url,create_by,create_time,update_by,update_time)
values (#{userId},#{deviceType},#{deviceSn},#{deviceName},#{hardVersion},#{softVersion},#{deviceAddress},#{startTime},#{deviceStatus},#{photoUrl},#{createBy},#{createTime},#{updateBy},#{updateTime})
<insert id="insert">
insert into psdc_device(user_id, device_type, device_sn, device_name, hard_version, soft_version,
device_address, start_time, device_status, device_runstatus, photo_url, create_by,
create_time, update_by, update_time)
values (#{userId}, #{deviceType}, #{deviceSn}, #{deviceName}, #{hardVersion}, #{softVersion}, #{deviceAddress},
#{startTime}, #{deviceStatus}, #{deviceRunstatus}, #{photoUrl}, #{createBy}, #{createTime}, #{updateBy},
#{updateTime})
</insert>
<!-- 更新数据 -->
@ -176,6 +221,9 @@
<if test="deviceStatus != null and deviceStatus != ''">
device_status = #{deviceStatus},
</if>
<if test="deviceRunstatus != null and deviceRunstatus != ''">
and device_runstatus = #{deviceRunstatus}
</if>
<if test="photoUrl != null and photoUrl != ''">
photo_url = #{photoUrl},
</if>
@ -197,6 +245,14 @@
<!--通过主键删除-->
<delete id="deleteById">
delete from psdc_device where device_id = #{deviceId}
delete
from psdc_device
where device_id = #{deviceId}
</delete>
<update id="updateDevRunStatusByDevId">
update psdc_device set device_runstatus = #{runStatus} where device_id = #{deviceId}
</update>
</mapper>

@ -0,0 +1,25 @@
package com.psdc.exception;
public class ControlException extends RuntimeException{
private static final long serialVersionUID = 1L;
public ControlException() {
super();
}
public ControlException(String message) {
super(message);
}
public ControlException(String message, Throwable cause) {
super(message, cause);
}
public ControlException(Throwable cause) {
super(cause);
}
protected ControlException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
super(message, cause, enableSuppression, writableStackTrace);
}
}

@ -3,20 +3,23 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>psdc</artifactId>
<groupId>com.psdc</groupId>
<artifactId>psdc</artifactId>
<version>0.0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>psdc-quartz</artifactId>
<description>
quartz定时任务
</description>
<dependencies>
<!-- 定时任务 -->
<dependency>
<groupId>org.quartz-scheduler</groupId>

@ -32,6 +32,11 @@
<version>0.0.1</version>
</dependency>
<dependency>
<groupId>com.psdc</groupId>
<artifactId>psdc-business</artifactId>
<version>0.0.1</version>
</dependency>
</dependencies>

@ -1,32 +1,70 @@
package com.psdc.controller.control;
import com.alibaba.fastjson2.JSONObject;
import com.psdc.core.controller.BaseController;
import com.psdc.core.domain.AjaxResult;
import com.psdc.core.domain.R;
import com.psdc.core.domain.entity.SysRole;
import com.psdc.core.domain.entity.SysUser;
import com.psdc.utils.StringUtils;
import com.psdc.core.page.TableDataInfo;
import com.psdc.domain.SysConfig;
import com.psdc.entity.PsdcControlLog;
import com.psdc.entity.vo.DeviceStatusVo;
import com.psdc.service.IPsdcControlLogService;
import com.psdc.service.IPsdcDeviceService;
import org.aspectj.weaver.loadtime.Aj;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
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 org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.stream.Collectors;
import java.util.Map;
@RestController
@RequestMapping("/control/manual")
public class ManualControl {
public class ManualControl extends BaseController {
@Autowired
private IPsdcDeviceService psdcDeviceService;
@PreAuthorize("@ss.hasPermi('control:user:query')")
@GetMapping("/deviceList")
public AjaxResult getControlDeviceList() {
@Autowired
private IPsdcControlLogService psdcControlLogService;
return ajax;
/**
* 查询设备状态列表
* @return
*/
@PreAuthorize("@ss.hasPermi('control:manual:devlist')")
@GetMapping("/deviceStatusList")
public AjaxResult getControlDeviceList() {
List<DeviceStatusVo> deviceStatusVos = psdcDeviceService.queryDeviceStatus();
return AjaxResult.success("设备状态列表",deviceStatusVos);
}
/**
* 控制设备启停
* @param jsonObject
* @return
*/
@PreAuthorize("@ss.hasPermi('control:manual:startstop')")
@PostMapping("/startAndStop")
public AjaxResult deviceStartAndStop(@RequestBody JSONObject jsonObject){
int i = psdcDeviceService.controlDeviceStartAndStop(jsonObject.getInteger("deviceId"), jsonObject.getInteger("runStatus"));
if ( i == 1){
return AjaxResult.success("控制成功");
} else {
return AjaxResult.error("控制失败,请联系管理员");
}
}
/**
* 获取调控日志列表
*/
@PreAuthorize("@ss.hasPermi('control:timer:controlLogList')")
@GetMapping("/controlLogList")
public TableDataInfo controlLogList(PsdcControlLog psdcControlLog) {
startPage();
List<PsdcControlLog> list = psdcControlLogService.query(psdcControlLog);
return getDataTable(list);
}
}

Loading…
Cancel
Save