From 3a95f79805a490d23d969faedb376bcc9ac14fb5 Mon Sep 17 00:00:00 2001
From: 叶松 <2217086471@qq.com>
Date: 星期三, 22 十一月 2023 14:22:33 +0800
Subject: [PATCH] 增加提示全部
---
web/src/views/SecureManage/SmartHelmet/PhoneManage.vue | 253 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 250 insertions(+), 3 deletions(-)
diff --git a/web/src/views/SecureManage/SmartHelmet/PhoneManage.vue b/web/src/views/SecureManage/SmartHelmet/PhoneManage.vue
index f377ec1..300e799 100644
--- a/web/src/views/SecureManage/SmartHelmet/PhoneManage.vue
+++ b/web/src/views/SecureManage/SmartHelmet/PhoneManage.vue
@@ -1,3 +1,250 @@
-<template>
- <div>照片管理</div>
-</template>
\ No newline at end of file
+<template>
+ <!-- 安全管理 ==> 智能安全帽 => 照片管理 -->
+ <div class="main">
+ <!-- main_left -->
+ <div class="main_left">
+ <div class="main_left_search">
+ <div class="search_item">
+ <span>姓名:</span>
+ <el-input size="mini" v-model="queryInfo.userName" placeholder="请输入姓名" clearable></el-input>
+ </div>
+ <div class="search_item">
+ <span>设备编号:</span>
+ <el-input size="mini" v-model="queryInfo.deviceNum" placeholder="请输入设备编号" clearable></el-input>
+ <el-button icon="el-icon-search" @click="queryTable">查询</el-button>
+ </div>
+ </div>
+ <div class="main_left_table">
+ <cpnTable :table-loading="loading" :table-data="dataList" :table-columns="tableColumns"
+ :row-click="rowClick">
+ </cpnTable>
+ </div>
+ </div>
+ <!-- main_right -->
+ <div class="main_right">
+ <div class="search_item">
+ <span>日期:</span>
+ <el-date-picker type="daterange" v-model="pics.date" value-format="yyyy-MM-dd" start-placeholder="开始日期"
+ end-placeholder="结束日期" clearable></el-date-picker>
+ <!-- <el-select v-model="pics.type">
+ <el-option :value="1">所有照片</el-option>
+ <el-option :value="2">安全带取证</el-option>
+ </el-select> -->
+ <el-button icon="el-icon-search" @click="queryPic">查询</el-button>
+ </div>
+ <div class="pic_wrap">
+ <div class="pic_item" v-for="item in pics.data" :key="item.iid">
+ <el-image :src="item.imageUrl" :preview-src-list="[item.imageUrl]" lazy></el-image>
+ <div class="pic_item_info">
+ <div class="pic_item_info_time">{{ item.smTime }}</div>
+ <div class="pic_item_info_des"></div>
+ <div class="pic_item_info_btn">
+ </div>
+ </div>
+ </div>
+ <div class="nopic" v-if="!pics.data.length">暂无图片</div>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script>
+import cpnTable from '@/components/element/Table'
+export default {
+ data() {
+ return {
+ loading: false,
+ queryInfo: {
+ pageNum: 1,
+ pageSize: 9999,
+ userName: '',
+ deviceNum: '',
+ },
+ dataList: [],
+ tableColumns: [],
+ userId: '', // 用户id
+ pics: {
+ date: [],
+ type: '',
+ data: [],
+ },
+ $http: '', // 接口api路径
+ }
+ },
+ components: {
+ cpnTable
+ },
+ created() {
+ this.$http = this.$api.Safety.SmartHelmet.pic
+ this.setTableColumn()
+ this.getLists()
+ },
+ methods: {
+ setTableColumn() {
+ this.tableColumns = [
+ {selection: true},
+ {name: "用户ID", key: "userId"},
+ {name: "姓名", key: "userName"},
+ {name: "设备编号", key: "deviceNum"},
+ ]
+ },
+ getLists() {
+ this.loading = true
+ this.$api.Safety.SmartHelmet.getLists(this.queryInfo).then(res => {
+ if (res.statusMsg === 'ok') {
+ this.dataList = res.data.list
+ }
+ }).finally(() => this.loading = false)
+ },
+ getPics() {
+ const params = {
+ userId: this.userId,
+ pageNum: 1,
+ pageSize: 9999,
+ strTime: this.pics.date?.[0],
+ endTime: this.pics.date?.[1],
+ }
+ this.$http.getPics(params).then(res => {
+ if (res.statusMsg === 'ok') {
+ this.pics.data = res.data.list
+ }
+ })
+ },
+ rowClick(row) {
+ this.userId = row.userId
+ this.getPics()
+ },
+ queryTable() {
+ this.getLists()
+ },
+ queryPic() {
+ this.getPics()
+ },
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+@import '@/style/layout-main.scss';
+
+.main {
+ display: flex;
+ flex-direction: row;
+ color: #EBEBEB;
+
+ .main_left {
+ display: flex;
+ flex-direction: column;
+ width: 380px;
+ padding: 14px;
+ margin-right: 18px;
+ border: 1px solid #39B5FE;
+ border-radius: 10px;
+ box-shadow: rgba(0, 145, 255, 0.7) 0 0 18px inset;
+ box-sizing: content-box;
+
+ .search_item {
+ span {
+ display: inline-block;
+ min-width: 54px;
+ margin-right: 6px;
+ text-align: right;
+ }
+
+ .el-input {
+ width: 220px;
+ margin: 0 28px 16px 0;
+ }
+ }
+
+ ::v-deep.main_left_table {
+ overflow: hidden;
+
+ .el-table__row {
+ cursor: pointer
+ }
+
+ .el-table {
+ display: flex;
+ flex-direction: column;
+
+ .el-table__body-wrapper {
+ overflow-y: auto;
+ flex: 1;
+ }
+ }
+ }
+ }
+
+ .main_right {
+ overflow: hidden;
+ display: flex;
+ flex-direction: column;
+ flex: 1;
+ padding: 20px;
+ border: 1px solid #39B5FE;
+ background-color: rgba(0, 52, 121, 0.3);
+ border-radius: 10px;
+ box-shadow: rgba(0, 145, 255, 0.7) 0 0 18px inset;
+ box-sizing: content-box;
+
+ .search_item {
+
+ .el-button,
+ .el-input,
+ .el-select {
+ margin: 0 12px 14px 6px;
+ }
+ }
+
+ .pic_wrap {
+ flex: 1;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ align-items: center;
+ overflow-y: auto;
+
+ .nopic {
+ width: 100%;
+ text-align: center;
+ font-size: 28px;
+ }
+
+ .pic_item {
+ display: flex;
+ flex-direction: column;
+ width: 380px;
+ height: 300px;
+ border: 1px solid green;
+ margin: 10px;
+
+ .el-image {
+ border: 1px solid #4EA7DD;
+ }
+
+ .pic_item_info {
+ position: relative;
+ flex: 1;
+ margin-top: 3px;
+ border: 1px solid #3DC8FF;
+ background: rgba(21, 66, 107, .6);
+
+ .pic_item_info_time {
+ position: absolute;
+ top: 40%;
+ font-size: 13px;
+ text-indent: 20px;
+ }
+
+ .pic_item_info_btn {
+ position: absolute;
+ top: 34px;
+ right: 20px;
+ }
+ }
+ }
+ }
+ }
+}
+</style>
\ No newline at end of file
--
Gitblit v1.9.3