Commit 91941a8e authored by 周昊's avatar 周昊

1、开发算法场景模块接口

2、修改列表分页total错误
parent 0253c92a
package com.ruoyi.algorithm.domain; package com.ruoyi.algorithm.domain;
import org.apache.commons.lang3.builder.ToStringBuilder; import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.core.domain.BaseEntity;
import java.util.Date;
/** /**
* 算法场景对象 algorithm_scene_base * 算法场景对象 algorithm_scene_base
* *
...@@ -38,70 +39,87 @@ public class AlgorithmSceneBase extends BaseEntity ...@@ -38,70 +39,87 @@ public class AlgorithmSceneBase extends BaseEntity
@Excel(name = "摄像头id列表") @Excel(name = "摄像头id列表")
private String cameraIdList; private String cameraIdList;
public void setId(Long id) /** 上次在线时间 */
{ @JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "上次在线时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date live;
/** 帐号状态(0正常 */
@Excel(name = "帐号状态", readConverterExp = "帐号状态(0正常")
private String status;
/** 删除标志(0代表存在 */
private String delFlag;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id; this.id = id;
} }
public Long getId() public String getSceneName() {
{ return sceneName;
return id;
} }
public void setSceneName(String sceneName)
{ public void setSceneName(String sceneName) {
this.sceneName = sceneName; this.sceneName = sceneName;
} }
public String getSceneName() public Long getAlgorithmId() {
{ return algorithmId;
return sceneName;
} }
public void setAlgorithmId(Long algorithmId)
{ public void setAlgorithmId(Long algorithmId) {
this.algorithmId = algorithmId; this.algorithmId = algorithmId;
} }
public Long getAlgorithmId() public String getAlarmTypes() {
{ return alarmTypes;
return algorithmId;
} }
public void setAlarmTypes(String alarmTypes)
{ public void setAlarmTypes(String alarmTypes) {
this.alarmTypes = alarmTypes; this.alarmTypes = alarmTypes;
} }
public String getAlarmTypes() public Long getFrameSecond() {
{ return frameSecond;
return alarmTypes;
} }
public void setFrameSecond(Long frameSecond)
{ public void setFrameSecond(Long frameSecond) {
this.frameSecond = frameSecond; this.frameSecond = frameSecond;
} }
public Long getFrameSecond() public String getCameraIdList() {
{ return cameraIdList;
return frameSecond;
} }
public void setCameraIdList(String cameraIdList)
{ public void setCameraIdList(String cameraIdList) {
this.cameraIdList = cameraIdList; this.cameraIdList = cameraIdList;
} }
public String getCameraIdList() public Date getLive() {
{ return live;
return cameraIdList; }
public void setLive(Date live) {
this.live = live;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getDelFlag() {
return delFlag;
} }
@Override public void setDelFlag(String delFlag) {
public String toString() { this.delFlag = delFlag;
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("sceneName", getSceneName())
.append("algorithmId", getAlgorithmId())
.append("alarmTypes", getAlarmTypes())
.append("frameSecond", getFrameSecond())
.append("cameraIdList", getCameraIdList())
.toString();
} }
} }
package com.ruoyi.algorithm.domain.dto; package com.ruoyi.algorithm.domain.dto;
import com.ruoyi.algorithm.domain.AlgorithmBaseType; import com.ruoyi.algorithm.domain.AlgorithmBaseType;
import com.ruoyi.common.annotation.Excel;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
...@@ -17,6 +16,9 @@ public class AlgorithmSceneListDto { ...@@ -17,6 +16,9 @@ public class AlgorithmSceneListDto {
/** 场景名 */ /** 场景名 */
private String sceneName; private String sceneName;
/** 处理的预警类型 */
private List<AlgorithmBaseType> alarmTypes;
/** 每秒帧数 */ /** 每秒帧数 */
private Long frameSecond; private Long frameSecond;
...@@ -38,6 +40,6 @@ public class AlgorithmSceneListDto { ...@@ -38,6 +40,6 @@ public class AlgorithmSceneListDto {
/** 帐号状态(0正常 */ /** 帐号状态(0正常 */
private Boolean status; private Boolean status;
/** 排序 */ /** 摄像头id列表字符串 */
private Long sort; private String cameraIdList;
} }
...@@ -26,11 +26,8 @@ ...@@ -26,11 +26,8 @@
<result property="createTime" column="create_time"/> <result property="createTime" column="create_time"/>
<result property="sort" column="sort"/> <result property="sort" column="sort"/>
<result property="status" column="status"/> <result property="status" column="status"/>
<collection property="types" ofType="com.ruoyi.algorithm.domain.AlgorithmBaseType"> <collection property="types" javaType="ArrayList" column="id"
<result property="algorithmId" column="id"/> ofType="com.ruoyi.algorithm.domain.AlgorithmBaseType" select="selectAlgorithmBaseType"/>
<result property="typeKey" column="type_key"/>
<result property="typeName" column="type_name"/>
</collection>
</resultMap> </resultMap>
<sql id="selectAlgorithmBaseVo"> <sql id="selectAlgorithmBaseVo">
...@@ -69,15 +66,12 @@ ...@@ -69,15 +66,12 @@
ab.id, ab.id,
ab.algorithm_name, ab.algorithm_name,
ab.algorithm_key, ab.algorithm_key,
abt.type_name,
abt.type_key,
su.nick_name, su.nick_name,
ab.create_time, ab.create_time,
ab.sort, ab.sort,
ab.`status` ab.`status`
FROM FROM
algorithm_base ab algorithm_base ab
LEFT JOIN algorithm_base_type abt ON abt.algorithm_id = ab.id
LEFT JOIN sys_user su ON su.user_name = ab.create_by LEFT JOIN sys_user su ON su.user_name = ab.create_by
AND su.del_flag = '0' AND su.del_flag = '0'
WHERE WHERE
...@@ -96,6 +90,15 @@ ...@@ -96,6 +90,15 @@
ab.sort ASC ab.sort ASC
</select> </select>
<select id="selectAlgorithmBaseType" resultType="com.ruoyi.algorithm.domain.AlgorithmBaseType">
select
algorithm_id AS algorithmId,
type_key AS typeKey,
type_name AS typeName
from algorithm_base_type
where algorithm_id = #{id}
</select>
<insert id="insertAlgorithmBase" parameterType="AlgorithmBase"> <insert id="insertAlgorithmBase" parameterType="AlgorithmBase">
insert into algorithm_base insert into algorithm_base
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
......
...@@ -20,9 +20,14 @@ ...@@ -20,9 +20,14 @@
<result property="algorithmName" column="algorithm_name"/> <result property="algorithmName" column="algorithm_name"/>
<result property="live" column="live"/> <result property="live" column="live"/>
<result property="status" column="status"/> <result property="status" column="status"/>
<result property="cameraIdList" column="camera_id_list"/>
<result property="createBy" column="nick_name"/> <result property="createBy" column="nick_name"/>
<result property="sort" column="sort"/>
<result property="createTime" column="create_time"/> <result property="createTime" column="create_time"/>
<result property="cameraIdList" column="camera_id_list"/>
<collection property="alarmTypes" javaType="ArrayList" column="id"
ofType="com.ruoyi.algorithm.domain.AlgorithmBaseType" select="selectAlgorithmBaseType"/>
<collection property="cameras" javaType="ArrayList" column="camera_id_list"
ofType="com.ruoyi.algorithm.domain.dto.AlgorithmCameraListDto" select="selectAlgorithmCameraListDto"/>
</resultMap> </resultMap>
<sql id="selectAlgorithmSceneBaseVo"> <sql id="selectAlgorithmSceneBaseVo">
...@@ -45,8 +50,58 @@ ...@@ -45,8 +50,58 @@
<include refid="selectAlgorithmSceneBaseVo"/> <include refid="selectAlgorithmSceneBaseVo"/>
where id = #{id} where id = #{id}
</select> </select>
<select id="selectAlgorithmSceneListDto" resultMap="AlgorithmSceneBaseResult"> <select id="selectAlgorithmSceneListDto" resultMap="AlgorithmSceneListDtoResult">
SELECT
asb.id,
asb.scene_name,
asb.frame_second,
ab.algorithm_name,
su.nick_name,
asb.create_time,
asb.`status`,
asb.camera_id_list
FROM
algorithm_scene_base asb
LEFT JOIN algorithm_base ab ON ab.id = asb.algorithm_id
LEFT JOIN sys_user su ON su.user_name = ab.create_by
WHERE
asb.del_flag = '0'
<if test="sceneName != null and sceneName != ''">and asb.scene_name like concat('%',
#{sceneName}, '%')
</if>
<if test="status != null and status != ''">and asb.status = #{status}</if>
<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
AND date_format(asb.create_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
</if>
<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
AND date_format(asb.create_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
</if>
<if test="algorithmId != null ">
AND asb.algorithm_id = #{algorithmId}
</if>
ORDER BY
asb.create_time DESC
</select>
<select id="selectAlgorithmBaseType" resultType="com.ruoyi.algorithm.domain.AlgorithmBaseType">
select
algorithm_id AS algorithmId,
type_key AS typeKey,
type_name AS typeName
from algorithm_base_type
where algorithm_id = #{id}
</select>
<select id="selectAlgorithmCameraListDto" resultType="com.ruoyi.algorithm.domain.dto.AlgorithmCameraListDto">
SELECT
id,
camera_name AS cameraName,
rtsp
FROM
algorithm_camera_base
WHERE
FIND_IN_SET( id, #{cameraIdList} )
</select> </select>
<insert id="insertAlgorithmSceneBase" parameterType="AlgorithmSceneBase"> <insert id="insertAlgorithmSceneBase" parameterType="AlgorithmSceneBase">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment