From 07db4702cc86f56e8da819674d717e5c0404e0ea Mon Sep 17 00:00:00 2001
From: heyujie <516346543@qq.com>
Date: 星期一, 20 六月 2022 17:36:48 +0800
Subject: [PATCH] get order
---
src/pages/library/components/carList.vue | 2570 +++++++++++++++++++++++++++++++++-------------------------
1 files changed, 1,461 insertions(+), 1,109 deletions(-)
diff --git a/src/pages/library/components/carList.vue b/src/pages/library/components/carList.vue
index c502700..a30dfb2 100644
--- a/src/pages/library/components/carList.vue
+++ b/src/pages/library/components/carList.vue
@@ -1,240 +1,136 @@
<template>
<div class="table-parent">
- <el-row class style="margin:20px">
- <!-- <el-col :span="4" class="tl">
- <b class="f14">{{this.baseObject.tableName}}</b>
- </el-col>
- <el-col :span="2">
- <b class="f14">{{this.baseObject.bwType === '1'?'榛戝悕鍗�':'鐧藉悕鍗�'}}</b>
- </el-col>
- <el-col :span="8">
- <b class="f14">鏈夋晥鏃堕棿锛歿{this.baseObject.startTime}}--{{this.baseObject.endTime?this.baseObject.endTime:'姘镐箙鏈夋晥'}}</b>
- </el-col>-->
- <div class="tl">
- <span
- class="f14"
- style="color:#000000;"
- >{{this.baseObject.tableName?this.baseObject.tableName + '/ ':''}}</span>
- <span
- class="f14"
- style="color:#000000;"
- >{{this.baseObject.bwType === '1'?'榛戝悕鍗�/ ':'鐧藉悕鍗�/ '}}</span>
- <span
- class="f14"
- style="color:#000000;"
- >鏈夋晥鏃堕棿锛歿{this.baseObject.startTime}}--{{this.baseObject.endTime?this.baseObject.endTime:'姘镐箙鏈夋晥'}}</span>
+ <el-row>
+ <div class="base-tip">
+ <div class="left-tips">
+ <span class="ku-name">{{ this.baseObject.tableName }}</span>
+ <span
+ class="list"
+ :class="
+ this.baseObject.bwType === '1' ? 'black-list' : 'white-list'
+ "
+ >{{ this.baseObject.bwType === "1" ? "榛戝悕鍗�" : "鐧藉悕鍗�" }}</span
+ >
+ <span class="ok-time"
+ >鏈夋晥鏃堕棿锛歿{ this.baseObject.startTime }} --
+ {{
+ this.baseObject.endTime ? this.baseObject.endTime : "姘镐箙鏈夋晥"
+ }}</span
+ >
+ </div>
+
+ <div class="right-btns">
+ <span style="margin-right: 2px">搴曞簱鐘舵�侊紙鐢熸晥/澶辨晥锛�</span>
+ <el-switch
+ :active-value="1"
+ :width="52"
+ :inactive-value="0"
+ v-model="baseObject.enable"
+ active-color="#4E94FF"
+ inactive-color="#BBBBBB"
+ style="margin-right: 10px"
+ :disabled="isDisabled(baseObject)"
+ @change="setEnable(baseObject)"
+ >
+ </el-switch>
+ <div class="shutiao" v-if="baseObject.enable"></div>
+ <div class="shutiao1" v-else></div>
+ <el-tooltip content="鍒犻櫎" placement="top" popper-class="atooltip">
+ <span
+ class="iconfont iconfont-wrap iconshanchuku-09"
+ v-if="isShow('library:set')"
+ @click.stop="askDelete('base')"
+ ></span>
+ </el-tooltip>
+
+ <el-tooltip content="缂栬緫" placement="top" popper-class="atooltip">
+ <span
+ class="iconfont iconfont-wrap iconbianjiku-09"
+ @click.stop="edit"
+ v-if="isShow('library:set')"
+ ></span>
+ </el-tooltip>
+ </div>
</div>
</el-row>
- <el-row class style="margin:40px 0 40px 20px">
- <el-col :span="6">
- <el-input
- placeholder="濮撳悕/鎬у埆/韬唤璇佸彿/鎵嬫満鍙�"
- autocomplete="off"
- width="100%"
- size="small"
- v-model="BaseManageData.contentValue"
- @keyup.enter.native="handleSearch"
- ></el-input>
- </el-col>
- <el-col :span="2">
- <el-button size="small" type="primary" @click="handleSearch">鎼滅储</el-button>
- </el-col>
- <el-col :offset="8" :span="3">
- <fTemplate authority="library:set">
- <el-button
+
+ <div style="display: flex" class="border-tabl">
+ <div class="head-search">
+ <div class="desc">
+ 鏈簱鍏辨湁
+ <span class="nums">{{ BaseManageData.total }}鏉�</span>
+ 鏁版嵁
+ </div>
+ <div class="right-group">
+ <el-input
+ placeholder="濮撳悕/鎬у埆/韬唤璇佸彿/鎵嬫満鍙�"
+ autocomplete="off"
+ width="100%"
size="small"
- class="ml10"
- type="danger"
- @click="deleteBatch"
- v-if="isShow('library:set')"
- >鎵归噺鍒犻櫎</el-button>
- </fTemplate>
- </el-col>
- <el-col :span="2">
- <div class="text-left">
- <el-button size="small" class="ml10" type="primary" @click="addCar">娣诲姞杞﹁締</el-button>
- <el-drawer
- title="杞﹁締淇℃伅"
- :modal="false"
- :destroy-on-close="true"
- :append-to-body="true"
- :visible.sync="addDrawer"
- :direction="direction"
- :before-close="handleClose1"
+ v-model="BaseManageData.contentValue"
+ @keyup.enter.native="handleSearch"
+ ></el-input>
+ <el-button size="small" type="primary" @click="handleSearch"
+ >鎼滅储</el-button
>
- <div class="drawerSpace">
- <div class="uploadLine">
- <div class="car-picture">
- <el-upload
- action
- :http-request="uploadCar"
- accept="image/*"
- list-type="picture-card"
- :file-list="form.carUrls"
- :before-remove="handleRemoveCarPic"
- >
- <i class="el-icon-plus" style="margin-top:25px"></i>
- <div>涓婁紶杞﹁締鐓х墖</div>
- </el-upload>
- </div>
- <div class="person-picture">
- <el-upload
- action
- :http-request="uploadPerson"
- list-type="picture-card"
- accept="image/*"
- :limit="1"
- :file-list="form.faceUrl"
- :on-remove="handleRemoveFacePic"
- >
- <i class="el-icon-plus" style="margin-top:25px"></i>
- <div>涓婁紶杞︿富鐓х墖</div>
- </el-upload>
- </div>
- </div>
- <el-form
- ref="formForCar"
- :model="form"
- label-width="100px"
- style="margin-top:20px;margin-bottom: 50px"
- :rule="rules"
- >
- <el-form-item label="*杞︾墝鍙凤細">
- <el-input placeholder="璇疯緭鍏ヨ溅鐗屽彿" v-model="form.carNo" class="inputWidth"></el-input>
- </el-form-item>
- <el-form-item label="杞﹁締绫诲瀷锛�">
- <el-select v-model="form.carType" placeholder="璇烽�夋嫨杞﹁締绫诲瀷" class="inputWidth">
- <el-option
- v-for="item in VideoPhotoData.dictionary.CARTYPE"
- :key="item.value"
- :label="item.name"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="杞﹁締鍝佺墝锛�">
- <el-select v-model="form.carBrand" placeholder="璇烽�夋嫨杞﹁締鍝佺墝" class="inputWidth">
- <el-option
- v-for="item in VideoPhotoData.dictionary.BRAND"
- :key="item.value"
- :label="item.name"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="杞﹁韩棰滆壊锛�">
- <el-select v-model="form.carColor" placeholder="璇烽�夋嫨杞﹁韩棰滆壊" class="inputWidth">
- <el-option
- v-for="item in VideoPhotoData.dictionary.nColor"
- :key="item.value"
- :label="item.name"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="杞︿富濮撳悕锛�">
- <el-input v-model="form.personName" class="inputWidth"></el-input>
- </el-form-item>
- <el-form-item label="杞︿富鎬у埆锛�">
- <el-radio-group v-model="form.sex">
- <el-radio label="鐢�"></el-radio>
- <el-radio label="濂�"></el-radio>
- </el-radio-group>
- </el-form-item>
- <el-form-item label="韬唤璇佸彿锛�">
- <el-input v-model="form.idCard" class="inputWidth"></el-input>
- </el-form-item>
- <el-form-item label="鎵嬫満鍙凤細">
- <el-input v-model="form.phoneNum" class="inputWidth"></el-input>
- </el-form-item>
- <el-form-item label="鍏朵粬锛�">
- <el-input v-model="form.reserved" class="inputWidth"></el-input>
- </el-form-item>
- <el-form-item style="text-align:tight">
- <el-button type="primary" @click="submitCar" style="margin-left:120px">淇濆瓨</el-button>
- <el-button @click="resetForm">鍙栨秷</el-button>
- </el-form-item>
- </el-form>
- </div>
- </el-drawer>
- </div>
- </el-col>
- <el-col :span="3">
- <div class="text-left">
- <el-button size="small" class="ml10" type="primary" @click="addBatch">鎵归噺涓婁紶杞︾墝</el-button>
- <el-drawer
- title="涓婁紶杞︾墝"
- :modal="false"
- :append-to-body="true"
- :visible.sync="addBatchDrawer"
- :direction="direction"
- :before-close="handleClose2"
+
+ <el-tooltip
+ content="鎵归噺鍒犻櫎"
+ placement="top"
+ popper-class="atooltip"
>
- <div class="drawerSpace">
- <div class="plateAttach">
- <el-input
- type="textarea"
- :rows="25"
- v-model="plates"
- style="width:90%"
- placeholder="璇疯緭鍏ヨ溅鐗屽彿"
- ></el-input>
- <p>杞︾墝鍙蜂互閫楀彿鎴栧洖杞﹂敭闅斿紑锛屽崟娆℃渶澶氭敮鎸�100鏉′笂浼狅紝渚嬪锛氫含YAB123,浜現34Y87</p>
- <el-button type="primary" @click="platesBatch" style="margin-left:210px">淇濆瓨</el-button>
- <el-button @click="resetForm('ruleForm')">鍙栨秷</el-button>
- </div>
- </div>
- </el-drawer>
+ <fTemplate authority="library:set">
+ <span
+ class="iconfont iconfont-wrap iconpiliangshanchu-09"
+ @click="askDelete('batch')"
+ v-if="isShow('library:set')"
+ ></span>
+ </fTemplate>
+ </el-tooltip>
+
+ <el-tooltip
+ content="娣诲姞杞﹁締"
+ placement="top"
+ popper-class="atooltip"
+ >
+ <span
+ class="iconfont iconfont-wrap icontianjiacheliang-09"
+ @click="addCar"
+ ></span>
+ </el-tooltip>
+
+ <el-tooltip
+ content="鎵归噺涓婁紶杞︾墝"
+ placement="top"
+ popper-class="atooltip"
+ >
+ <span
+ class="iconfont iconfont-wrap iconshangchuanchepai-09"
+ @click="addBatch"
+ ></span>
+ </el-tooltip>
</div>
- </el-col>
- </el-row>
- <div style="display:flex;" class="border-tabl ml20">
+ </div>
+
<el-table
id="multipleTable"
+ class="tableBox"
ref="multipleTable"
:data="BaseManageData.personList"
tooltip-effect="dark"
- style="width: 100%;"
+ style="width: 100%; overflow: auto"
:fit="true"
- :default-sort="{prop: 'createTime', order: 'descending'}"
+ border
+ :default-sort="{ prop: 'createTime', order: 'descending' }"
@selection-change="handleSelectionChange"
- :header-cell-style="{background:'#f8f8f8',color:'#222222'}"
+ :header-cell-style="{
+ background: '#fff',
+ color: '#222222',
+ padding: '2px 1px',
+ borderBottom: 'none',
+ }"
>
<el-table-column type="selection" width="30"></el-table-column>
- <el-table-column label="搴忓彿" width="70" sortable align="center">
- <template slot-scope="scope">{{scope.$index+1}}</template>
- </el-table-column>
- <el-table-column prop="carNo" label="杞︾墝鍙�" sortable align="center" width="120"></el-table-column>
- <el-table-column
- prop="carType"
- label="杞﹁締绫诲瀷"
- width="100"
- show-overflow-tooltip
- sortable
- align="center"
- ></el-table-column>
- <el-table-column prop="carBrand" label="杞﹁締鍝佺墝" min-width="100" sortable align="center"></el-table-column>
- <el-table-column
- prop="carColor"
- label="杞﹁韩棰滆壊"
- width="100"
- show-overflow-tooltip
- sortable
- align="center"
- >
- <template
- slot-scope="scope"
- >{{getDataName(VideoPhotoData.dictionary.nColor,scope.row.carColor)}}</template>
- </el-table-column>
- <el-table-column
- prop="personName"
- label="杞︿富濮撳悕"
- min-width="110"
- show-overflow-tooltip
- sortable
- align="center"
- ></el-table-column>
- <el-table-column prop="sex" label="杞︿富鎬у埆" align="center" width="80"></el-table-column>
<el-table-column
prop="carUrls"
label="杞﹁締鐓х墖"
@@ -246,26 +142,24 @@
>
<template slot-scope="scope">
<el-carousel
- style="height:100px;"
+ style="height: 100px"
:autoplay="false"
indicator-position="none"
:arrow="scope.row.carUrls.length > 1 ? 'always' : 'never'"
>
- <el-carousel-item v-for="(item, index) in scope.row.carUrls" :key="index">
- <img style="width:100px;height:100px;object-fit:contain;" :src="item.url" alt />
+ <el-carousel-item
+ v-for="(item, index) in scope.row.carUrls"
+ :key="index"
+ >
+ <img
+ style="width: 100px; height: 100px; object-fit: contain"
+ :src="item.url"
+ alt
+ />
</el-carousel-item>
</el-carousel>
</template>
</el-table-column>
- <el-table-column
- prop="createTime"
- label="鍏ュ簱鏃堕棿"
- width="140"
- show-overflow-tooltip
- sortable
- align="center"
- ></el-table-column>
- <!-- <el-table-column prop="reserved" label="鍏朵粬" align="center"></el-table-column> -->
<el-table-column label="鐢熸晥鐘舵��" align="center" width="80">
<template slot-scope="scope">
<el-switch
@@ -277,59 +171,148 @@
></el-switch>
</template>
</el-table-column>
+ <el-table-column
+ prop="carNo"
+ label="杞︾墝鍙�"
+ sortable
+ align="center"
+ width="120"
+ ></el-table-column>
+ <el-table-column
+ prop="carType"
+ label="杞﹁締绫诲瀷"
+ width="100"
+ show-overflow-tooltip
+ sortable
+ align="center"
+ ></el-table-column>
+ <el-table-column
+ prop="carBrand"
+ label="杞﹁締鍝佺墝"
+ min-width="100"
+ sortable
+ align="center"
+ ></el-table-column>
+ <el-table-column
+ prop="carColor"
+ label="杞﹁韩棰滆壊"
+ width="100"
+ show-overflow-tooltip
+ sortable
+ align="center"
+ >
+ <template slot-scope="scope">{{
+ getDataName(VideoPhotoData.dictionary.nColor, scope.row.carColor)
+ }}</template>
+ </el-table-column>
+ <el-table-column
+ prop="personName"
+ label="杞︿富濮撳悕"
+ min-width="110"
+ show-overflow-tooltip
+ sortable
+ align="center"
+ ></el-table-column>
+ <el-table-column
+ prop="sex"
+ label="杞︿富鎬у埆"
+ align="center"
+ width="80"
+ ></el-table-column>
+
+ <el-table-column
+ prop="createTime"
+ label="鍏ュ簱鏃堕棿"
+ width="140"
+ show-overflow-tooltip
+ sortable
+ align="center"
+ ></el-table-column>
+
<el-table-column label="鎿嶄綔" min-width="200" align="center">
<template slot-scope="scope">
<fTemplate authority="library:set">
- <el-tooltip content="缂栬緫" placement="top" popper-class="atooltip">
+ <el-tooltip
+ content="缂栬緫"
+ placement="top"
+ popper-class="atooltip"
+ >
<span
- class="iconfont iconbianji iconStyle1"
- style="font-size:15px;"
+ class="iconfont iconbianjixinxi-09"
+ style="font-size: 24px; cursor: pointer"
@click="handleClick(scope.row)"
></span>
</el-tooltip>
</fTemplate>
- <el-tooltip content="鏌ユ壘姝や汉" placement="top" popper-class="atooltip">
- <span class="iconfont iconsousuoren iconStyle1" @click="tosearch(scope.row)"></span>
- </el-tooltip>
- <fTemplate authority="library:set">
- <el-tooltip content="澶嶅埗" placement="top" popper-class="atooltip">
+ <el-popover
+ placement="top"
+ trigger="click"
+ popper-class="popper-caozuo1"
+ >
+ <el-tooltip
+ content="鏌ユ壘姝よ溅"
+ placement="top"
+ popper-class="atooltip"
+ >
<span
- class="iconfont iconfuzhi iconStyle1"
- title="澶嶅埗"
- @click="copyClick(scope.row)"
+ class="iconfont iconchazhaociren-09"
+ @click="tosearch(scope.row)"
></span>
</el-tooltip>
- </fTemplate>
- <fTemplate authority="library:set">
- <el-tooltip content="绉诲姩" placement="top" popper-class="atooltip">
- <span
- class="iconfont iconyidongzhi iconStyle1"
- style="font-size:15px;"
- title="绉诲姩"
- @click="moveClick(scope.row)"
- ></span>
- </el-tooltip>
- </fTemplate>
- <fTemplate authority="library:set">
- <el-tooltip content="鍒犻櫎" placement="top" popper-class="atooltip">
- <span
- class="iconfont iconshanchu iconStyle1"
- style="color:#E74C3C;"
- @click="deleteThis(scope.row.id)"
- title="鍒犻櫎"
- ></span>
- </el-tooltip>
- </fTemplate>
+ <fTemplate authority="library:set">
+ <el-tooltip
+ content="澶嶅埗"
+ placement="top"
+ popper-class="atooltip"
+ >
+ <span
+ class="iconfont iconfuzhi-09"
+ title="澶嶅埗"
+ @click="copyClick(scope.row)"
+ ></span>
+ </el-tooltip>
+ </fTemplate>
+ <fTemplate authority="library:set">
+ <el-tooltip
+ content="绉诲姩"
+ placement="top"
+ popper-class="atooltip"
+ >
+ <span
+ class="iconfont iconyidong-09"
+ title="绉诲姩"
+ @click="moveClick(scope.row)"
+ ></span>
+ </el-tooltip>
+ </fTemplate>
+ <fTemplate authority="library:set">
+ <el-tooltip
+ content="鍒犻櫎"
+ placement="top"
+ popper-class="atooltip"
+ >
+ <span
+ class="iconfont iconshanchu-09"
+ style="color: #e74c3c"
+ @click="askDelete('single', scope.row.id)"
+ title="鍒犻櫎"
+ ></span>
+ </el-tooltip>
+ </fTemplate>
+ <span
+ slot="reference"
+ class="iconfont icongengduocaozuo-09"
+ style="font-size: 24px; cursor: pointer"
+ ></span>
+ </el-popover>
</template>
</el-table-column>
</el-table>
- </div>
- <div class="pt5 pb20" style="height:40px;position:relative">
<el-pagination
@current-change="refrash"
:current-page="BaseManageData.page"
:page-size="BaseManageData.size"
- style="position:absolute;right:10px;bottom:5px"
+ style="margin-top: 10px"
:total="BaseManageData.total"
></el-pagination>
</div>
@@ -342,19 +325,41 @@
>
<div>
<div class="tl">
- <span>涓婁紶鎴愬姛鐨勬暟閲忥細{{uploadResult.successList.length}}</span>
+ <span>涓婁紶鎴愬姛鐨勬暟閲忥細{{ uploadResult.successList.length }}</span>
</div>
<div class="flex-box mt10">
- <span>涓婁紶澶辫触鐨勬暟閲忥細{{uploadResult.failList.length}}</span>
- <div class="ml20" v-for="(i,index) in uploadResult.failList" :key="index">{{i}}</div>
+ <span>涓婁紶澶辫触鐨勬暟閲忥細{{ uploadResult.failList.length }}</span>
+ <div
+ class="ml20"
+ v-for="(i, index) in uploadResult.failList"
+ :key="index"
+ >
+ {{ i }}
+ </div>
</div>
<div class="flex-box mt10">
- <span>鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{uploadResult.multiFaceList.length}}</span>
- <div class="ml20" v-for="(i,index) in uploadResult.multiFaceList" :key="index">{{i}}</div>
+ <span
+ >鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{
+ uploadResult.multiFaceList.length
+ }}</span
+ >
+ <div
+ class="ml20"
+ v-for="(i, index) in uploadResult.multiFaceList"
+ :key="index"
+ >
+ {{ i }}
+ </div>
</div>
<div class="flex-box mt10">
- <span>涓嶅惈浜鸿劯鐨勫浘鐗囨暟閲忥細{{uploadResult.noFaceList.length}}</span>
- <div class="ml20" v-for="(i,index) in uploadResult.noFaceList" :key="index">{{i}}</div>
+ <span>涓嶅惈浜鸿劯鐨勫浘鐗囨暟閲忥細{{ uploadResult.noFaceList.length }}</span>
+ <div
+ class="ml20"
+ v-for="(i, index) in uploadResult.noFaceList"
+ :key="index"
+ >
+ {{ i }}
+ </div>
</div>
</div>
</el-dialog>
@@ -364,8 +369,7 @@
:visible.sync="copyVisiabled"
:append-to-body="true"
okText="淇濆瓨"
- width="35%"
- class="copy"
+ custom-class="copy-dialog"
cancelText="鍙栨秷"
>
<div class="addToBase1">
@@ -374,13 +378,21 @@
<p>榛戝悕鍗� ></p>
</div>
<div class="baseList">
- <el-checkbox-group v-model="BaseManageData.selectBlacks" @change="blackAngWhite">
- <div class="base" v-for="(item, index) in BaseManageData.blackList" :key="index">
+ <el-checkbox-group
+ v-model="BaseManageData.selectBlacks"
+ @change="blackAngWhite"
+ >
+ <div
+ class="base"
+ v-for="(item, index) in BaseManageData.blackList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
@@ -390,13 +402,21 @@
<p>鐧藉悕鍗� ></p>
</div>
<div class="baseList">
- <el-checkbox-group v-model="BaseManageData.selectWhites" @change="blackAngWhite">
- <div class="base" v-for="(item, index) in BaseManageData.whiteList" :key="index">
+ <el-checkbox-group
+ v-model="BaseManageData.selectWhites"
+ @change="blackAngWhite"
+ >
+ <div
+ class="base"
+ v-for="(item, index) in BaseManageData.whiteList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
@@ -404,7 +424,9 @@
</div>
<div slot="footer" class="dialog-footer">
<el-button size="small" @click="copyClose" type="info">鍙� 娑�</el-button>
- <el-button size="small" type="primary" @click="copySubmit()">纭� 瀹�</el-button>
+ <el-button size="small" type="primary" @click="copySubmit()"
+ >纭� 瀹�</el-button
+ >
</div>
</el-dialog>
@@ -413,8 +435,7 @@
:visible.sync="moveVisiabled"
:append-to-body="true"
okText="淇濆瓨"
- class="move"
- width="35%"
+ custom-class="copy-dialog"
cancelText="鍙栨秷"
>
<div class="addToBase1">
@@ -428,12 +449,17 @@
@change="blackAngWhite"
:max="1"
>
- <div class="base" v-for="(item, index) in BaseManageData.blackList" :key="index">
+ <div
+ class="base"
+ v-for="(item, index) in BaseManageData.blackList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
@@ -448,12 +474,17 @@
@change="blackAngWhite"
:max="1"
>
- <div class="base" v-for="(item, index) in BaseManageData.whiteList" :key="index">
+ <div
+ class="base"
+ v-for="(item, index) in BaseManageData.whiteList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
@@ -461,43 +492,306 @@
</div>
<div slot="footer" class="dialog-footer">
<el-button size="small" @click="moveClose" type="info">鍙� 娑�</el-button>
- <el-button size="small" type="primary" @click="moveSubmit()">纭� 瀹�</el-button>
+ <el-button size="small" type="primary" @click="moveSubmit()"
+ >纭� 瀹�</el-button
+ >
</div>
</el-dialog>
+
+ <el-dialog
+ :visible.sync="askDeleteShow"
+ :center="true"
+ custom-class="del-dialog"
+ >
+ <div>
+ <div class="suc-icon">
+ <i class="iconfont icongantanhao1"></i>
+ </div>
+ <div class="tt">{{ delText[0] }}</div>
+ <div class="flex-box">
+ <span>{{ delText[1] }}</span>
+ </div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="askDeleteShow = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="handleDel" :loading="delBtnLoading"
+ >纭� 瀹�</el-button
+ >
+ </span>
+ </el-dialog>
+
+ <el-drawer
+ title="杞﹁締淇℃伅"
+ :modal="false"
+ :destroy-on-close="true"
+ custom-class="add-car"
+ :visible.sync="addDrawer"
+ :direction="direction"
+ :before-close="handleClose1"
+ >
+ <div class="uploadLine">
+ <div class="car-picture">
+ <div class="car-text">涓婁紶杞﹁締鐓х墖</div>
+ <el-upload
+ action
+ :http-request="uploadCar"
+ accept="image/*"
+ list-type="picture-card"
+ :file-list="form.carUrls"
+ :before-remove="handleRemoveCarPic"
+ >
+ <i class="el-icon-plus" style="margin-top: 25px"></i>
+ </el-upload>
+ </div>
+ <div class="person-picture">
+ <div class="car-text">涓婁紶杞︿富鐓х墖</div>
+ <el-upload
+ action
+ :http-request="uploadPerson"
+ list-type="picture-card"
+ accept="image/*"
+ :limit="1"
+ :file-list="form.faceUrl"
+ :on-remove="handleRemoveFacePic"
+ >
+ <i class="el-icon-plus" style="margin-top: 25px"></i>
+ </el-upload>
+ </div>
+ </div>
+ <el-form
+ ref="formForCar"
+ :model="form"
+ label-width="80px"
+ style="margin-top: 20px; margin-bottom: 30px"
+ :rule="carRules"
+ >
+ <el-form-item label="杞︾墝鍙�" prop="carNo">
+ <el-input
+ placeholder="璇疯緭鍏ヨ溅鐗屽彿"
+ v-model="form.carNo"
+ class="inputWidth"
+ ></el-input>
+ </el-form-item>
+ <el-form-item label="杞﹁締绫诲瀷" prop="carType">
+ <el-select
+ v-model="form.carType"
+ placeholder="璇烽�夋嫨杞﹁締绫诲瀷"
+ class="inputWidth"
+ >
+ <el-option
+ v-for="item in VideoPhotoData.dictionary.CARTYPE"
+ :key="item.value"
+ :label="item.name"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="杞﹁締鍝佺墝" prop="carBrand">
+ <el-select
+ v-model="form.carBrand"
+ placeholder="璇烽�夋嫨杞﹁締鍝佺墝"
+ class="inputWidth"
+ >
+ <el-option
+ v-for="item in VideoPhotoData.dictionary.BRAND"
+ :key="item.value"
+ :label="item.name"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="杞﹁韩棰滆壊" prop="carColor">
+ <el-select
+ v-model="form.carColor"
+ placeholder="璇烽�夋嫨杞﹁韩棰滆壊"
+ class="inputWidth"
+ >
+ <el-option
+ v-for="item in VideoPhotoData.dictionary.nColor"
+ :key="item.value"
+ :label="item.name"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="杞︿富濮撳悕" prop="personName">
+ <el-input v-model="form.personName" class="inputWidth"></el-input>
+ </el-form-item>
+ <el-form-item label="杞︿富鎬у埆" prop="sex">
+ <el-radio-group v-model="form.sex">
+ <el-radio label="鐢�"></el-radio>
+ <el-radio label="濂�"></el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item label="韬唤璇佸彿" prop="idCard">
+ <el-input v-model="form.idCard" class="inputWidth"></el-input>
+ </el-form-item>
+ <el-form-item label="鎵嬫満鍙�" prop="phoneNum">
+ <el-input v-model="form.phoneNum" class="inputWidth"></el-input>
+ </el-form-item>
+ <el-form-item label="鍏朵粬" prop="reserved">
+ <el-input v-model="form.reserved" class="inputWidth"></el-input>
+ </el-form-item>
+ </el-form>
+ <div class="dialog-footer">
+ <el-button
+ size="small"
+ class="sure-btn"
+ type="primary"
+ @click="submitCar"
+ >纭� 瀹�</el-button
+ >
+ <el-button
+ size="small"
+ class="cancel-btn"
+ @click="resetForm"
+ type="info"
+ >鍙� 娑�</el-button
+ >
+ </div>
+ </el-drawer>
+
+ <el-drawer
+ title="涓婁紶杞︾墝"
+ :modal="false"
+ :visible.sync="addBatchDrawer"
+ :direction="direction"
+ custom-class="upload-pai"
+ :before-close="handleClose2"
+ >
+ <div class="drawerSpace">
+ <div class="plateAttach">
+ <el-input
+ type="textarea"
+ :rows="25"
+ v-model="plates"
+ style="width: 90%"
+ placeholder="璇疯緭鍏ヨ溅鐗屽彿"
+ ></el-input>
+ <p>
+ 杞︾墝鍙蜂互閫楀彿鎴栧洖杞﹂敭闅斿紑锛屽崟娆℃渶澶氭敮鎸�100鏉′笂浼狅紝渚嬪锛氫含YAB123,浜現34Y87
+ </p>
+ <!-- <el-button
+ type="primary"
+ @click="platesBatch"
+ style="margin-left: 210px"
+ >淇濆瓨</el-button
+ >
+ <el-button @click="resetForm('ruleForm')">鍙栨秷</el-button> -->
+ </div>
+ </div>
+ <div class="dialog-footer">
+ <el-button
+ size="small"
+ class="sure-btn"
+ type="primary"
+ @click="platesBatch"
+ >淇濆瓨</el-button
+ >
+ <el-button
+ size="small"
+ class="cancel-btn"
+ @click="resetForm('ruleForm')"
+ type="info"
+ >鍙栨秷</el-button
+ >
+ </div>
+ </el-drawer>
</div>
</template>
<script>
-import { addBaseCar, updateBaseCar, deleteBasePersons, plateBatch } from "@/api/baseLibrary";
+import {
+ addBaseCar,
+ updateBaseCar,
+ deleteBasePersons,
+ plateBatch,
+ updateDbTableStatus,
+ deleteDbPersonById,
+ deleteDBtablesById,
+} from "@/api/baseLibrary";
import axios from "axios";
-// import { findByType } from '@/server/video.js'
-import Upload from "./upload";
import fTemplate from "@/components/fTemplate";
-import request from "@/scripts/httpRequest"
+import request from "@/scripts/httpRequest";
export default {
components: {
- // httpImg,
- fTemplate
+ fTemplate,
},
props: {
baseObject: {
- default: () => { },
- type: Object
- }
+ default: () => {},
+ type: Object,
+ },
+ syncType: {
+ type: String,
+ },
+ },
+
+ computed: {
+ isAdmin() {
+ if (
+ sessionStorage.getItem("userInfo") &&
+ sessionStorage.getItem("userInfo") !== ""
+ ) {
+ let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
+ return loginName === "superadmin" || loginName === "basic";
+ }
+ return false;
+ },
+ delText() {
+ switch (this.delType) {
+ case "base":
+ return ["鍒犻櫎搴曞簱", "纭畾鍒犻櫎璇ュ簳搴擄紵"];
+ case "single":
+ return ["鍒犻櫎杞﹁締淇℃伅", "纭畾鍒犻櫎璇ヨ溅杈嗕俊鎭紵"];
+ case "batch":
+ return ["鎵归噺鍒犻櫎", "纭畾鍒犻櫎璇ュ簳搴撻�変腑鐨勮溅杈嗕俊鎭紵"];
+ default:
+ return ["", ""];
+ }
+ },
},
data() {
+ var checkCar = (rule, value, callback) => {
+ debugger;
+ if (!value) {
+ return callback();
+ } else {
+ var result = false;
+ if (value.length === 7) {
+ var express = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9鎸傚璀︽腐婢砞{1}$/;
+ result = express.test(value);
+ } else if (value.length === 8) {
+ var express2 = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{5}[A-Z0-9鎸傚璀︽腐婢砞{1}$/;
+ result = express2.test(value);
+ }
+ if (result) {
+ callback();
+ } else {
+ callback(new Error("璇疯緭鍏ユ纭溅鐗屽彿鐮�"));
+ }
+ return result;
+ }
+ };
return {
dialogFormVisible: false,
addDrawer: false,
plates: "",
addBatchDrawer: false,
- direction: 'rtl',
- dialogImageUrl: '',
- fileList: [{ name: "fasjido.jpg", url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg" }, { name: "fasjido.jpg", url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg" }],
- provinces: [{ name: '浜�', value: 1 }, { name: '娲�', value: 2 }, { name: '鍐�', value: 3 }],
+ direction: "rtl",
+ dialogImageUrl: "",
+ fileList: [
+ {
+ name: "fasjido.jpg",
+ url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg",
+ },
+ {
+ name: "fasjido.jpg",
+ url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg",
+ },
+ ],
copyVisiabled: false,
moveVisiabled: false,
buttonAuthority: sessionStorage.getItem("buttonAuthoritys") || [],
- searchName: "",
current: 1,
compare: false,
pageSize: 10,
@@ -516,7 +810,7 @@
idCard: "",
phoneNum: "",
monitorLevel: "one",
- carUrls: [], //{url:"/httpImage/192.168.20.10:6701/818,56d0122c44f069"},{url:"/httpImage/192.168.20.10:6701/818,56d0122c44f069"}
+ carUrls: [],
faceUrl: [],
faceFeature: "",
carPicUrls: "",
@@ -526,647 +820,37 @@
carBrand: "0",
carNo: "",
enable: 0,
- reserved: ""
+ reserved: "",
},
- rules: {
- picDesc: [
- { required: true, message: "璇疯緭鍏ョ収鐗囨爣璇�", trigger: "change" }
+ carRules: {
+ carNo: [
+ { required: true, message: "璇疯緭鍏ユ椿鍔ㄥ悕绉�", trigger: "blur" },
+ // { validator: checkCar, trigger: 'blur' }
],
- sex: [{ required: true, message: "璇峰嬀閫夋�у埆", trigger: "change" }],
- monitorLevel: [
- { required: true, message: "璇烽�夋嫨浜哄憳绛夌骇", trigger: "change" }
- ]
},
tableData: [],
- tableHeight: window.innerHeight - 320,
- multipleSelection: [],
- peoperLevel: [],
oldWidth: "",
oldHeight: "",
- // 涓婁紶鍚庣殑寮规鏄剧ず
+ askDeleteShow: false,
+ delType: "",
+ toDeleteId: "",
dialogVisible: false,
- // 鎵归噺涓婁紶鍚庣殑杩斿洖缁撴灉
- uploadResult: { failList: [], successList: [], multiFaceList: [], noFaceList: [] }
+ uploadResult: {
+ failList: [],
+ successList: [],
+ multiFaceList: [],
+ noFaceList: [],
+ },
+ delBtnLoading: false,
};
},
- computed: {
- isAdmin() {
- if (
- sessionStorage.getItem('userInfo') &&
- sessionStorage.getItem('userInfo') !== ''
- ) {
- let loginName = JSON.parse(sessionStorage.getItem('userInfo')).username
- return (
- loginName === 'superadmin' || loginName === 'basic'
- )
- }
- return false;
- }
- },
- methods: {
- handleRemoveCarPic(file, fileList) {
- console.log("鍒犻櫎鏂囦欢", file, fileList);
- var index = fileList.findIndex(item => {
- if (item.uid == file.uid) {
- return true
- }
- })
- console.log("鍒犻櫎鐨勭储寮�", index)
- this.form.carUrls.splice(index, 1)
- console.log("鍒犻櫎鍚庣殑fileList:", this.fileList)
+ watch: {
+ "BaseManageData.selectBlacks": function (value) {
+ this.blackAngWhite();
},
- handleRemoveFacePic(file, fileList) {
- this.form.faceUrl.splice(0, 1)
- console.log("鍒犻櫎鍚庣殑faceUrl:", this.fileList)
+ "BaseManageData.selectWhites": function (value) {
+ this.blackAngWhite();
},
- beforeUoload() {
-
- },
- handlePictureCardPreview(file) {
- this.dialogImageUrl = file.url;
- this.dialogVisible = true;
- },
- async uploadCar(param) {
- const fd = new FormData()
- console.log("鏂囦欢鍙傛暟锛�", param)
- fd.append('file', param.file)
- fd.append('picType', '0')
- console.log("鍙傛暟锛�", fd)
- let res = await request({
- method: 'post',
- url: `/data/api-v/dbperson/fileupload`,
- data: fd
- })
- console.log("鍥剧墖涓婁紶缁撴灉锛�", res.success)
- if (res.success) {
- this.form.carUrls.push({ url: "/httpImage/" + res.data.picUrl })
- console.log("carUrl:", this.form.carUrls)
- }
- },
- async uploadPerson(param) {
- const fd = new FormData()
- fd.append('file', param.file)
- fd.append('picType', '1')
- let res = await request({
- method: 'post',
- url: `/data/api-v/dbperson/fileupload`,
- data: fd
- })
- if (res.success) {
- this.form.faceUrl.push({ url: "/httpImage/" + res.data.picUrl })
- this.form.faceFeature = res.data.faceFeature
- console.log("faceUrl:", this.form.faceUrl)
- }
- },
- addCar() {
- this.addDrawer = true
- },
- addBatch() {
- this.addBatchDrawer = true
- },
- resetForm() {
-
- },
- handleClose1(done) {
- this.form = {
- id: "",
- sex: "鐢�",
- name: "",
- tableId: "",
- picDesc: "",
- idCard: "",
- phoneNum: "",
- monitorLevel: "one",
- carUrls: [], //{url:"/httpImage/192.168.20.10:6701/818,56d0122c44f069"},{url:"/httpImage/192.168.20.10:6701/818,56d0122c44f069"}
- faceUrl: [],
- faceFeature: "",
- carPicUrls: "",
- personPicUrl: "",
- carColor: "0",
- carType: "0",
- carBrand: "0",
- carNo: "",
- enable: 0,
- reserved: ""
- },
- done()
- // this.$confirm('纭鍏抽棴锛�')
- // .then(_ => {
- // done();
- // })
- // .catch(_ => {});
- },
- handleClose2(done) {
- done()
- // this.$confirm('纭鍏抽棴锛�')
- // .then(_ => {
- // done();
- // })
- // .catch(_ => {});
- },
- isShow(authority) {
- if (this.isAdmin) {
- return true
- } else if (
- this.buttonAuthority.indexOf(',' + authority + ',') > -1
- ) {
- return true
- } else {
- return false
- }
- },
- toggleSelection(rows) {
- if (rows) {
- rows.forEach(row => {
- this.$refs.multipleTable.toggleRowSelection(row);
- });
- } else {
- this.$refs.multipleTable.clearSelection();
- }
- },
- deleteThis(id) {
- let token =
- sessionStorage.getItem("loginedInfo") &&
- JSON.parse(sessionStorage.getItem("loginedInfo")).access_token;
- this.$confirm("鎻愮ず锛氱‘瀹氬垹闄よ搴曞簱浜哄憳锛�", {
- center: true,
- cancelButtonClass: "comfirm-class-cancle",
- confirmButtonClass: "comfirm-class-sure"
- })
- .then(_ => {
- fetch(`/data/api-v/dbperson/deleteDbPersonById/${id}`, {
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- Authorization: token
- }
- })
- .then(res => {
- return res.json();
- })
- .then(data => {
- // console.log(data.data);
- if (data.success) {
- this.$notify({
- type: "success",
- message: "璇ヤ汉鍛樺垹闄ゆ垚鍔燂紒"
- });
- }
- this.getCarList();
- })
- .catch(err => {
- console.log(err);
- });
- })
- .catch(_ => { });
- },
- sayHello() {
- console.log("hello");
- },
- getUploadResult(result) {
- console.log(result, "涓婁紶鐨勮繑鍥�");
- this.uploadResult = result.data;
- this.dialogVisible = true;
- this.getCarList();
- },
- async getCarList() {
- // console.log("鎵ц浜嗗埛鏂板嚱鏁�", this.BaseManageData.syncTables[0]);
- if (this.baseObject.id && this.baseObject.id !== undefined) {
- // console.log("搴曞簱id", this.baseObject.id);
- this.BaseManageData.tableId = this.baseObject.id;
- // this.BaseManageData.queryPersonList();
- this.setLoadSearch(this.BaseManageData.queryPersonList())
- }
- },
- changeDialog(data) {
- data.erFileList.map((item, index) => {
- this.$notify({
- type: "error",
- message: item.errorMsg.message
- });
- });
- },
- handleClose() {
- //this.getCarList();
- this.dialogFormVisible = false;
- },
- handleSelectionChange(val) {
- this.selectedRowKeys = val;
- },
- refrash(current, pageSize) {
- this.current = current;
- this.BaseManageData.page = current;
- this.getCarList();
- },
- handleClick(row) {
- this.form = row;
- // 杩欏潡鍎垮悗鍙扮殑瀛楀吀value鍊兼湁闂锛岄渶瑕佸墠绔潵鍥炶浆
- this.form.carColor += ""
- this.form.carType += ""
- this.form.carBrand += ""
- console.log("this.form", this.form)
- this.addDrawer = true;
- },
- async submit() {
- this.$refs["formForEdit"].validate(async valid => {
- // console.log("閫氳繃楠岃瘉", valid);
- if (valid) {
- let { ...json } = this.form;
- delete (json["compareScore"])
- // console.log("淇敼鐨勫弬鏁帮細", json);
- let res = await updateBasePerson(json);
- // console.log("淇濆瓨浜�", res);
- if (res.success) {
- this.$notify({
- type: "success",
- message: "浜哄憳淇敼鎴愬姛锛�"
- });
- this.dialogFormVisible = false;
- } else {
- this.$notify({
- type: "error",
- message: "浜哄憳淇敼澶辫触锛岃閲嶈瘯锛侊紒"
- });
- }
- } else {
- return false;
- }
- });
- },
- confirm() {
- this.$confirm({
- title: "Confirm",
- content: "Bla bla ...",
- okText: "纭",
- cancelText: "鍙栨秷"
- });
- },
- async enable(item) {
- let res = await updateBasePerson({
- id: item.id,
- enable: item.enable,
- sex: item.sex,
- personName: item.personName,
- picDesc: item.picDesc,
- idCard: item.idCard,
- phoneNum: item.phoneNum,
- monitorLevel: item.monitorLevel,
- personPicUrl: item.personPicUrl,
- reserved: item.reserved
- });
- if (res.success === true) {
- this.$notify({
- type: "success",
- message: "搴曞簱浜哄憳鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒"
- });
- } else {
- this.$notify({
- type: "error",
- message: "搴曞簱浜哄憳鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒"
- });
- }
- },
- handleSearch() {
- this.getCarList();
- },
- searchImg() {
- this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart();
- },
- haveScore(row) {
- if (row.compareScore && row.compareScore !== "") {
- return true
- } else {
- return false
- }
- },
- async searchImgList(faceUrl, threshold) {
- // console.log("鎼滃浘鍙傛暟", faceUrl, threshold);
- let json = {
- tableId: this.baseObject.id,
- page: this.current,
- size: this.pageSize,
- faceUrl: faceUrl,
- threshold: threshold,
- orderType: this.orderType,
- orderName: this.orderName
- };
- let res = await getPersonByPhoto(json);
- // console.log("鍒楄〃鏌ヨ", json);
- this.tableData = res.data.datalist;
- this.total = res.data.total;
- this.compare = true;
- },
- updateThreshold() { },
- async updateFace(param) {
- const fd = new FormData();
- fd.append("file", param.file);
- fd.append("id", this.form.id);
- // console.log("鎹㈣劯浜嗗悧", fd);
- let res = await axios({
- method: "post",
- url: `/data/api-v/dbperson/updateFace`,
- headers: {
- 'Authorization': sessionStorage.getItem('loginedInfo') && JSON.parse(sessionStorage.getItem('loginedInfo')).access_token
- },
- data: fd
- });
- if (res.data.success) {
- this.form.personPicUrl = res.data.data.personPicUrl;
- this.form.faceFeature = res.data.data.faceFeature;
- }
- },
- uploadSuccess() {
- console.log("鎹㈣劯鎴愬姛浜�");
- },
- uploadError() {
- console.log("鎹㈣劯澶辫触浜�");
- },
- deleteBatch() {
- // console.log('瑕佸垹闄ょ殑', this.selectedRowKeys.length)
- if (this.selectedRowKeys.length === 0) {
- this.$notify({
- type: "warning",
- message: "璇烽�夋嫨瑕佸垹闄ょ殑浜哄憳"
- });
- } else {
- this.$confirm("鎻愮ず锛氱‘瀹氬垹闄よ搴曞簱閫変腑浜哄憳锛�", {
- center: true,
- cancelButtonClass: "comfirm-class-cancle",
- confirmButtonClass: "comfirm-class-sure"
- }).then(async _ => {
- let ids = [];
- this.selectedRowKeys.map((item, index) => {
- ids.push(item.id);
- });
- // console.log('鎵归噺鍒犻櫎鏁扮粍', ids)
- let res = await deleteBasePersons(ids);
- // console.log(res, '鎵归噺鍒犻櫎缁撴灉')
- if (res.success) {
- this.$notify({
- type: "success",
- message: "鍒犻櫎鎴愬姛锛�"
- });
- this.getCarList();
- } else {
- this.$notify({
- type: "error",
- message: "鍒犻櫎澶辫触锛�"
- });
- }
- });
- }
- },
- async init() {
- await this.BaseManageData.querySyncTables();
- await this.BaseManageData.queryLocalTables();
- if (this.baseObject.id && this.baseObject.id !== undefined) {
- // console.log("one;", this.baseObject.id);
- } else if (
- this.BaseManageData.syncTables[0].id &&
- this.BaseManageData.syncTables[0].id !== undefined
- ) {
- this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id;
- this.BaseManageData.queryPersonList();
- } else {
- this.BaseManageData.tableId = this.BaseManageData.localTables[0].id;
- this.BaseManageData.queryPersonList();
- }
- },
- handleRowStyle({ row, rowIndex }) {
- // console.log(row, rowIndex, "handleRowStyle");
- if (rowIndex === 0) {
- return "background:#222222;";
- }
- },
- blackAngWhite() {
- if (this.BaseManageData.selectBlacks.length > 0) {
- for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
- //this.VideoPhotoData.whiteList[i].disabled = true
- this.$set(this.BaseManageData.whiteList[i], 'disabled', true)
- }
- }
- if (this.BaseManageData.selectBlacks.length == 0) {
- for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
- //this.VideoPhotoData.whiteList[i].disabled = false
- this.$set(this.BaseManageData.whiteList[i], 'disabled', false)
- }
- }
- if (this.BaseManageData.selectWhites.length > 0) {
- for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
- // this.VideoPhotoData.blackList[i].disabled = true
- this.$set(this.BaseManageData.blackList[i], 'disabled', true)
- }
- }
- if (this.BaseManageData.selectWhites.length == 0) {
- for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
- //this.VideoPhotoData.blackList[i].disabled = false
- this.$set(this.BaseManageData.blackList[i], 'disabled', false)
- }
- }
- },
- tosearch(item) {
- // console.log("璺宠浆鍦板潃", item)
- var curWwwPath = window.document.location.href;
- var pathname = window.document.location.pathname;
- var pos = curWwwPath.indexOf(pathname);
- var localhostPath = curWwwPath.substring(0, pos); //ip+port
- var href = localhostPath + "/Layout/Searching"
- let captureId = item.id == "" ? item.personId : item.id
- var url = item.personPicUrl ? item.personPicUrl : item.personPicUrl
- // console.log("璺宠浆鍦板潃",href,"url",url)
- var compType = 0
- window.open(href + '?showType=findByPic&targetId=' + captureId + '&picSmUrl=' + url + '&compType=' + compType)
- },
- async platesBatch() {
- var temp = this.plates.split(/[\n,]/g);
- var reg = /[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块]{1}[A-Z]{1}[A-Z0-9]{5,6}/;
- for (let i = 0; i < temp.length; i++) {
- if (temp[i] == '') {
- temp.splice(i, 1)
- i--
- } else {
- if (!reg.test(temp[i])) {
- this.$notify({
- type: "error",
- message: "杞︾墝鍙�:" + temp[i] + "涓嶇鍚堣鍒欙紝璇锋鏌�!"
- })
- return
- }
- }
- }
- if (temp.length == 0) {
- this.$notify({
- type: 'error',
- message: '璇疯緭鍏ヨ溅鐗屽彿',
- })
- return
- }
- let param = {
- tableId: this.baseObject.id,
- carNos: temp
- }
- let resp = await plateBatch(param)
- console.log("resp:", resp)
- if (resp && resp.success) {
- // 鍒锋柊car鍒楄〃
- this.$notify({
- type: "success",
- message: resp.msg
- });
- this.getCarList();
- this.addBatchDrawer = false;
- } else {
- this.$notify({
- type: "error",
- message: resp.msg
- });
- }
-
- },
- async submitCar() {
- this.$refs["formForCar"].validate(async valid => {
- // console.log("閫氳繃楠岃瘉", valid);
- if (valid) {
- let { ...json } = this.form;
-
- for (let index in json.carUrls) {
- if (index == 0) {
- json.carPicUrls += json.carUrls[index].url.substring(11)
- } else {
- json.carPicUrls += ";" + json.carUrls[index].url.substring(11)
- }
- }
- json.carColor = parseInt(json.carColor)
- json.carType = parseInt(json.carType)
- json.carBrand = parseInt(json.carBrand)
- json.personPicUrl = json.faceUrl[0].url.substring(11)
- json.tableId = this.baseObject.id
- console.log("琛ㄥ崟鐨刯son鍖栵細", json)
- delete (json["compareScore"])
- // console.log("淇敼鐨勫弬鏁帮細", json);
- let res
- if (json.id == "") {
- res = await addBaseCar(json);
- } else {
- res = await updateBaseCar(json);
- }
- console.log("淇濆瓨浜�", res);
- if (res.success) {
- this.$notify({
- type: "success",
- message: res.data.msg
- });
- this.getCarList();
- this.addDrawer = false;
- } else {
- this.$notify({
- type: "error",
- message: res.data.msg
- });
- }
- } else {
- return false;
- }
- });
- },
- copyClick(row) {
- this.BaseManageData.personId = row.id
- this.copyVisiabled = true
- },
- moveClick(row) {
- this.BaseManageData.personId = row.id
- this.moveVisiabled = true
- },
- copyClose() {
- this.copyVisiabled = false
- this.BaseManageData.personId = ""
- this.BaseManageData.selectBlacks = []
- this.BaseManageData.selectWhites = []
- },
- moveClose() {
- this.moveVisiabled = false
- this.BaseManageData.personId = ""
- this.BaseManageData.selectBlacks = []
- this.BaseManageData.selectWhites = []
- },
- copySubmit() {
- if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
- this.$notify({
- title: "娉ㄦ剰",
- message: "璇烽�夋嫨瑕佸鍒跺埌鐨勫簱",
- type: "warning"
- })
- return
- }
- var resp = this.BaseManageData.copyTo()
- resp.then(data => {
- if (data.success) {
- this.$notify({
- title: "鎴愬姛",
- message: data.data,
- type: "success"
- })
- } else {
- this.$notify({
- title: "澶辫触",
- message: data.data,
- type: "error"
- })
- }
- })
- this.copyVisiabled = false
- this.BaseManageData.personId = ""
- this.BaseManageData.selectBlacks = []
- this.BaseManageData.selectWhites = []
- },
- getDataName: (dataList, key) => {
- let name = ""
- if (Array.isArray(dataList) && dataList.length > 0) {
- for (let i = 0; i < dataList.length; i++) {
- if (dataList[i].value == key) {
- name = dataList[i].name
- }
- }
- }
- return name
- },
- moveSubmit() {
- if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
- this.$notify({
- title: "娉ㄦ剰",
- message: "璇烽�夋嫨瑕佺Щ鍔ㄥ埌鐨勫簱",
- type: "warning"
- })
- return
- }
- var resp = this.BaseManageData.moveTo()
- resp.then(data => {
- if (data.success) {
- this.$notify({
- title: "鎴愬姛",
- message: data.data,
- type: "success"
- })
- } else {
- this.$notify({
- title: "澶辫触",
- message: data.data,
- type: "error"
- })
- }
- this.moveVisiabled = false
- this.BaseManageData.personId = ""
- this.BaseManageData.selectBlacks = []
- this.BaseManageData.selectWhites = []
- this.BaseManageData.queryPersonList()
- })
- },
- setLoadSearch(fn) {
- this.AuthData.setLoading("multipleTable", this);
- fn.then(_ => {
- this.AuthData.closeLoad();
- })
- }
},
mounted() {
this.getCarList();
@@ -1178,7 +862,6 @@
window.onresize = () => {
let width = document.body.clientWidth;
let height = document.body.clientHeight;
- // console.log(width, height, "绐楀彛鍙樺寲瀵规瘮", this.oldWidth, this.oldHeight);
if (width !== this.oldWidth && width < 1750) {
}
this.$nextTick(() => {
@@ -1192,22 +875,618 @@
beforeDestroy() {
window.onresize = null;
},
- watch: {
- baseObject: {
- handler(newVal, oldVal) {
- // console.log(newVal, "鐩戝惉baseObject");
- this.BaseManageData.cleanData();
+ methods: {
+ checkCarNo(value) {
+ var result = false;
+ if (value.length === 7) {
+ var express = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9鎸傚璀︽腐婢砞{1}$/;
+ result = express.test(value);
+ } else if (value.length === 8) {
+ var express2 = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{5}[A-Z0-9鎸傚璀︽腐婢砞{1}$/;
+ result = express2.test(value);
+ }
+ return result;
+ },
+ async handleDel() {
+ this.delBtnLoading = true;
+ if (this.delType == "single") {
+ await this.deleteThis();
+ } else if (this.delType == "base") {
+ await this.deleteBase();
+ } else if (this.delType == "batch") {
+ await this.deleteBatch();
+ }
+
+ this.delBtnLoading = false;
+ this.askDeleteShow = false;
+ },
+ deleteBase() {
+ deleteDBtablesById({ id: this.baseObject.id })
+ .then((res) => {
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "搴曞簱鍒犻櫎鎴愬姛锛�",
+ });
+ }
+ this.askDeleteShow = false;
+ this.$emit("onDelete");
+ })
+ .catch((err) => {
+ this.$notify({
+ type: "error",
+ message: err,
+ });
+ });
+ },
+ handleRemoveCarPic(file, fileList) {
+ var index = fileList.findIndex((item) => {
+ if (item.uid == file.uid) {
+ return true;
+ }
+ });
+ this.form.carUrls.splice(index, 1);
+ },
+ isDisabled(item) {
+ var flag = true;
+ if (this.isShow("library:set")) {
+ if (item.endTime == "") {
+ flag = false;
+ } else {
+ flag = !this.$moment(new Date()).isBetween(
+ item.startTime,
+ item.endTime
+ );
+ }
+ }
+ return flag;
+ },
+ handleRemoveFacePic(file, fileList) {
+ this.form.faceUrl.splice(0, 1);
+ },
+ edit() {
+ this.$emit("changeShow", this.baseObject, this.syncType);
+ },
+ // beforeUoload() {},
+ handlePictureCardPreview(file) {
+ this.dialogImageUrl = file.url;
+ this.dialogVisible = true;
+ },
+ async uploadCar(param) {
+ const fd = new FormData();
+ fd.append("file", param.file);
+ fd.append("picType", "0");
+ let res = await request({
+ method: "post",
+ url: `/data/api-v/dbperson/fileupload`,
+ data: fd,
+ });
+ if (res.success) {
+ debugger;
+ this.form.carUrls.push({ url: "/httpImage/" + res.data.picUrl });
+ }
+ },
+ async uploadPerson(param) {
+ const fd = new FormData();
+ fd.append("file", param.file);
+ fd.append("picType", "1");
+ let res = await request({
+ method: "post",
+ url: `/data/api-v/dbperson/fileupload`,
+ data: fd,
+ });
+ if (res.success) {
+ this.form.faceUrl.push({ url: "/httpImage/" + res.data.picUrl });
+ this.form.faceFeature = res.data.faceFeature;
+ }
+ },
+ addCar() {
+ this.addDrawer = true;
+ },
+ addBatch() {
+ this.addBatchDrawer = true;
+ },
+ resetForm() {},
+ handleClose1(done) {
+ (this.form = {
+ id: "",
+ sex: "鐢�",
+ name: "",
+ tableId: "",
+ picDesc: "",
+ idCard: "",
+ phoneNum: "",
+ monitorLevel: "one",
+ carUrls: [],
+ faceUrl: [],
+ faceFeature: "",
+ carPicUrls: "",
+ personPicUrl: "",
+ carColor: "0",
+ carType: "0",
+ carBrand: "0",
+ carNo: "",
+ enable: 0,
+ reserved: "",
+ }),
+ done();
+ },
+ handleClose2(done) {
+ done();
+ },
+ isShow(authority) {
+ return (
+ this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
+ );
+ },
+ toggleSelection(rows) {
+ if (rows) {
+ rows.forEach((row) => {
+ this.$refs.multipleTable.toggleRowSelection(row);
+ });
+ } else {
+ this.$refs.multipleTable.clearSelection();
+ }
+ },
+ deleteThis() {
+ deleteDbPersonById({ id: this.toDeleteId })
+ .then((data) => {
+ if (data.success) {
+ this.$notify({
+ type: "success",
+ message: "杞﹁締淇℃伅鍒犻櫎鎴愬姛锛�",
+ });
+ }
+ this.getCarList();
+ })
+ .catch((err) => {});
+ },
+ getUploadResult(result) {
+ this.uploadResult = result.data;
+ this.dialogVisible = true;
+ this.getCarList();
+ },
+ getCarList() {
+ if (this.baseObject.id && this.baseObject.id !== undefined) {
+ this.BaseManageData.tableId = this.baseObject.id;
+ this.setLoadSearch(this.BaseManageData.queryPersonList());
+ }
+ },
+ changeDialog(data) {
+ data.erFileList.map((item, index) => {
+ this.$notify({
+ type: "error",
+ message: item.errorMsg.message,
+ });
+ });
+ },
+ handleClose() {
+ this.dialogFormVisible = false;
+ },
+ handleSelectionChange(val) {
+ this.selectedRowKeys = val;
+ },
+ refrash(current, pageSize) {
+ this.current = current;
+ this.BaseManageData.page = current;
+ this.getCarList();
+ },
+ handleClick(row) {
+ this.form = row;
+ // 杩欏潡鍎垮悗鍙扮殑瀛楀吀value鍊兼湁闂锛岄渶瑕佸墠绔潵鍥炶浆
+ this.form.carColor += "";
+ this.form.carType += "";
+ this.form.carBrand += "";
+ this.addDrawer = true;
+ },
+ async submit() {
+ this.$refs["formForEdit"].validate(async (valid) => {
+ if (valid) {
+ let { ...json } = this.form;
+ delete json["compareScore"];
+ let res = await updateBasePerson(json);
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "杞﹁締淇℃伅淇敼鎴愬姛锛�",
+ });
+ this.dialogFormVisible = false;
+ } else {
+ this.$notify({
+ type: "error",
+ message: "杞﹁締淇℃伅淇敼澶辫触锛岃閲嶈瘯锛侊紒",
+ });
+ }
+ } else {
+ return false;
+ }
+ });
+ },
+ confirm() {
+ this.$confirm({
+ title: "Confirm",
+ content: "Bla bla ...",
+ okText: "纭",
+ cancelText: "鍙栨秷",
+ });
+ },
+ async enable(item) {
+ let res = await updateBasePerson({
+ id: item.id,
+ enable: item.enable,
+ sex: item.sex,
+ personName: item.personName,
+ picDesc: item.picDesc,
+ idCard: item.idCard,
+ phoneNum: item.phoneNum,
+ monitorLevel: item.monitorLevel,
+ personPicUrl: item.personPicUrl,
+ reserved: item.reserved,
+ });
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "杞﹁締淇℃伅鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
+ });
+ } else {
+ this.$notify({
+ type: "error",
+ message: "杞﹁締淇℃伅鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
+ });
+ }
+ },
+ handleSearch() {
+ this.getCarList();
+ },
+ searchImg() {
+ this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart();
+ },
+ haveScore(row) {
+ return row.compareScore && row.compareScore !== "";
+ },
+ async setEnable(item) {
+ let res = await updateDbTableStatus({
+ id: item.id,
+ enable: item.enable,
+ });
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "搴曞簱鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
+ });
+ } else {
+ this.$notify({
+ type: "error",
+ message: "搴曞簱鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
+ });
+ }
+ },
+ async searchImgList(faceUrl, threshold) {
+ let json = {
+ tableId: this.baseObject.id,
+ page: this.current,
+ size: this.pageSize,
+ faceUrl: faceUrl,
+ threshold: threshold,
+ orderType: this.orderType,
+ orderName: this.orderName,
+ };
+ let res = await getPersonByPhoto(json);
+ this.tableData = res.data.datalist;
+ this.total = res.data.total;
+ this.compare = true;
+ },
+ // updateThreshold() {},
+ async updateFace(param) {
+ const fd = new FormData();
+ fd.append("file", param.file);
+ fd.append("id", this.form.id);
+ let res = await axios({
+ method: "post",
+ url: `/data/api-v/dbperson/updateFace`,
+ headers: {
+ Authorization:
+ sessionStorage.getItem("loginedInfo") &&
+ JSON.parse(sessionStorage.getItem("loginedInfo")).access_token,
+ },
+ data: fd,
+ });
+ if (res.data.success) {
+ this.form.personPicUrl = res.data.data.personPicUrl;
+ this.form.faceFeature = res.data.data.faceFeature;
+ }
+ },
+ async deleteBatch() {
+ let ids = [];
+ this.selectedRowKeys.map((item, index) => {
+ ids.push(item.id);
+ });
+ let res = await deleteBasePersons({ ids: ids });
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "鍒犻櫎鎴愬姛锛�",
+ });
this.getCarList();
- },
- deep: true
+ } else {
+ this.$notify({
+ type: "error",
+ message: "鍒犻櫎澶辫触锛�",
+ });
+ }
},
- "BaseManageData.selectBlacks": function (value) {
- this.blackAngWhite()
+ async init() {
+ await this.BaseManageData.querySyncTables();
+ await this.BaseManageData.queryLocalTables();
+ if (this.baseObject.id && this.baseObject.id !== undefined) {
+ } else if (
+ this.BaseManageData.syncTables[0].id &&
+ this.BaseManageData.syncTables[0].id !== undefined
+ ) {
+ this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id;
+ this.BaseManageData.queryPersonList();
+ } else {
+ this.BaseManageData.tableId = this.BaseManageData.localTables[0].id;
+ this.BaseManageData.queryPersonList();
+ }
},
- "BaseManageData.selectWhites": function (value) {
- this.blackAngWhite()
+ askDelete(typ, id) {
+ if (typ == "batch") {
+ if (this.selectedRowKeys.length === 0) {
+ this.$notify({
+ type: "warning",
+ message: "璇烽�夋嫨瑕佸垹闄ょ殑杞﹁締淇℃伅",
+ });
+ return;
+ }
+ }
+ this.askDeleteShow = true;
+ this.delType = typ;
+ id && (this.toDeleteId = id);
},
- }
+ blackAngWhite() {
+ if (this.BaseManageData.selectBlacks.length > 0) {
+ for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
+ //this.VideoPhotoData.whiteList[i].disabled = true
+ this.$set(this.BaseManageData.whiteList[i], "disabled", true);
+ }
+ }
+ if (this.BaseManageData.selectBlacks.length == 0) {
+ for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
+ //this.VideoPhotoData.whiteList[i].disabled = false
+ this.$set(this.BaseManageData.whiteList[i], "disabled", false);
+ }
+ }
+ if (this.BaseManageData.selectWhites.length > 0) {
+ for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
+ // this.VideoPhotoData.blackList[i].disabled = true
+ this.$set(this.BaseManageData.blackList[i], "disabled", true);
+ }
+ }
+ if (this.BaseManageData.selectWhites.length == 0) {
+ for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
+ //this.VideoPhotoData.blackList[i].disabled = false
+ this.$set(this.BaseManageData.blackList[i], "disabled", false);
+ }
+ }
+ },
+ tosearch(item) {
+ var curWwwPath = window.document.location.href;
+ var pathname = window.document.location.pathname;
+ var pos = curWwwPath.indexOf(pathname);
+ var localhostPath = curWwwPath.substring(0, pos); //ip+port
+ var href = localhostPath + "/Layout/Searching";
+ let captureId = item.id == "" ? item.personId : item.id;
+ var url = item.personPicUrl ? item.personPicUrl : item.personPicUrl;
+ var compType = 0;
+ window.open(
+ href +
+ "?showType=findByPic&targetId=" +
+ captureId +
+ "&picSmUrl=" +
+ url +
+ "&compType=" +
+ compType
+ );
+ },
+ async platesBatch() {
+ var temp = this.plates.split(/[\n,]/g);
+ var reg = /[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块]{1}[A-Z]{1}[A-Z0-9]{5,6}/;
+ for (let i = 0; i < temp.length; i++) {
+ if (temp[i] == "") {
+ temp.splice(i, 1);
+ i--;
+ } else {
+ if (!reg.test(temp[i])) {
+ this.$notify({
+ type: "error",
+ message: "杞︾墝鍙�:" + temp[i] + "涓嶇鍚堣鍒欙紝璇锋鏌�!",
+ });
+ return;
+ }
+ }
+ }
+ if (temp.length == 0) {
+ this.$notify({
+ type: "error",
+ message: "璇疯緭鍏ヨ溅鐗屽彿",
+ });
+ return;
+ }
+ let param = {
+ tableId: this.baseObject.id,
+ carNos: temp,
+ };
+ let resp = await plateBatch(param);
+ if (resp && resp.success) {
+ // 鍒锋柊car鍒楄〃
+ this.$notify({
+ type: "success",
+ message: resp.msg,
+ });
+ this.getCarList();
+ this.addBatchDrawer = false;
+ } else {
+ this.$notify({
+ type: "error",
+ message: resp.msg,
+ });
+ }
+ },
+ submitCar() {
+ this.$refs["formForCar"].validate(async (valid) => {
+ if (valid) {
+ let { ...json } = this.form;
+ json.carPicUrls = "";
+ for (let index in json.carUrls) {
+ if (index == 0) {
+ json.carPicUrls += json.carUrls[index].url.substring(11);
+ } else {
+ json.carPicUrls += ";" + json.carUrls[index].url.substring(11);
+ }
+ }
+ if (!this.checkCarNo(json.carNo)) {
+ this.$notify({
+ type: "warning",
+ message: "璇疯緭鍏ユ纭殑杞︾墝鍙�",
+ });
+ return;
+ }
+ json.carColor = parseInt(json.carColor);
+ json.carType = parseInt(json.carType);
+ json.carBrand = parseInt(json.carBrand);
+ json.personPicUrl = json.faceUrl[0].url.substring(11);
+ json.tableId = this.baseObject.id;
+ delete json["compareScore"];
+ let res;
+ if (json.id == "") {
+ res = await addBaseCar(json);
+ } else {
+ res = await updateBaseCar(json);
+ }
+ if (res.success) {
+ this.$notify({
+ type: "success",
+ message: "淇濆瓨鎴愬姛",
+ });
+ this.getCarList();
+ this.addDrawer = false;
+ } else {
+ this.$notify({
+ type: "error",
+ message: res.msg,
+ });
+ }
+ } else {
+ return false;
+ }
+ });
+ },
+ copyClick(row) {
+ this.BaseManageData.personId = row.id;
+ this.copyVisiabled = true;
+ },
+ moveClick(row) {
+ this.BaseManageData.personId = row.id;
+ this.moveVisiabled = true;
+ },
+ copyClose() {
+ this.copyVisiabled = false;
+ this.BaseManageData.personId = "";
+ this.BaseManageData.selectBlacks = [];
+ this.BaseManageData.selectWhites = [];
+ },
+ moveClose() {
+ this.moveVisiabled = false;
+ this.BaseManageData.personId = "";
+ this.BaseManageData.selectBlacks = [];
+ this.BaseManageData.selectWhites = [];
+ },
+ copySubmit() {
+ if (
+ this.BaseManageData.selectBlacks.length === 0 &&
+ this.BaseManageData.selectWhites.length === 0
+ ) {
+ this.$notify({
+ title: "娉ㄦ剰",
+ message: "璇烽�夋嫨瑕佸鍒跺埌鐨勫簱",
+ type: "warning",
+ });
+ return;
+ }
+ var resp = this.BaseManageData.copyTo();
+ resp.then((data) => {
+ if (data.success) {
+ this.$notify({
+ title: "鎴愬姛",
+ message: data.data,
+ type: "success",
+ });
+ } else {
+ this.$notify({
+ title: "澶辫触",
+ message: data.data,
+ type: "error",
+ });
+ }
+ });
+ this.copyVisiabled = false;
+ this.BaseManageData.personId = "";
+ this.BaseManageData.selectBlacks = [];
+ this.BaseManageData.selectWhites = [];
+ },
+ getDataName: (dataList, key) => {
+ let name = "";
+ if (Array.isArray(dataList) && dataList.length > 0) {
+ for (let i = 0; i < dataList.length; i++) {
+ if (dataList[i].value == key) {
+ name = dataList[i].name;
+ }
+ }
+ }
+ return name;
+ },
+ moveSubmit() {
+ if (
+ this.BaseManageData.selectBlacks.length === 0 &&
+ this.BaseManageData.selectWhites.length === 0
+ ) {
+ this.$notify({
+ title: "娉ㄦ剰",
+ message: "璇烽�夋嫨瑕佺Щ鍔ㄥ埌鐨勫簱",
+ type: "warning",
+ });
+ return;
+ }
+ var resp = this.BaseManageData.moveTo();
+ resp.then((data) => {
+ if (data.success) {
+ this.$notify({
+ title: "鎴愬姛",
+ message: data.data,
+ type: "success",
+ });
+ } else {
+ this.$notify({
+ title: "澶辫触",
+ message: data.data,
+ type: "error",
+ });
+ }
+ this.moveVisiabled = false;
+ this.BaseManageData.personId = "";
+ this.BaseManageData.selectBlacks = [];
+ this.BaseManageData.selectWhites = [];
+ this.BaseManageData.queryPersonList();
+ });
+ },
+ setLoadSearch(fn) {
+ this.AuthData.setLoading("multipleTable", this);
+ fn.then((_) => {
+ this.AuthData.closeLoad();
+ });
+ },
+ },
};
</script>
<style lang="scss">
@@ -1235,9 +1514,6 @@
max-width: none;
font-size: 14px;
color: #606266;
- thead {
- background: green !important;
- }
}
.avatar-uploader:hover {
.mask1 {
@@ -1246,8 +1522,8 @@
}
.mask1 {
position: absolute;
- width: 150px;
- height: 150px;
+ width: 100px;
+ height: 100px;
background: rgba(0, 0, 0, 0.35);
backdrop-filter: blur(1px) brightness(100%);
text-align: center;
@@ -1256,8 +1532,7 @@
display: none;
}
.table-parent {
- // position: relative;
- height: 90%;
+ height: 100%;
overflow: visible !important;
.picture {
.el-carousel__item {
@@ -1290,16 +1565,72 @@
height: 25px;
}
}
- .el-drawer.ltr,
- .el-drawer.rtl {
- width: 27% !important;
- //height: 90%;
- //top: 9%;
+ .el-drawer.add-car {
+ width: 380px;
.el-drawer__header {
- border-bottom: 2px solid #eee;
- padding-bottom: 10px;
- font-size: 16px;
- margin-bottom: 0px;
+ margin-bottom: 0;
+ padding: 20px;
+ box-shadow: 0px 2px 4px rgb(0 0 0 / 8%);
+ font-size: 14px;
+ }
+ .el-drawer__body {
+ .uploadLine {
+ padding-left: 10px;
+
+ .el-upload-list--picture-card .el-upload-list__item {
+ background-color: #fff;
+ border: 2px solid #d4d6d9;
+ border-radius: 8px;
+ width: 100px;
+ height: 100px;
+ }
+ .el-upload--picture-card {
+ background-color: #fff;
+ border: 2px solid #d4d6d9;
+ border-radius: 8px;
+ width: 100px;
+ height: 100px;
+ line-height: 100px;
+ }
+ .car-text {
+ color: #999999;
+ font-size: 14px;
+ line-height: 20px;
+ text-align: left;
+ margin-bottom: 5px;
+ }
+ .car-picture {
+ margin-bottom: 20px;
+ & > div {
+ display: flex;
+ }
+ }
+ .person-picture {
+ margin-bottom: 20px;
+ & > div {
+ display: flex;
+ }
+ }
+ }
+ .el-select {
+ width: 100%;
+ }
+ .el-radio-group {
+ width: 100%;
+ text-align: left;
+ }
+ .el-form-item {
+ margin-bottom: 18px;
+ }
+ }
+ }
+ .el-drawer.upload-pai {
+ width: 380px;
+ .el-drawer__header {
+ margin-bottom: 0;
+ padding: 20px;
+ box-shadow: 0px 2px 4px rgb(0 0 0 / 8%);
+ font-size: 14px;
}
}
}
@@ -1312,7 +1643,38 @@
.border-tabl {
border: 1px solid #ebeef5;
border-bottom: none;
- // border-bottom: none;
+ height: calc(100% - 100px);
+ overflow: auto;
+ .tableBox {
+ border: none;
+ &::before,
+ &::after {
+ display: none;
+ }
+ .el-table--border .el-table__cell,
+ .el-table__body-wrapper
+ .el-table--border.is-scrolling-left
+ ~ .el-table__fixed {
+ border-right: none;
+ }
+ td {
+ border: none;
+ }
+ }
+ .head-search {
+ .desc {
+ min-width: fit-content;
+ margin-right: 20px;
+ }
+ .right-group {
+ .iconshangchuanchepai-09:hover,
+ .icontianjiacheliang-09:hover {
+ border: 1px solid var(--colorCard);
+ background: var(--colorCard);
+ color: #fff;
+ }
+ }
+ }
}
.el-dialog__header {
padding: 20px 0 10px;
@@ -1332,9 +1694,9 @@
font-size: 14px;
word-break: break-all;
}
-.dialog-footer {
- text-align: center;
-}
+// .dialog-footer {
+// text-align: center;
+// }
.comfirm-class-sure {
background: #f53d3d;
border-radius: 2px;
@@ -1364,164 +1726,154 @@
padding-left: 8px !important;
padding-right: 0px !important;
}
-.addToBase1 {
- width: 98%;
- height: 350px;
- position: relative;
- .topLabel {
- margin-top: 20px;
- height: 40px;
- border-bottom: 1px solid #eee;
- font-family: PingFangSC-Medium;
- font-size: 20px;
- font-weight: 600;
- line-height: 1rem;
- color: #222222;
- text-align: left;
- margin-left: 15px;
+
+// .copy,
+// .move {
+// .el-dialog__body {
+// padding: 0px !important;
+// }
+// }
+
+.el-dialog.copy-dialog {
+ width: 550px;
+ border-radius: 24px;
+ .el-dialog__header {
+ text-align: center;
}
- .items {
- width: 100%;
- height: auto;
- max-height: 35%;
- overflow-y: auto;
- margin: 20px 0px;
- .lable {
- width: 15%;
- margin-top: 10px;
- float: left;
- //font-family: PingFangSC-Medium;
+ .el-dialog__headerbtn .el-dialog__close {
+ color: #999999;
+ font-size: 20px;
+ }
+ .el-dialog__title {
+ line-height: 22px;
+ font-size: 16px;
+ color: #5f5f5f;
+ }
+ .el-dialog__body {
+ padding: 20px 15px;
+ color: #5f5f5f;
+ }
+ .dialog-footer {
+ // width: 315px;
+ .el-button--info {
+ color: #999999;
+ background: #fff;
+ padding: 9px 37px;
font-size: 14px;
- font-weight: 600;
+ border: 1px solid #999999;
+ border-radius: 18px;
+ width: 150px;
}
- .baseList {
- width: 85%;
- height: 100%;
- float: left;
- .base {
- width: calc(33% - 10px);
- padding: 0px 5px;
- line-height: 30px;
- float: left;
+ .el-button--primary {
+ background: var(--colorCard) !important;
+ padding: 9px 37px;
+ color: #fff;
+ border: 1px solidvar(--colorCard) !important;
+ border-radius: 18px;
+ font-size: 14px;
+ width: 150px;
+ }
+ }
+ .addToBase1 {
+ position: relative;
+ .topLabel {
+ margin-top: 20px;
+ height: 40px;
+ border-bottom: 1px solid #eee;
+ font-family: PingFangSC-Medium;
+ font-size: 20px;
+ font-weight: 600;
+ line-height: 1rem;
+ color: #222222;
+ text-align: left;
+ margin-left: 15px;
+ }
+ .items {
+ width: 100%;
+ min-height: 150px;
+ margin-bottom: 10px;
+ .lable {
+ font-size: 16px;
+ font-weight: bold;
text-align: left;
- font-size: 12px !important;
- .el-checkbox {
- width: 100%;
- display: block;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- .el-checkbox__label {
- display: inline !important;
+ margin-bottom: 10px;
+ }
+ .baseList {
+ height: 100%;
+ overflow: auto;
+ .base {
+ width: 152px;
+ padding: 5px 5px 5px 10px;
+ line-height: 30px;
+ box-sizing: border-box;
+ float: left;
+ text-align: left;
+ background: #eff1f5;
+ border-radius: 8px;
+ margin: 0 10px;
+ margin-bottom: 10px;
+ .el-checkbox__input.is-checked .el-checkbox__inner {
+ background-color: var(--colorCard);
+ border-color: var(--colorCard);
}
+ .el-checkbox {
+ width: 100%;
+ display: block;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ .el-checkbox__label {
+ display: inline !important;
+ padding-left: 6px;
+ line-height: 20px;
+ color: #5f5f5f;
+ }
+ }
+ }
+ .white-wrap {
+ background: #ffffff;
+ box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.16);
}
}
}
- }
-}
-.copy,
-.move {
- .el-dialog__body {
- padding: 0px !important;
}
}
.avatar-uploader {
- max-width: 150px;
- min-width: 150px;
- min-height: 152px;
+ max-width: 100px;
+ min-width: 100px;
+ min-height: 100px;
border: 1px solid #eee;
}
-
-.inputWidth {
- width: 270px !important;
-}
-.rightInputWidth {
- max-width: 270px;
-}
-
-.el-drawer.ltr,
-.el-drawer.rtl {
- min-width: 450px;
- width: 25% !important;
- //height: 90%;
- //min-height: 1100px;
- //top: 9%;
- .el-drawer__header {
- border-bottom: 2px solid #eee;
- padding-bottom: 10px;
- font-size: 16px;
- margin-bottom: 0px;
- :focus {
- outline: 0;
+.el-popover.el-popper.popper-caozuo1 {
+ box-shadow: 0px 0px 10px rgb(0 0 0 / 12%);
+ border-radius: 8px;
+ padding: 0;
+ padding-right: 1px;
+ & > span {
+ width: 32px;
+ height: 32px;
+ cursor: pointer;
+ display: inline-block;
+ text-align: center;
+ line-height: 32px;
+ border-radius: 8px;
+ font-size: 24px;
+ .iconfont {
+ font-size: 24px;
+ }
+ .iconshanchu-09 {
+ color: #fe6d68;
}
}
-}
-
-.drawerSpace {
- height: calc(100% - 140px);
- box-sizing: border-box;
- margin-bottom: 30px;
- overflow-y: scroll;
- .uploadLine {
- height: 280px;
-
- .car-picture {
- float: left;
- margin: 15px;
- border: 1px solid #eee;
- width: 280px;
- height: 260px;
- overflow: hidden;
- .el-upload--picture-card {
- margin: 10px;
- width: 110px;
- height: 110px;
- line-height: 35px;
- }
- .el-upload-list--picture-card {
- .el-upload-list__item {
- margin: 10px;
- width: 110px;
- height: 110px;
- img {
- object-fit: contain;
- }
- }
- .el-progress--circle {
- width: 30px !important;
- }
- }
- }
- .person-picture {
- float: left;
- margin-top: 15px;
- width: 120px;
- height: 120px;
- overflow: hidden;
- .el-upload--picture-card {
- width: 110px;
- height: 110px;
- line-height: 35px;
- }
- .el-upload-list__item {
- margin: 10px;
- width: 110px;
- height: 110px;
- img {
- object-fit: contain;
- }
- }
- }
+ & > span:hover {
+ background: var(--colorCard);
+ color: #fff;
}
- .plateAttach {
- width: calc(100% -40px);
- height: calc(100% -40px);
- padding: 20px;
- p {
- margin-top: 20px;
- width: 400px;
- line-height: 20px;
+ & > .del-wrap:hover {
+ background: #fe6d68;
+ .iconshanchu-09 {
+ color: #fff;
}
}
}
--
Gitblit v1.8.0