Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
R
RuoYi-Vue-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AI算法平台
RuoYi-Vue-master
Commits
a6e75d35
Commit
a6e75d35
authored
May 16, 2023
by
周昊
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1、开发场景详情接口
2、开发算法查询全部接口 3、开发摄像头查询全部接口
parent
f20c27d9
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
189 additions
and
3 deletions
+189
-3
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmBaseController.java
...m/ruoyi/algorithm/controller/AlgorithmBaseController.java
+9
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmCameraBaseController.java
...i/algorithm/controller/AlgorithmCameraBaseController.java
+10
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmSceneBaseController.java
...yi/algorithm/controller/AlgorithmSceneBaseController.java
+1
-1
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmPieceDetailsDto.java
.../ruoyi/algorithm/domain/dto/AlgorithmPieceDetailsDto.java
+26
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmPieceVariableDetailsDto.java
...lgorithm/domain/dto/AlgorithmPieceVariableDetailsDto.java
+36
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmSceneDetailsDto.java
.../ruoyi/algorithm/domain/dto/AlgorithmSceneDetailsDto.java
+42
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/mapper/AlgorithmScenePieceMapper.java
...com/ruoyi/algorithm/mapper/AlgorithmScenePieceMapper.java
+4
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/IAlgorithmSceneBaseService.java
...m/ruoyi/algorithm/service/IAlgorithmSceneBaseService.java
+3
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/IAlgorithmScenePieceService.java
.../ruoyi/algorithm/service/IAlgorithmScenePieceService.java
+3
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/impl/AlgorithmSceneBaseServiceImpl.java
...algorithm/service/impl/AlgorithmSceneBaseServiceImpl.java
+15
-0
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/impl/AlgorithmScenePieceServiceImpl.java
...lgorithm/service/impl/AlgorithmScenePieceServiceImpl.java
+7
-0
ruoyi-admin/src/main/resources/application.yml
ruoyi-admin/src/main/resources/application.yml
+1
-1
ruoyi-admin/src/main/resources/mapper/system/AlgorithmBaseMapper.xml
.../src/main/resources/mapper/system/AlgorithmBaseMapper.xml
+1
-0
ruoyi-admin/src/main/resources/mapper/system/AlgorithmScenePieceMapper.xml
...ain/resources/mapper/system/AlgorithmScenePieceMapper.xml
+31
-1
No files found.
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmBaseController.java
View file @
a6e75d35
...
@@ -37,6 +37,15 @@ public class AlgorithmBaseController extends BaseController {
...
@@ -37,6 +37,15 @@ public class AlgorithmBaseController extends BaseController {
return
getDataTable
(
list
);
return
getDataTable
(
list
);
}
}
/**
* 查询算法列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:algorithmBase:list')"
)
@GetMapping
(
"/list/all"
)
public
AjaxResult
listAll
(
AlgorithmBase
algorithmBase
)
{
return
success
(
algorithmBaseService
.
selectAlgorithmBaseList
(
algorithmBase
));
}
/**
/**
* 获取算法详细信息
* 获取算法详细信息
*/
*/
...
...
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmCameraBaseController.java
View file @
a6e75d35
...
@@ -48,6 +48,16 @@ public class AlgorithmCameraBaseController extends BaseController
...
@@ -48,6 +48,16 @@ public class AlgorithmCameraBaseController extends BaseController
return
getDataTable
(
list
);
return
getDataTable
(
list
);
}
}
/**
* 查询算法摄像头列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:algorithmCamera:list')"
)
@GetMapping
(
"/list/all"
)
public
AjaxResult
listAll
(
AlgorithmCameraBase
algorithmCameraBase
)
{
return
success
(
algorithmCameraBaseService
.
selectAlgorithmCameraBaseList
(
algorithmCameraBase
));
}
/**
/**
* 获取算法摄像头详细信息
* 获取算法摄像头详细信息
*/
*/
...
...
ruoyi-admin/src/main/java/com/ruoyi/algorithm/controller/AlgorithmSceneBaseController.java
View file @
a6e75d35
...
@@ -55,7 +55,7 @@ public class AlgorithmSceneBaseController extends BaseController
...
@@ -55,7 +55,7 @@ public class AlgorithmSceneBaseController extends BaseController
@GetMapping
(
value
=
"/{id}"
)
@GetMapping
(
value
=
"/{id}"
)
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
{
{
return
success
(
algorithmSceneBaseService
.
selectAlgorithmScene
Base
ById
(
id
));
return
success
(
algorithmSceneBaseService
.
selectAlgorithmScene
DetailsDto
ById
(
id
));
}
}
/**
/**
...
...
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmPieceDetailsDto.java
0 → 100644
View file @
a6e75d35
package
com
.
ruoyi
.
algorithm
.
domain
.
dto
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author 周昊
* @desc ...
* @date 2023-05-15 17:35:21
*/
@Data
public
class
AlgorithmPieceDetailsDto
{
/** 主键id */
private
Long
id
;
/** 算法块名 */
private
String
pieceName
;
/** 算法块参数 */
private
List
<
AlgorithmPieceVariableDetailsDto
>
variables
;
/** 排序 */
private
Long
sort
;
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmPieceVariableDetailsDto.java
0 → 100644
View file @
a6e75d35
package
com
.
ruoyi
.
algorithm
.
domain
.
dto
;
import
lombok.Data
;
/**
* @author 周昊
* @desc ...
* @date 2023-05-16 10:07:12
*/
@Data
public
class
AlgorithmPieceVariableDetailsDto
{
/**
* 算法块主键id
*/
private
Long
algorithmPieceBaseId
;
/**
* 参数唯一标识
*/
private
String
variableKey
;
/**
* 参数名称
*/
private
String
variableName
;
/**
* 参数类型
*/
private
String
variableType
;
/**
* 参数值
*/
private
String
variableValue
;
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/domain/dto/AlgorithmSceneDetailsDto.java
0 → 100644
View file @
a6e75d35
package
com
.
ruoyi
.
algorithm
.
domain
.
dto
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
AlgorithmSceneDetailsDto
{
/**
* 主键id
*/
private
Long
id
;
/**
* 场景名
*/
private
String
sceneName
;
/**
* 算法id
*/
private
Long
algorithmId
;
/**
* 处理的预警类型
*/
private
String
alarmTypes
;
/**
* 每秒帧数(ai算法启动参数)
*/
private
Long
frameSecond
;
/**
* 摄像头id列表
*/
private
String
cameraIdList
;
private
List
<
AlgorithmPieceDetailsDto
>
pieceDtos
;
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/mapper/AlgorithmScenePieceMapper.java
View file @
a6e75d35
...
@@ -2,6 +2,8 @@ package com.ruoyi.algorithm.mapper;
...
@@ -2,6 +2,8 @@ package com.ruoyi.algorithm.mapper;
import
java.util.List
;
import
java.util.List
;
import
com.ruoyi.algorithm.domain.AlgorithmScenePiece
;
import
com.ruoyi.algorithm.domain.AlgorithmScenePiece
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmPieceDetailsDto
;
import
org.apache.ibatis.annotations.Param
;
/**
/**
* 场景算法块Mapper接口
* 场景算法块Mapper接口
...
@@ -58,4 +60,6 @@ public interface AlgorithmScenePieceMapper
...
@@ -58,4 +60,6 @@ public interface AlgorithmScenePieceMapper
* @return 结果
* @return 结果
*/
*/
public
int
deleteAlgorithmScenePieceBySceneIds
(
Long
[]
sceneIds
);
public
int
deleteAlgorithmScenePieceBySceneIds
(
Long
[]
sceneIds
);
List
<
AlgorithmPieceDetailsDto
>
selectAlgorithmPieceDetailsDtoBySceneId
(
@Param
(
"sceneId"
)
Long
sceneId
);
}
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/IAlgorithmSceneBaseService.java
View file @
a6e75d35
...
@@ -2,6 +2,7 @@ package com.ruoyi.algorithm.service;
...
@@ -2,6 +2,7 @@ package com.ruoyi.algorithm.service;
import
java.util.List
;
import
java.util.List
;
import
com.ruoyi.algorithm.domain.AlgorithmSceneBase
;
import
com.ruoyi.algorithm.domain.AlgorithmSceneBase
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneDetailsDto
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneListDto
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneListDto
;
/**
/**
...
@@ -63,4 +64,6 @@ public interface IAlgorithmSceneBaseService
...
@@ -63,4 +64,6 @@ public interface IAlgorithmSceneBaseService
List
<
AlgorithmSceneListDto
>
selectAlgorithmSceneListDto
(
AlgorithmSceneBase
algorithmSceneBase
);
List
<
AlgorithmSceneListDto
>
selectAlgorithmSceneListDto
(
AlgorithmSceneBase
algorithmSceneBase
);
int
editStatus
(
AlgorithmSceneBase
algorithmSceneBase
);
int
editStatus
(
AlgorithmSceneBase
algorithmSceneBase
);
AlgorithmSceneDetailsDto
selectAlgorithmSceneDetailsDtoById
(
Long
id
);
}
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/IAlgorithmScenePieceService.java
View file @
a6e75d35
...
@@ -2,6 +2,7 @@ package com.ruoyi.algorithm.service;
...
@@ -2,6 +2,7 @@ package com.ruoyi.algorithm.service;
import
java.util.List
;
import
java.util.List
;
import
com.ruoyi.algorithm.domain.AlgorithmScenePiece
;
import
com.ruoyi.algorithm.domain.AlgorithmScenePiece
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmPieceDetailsDto
;
/**
/**
* 场景算法块Service接口
* 场景算法块Service接口
...
@@ -58,4 +59,6 @@ public interface IAlgorithmScenePieceService
...
@@ -58,4 +59,6 @@ public interface IAlgorithmScenePieceService
* @return 结果
* @return 结果
*/
*/
public
int
deleteAlgorithmScenePieceBySceneId
(
Long
sceneId
);
public
int
deleteAlgorithmScenePieceBySceneId
(
Long
sceneId
);
List
<
AlgorithmPieceDetailsDto
>
selectAlgorithmPieceDetailsDtoBySceneId
(
Long
id
);
}
}
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/impl/AlgorithmSceneBaseServiceImpl.java
View file @
a6e75d35
...
@@ -7,12 +7,15 @@ import cn.hutool.core.util.StrUtil;
...
@@ -7,12 +7,15 @@ import cn.hutool.core.util.StrUtil;
import
cn.hutool.http.HttpUtil
;
import
cn.hutool.http.HttpUtil
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneDetailsDto
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneListDto
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmSceneListDto
;
import
com.ruoyi.algorithm.service.IAlgorithmScenePieceService
;
import
com.ruoyi.algorithm.service.IAlgorithmSceneStatusService
;
import
com.ruoyi.algorithm.service.IAlgorithmSceneStatusService
;
import
com.ruoyi.algorithm.utils.FlinkRestApiUtil
;
import
com.ruoyi.algorithm.utils.FlinkRestApiUtil
;
import
com.ruoyi.common.config.AiRestApiConfig
;
import
com.ruoyi.common.config.AiRestApiConfig
;
import
com.ruoyi.common.config.FlinkConfig
;
import
com.ruoyi.common.config.FlinkConfig
;
import
com.ruoyi.common.exception.ServiceException
;
import
com.ruoyi.common.exception.ServiceException
;
import
com.ruoyi.common.utils.bean.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
com.ruoyi.algorithm.mapper.AlgorithmSceneBaseMapper
;
import
com.ruoyi.algorithm.mapper.AlgorithmSceneBaseMapper
;
...
@@ -35,6 +38,9 @@ public class AlgorithmSceneBaseServiceImpl implements IAlgorithmSceneBaseService
...
@@ -35,6 +38,9 @@ public class AlgorithmSceneBaseServiceImpl implements IAlgorithmSceneBaseService
@Resource
@Resource
private
IAlgorithmSceneStatusService
algorithmSceneStatusService
;
private
IAlgorithmSceneStatusService
algorithmSceneStatusService
;
@Resource
private
IAlgorithmScenePieceService
algorithmScenePieceService
;
/**
/**
* 查询算法场景
* 查询算法场景
*
*
...
@@ -138,6 +144,15 @@ public class AlgorithmSceneBaseServiceImpl implements IAlgorithmSceneBaseService
...
@@ -138,6 +144,15 @@ public class AlgorithmSceneBaseServiceImpl implements IAlgorithmSceneBaseService
return
1
;
return
1
;
}
}
@Override
public
AlgorithmSceneDetailsDto
selectAlgorithmSceneDetailsDtoById
(
Long
id
)
{
AlgorithmSceneBase
algorithmSceneBase
=
algorithmSceneBaseMapper
.
selectAlgorithmSceneBaseById
(
id
);
AlgorithmSceneDetailsDto
algorithmSceneDetailsDto
=
new
AlgorithmSceneDetailsDto
();
BeanUtils
.
copyBeanProp
(
algorithmSceneDetailsDto
,
algorithmSceneBase
);
algorithmSceneDetailsDto
.
setPieceDtos
(
algorithmScenePieceService
.
selectAlgorithmPieceDetailsDtoBySceneId
(
id
));
return
algorithmSceneDetailsDto
;
}
private
void
sendAi
(
Long
sceneId
,
String
status
)
{
private
void
sendAi
(
Long
sceneId
,
String
status
)
{
String
statusKey
;
String
statusKey
;
//启动
//启动
...
...
ruoyi-admin/src/main/java/com/ruoyi/algorithm/service/impl/AlgorithmScenePieceServiceImpl.java
View file @
a6e75d35
package
com
.
ruoyi
.
algorithm
.
service
.
impl
;
package
com
.
ruoyi
.
algorithm
.
service
.
impl
;
import
java.util.List
;
import
java.util.List
;
import
com.ruoyi.algorithm.domain.dto.AlgorithmPieceDetailsDto
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
com.ruoyi.algorithm.mapper.AlgorithmScenePieceMapper
;
import
com.ruoyi.algorithm.mapper.AlgorithmScenePieceMapper
;
...
@@ -90,4 +92,9 @@ public class AlgorithmScenePieceServiceImpl implements IAlgorithmScenePieceServi
...
@@ -90,4 +92,9 @@ public class AlgorithmScenePieceServiceImpl implements IAlgorithmScenePieceServi
{
{
return
algorithmScenePieceMapper
.
deleteAlgorithmScenePieceBySceneId
(
sceneId
);
return
algorithmScenePieceMapper
.
deleteAlgorithmScenePieceBySceneId
(
sceneId
);
}
}
@Override
public
List
<
AlgorithmPieceDetailsDto
>
selectAlgorithmPieceDetailsDtoBySceneId
(
Long
id
)
{
return
algorithmScenePieceMapper
.
selectAlgorithmPieceDetailsDtoBySceneId
(
id
);
}
}
}
ruoyi-admin/src/main/resources/application.yml
View file @
a6e75d35
...
@@ -70,7 +70,7 @@ spring:
...
@@ -70,7 +70,7 @@ spring:
# redis 配置
# redis 配置
redis
:
redis
:
# 地址
# 地址
host
:
localhost
host
:
192.168.4.221
# 端口,默认为6379
# 端口,默认为6379
port
:
6379
port
:
6379
# 数据库索引
# 数据库索引
...
...
ruoyi-admin/src/main/resources/mapper/system/AlgorithmBaseMapper.xml
View file @
a6e75d35
...
@@ -54,6 +54,7 @@
...
@@ -54,6 +54,7 @@
<if
test=
"algorithmKey != null and algorithmKey != ''"
>
and algorithm_key = #{algorithmKey}
</if>
<if
test=
"algorithmKey != null and algorithmKey != ''"
>
and algorithm_key = #{algorithmKey}
</if>
<if
test=
"sort != null "
>
and sort = #{sort}
</if>
<if
test=
"sort != null "
>
and sort = #{sort}
</if>
<if
test=
"status != null and status != ''"
>
and status = #{status}
</if>
<if
test=
"status != null and status != ''"
>
and status = #{status}
</if>
and del_flag = '0'
</where>
</where>
</select>
</select>
...
...
ruoyi-admin/src/main/resources/mapper/system/AlgorithmScenePieceMapper.xml
View file @
a6e75d35
...
@@ -11,6 +11,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -11,6 +11,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"variableValue"
column=
"variable_value"
/>
<result
property=
"variableValue"
column=
"variable_value"
/>
</resultMap>
</resultMap>
<resultMap
type=
"com.ruoyi.algorithm.domain.dto.AlgorithmPieceDetailsDto"
id=
"AlgorithmPieceDetailsDtoResult"
>
<result
property=
"id"
column=
"piece_id"
/>
<result
property=
"pieceName"
column=
"piece_name"
/>
<result
property=
"sort"
column=
"sort"
/>
<collection
property=
"variables"
javaType=
"ArrayList"
ofType=
"com.ruoyi.algorithm.domain.dto.AlgorithmPieceVariableDetailsDto"
>
<result
property=
"algorithmPieceBaseId"
column=
"piece_id"
/>
<result
property=
"variableKey"
column=
"variable_key"
/>
<result
property=
"variableValue"
column=
"variable_value"
/>
<result
property=
"variableType"
column=
"variable_type"
/>
<result
property=
"variableName"
column=
"variable_name"
/>
</collection>
</resultMap>
<sql
id=
"selectAlgorithmScenePieceVo"
>
<sql
id=
"selectAlgorithmScenePieceVo"
>
select scene_id, piece_id, variable_key, variable_value from algorithm_scene_piece
select scene_id, piece_id, variable_key, variable_value from algorithm_scene_piece
</sql>
</sql>
...
@@ -26,7 +39,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -26,7 +39,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include
refid=
"selectAlgorithmScenePieceVo"
/>
<include
refid=
"selectAlgorithmScenePieceVo"
/>
where scene_id = #{sceneId}
where scene_id = #{sceneId}
</select>
</select>
<select
id=
"selectAlgorithmPieceDetailsDtoBySceneId"
resultMap=
"AlgorithmPieceDetailsDtoResult"
>
SELECT
asp.piece_id,
apb.piece_name,
asp.sort,
asp.variable_key,
asp.variable_value,
apv.variable_name,
apv.variable_type
FROM
algorithm_scene_piece asp
LEFT JOIN algorithm_piece_base apb ON apb.id = asp.piece_id
LEFT JOIN algorithm_piece_variable apv ON apv.algorithm_piece_base_id = asp.piece_id
AND asp.variable_key = apv.variable_key
WHERE
asp.scene_id = #{sceneId}
</select>
<insert
id=
"insertAlgorithmScenePiece"
parameterType=
"AlgorithmScenePiece"
>
<insert
id=
"insertAlgorithmScenePiece"
parameterType=
"AlgorithmScenePiece"
>
insert into algorithm_scene_piece
insert into algorithm_scene_piece
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment