|
|
@@ -2,17 +2,19 @@
|
|
|
<div class="visitRecord">
|
|
|
<NavBar/>
|
|
|
<div class="page-container">
|
|
|
- <van-search v-model="query.userName" class="van-hairline--bottom" placeholder="请输入人员姓名" @clear="refreshData" @change="refreshData"/>
|
|
|
+ <div class="org-line van-hairline--bottom">
|
|
|
+ <org-tree clearable v-model="query.beCheckedOrgId" placeholder="选择机构" @change="refreshData"></org-tree>
|
|
|
+ </div>
|
|
|
<div class="search-flex">
|
|
|
<select-cell
|
|
|
style="border-right: 1px solid #f5f5f5;"
|
|
|
- title="介绍信类型"
|
|
|
+ title="状态"
|
|
|
is-all
|
|
|
+ isRow
|
|
|
:border="false"
|
|
|
v-model="query.type"
|
|
|
:data-list="getDictItem('out_in_type')"
|
|
|
@change="refreshData"/>
|
|
|
- <date-cell title="日期" is-all v-model="query.arrivalTime" date-type="date" @change="refreshData"/>
|
|
|
</div>
|
|
|
<div class="card-list">
|
|
|
<Scroll
|
|
|
@@ -24,87 +26,45 @@
|
|
|
<card v-else v-for="(v,i) in dataList" :key="v.id">
|
|
|
<van-cell
|
|
|
:border="false"
|
|
|
- class="item-title"
|
|
|
- :title-style="{color:'#008cd6'}"
|
|
|
- :title="`介绍信类型: ${getDictLabel(v.type,'out_in_type')}`"
|
|
|
- @click="clickItem(v.id)">
|
|
|
- <template #right-icon>
|
|
|
- <van-button v-if="!v.departureTime" type="info" size="mini">登记离开时间</van-button>
|
|
|
- </template>
|
|
|
- </van-cell>
|
|
|
- <van-cell
|
|
|
- :border="false"
|
|
|
- class="item-value"
|
|
|
- @click="clickItem(v.id)">
|
|
|
+ class="item-value">
|
|
|
<template #default>
|
|
|
+ <div class="info-title">
|
|
|
+ <div class="item-label">XXX设备</div>
|
|
|
+ <div class="item-state">异常</div>
|
|
|
+<!-- <i class="point-icon" :class="{'active':!v.isRead}" />-->
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <van-cell :border="false" title="亮度">
|
|
|
+ <template #right-icon>
|
|
|
+ <van-icon name="cross" class="item-icon"/>
|
|
|
+ </template>
|
|
|
+ </van-cell>
|
|
|
+ <van-cell :border="false" title="条纹">
|
|
|
+ <template #right-icon>
|
|
|
+ <van-icon name="cross" class="item-icon"/>
|
|
|
+ </template>
|
|
|
+ </van-cell>
|
|
|
+
|
|
|
<div class="info-box">
|
|
|
+<!-- <div class="info-item">-->
|
|
|
+<!-- <div class="item-label">亮度</div>-->
|
|
|
+<!-- <div class="item-value">-->
|
|
|
+<!-- <van-icon name="cross" />-->
|
|
|
+<!-- </div>-->
|
|
|
+<!-- </div>-->
|
|
|
<div class="info-item">
|
|
|
- <div class="item-label">人员姓名</div>
|
|
|
- <div class="item-value"> {{v.userName}}</div>
|
|
|
- </div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="item-label">到达时间</div>
|
|
|
- <div class="item-value">
|
|
|
- {{ dayjs(v.arrivalTime).format('YYYY-MM-DD HH:mm')}}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="item-label">离开时间</div>
|
|
|
+ <div class="item-label">上报时间: {{ dayjs(v.arrivalTime).format('YYYY-MM-DD HH:mm')}}</div>
|
|
|
<div class="item-value">
|
|
|
- {{v.departureTime? dayjs(v.departureTime).format('YYYY-MM-DD HH:mm') : '暂无'}}
|
|
|
+ <van-button type="info" size="small" @click="clickAdd">生成运维单</van-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
</van-cell>
|
|
|
</card>
|
|
|
-
|
|
|
-
|
|
|
-<!-- <card v-else v-for="(v,i) in dataList" :key="v.id">-->
|
|
|
-<!-- <van-cell-->
|
|
|
-<!-- :title-style="{color:'#008cd6'}"-->
|
|
|
-<!-- :title="`介绍信类型: ${getDictLabel(v.type,'out_in_type')}`"-->
|
|
|
-<!-- @click="clickItem(v.id)">-->
|
|
|
-<!-- <template #right-icon>-->
|
|
|
-<!-- <van-button v-if="!v.departureTime" type="info" size="mini">登记离开时间</van-button>-->
|
|
|
-<!-- <van-button v-else type="info" size="mini">查看登记详情</van-button>-->
|
|
|
-<!-- </template>-->
|
|
|
-<!-- <template #label>-->
|
|
|
-<!-- <div class="info-box">-->
|
|
|
-<!-- <div class="info-item">-->
|
|
|
-<!-- <div class="item-label">人员姓名:</div>-->
|
|
|
-<!-- <div class="item-value"> {{v.userName}}</div>-->
|
|
|
-<!-- </div>-->
|
|
|
-<!--<!– <div class="info-item">–>-->
|
|
|
-<!--<!– <div class="item-label">证件号码:</div>–>-->
|
|
|
-<!--<!– <div class="item-value">{{v.idCard}}</div>–>-->
|
|
|
-<!--<!– </div>–>-->
|
|
|
-<!-- <div class="info-item">-->
|
|
|
-<!-- <div class="item-label">到达时间:</div>-->
|
|
|
-<!-- <div class="item-value">-->
|
|
|
-<!-- {{ dayjs(v.arrivalTime).format('YYYY-MM-DD HH:mm')}}-->
|
|
|
-<!-- </div>-->
|
|
|
-<!-- </div>-->
|
|
|
-<!-- <div class="info-item">-->
|
|
|
-<!-- <div class="item-label">离开时间:</div>-->
|
|
|
-<!-- <div class="item-value">-->
|
|
|
-<!-- {{v.departureTime? dayjs(v.departureTime).format('YYYY-MM-DD HH:mm') : '暂无'}}-->
|
|
|
-<!-- </div>-->
|
|
|
-<!-- </div>-->
|
|
|
-<!--<!– <div class="info-item">–>-->
|
|
|
-<!--<!– <div class="item-label">出入事由:</div>–>-->
|
|
|
-<!--<!– <div class="item-value">–>-->
|
|
|
-<!--<!– {{v.reasons}}–>-->
|
|
|
-<!--<!– </div>–>-->
|
|
|
-<!--<!– </div>–>-->
|
|
|
-<!-- </div>-->
|
|
|
-<!-- </template>-->
|
|
|
-<!-- </van-cell>-->
|
|
|
-<!-- </card>-->
|
|
|
</Scroll>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <drag-button @btnClick="clickAdd"></drag-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
@@ -116,15 +76,12 @@ import dateCell from '@/components/dateCell/index.vue'
|
|
|
import selectCell from '@/components/selectCell/index.vue'
|
|
|
import {dataList} from './api'
|
|
|
import {mapGetters} from "vuex";
|
|
|
-import {formatDate} from "@/filters/filter";
|
|
|
-import DragButton from "@/components/DragButton/index.vue";
|
|
|
import dayjs from "dayjs";
|
|
|
import Item from "@/views/menu/protection/components/item.vue";
|
|
|
export default {
|
|
|
name: 'visitRecord',
|
|
|
components: {
|
|
|
Item,
|
|
|
- DragButton,
|
|
|
NavBar,
|
|
|
OrgTree,
|
|
|
Scroll,
|
|
|
@@ -162,7 +119,8 @@ export default {
|
|
|
dayjs,
|
|
|
clickAdd(){
|
|
|
this.$router.push({
|
|
|
- path:'/visitUserRecord',
|
|
|
+ name:'addOrder',
|
|
|
+ path:'/addOrder',
|
|
|
});
|
|
|
},
|
|
|
refreshData(){
|
|
|
@@ -204,7 +162,7 @@ export default {
|
|
|
},
|
|
|
clickItem(id){
|
|
|
this.$router.push({
|
|
|
- path:'/visitRecordDetail',
|
|
|
+ path:'/videoIntegrityDetail',
|
|
|
query:{id}
|
|
|
});
|
|
|
}
|
|
|
@@ -230,6 +188,11 @@ export default {
|
|
|
color:#666!important;
|
|
|
}
|
|
|
}
|
|
|
+ .item-icon {
|
|
|
+ font-size: 32px;
|
|
|
+ line-height: inherit;
|
|
|
+ color:#ee0a24;
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|
|
|
<style lang="scss" scoped>
|
|
|
@@ -241,8 +204,9 @@ export default {
|
|
|
}
|
|
|
.card-list{
|
|
|
padding:0 20px 20px 20px;
|
|
|
- height: calc(100vh - 426px);
|
|
|
+ height: calc(100vh - 372px);
|
|
|
overflow: auto;
|
|
|
+ -border: 1px solid red;
|
|
|
}
|
|
|
.item-title{
|
|
|
border-bottom: 1px solid #f5f5f5;
|
|
|
@@ -260,7 +224,7 @@ export default {
|
|
|
justify-content: space-between;
|
|
|
border-bottom: 1px solid #f5f5f5;
|
|
|
>div{
|
|
|
- width: 50%;
|
|
|
+ width: 100%;
|
|
|
}
|
|
|
}
|
|
|
.btn-box{
|
|
|
@@ -272,9 +236,21 @@ export default {
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
}
|
|
|
+.info-title{
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ font-size: 32px;
|
|
|
+ border-bottom: 1px solid #eaeaea;
|
|
|
+ padding-bottom: 20px;
|
|
|
+ .item-state{
|
|
|
+ color:#ee0a24;
|
|
|
+ }
|
|
|
+}
|
|
|
.info-box{
|
|
|
color:#555;
|
|
|
padding-top: 20px;
|
|
|
+ border-top: 1px solid #eaeaea;
|
|
|
}
|
|
|
.info-desc{
|
|
|
padding-top: 10px;
|
|
|
@@ -296,13 +272,14 @@ export default {
|
|
|
align-items: center;
|
|
|
font-size: 26px;
|
|
|
.item-label{
|
|
|
- flex:.25;
|
|
|
+ flex:.5;
|
|
|
text-align: left;
|
|
|
color:#333;
|
|
|
}
|
|
|
.item-value{
|
|
|
- flex:.75;
|
|
|
+ flex:.5;
|
|
|
color:#666;
|
|
|
+ text-align: right;
|
|
|
min-height: 50px;
|
|
|
max-height: 250px;
|
|
|
display: -webkit-box;
|
|
|
@@ -311,5 +288,21 @@ export default {
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
}
|
|
|
+ .item-device{
|
|
|
+ font-size: 32px;
|
|
|
+ color:#008cd6;
|
|
|
+ }
|
|
|
+}
|
|
|
+.point-icon{
|
|
|
+ width: 20px;
|
|
|
+ height: 20px;
|
|
|
+ background-color:#ccc;
|
|
|
+ border-radius: 50%;
|
|
|
+ margin-top: 10px;
|
|
|
+ display: none;
|
|
|
+ &.active{
|
|
|
+ display: block;
|
|
|
+ background-color: #ee0a24;
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|