| | |
| | | count: typeof totalItems !== 'undefined' ? totalItems : 0, |
| | | limit: typeof pageSize !== 'undefined' ? pageSize : 6, |
| | | curr: typeof currentPage !== 'undefined' ? currentPage : 1, |
| | | layout: [ 'prev', 'page', 'next', 'refresh', 'skip'], |
| | | layout: [ 'prev', 'next', ], |
| | | prev: '<i class="layui-icon layui-icon-left"></i>', |
| | | next: '<i class="layui-icon layui-icon-right"></i>', |
| | | jump: function (obj, first) { |
| | | if (!first) { |
| | | searchRecord(obj.curr, obj.limit) |
| | |
| | | count: totalCount, |
| | | limit: pageSize, |
| | | curr: currentPage, |
| | | layout: ['prev', 'page', 'next', 'refresh', 'skip'], |
| | | layout: ['prev', 'next', ], |
| | | prev: '<i class="layui-icon layui-icon-left"></i>', |
| | | next: '<i class="layui-icon layui-icon-right"></i>', |
| | | jump: function (obj, first) { |
| | | if (!first) { |
| | | searchRecord(obj.curr, obj.limit) |
| | |
| | | // 添加表单查询条件 |
| | | var form = document.getElementById('snapRecord-form'); |
| | | if (form) { |
| | | var inputs = form.querySelectorAll('input[name], select[name]'); |
| | | // 处理普通输入框和选择框 |
| | | var inputs = form.querySelectorAll('input[name]:not([type="hidden"]), select[name]'); |
| | | inputs.forEach(function(input) { |
| | | if (input.value) { // 只添加非空值 |
| | | params[input.name] = input.value; |
| | |
| | | // 生成图片卡片 |
| | | var html = ''; |
| | | records.forEach(function(record) { |
| | | //标签展示 |
| | | var tagsHtml = ''; |
| | | if (record.tags) { |
| | | var tags = record.tags.split(','); |
| | | tags.forEach(function(tag) { |
| | | tagsHtml += ` |
| | | <span class="tag-person"> |
| | | <i class="layui-icon layui-icon-note"></i> |
| | | <span>${tag.trim()}</span> |
| | | </span> |
| | | `; |
| | | }); |
| | | } |
| | | |
| | | html += ` |
| | | <div class="gallery-item"> |
| | | <img src="${record.imgName || '/logo-sm.png'}" alt="${record.id}" |
| | | data-url="${record.imgName || '/logo-sm.png'}" data-id="${record.id}" |
| | | class="gallery-img" onclick="showSnapRecordPreview(this.getAttribute('data-url'))"> |
| | | <div class="gallery-info"> |
| | | <div class="gallery-header"> |
| | | <!-- <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> |
| | | <div class="gallery-item"> |
| | | <img src="${record.imgName || '/logo-sm.png'}" alt="${record.id}" |
| | | data-url="${record.imgName || '/logo-sm.png'}" data-id="${record.id}" |
| | | class="gallery-img" onclick="showSnapRecordPreview(this.getAttribute('data-url'))"> |
| | | <div class="gallery-info"> |
| | | <div class="gallery-header"> |
| | | <div class="gallery-tags"> |
| | | ${tagsHtml} |
| | | </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>${getCameraName(record.cameraId) || 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> |
| | | </div> |
| | | </div> |
| | | `; |
| | | |
| | | }); |
| | | |
| | | container.innerHTML = html; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据摄像头ID获取摄像头名称 |
| | | * @param {string} cameraId - 摄像头ID |
| | | * @returns {string|null} 摄像头名称或null |
| | | */ |
| | | function getCameraName(cameraId) { |
| | | // 确保cameraList存在且为数组 |
| | | if (typeof cameraList !== 'undefined' && Array.isArray(cameraList) && cameraId) { |
| | | // 查找匹配的摄像头对象 |
| | | var camera = cameraList.find(function(item) { |
| | | return item.id === cameraId; |
| | | }); |
| | | // 返回摄像头名称,如果找不到则返回null |
| | | return camera ? camera.name : null; |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 格式化日期 |
| | |
| | | }); |
| | | } |
| | | function openConf() { |
| | | var url = ctx + "security/snap/snapConf"; |
| | | $.modal.openTab("抓拍配置", url); |
| | | var url = ctx + "com.fzzy.igds.SnapConf.d"; |
| | | var options = { |
| | | title: "抓拍配置", |
| | | url: url, |
| | | btn: 0, |
| | | yes: function (index, layero) { |
| | | $.modal.close(index); |
| | | } |
| | | }; |
| | | $.modal.openOptions(options); |
| | | } |