From 83c7cfa4ecd5d59106b09efff26be43141e38386 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 21 十二月 2023 09:10:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 admin/src/views/business/carEvent.vue |  123 +++++++++++++++++++++++++++++------------
 1 files changed, 87 insertions(+), 36 deletions(-)

diff --git a/admin/src/views/business/carEvent.vue b/admin/src/views/business/carEvent.vue
index 5644f65..aba7510 100644
--- a/admin/src/views/business/carEvent.vue
+++ b/admin/src/views/business/carEvent.vue
@@ -1,49 +1,47 @@
 <template>
-    <TableLayout :permissions="['business:category:query']">
+    <TableLayout :permissions="['business:carevent:query']">
         <!-- 鎼滅储琛ㄥ崟 -->
         <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
             <el-form-item label="杞︾墝鍙�" prop="plateNos">
                 <el-input v-model="searchForm.plateNos" placeholder="璇疯緭鍏ヨ溅鐗屽彿" @keypress.enter.native="search"></el-input>
             </el-form-item>
-            <el-form-item label="濮撳悕/鎵嬫満鍙�" prop="plateNos">
-                <el-input v-model="searchForm.plateNos" placeholder="璇疯緭鍏ュ鍚�/鎵嬫満鍙�" @keypress.enter.native="search"></el-input>
+            <el-form-item label="濮撳悕/鎵嬫満鍙�" prop="keyWords">
+                <el-input v-model="searchForm.keyWords" placeholder="璇疯緭鍏ュ鍚�/鎵嬫満鍙�" @keypress.enter.native="search"></el-input>
             </el-form-item>
-            <el-form-item label="鍏徃/閮ㄩ棬鍚嶇О" prop="plateNos">
-                <el-input v-model="searchForm.plateNos" placeholder="璇疯緭鍏ュ叕鍙�/閮ㄩ棬鍚嶇О" @keypress.enter.native="search"></el-input>
+            <el-form-item label="鍏徃/閮ㄩ棬鍚嶇О" prop="companyName">
+                <el-input v-model="searchForm.companyName" placeholder="璇疯緭鍏ュ叕鍙�/閮ㄩ棬鍚嶇О" @keypress.enter.native="search"></el-input>
             </el-form-item>
-            <el-form-item label="浜哄憳绫诲瀷" prop="plateNos">
-                <el-select v-model="searchForm.plateNos" placeholder="璇烽�夋嫨">
-                    <el-option
-                        v-for="item in options"
-                        :key="item.value"
-                        :label="item.label"
-                        :value="item.value">
-                    </el-option>
+            <el-form-item label="浜哄憳绫诲瀷" prop="memberType">
+                <el-select v-model="searchForm.memberType" placeholder="璇烽�夋嫨">
+                    <el-option label="鍔冲姟璁垮" value="0"></el-option>
+                    <el-option label="鏅�氳瀹�" value="1"></el-option>
+                    <el-option label="鍐呴儴浜哄憳" value="2"></el-option>
                 </el-select>
             </el-form-item>
             <el-form-item label="浜嬩欢绫诲瀷" prop="eventType">
                 <el-select v-model="searchForm.eventType" placeholder="璇烽�夋嫨">
-                    <el-option
-                        v-for="item in options"
-                        :key="item.value"
-                        :label="item.label"
-                        :value="item.value">
-                    </el-option>
+                    <el-option label="鍏ュ満鍘嬬嚎浜嬩欢" value="771760130"></el-option>
+                    <el-option label="鍏ュ満鏀捐浜嬩欢" value="771760131"></el-option>
+                    <el-option label="鍑哄満鍘嬬嚎浜嬩欢" value="771760133"></el-option>
+                    <el-option label="鍑哄満鏀捐浜嬩欢" value="771760134"></el-option>
                 </el-select>
             </el-form-item>
             <el-form-item label="璧峰鏃堕棿" prop="eventType">
                 <el-date-picker
-                    v-model="searchForm.eventType"
-                    type="daterange"
+                    @change="seleTime"
+                    v-model="time"
+                    type="datetimerange"
+                    format="yyyy-MM-dd HH:mm:ss"
+                    value-format="yyyy-MM-dd HH:mm:ss"
                     range-separator="鑷�"
                     start-placeholder="寮�濮嬫棩鏈�"
                     end-placeholder="缁撴潫鏃ユ湡">
                 </el-date-picker>
             </el-form-item>
-            <el-radio-group v-model="searchForm.eventType" size="small">
-                <el-radio-button label="褰撳ぉ"></el-radio-button>
-                <el-radio-button label="杩�7澶�"></el-radio-button>
-                <el-radio-button label="杩�30澶�"></el-radio-button>
+            <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio">
+                <el-radio-button label="0">褰撳ぉ</el-radio-button>
+                <el-radio-button label="1">杩�7澶�</el-radio-button>
+                <el-radio-button label="2">杩�30澶�</el-radio-button>
             </el-radio-group>
             <section>
                 <el-button type="primary" @click="search">鎼滅储</el-button>
@@ -52,8 +50,8 @@
         </el-form>
         <!-- 琛ㄦ牸鍜屽垎椤� -->
         <template v-slot:table-wrap>
-            <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']">
-                <li><el-button type="primary" v-permissions="['business:member:create']">瀵煎嚭</el-button></li>
+            <ul class="toolbar" v-permissions="['business:carevent:exportExcel']">
+                <li><el-button type="primary" v-permissions="['business:carevent:exportExcel']">瀵煎嚭</el-button></li>
             </ul>
             <el-table
                 v-loading="isWorking.search"
@@ -61,20 +59,34 @@
                 stripe
             >
                 <el-table-column prop="plateNos" label="杞︾墝鍙�" min-width="100px"></el-table-column>
-                <el-table-column prop="plateNos" label="褰掑睘鐢ㄦ埛绫诲瀷" min-width="100px"></el-table-column>
-                <el-table-column prop="plateNos" label="濮撳悕" min-width="100px"></el-table-column>
-                <el-table-column prop="plateNos" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
-                <el-table-column prop="plateNos" label="鍏徃/閮ㄩ棬" min-width="100px"></el-table-column>
+                <el-table-column label="褰掑睘鐢ㄦ埛绫诲瀷" min-width="100px">
+                    <template slot-scope="{row}">
+                        <span v-if="row.personType === '0'">鍔冲姟璁垮</span>
+                        <span v-if="row.personType === '1'">鏅�氳瀹�</span>
+                        <span v-if="row.personType === '2'">鍐呴儴浜哄憳</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="personName" label="濮撳悕" min-width="100px"></el-table-column>
+                <el-table-column prop="personPhone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
+                <el-table-column prop="personCompanyName" label="鍏徃/閮ㄩ棬" min-width="100px"></el-table-column>
                 <el-table-column prop="parkName" label="鍋滆溅搴撳悕绉�" min-width="100px"></el-table-column>
                 <el-table-column prop="gateName" label="鍑哄叆鍙e悕绉�" min-width="100px"></el-table-column>
-                <el-table-column prop="eventType" label="浜嬩欢绫诲瀷" min-width="100px"></el-table-column>
-                <el-table-column prop="inoutType" label="鍑哄叆绫诲瀷" min-width="100px">
+                <el-table-column prop="eventTypeName" label="浜嬩欢绫诲瀷" min-width="100px"></el-table-column>
+                <el-table-column label="鍑哄叆绫诲瀷" min-width="100px">
                     <template slot-scope="{row}">
                         <span v-if="row.inoutType === 0">杩涘満</span>
                         <span v-if="row.inoutType === 1">鍑哄満</span>
                     </template>
                 </el-table-column>
-                <el-table-column prop="vehiclePicUrl" label="鎶撴媿鍥剧墖" min-width="100px"></el-table-column>
+                <el-table-column label="鎶撴媿鍥剧墖" min-width="100px">
+                    <template slot-scope="{row}">
+                        <el-image
+                            style="width: 80px; height: 80px"
+                            :src="row.vehiclePicUrl"
+                            :preview-src-list="[row.vehiclePicUrl]">
+                        </el-image>
+                    </template>
+                </el-table-column>
                 <el-table-column prop="happenTime" label="浜嬩欢鏃堕棿" min-width="100px"></el-table-column>
             </el-table>
             <pagination
@@ -91,6 +103,7 @@
 import BaseTable from '@/components/base/BaseTable'
 import TableLayout from '@/layouts/TableLayout'
 import Pagination from '@/components/common/Pagination'
+import { timeForMat } from '@/utils/util'
 export default {
   name: 'CarEvent',
   extends: BaseTable,
@@ -100,9 +113,15 @@
       // 鎼滅储
       searchForm: {
         eventType: '',
-        plateNos: ''
+        keyWords: '',
+        plateNos: '',
+        memberType: '',
+        companyName: '',
+        startTime: '',
+        endTime: '',
+        radio: null
       },
-      options: []
+      time: []
     }
   },
   created () {
@@ -113,6 +132,38 @@
       'field.main': 'id'
     })
     this.search()
+  },
+  methods: {
+    reset () {
+      this.$refs.searchForm.resetFields()
+      this.searchForm.startTime = ''
+      this.searchForm.endTime = ''
+      this.time = []
+      this.searchForm.radio = null
+      this.search()
+    },
+    changeRadio (e) {
+      if (e === '0') {
+        this.searchForm.startTime = timeForMat(1)[0]
+        this.searchForm.endTime = timeForMat(1)[1]
+        this.time = timeForMat(1)
+      } else if (e === '1') {
+        this.searchForm.startTime = timeForMat(7)[0]
+        this.searchForm.endTime = timeForMat(7)[1]
+        this.time = timeForMat(7)
+      } else if (e === '2') {
+        this.searchForm.startTime = timeForMat(30)[0]
+        this.searchForm.endTime = timeForMat(30)[1]
+        this.time = timeForMat(30)
+      }
+      this.search()
+    },
+    seleTime (e) {
+      this.searchForm.startTime = e[0]
+      this.searchForm.endTime = e[1]
+      this.searchForm.radio = null
+      this.search()
+    }
   }
 }
 </script>

--
Gitblit v1.9.3