|  | @@ -2,17 +2,19 @@
 | 
											
												
													
														|  |    <div class="visitRecord">
 |  |    <div class="visitRecord">
 | 
											
												
													
														|  |      <NavBar/>
 |  |      <NavBar/>
 | 
											
												
													
														|  |      <div class="page-container">
 |  |      <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">
 |  |        <div class="search-flex">
 | 
											
												
													
														|  |          <select-cell
 |  |          <select-cell
 | 
											
												
													
														|  |            style="border-right: 1px solid #f5f5f5;"
 |  |            style="border-right: 1px solid #f5f5f5;"
 | 
											
												
													
														|  | -          title="介绍信类型"
 |  | 
 | 
											
												
													
														|  | 
 |  | +          title="状态"
 | 
											
												
													
														|  |            is-all
 |  |            is-all
 | 
											
												
													
														|  | 
 |  | +          isRow
 | 
											
												
													
														|  |            :border="false"
 |  |            :border="false"
 | 
											
												
													
														|  |            v-model="query.type"
 |  |            v-model="query.type"
 | 
											
												
													
														|  |            :data-list="getDictItem('out_in_type')"
 |  |            :data-list="getDictItem('out_in_type')"
 | 
											
												
													
														|  |            @change="refreshData"/>
 |  |            @change="refreshData"/>
 | 
											
												
													
														|  | -        <date-cell title="日期" is-all v-model="query.arrivalTime" date-type="date" @change="refreshData"/>
 |  | 
 | 
											
												
													
														|  |        </div>
 |  |        </div>
 | 
											
												
													
														|  |        <div class="card-list">
 |  |        <div class="card-list">
 | 
											
												
													
														|  |          <Scroll
 |  |          <Scroll
 | 
											
										
											
												
													
														|  | @@ -24,87 +26,45 @@
 | 
											
												
													
														|  |            <card v-else v-for="(v,i) in dataList" :key="v.id">
 |  |            <card v-else v-for="(v,i) in dataList" :key="v.id">
 | 
											
												
													
														|  |              <van-cell
 |  |              <van-cell
 | 
											
												
													
														|  |                :border="false"
 |  |                :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>
 |  |                <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-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="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">
 |  |                      <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>
 |  |                    </div>
 | 
											
												
													
														|  |                  </div>
 |  |                  </div>
 | 
											
												
													
														|  |                </template>
 |  |                </template>
 | 
											
												
													
														|  |              </van-cell>
 |  |              </van-cell>
 | 
											
												
													
														|  |            </card>
 |  |            </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>
 |  |          </Scroll>
 | 
											
												
													
														|  |        </div>
 |  |        </div>
 | 
											
												
													
														|  |      </div>
 |  |      </div>
 | 
											
												
													
														|  | -    <drag-button @btnClick="clickAdd"></drag-button>
 |  | 
 | 
											
												
													
														|  |    </div>
 |  |    </div>
 | 
											
												
													
														|  |  </template>
 |  |  </template>
 | 
											
												
													
														|  |  <script>
 |  |  <script>
 | 
											
										
											
												
													
														|  | @@ -116,15 +76,12 @@ import dateCell from '@/components/dateCell/index.vue'
 | 
											
												
													
														|  |  import selectCell from '@/components/selectCell/index.vue'
 |  |  import selectCell from '@/components/selectCell/index.vue'
 | 
											
												
													
														|  |  import {dataList} from './api'
 |  |  import {dataList} from './api'
 | 
											
												
													
														|  |  import {mapGetters} from "vuex";
 |  |  import {mapGetters} from "vuex";
 | 
											
												
													
														|  | -import {formatDate} from "@/filters/filter";
 |  | 
 | 
											
												
													
														|  | -import DragButton from "@/components/DragButton/index.vue";
 |  | 
 | 
											
												
													
														|  |  import dayjs from "dayjs";
 |  |  import dayjs from "dayjs";
 | 
											
												
													
														|  |  import Item from "@/views/menu/protection/components/item.vue";
 |  |  import Item from "@/views/menu/protection/components/item.vue";
 | 
											
												
													
														|  |  export default {
 |  |  export default {
 | 
											
												
													
														|  |    name: 'visitRecord',
 |  |    name: 'visitRecord',
 | 
											
												
													
														|  |    components: {
 |  |    components: {
 | 
											
												
													
														|  |      Item,
 |  |      Item,
 | 
											
												
													
														|  | -    DragButton,
 |  | 
 | 
											
												
													
														|  |      NavBar,
 |  |      NavBar,
 | 
											
												
													
														|  |      OrgTree,
 |  |      OrgTree,
 | 
											
												
													
														|  |      Scroll,
 |  |      Scroll,
 | 
											
										
											
												
													
														|  | @@ -162,7 +119,8 @@ export default {
 | 
											
												
													
														|  |      dayjs,
 |  |      dayjs,
 | 
											
												
													
														|  |      clickAdd(){
 |  |      clickAdd(){
 | 
											
												
													
														|  |        this.$router.push({
 |  |        this.$router.push({
 | 
											
												
													
														|  | -        path:'/visitUserRecord',
 |  | 
 | 
											
												
													
														|  | 
 |  | +        name:'addOrder',
 | 
											
												
													
														|  | 
 |  | +        path:'/addOrder',
 | 
											
												
													
														|  |        });
 |  |        });
 | 
											
												
													
														|  |      },
 |  |      },
 | 
											
												
													
														|  |      refreshData(){
 |  |      refreshData(){
 | 
											
										
											
												
													
														|  | @@ -204,7 +162,7 @@ export default {
 | 
											
												
													
														|  |      },
 |  |      },
 | 
											
												
													
														|  |      clickItem(id){
 |  |      clickItem(id){
 | 
											
												
													
														|  |        this.$router.push({
 |  |        this.$router.push({
 | 
											
												
													
														|  | -        path:'/visitRecordDetail',
 |  | 
 | 
											
												
													
														|  | 
 |  | +        path:'/videoIntegrityDetail',
 | 
											
												
													
														|  |          query:{id}
 |  |          query:{id}
 | 
											
												
													
														|  |        });
 |  |        });
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
										
											
												
													
														|  | @@ -230,6 +188,11 @@ export default {
 | 
											
												
													
														|  |        color:#666!important;
 |  |        color:#666!important;
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |    }
 |  |    }
 | 
											
												
													
														|  | 
 |  | +  .item-icon {
 | 
											
												
													
														|  | 
 |  | +    font-size: 32px;
 | 
											
												
													
														|  | 
 |  | +    line-height: inherit;
 | 
											
												
													
														|  | 
 |  | +    color:#ee0a24;
 | 
											
												
													
														|  | 
 |  | +  }
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  </style>
 |  |  </style>
 | 
											
												
													
														|  |  <style lang="scss" scoped>
 |  |  <style lang="scss" scoped>
 | 
											
										
											
												
													
														|  | @@ -241,8 +204,9 @@ export default {
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  .card-list{
 |  |  .card-list{
 | 
											
												
													
														|  |    padding:0 20px 20px 20px;
 |  |    padding:0 20px 20px 20px;
 | 
											
												
													
														|  | -  height: calc(100vh - 426px);
 |  | 
 | 
											
												
													
														|  | 
 |  | +  height: calc(100vh - 372px);
 | 
											
												
													
														|  |    overflow:  auto;
 |  |    overflow:  auto;
 | 
											
												
													
														|  | 
 |  | +  -border: 1px solid red;
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  .item-title{
 |  |  .item-title{
 | 
											
												
													
														|  |    border-bottom: 1px solid #f5f5f5;
 |  |    border-bottom: 1px solid #f5f5f5;
 | 
											
										
											
												
													
														|  | @@ -260,7 +224,7 @@ export default {
 | 
											
												
													
														|  |    justify-content: space-between;
 |  |    justify-content: space-between;
 | 
											
												
													
														|  |    border-bottom: 1px solid #f5f5f5;
 |  |    border-bottom: 1px solid #f5f5f5;
 | 
											
												
													
														|  |    >div{
 |  |    >div{
 | 
											
												
													
														|  | -    width: 50%;
 |  | 
 | 
											
												
													
														|  | 
 |  | +    width: 100%;
 | 
											
												
													
														|  |    }
 |  |    }
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  .btn-box{
 |  |  .btn-box{
 | 
											
										
											
												
													
														|  | @@ -272,9 +236,21 @@ export default {
 | 
											
												
													
														|  |    align-items: center;
 |  |    align-items: center;
 | 
											
												
													
														|  |    justify-content: 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{
 |  |  .info-box{
 | 
											
												
													
														|  |    color:#555;
 |  |    color:#555;
 | 
											
												
													
														|  |    padding-top: 20px;
 |  |    padding-top: 20px;
 | 
											
												
													
														|  | 
 |  | +  border-top: 1px solid #eaeaea;
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  .info-desc{
 |  |  .info-desc{
 | 
											
												
													
														|  |    padding-top: 10px;
 |  |    padding-top: 10px;
 | 
											
										
											
												
													
														|  | @@ -296,13 +272,14 @@ export default {
 | 
											
												
													
														|  |    align-items: center;
 |  |    align-items: center;
 | 
											
												
													
														|  |    font-size: 26px;
 |  |    font-size: 26px;
 | 
											
												
													
														|  |    .item-label{
 |  |    .item-label{
 | 
											
												
													
														|  | -    flex:.25;
 |  | 
 | 
											
												
													
														|  | 
 |  | +    flex:.5;
 | 
											
												
													
														|  |      text-align: left;
 |  |      text-align: left;
 | 
											
												
													
														|  |      color:#333;
 |  |      color:#333;
 | 
											
												
													
														|  |    }
 |  |    }
 | 
											
												
													
														|  |    .item-value{
 |  |    .item-value{
 | 
											
												
													
														|  | -    flex:.75;
 |  | 
 | 
											
												
													
														|  | 
 |  | +    flex:.5;
 | 
											
												
													
														|  |      color:#666;
 |  |      color:#666;
 | 
											
												
													
														|  | 
 |  | +    text-align: right;
 | 
											
												
													
														|  |      min-height: 50px;
 |  |      min-height: 50px;
 | 
											
												
													
														|  |      max-height: 250px;
 |  |      max-height: 250px;
 | 
											
												
													
														|  |      display: -webkit-box;
 |  |      display: -webkit-box;
 | 
											
										
											
												
													
														|  | @@ -311,5 +288,21 @@ export default {
 | 
											
												
													
														|  |      overflow: hidden;
 |  |      overflow: hidden;
 | 
											
												
													
														|  |      text-overflow: ellipsis;
 |  |      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>
 |  |  </style>
 |