czt
4 天以前 b688c3fe1ecdf645cbc8658139d29f1340acbf4e
Merge remote-tracking branch 'origin/master'
已修改9个文件
253 ■■■■■ 文件已修改
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/eventInfo/EventInfoController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/snap/SnapRecordController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/static/security/eventInfo/eventInfo-style.css 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/static/security/eventInfo/eventInfo.js 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/static/security/snap/snapRecord-style.css 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/static/security/snap/snapRecord.js 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/security/eventInfo/eventInfo.html 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/security/snap/snapRecord/snapRecord.html 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
@@ -43,10 +43,14 @@
        param.setCompanyId(ContextUtil.getCompanyId());
        queryWrapper.eq("company_id", param.getCompanyId());
        //库区
        if (StringUtils.isNotBlank(param.getDeptId())) {
            queryWrapper.eq("dept_id", param.getDeptId());
        }
        //仓库
        if (StringUtils.isNotBlank(param.getDepotId())) {
            queryWrapper.eq("depot_id", param.getDepotId());
        }
        queryWrapper.orderByDesc("create_time");
        return queryWrapper;
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/eventInfo/EventInfoController.java
@@ -7,6 +7,7 @@
import com.fzzy.igds.domain.EventInfo;
import com.fzzy.sys.manager.security.eventInfo.EventInfoManager;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@@ -26,6 +27,7 @@
    @Resource
    private EventInfoManager eventInfoManager;
    @RequiresPermissions("web:security:eventInfo:view")
    @GetMapping
    public String getEventInfo(
            Model model) {
@@ -47,6 +49,7 @@
     * @param param
     * @return
     */
    @RequiresPermissions("web:security:eventInfo:list")
    @RequestMapping("/pageData")
    @ResponseBody
    public PageResponse<Page<EventInfo>> pageData(@RequestBody IgdsBaseParam param) {
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/snap/SnapRecordController.java
@@ -7,6 +7,7 @@
import com.fzzy.igds.domain.SnapRecord;
import com.fzzy.sys.manager.security.snap.SnapRecordManager;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@@ -27,6 +28,7 @@
    @Resource
    private SnapRecordManager snapRecordManager;
    @RequiresPermissions("web:security:snap:snapRecord:view")
    @GetMapping
    public String getSnapRecord(
            Model model) {
@@ -48,6 +50,7 @@
     * @param param
     * @return
     */
    @RequiresPermissions("web:security:snap:snapRecord:list")
    @RequestMapping("/pageData")
    @ResponseBody
    public PageResponse<Page<SnapRecord>> pageData(@RequestBody IgdsBaseParam param) {
fzzy-igdss-web/src/main/resources/static/security/eventInfo/eventInfo-style.css
@@ -52,7 +52,7 @@
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 20px;
    margin-bottom: 15px;
    margin-bottom: 5px;
}
.gallery-item {
@@ -70,7 +70,7 @@
.gallery-img {
    width: 100%;
    height: 195px;
    height: 240px;
    object-fit: cover;
    cursor: pointer;
    transition: all 0.3s ease;
@@ -131,7 +131,8 @@
.gallery-tags {
    display: flex;
    flex-wrap: wrap;
    /*gap: 8px;*/
    margin-left: auto;
    gap: 3px;
    /*margin: 12px 0;*/
}
@@ -139,7 +140,8 @@
/* 分页样式 */
.pagination-container {
    display: flex;
    justify-content: center;
    justify-content: flex-end;
    width: 100%;
    /*margin-top: 40px;*/
}
fzzy-igdss-web/src/main/resources/static/security/eventInfo/eventInfo.js
@@ -24,7 +24,7 @@
        count: typeof totalItems !== 'undefined' ? totalItems : 0,
        limit: typeof pageSize !== 'undefined' ? pageSize : 6,
        curr: typeof currentPage !== 'undefined' ? currentPage : 1,
        layout: ['count', 'prev', 'page', 'next', 'refresh', 'skip'],
        layout: ['prev', 'page', 'next', 'refresh', 'skip'],
        jump: function (obj, first) {
            if (!first) {
                searchRecord(obj.curr, obj.limit)
@@ -45,7 +45,7 @@
        count: totalCount,
        limit: pageSize,
        curr: currentPage,
        layout: ['count', 'prev', 'page', 'next', 'refresh', 'skip'],
        layout: ['prev', 'page', 'next', 'refresh', 'skip'],
        jump: function (obj, first) {
            if (!first) {
                searchRecord(obj.curr, obj.limit)
@@ -144,26 +144,37 @@
                <div class="gallery-info">
                    <div class="gallery-header">
                        <h3 class="gallery-title">${record.name || record.id}</h3>
                         <div class="gallery-tags">
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>汽车</span>
                            </span>
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>卡车</span>
                            </span>
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>翻斗车</span>
                            </span>
                        </div>
                    </div>
                    <div class="gallery-meta">
                        <div class="meta-item">
                        <div style="display: flex; align-items: center; gap: 15px;width: 100%">
                            <div class="meta-item" style="width: 50%">
                                <i class="layui-icon layui-icon-video"></i>
                                <span>${record.serId || ''}</span>
                            </div>
                            <div class="meta-item" style="width: 50%">
                                <i class="layui-icon layui-icon-date"></i>
                                <span>${formatDate(record.time)}</span>
                            </div>
                        </div>
                        <div class="meta-item" >
                            <i class="layui-icon layui-icon-home"></i>
                            <span>${record.deptId || ''}</span>
                        </div>
                        <div class="meta-item">
                            <i class="layui-icon layui-icon-video"></i>
                            <span>${record.serId || ''}</span>
                        </div>
                        <div class="meta-item">
                            <i class="layui-icon layui-icon-date"></i>
                            <span>${formatDate(record.time)}</span>
                        </div>
                    </div>
                    <div class="gallery-tags">
                        <span class="tag-person">
                            <i class="layui-icon layui-icon-face-smile"></i>
                            <span>${record.level || '未知'}</span>
                        </span>
                    </div>
                </div>
            </div>
fzzy-igdss-web/src/main/resources/static/security/snap/snapRecord-style.css
@@ -70,7 +70,7 @@
.gallery-img {
    width: 100%;
    height: 195px;
    height: 240px;
    object-fit: cover;
    cursor: pointer;
    transition: all 0.3s ease;
@@ -131,7 +131,8 @@
.gallery-tags {
    display: flex;
    flex-wrap: wrap;
    /*gap: 8px;*/
    margin-left: auto;
    gap: 3px;
    /*margin: 12px 0;*/
}
@@ -139,7 +140,8 @@
/* 分页样式 */
.pagination-container {
    display: flex;
    justify-content: center;
    justify-content: flex-end;
    width: 100%;
    /*margin-top: 40px;*/
}
fzzy-igdss-web/src/main/resources/static/security/snap/snapRecord.js
@@ -24,7 +24,7 @@
        count: typeof totalItems !== 'undefined' ? totalItems : 0,
        limit: typeof pageSize !== 'undefined' ? pageSize : 6,
        curr: typeof currentPage !== 'undefined' ? currentPage : 1,
        layout: ['count', 'prev', 'page', 'next', 'refresh', 'skip'],
        layout: [ 'prev', 'page', 'next', 'refresh', 'skip'],
        jump: function (obj, first) {
            if (!first) {
                searchRecord(obj.curr, obj.limit)
@@ -45,7 +45,7 @@
        count: totalCount,
        limit: pageSize,
        curr: currentPage,
        layout: ['count', 'prev', 'page', 'next', 'refresh', 'skip'],
        layout: ['prev', 'page', 'next', 'refresh', 'skip'],
        jump: function (obj, first) {
            if (!first) {
                searchRecord(obj.curr, obj.limit)
@@ -143,28 +143,38 @@
                     class="gallery-img" onclick="showSnapRecordPreview(this.getAttribute('data-url'))">
                <div class="gallery-info">
                    <div class="gallery-header">
                        <h3 class="gallery-title">${record.id}</h3>
<!--                        <h3 class="gallery-title">${record.id}</h3>-->
                        <div class="gallery-tags">
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>汽车</span>
                            </span>
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>卡车</span>
                            </span>
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-note"></i>
                                <span>翻斗车</span>
                            </span>
                        </div>
                    </div>
                    <div class="gallery-meta">
                         <div style="display: flex; align-items: center; gap: 15px;width: 100%">
                             <div class="meta-item" style="width: 50%">
                                <i class="layui-icon layui-icon-video"></i>
                                <span>${record.cameraId || ''}</span>
                            </div>
                            <div class="meta-item" style="width: 50%">
                                <i class="layui-icon layui-icon-date"></i>
                                <span>${formatDate(record.snapTime)}</span>
                            </div>
                         </div>
                        <div class="meta-item">
                            <i class="layui-icon layui-icon-home"></i>
                            <span>${record.deptId || ''}</span>
                        </div>
                        <div class="meta-item">
                            <i class="layui-icon layui-icon-video"></i>
                            <span>${record.cameraId || ''}</span>
                        </div>
                        <div class="meta-item">
                            <i class="layui-icon layui-icon-date"></i>
                            <span>${formatDate(record.snapTime)}</span>
                        </div>
                    </div>
                    <div class="gallery-tags">
                        <span class="tag-person">
                            <i class="layui-icon layui-icon-face-smile"></i>
                            <span>测试标签</span>
                        </span>
                    </div>
                        </div>
                    </div>
                </div>
            </div>
        `;
fzzy-igdss-web/src/main/resources/templates/security/eventInfo/eventInfo.html
@@ -1,18 +1,19 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <th:block th:include="include :: header('AI事件管理')" />
    <th:block th:include="include :: header('AI事件管理')"/>
    <link rel="stylesheet" type="text/css" th:href="@{/ajax/libs/layui-ruoyi/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/security/eventInfo/eventInfo-style.css}">
</head>
<body class="gray-bg">
<div class="container-div">
    <div class="row">
        <div class="col-sm-12 search-collapse">
        <div class="col-sm-12 search-collapse"
             style="display: flex; justify-content: space-between; align-items: center;">
            <form id="eventInfo-form">
                <div class="select-list">
                    <ul>
@@ -20,12 +21,22 @@
                            所属库区:<input type="text" name="deptId"/>
                        </li>
                        <li>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="searchRecord()"><i class="fa fa-search"></i>&nbsp;搜索</a>
                            <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
                            所属仓库:<input type="text" name="depotId"/>
                        </li>
                        <li>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="searchRecord()"><i
                                    class="fa fa-search"></i>&nbsp;搜索</a>
                            <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i
                                    class="fa fa-refresh"></i>&nbsp;重置</a>
                        </li>
                    </ul>
                </div>
            </form>
            <div class="btn-group-sm" role="group">
                <a class="btn btn-success">
                    <i class="fa fa-plus"></i> 事件配置
                </a>
            </div>
        </div>
        <div class="col-sm-12 " style="padding-top: 10px;">
@@ -45,31 +56,38 @@
                    <div class="gallery-info">
                        <div class="gallery-header">
                            <h3 class="gallery-title" th:text="${eventInfo.name}"></h3>
                            <div class="gallery-tags">
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>汽车</span>
                                </span>
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>卡车</span>
                                </span>
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>翻斗车</span>
                                </span>
                            </div>
                        </div>
                        <div class="gallery-meta">
                            <div style="display: flex; align-items: center; gap: 15px;width: 100%">
                                <div class="meta-item" style="width: 50%">
                                    <i class="layui-icon layui-icon-video"></i>
                                    <span th:text="${eventInfo.serId}"></span>
                                </div>
                                <div class="meta-item" style="width: 50%">
                                    <i class="layui-icon layui-icon-date"></i>
                                    <span th:text="${#dates.format(eventInfo.time, 'yyyy-MM-dd HH:mm:ss')}"></span>
                                </div>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-home"></i>
                                <span th:text="${eventInfo.deptId}"></span>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-video"></i>
                                <span th:text="${eventInfo.serId}"></span>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-date"></i>
                                <span th:text="${#dates.format(eventInfo.time, 'yyyy-MM-dd HH:mm:ss')}"></span>
                            </div>
                        </div>
                        <!-- 标签列表 -->
                        <div class="gallery-tags">
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-face-smile"></i>
                                <span th:text="${eventInfo.level}"></span>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
@@ -90,7 +108,7 @@
        </div>
    </div>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: footer"/>
<script th:src="@{/ajax/libs/layui-ruoyi/layui.js}"></script>
<script th:src="@{/security/eventInfo/eventInfo.js}"></script>
<script th:inline="javascript">
fzzy-igdss-web/src/main/resources/templates/security/snap/snapRecord/snapRecord.html
@@ -5,31 +5,32 @@
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <th:block th:include="include :: header('智能抓拍')" />
    <th:block th:include="include :: header('智能抓拍')"/>
    <link rel="stylesheet" type="text/css" th:href="@{/ajax/libs/layui-ruoyi/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/security/snap/snapRecord-style.css}">
</head>
<body class="gray-bg">
<div class="container-div">
    <div class="row">
        <div class="col-sm-12 search-collapse">
        <div class="col-sm-12 search-collapse"
             style="display: flex; justify-content: space-between; align-items: center;">
            <form id="snapRecord-form">
                <div class="select-list">
                    <ul>
                        <li>
                            所属仓库:<input type="text" name="deptId"/>
                            所属库区:<input type="text" name="deptId"/>
                        </li>
                        <li>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="searchRecord()"><i class="fa fa-search"></i>&nbsp;搜索</a>
                            <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="searchRecord()"><i
                                    class="fa fa-search"></i>&nbsp;搜索</a>
                            <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i
                                    class="fa fa-refresh"></i>&nbsp;重置</a>
                        </li>
                    </ul>
                </div>
            </form>
        </div>
        <div class="col-sm-12 " style="padding-top: 5px">
            <div class="btn-group-sm"  role="group" >
                <a class="btn btn-success" onclick="openConf()" shiro:hasPermission="system:user:add">
            <div class="btn-group-sm" role="group">
                <a class="btn btn-success" onclick="openConf()" shiro:hasPermission="web:security:snap:snapRecord:view">
                    <i class="fa fa-plus"></i> 抓拍配置
                </a>
            </div>
@@ -52,32 +53,40 @@
                         class="gallery-img" onclick="showSnapRecordPreview(this.getAttribute('data-url'))">
                    <div class="gallery-info">
                        <div class="gallery-header">
                            <h3 class="gallery-title" th:text="${snapRecord.id}"></h3>
                            <!--                            <h3 class="gallery-title" th:text="${snapRecord.id}"></h3>-->
                            <!-- 标签列表 -->
                            <div class="gallery-tags">
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>汽车</span>
                                </span>
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>卡车</span>
                                </span>
                                <span class="tag-person">
                                    <i class="layui-icon layui-icon-note"></i>
                                    <span>翻斗车</span>
                                </span>
                            </div>
                        </div>
                        <div class="gallery-meta">
                            <div style="display: flex; align-items: center; gap: 15px;width: 100%">
                                <div class="meta-item" style="width: 50%">
                                    <i class="layui-icon layui-icon-video"></i>
                                    <span th:text="${snapRecord.cameraId}"></span>
                                </div>
                                <div class="meta-item" style="width: 50%">
                                    <i class="layui-icon layui-icon-date"></i>
                                    <span th:text="${#dates.format(snapRecord.snapTime, 'yyyy-MM-dd HH:mm:ss')}"></span>
                                </div>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-home"></i>
                                <span th:text="${snapRecord.deptId}"></span>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-video"></i>
                                <span th:text="${snapRecord.cameraId}"></span>
                            </div>
                            <div class="meta-item">
                                <i class="layui-icon layui-icon-date"></i>
                                <span th:text="${#dates.format(snapRecord.snapTime, 'yyyy-MM-dd HH:mm:ss')}"></span>
                            </div>
                        </div>
                        <!-- 标签列表 -->
                        <div class="gallery-tags">
                            <span class="tag-person">
                                <i class="layui-icon layui-icon-face-smile"></i>
                                <span>测试标签</span>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
@@ -86,6 +95,7 @@
            <div class="pagination-container" th:if="${not #lists.isEmpty(snapRecordList)}">
                <div id="pagination"></div>
            </div>
        </div>
    </div>
    <!-- 图片预览层 -->
@@ -98,7 +108,7 @@
        </div>
    </div>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: footer"/>
<script th:src="@{/ajax/libs/layui-ruoyi/layui.js}"></script>
<script th:src="@{/security/snap/snapRecord.js}"></script>
<script th:inline="javascript">