From 73b48dd59a2d47b365b87784371c4ef57dde659b Mon Sep 17 00:00:00 2001
From: Oliver <1070107765@qq.com>
Date: 星期四, 22 十二月 2022 11:17:47 +0800
Subject: [PATCH] 首页新增
---
src/views/operate/car/myIndex/index.vue | 275 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 190 insertions(+), 85 deletions(-)
diff --git a/src/views/operate/car/myIndex/index.vue b/src/views/operate/car/myIndex/index.vue
index 5bd43a7..2b31650 100644
--- a/src/views/operate/car/myIndex/index.vue
+++ b/src/views/operate/car/myIndex/index.vue
@@ -5,75 +5,91 @@
<div class="search">
<span>杞﹁締鎼滅储:</span>
<div class="option">
- <el-input placeholder="璇疯緭鍏ヨ溅鐗屽彿"></el-input>
+ <el-input v-model="context" placeholder="璇疯緭鍏ヨ溅鐗屽彿"></el-input>
+ </div>
+
+ <div class="findBtn">
+ <el-button type="primary" @click="handleSearch">鏌ヨ</el-button>
</div>
</div>
<div class="addCar">
- <el-button type="primary" class="addBtn" @click="handleAddCar">娣诲姞杞﹁締</el-button>
+ <el-button type="primary" class="addBtn button-addition" @click="handleAddCar">娣诲姞杞﹁締</el-button>
</div>
</div>
</header>
<main>
<div class="mainContent">
<div class="type-nav">
- <div @click="changeTypeChecked(index)" v-for="(item,index) in typeList" :key="item.name"
- :class="[item.checked ? 'is-active':'','type-item']">{{item.name}}</div>
+ <div @click="changeTypeChecked(index)" v-for="(item, index) in typeList" :key="item.name"
+ :class="[item.checked ? 'is-active' : '', 'type-item']">{{ item.name }}</div>
</div>
<!-- 鏁版嵁灞曠ず -->
<el-table ref="multipleTable"
- :header-cell-style="{background:'#06122c','font-size':'12px',color:'#4b9bb7','font-weight':'650','line-height':'45px'}"
+ :header-cell-style="{ background: '#06122c', 'font-size': '12px', color: '#4b9bb7', 'font-weight': '650', 'line-height': '45px' }"
:data="tableData" style="width: 100%" :row-class-name="tableRowClassName"
@selection-change="tableChange">
<el-table-column type="selection" min-width="5">
</el-table-column>
- <el-table-column prop="code" label="杞︾墝鍙�" min-width="10">
- <template slot-scope="scope">
- <el-link @click="JumpView(scope.row)">{{scope.row.code}}</el-link>
- </template>
+ <el-table-column prop="carNumber" label="杞︾墝鍙�" min-width="10">
</el-table-column>
- <el-table-column prop="code" label="杞﹀瀷" min-width="10" v-if="mystatus===2">
+ <el-table-column prop="carModel" label="杞﹀瀷" min-width="10" v-if="mystatus === 2">
</el-table-column>
- <el-table-column prop="eventSource" label="杞︿富濮撳悕" min-width="10">
- <template slot-scope="scope">
- <span>{{scope.row.eventSource === 2 ? '浜哄伐涓婃姤' : '瑙嗛涓婁紶'}}</span>
- </template>
+ <el-table-column :prop="mystatus === 1 ? 'ownerName' : 'carOwner'" label="杞︿富濮撳悕" min-width="10">
</el-table-column>
- <el-table-column prop="category" label="杞﹁締浣跨敤浜哄憳" min-width="10">
+ <el-table-column v-if="mystatus === 2" :prop="mystatus === 1 ? 'vehicleUser' : 'carUser'"
+ label="杞﹁締浣跨敤浜哄憳" min-width="10">
</el-table-column>
- <el-table-column prop="type" label="鑱旂郴鏂瑰紡" min-width="10">
+ <el-table-column :prop="mystatus === 1 ? 'contact' : 'phone'" label="鑱旂郴鏂瑰紡" min-width="10">
</el-table-column>
- <el-table-column prop="actionCause" :label="mystatus === 1 ? '鎵�灞為儴闂�':'鏂藉伐鍦板潃'" min-width="10">
+ <el-table-column :prop="mystatus === 1 ? 'pdepartName' : 'geographicPosition'"
+ :label="mystatus === 1 ? '鎵�灞為儴闂�' : '鏂藉伐鍦板潃'" min-width="10">
</el-table-column>
- <el-table-column prop="site" :label="mystatus === 1 ? '鎵�灞炲ぇ闃�' : '鏂藉伐鍗曚綅'" min-width="10">
+ <el-table-column :prop="mystatus === 1 ? 'departName' : 'constructionOrg'"
+ :label="mystatus === 1 ? '鎵�灞炲ぇ闃�' : '鏂藉伐鍗曚綅'" min-width="10">
</el-table-column>
<el-table-column prop="operation" label="鎿嶄綔" min-width="20">
<template slot-scope="scope">
<div class="btn">
- <span @click="handleReset(scope.row)">鏌ョ湅</span>
+ <!-- <span @click="handleView(scope.row)">鏌ョ湅</span>
+ <span class="line">|</span> -->
+ <span @click="handleEdit(scope.row)">缂栬緫</span>
<span class="line">|</span>
- <span>鍒犻櫎</span>
+ <span @click="handleDelete(scope.row)">鍒犻櫎</span>
</div>
</template>
</el-table-column>
</el-table>
<!-- 鏂板 -->
- <el-dialog :visible.sync="dialogAdd" width="60%" title="鏂板杞﹁締"
- v-if="dialogAdd" :before-close="handleClose">
- <Mycreate v-if="mystatus === 1" @closeDialog="closeDialog"></Mycreate>
+ <el-dialog :visible.sync="dialogAdd" width="60%" title="鏂板杞﹁締" v-if="dialogAdd"
+ :before-close="handleClose">
+ <Mycreate v-if="mystatus === 1" @closeDialog="closeDialog"></Mycreate>
+ <MySoil v-else @closeDialog="closeDialog"></MySoil>
+ </el-dialog>
+ <!-- 鏌ョ湅 -->
+ <el-dialog :visible.sync="dialogView" width="60%" title="鏌ョ湅杞﹁締淇℃伅" v-if="dialogView"
+ :before-close="handleNoClose">
+ <MyViewLaw v-if="mystatus === 1" :info="info"></MyViewLaw>
+ <MyViewSoil v-else :info="info"></MyViewSoil>
+ </el-dialog>
+ <!-- 缂栬緫 -->
+ <el-dialog :visible.sync="dialogEdit" width="60%" title="缂栬緫杞﹁締淇℃伅" v-if="dialogEdit"
+ >
+ <MyEditLaw v-if="mystatus === 1" @closeDialog="closeDialog" :info="info"></MyEditLaw>
+ <MyEditSoil v-else @closeDialog="closeDialog" :info="info"></MyEditSoil>
</el-dialog>
<!-- tools -->
<div class="tools">
<div class="funs">
- <div class="funsItem">
+ <div class="funsItem funs-sp">
<el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox>
</div>
- <div class="funsItem">
+ <div class="funsItem funs-sp">
<el-checkbox v-model="unsame" @change="disSame(tableData)">鍙嶉��</el-checkbox>
</div>
<div class="funsItem">
- <el-select v-model="myIdx" placeholder="鎵归噺鎿嶄綔" disabled>
+ <el-select v-model="myIdx" placeholder="鎵归噺鎿嶄綔" >
<el-option v-for="item in options" :key="item.value" :label="item.label"
- :value="item.value" :disabled="item.disabled">
+ :value="item.value" :disabled="item.disabled" @click.native="selectChange">
</el-option>
</el-select>
</div>
@@ -90,38 +106,45 @@
</div>
</template>
<script>
-import Mycreate from './createUser'
+import Mycreate from './create/law'
+import MySoil from './create/soil'
+import MyViewLaw from './update/law'
+import MyViewSoil from './update/soil'
+import MyEditLaw from './edit/law'
+import MyEditSoil from './edit/soil'
export default {
components: {
- Mycreate
+ Mycreate, MySoil, MyViewLaw,
+ MyViewSoil, MyEditLaw, MyEditSoil
},
data() {
return {
tableData: [],
context: "",
- dialogAdd:false,
- info: {},
+ dialogAdd: false,
+ dialogView: false,
+ dialogEdit: false,
+ info: '',
totalNum: null,
pageSize: 10,
currentPage: 1,
all: false,
unsame: false,
myIdx: 0,
- preMyIdx:0,
options: [
{
value: 0,
label: '鎵归噺鎿嶄綔',
disabled: true,
},
- {
- value: 1,
- label: '鎵归噺鍚敤',
- },
- {
- value: 2,
- label: '鎵归噺绂佺敤',
- },
+ // {
+ // value: 1,
+ // label: '鎵归噺鍚敤',
+ // },
+ // {
+ // value: 2,
+ // label: '鎵归噺绂佺敤',
+ // },
{
value: 3,
label: '鎵归噺鍒犻櫎',
@@ -140,23 +163,39 @@
checked: false,
},
],
- mystatus:1,
- caseId:'',
+ mystatus: 1,
+ caseId: '',
+ timer: null,
+ currentState: 1
}
},
created() {
- this.getUserList();
+ this.getCarList();
},
methods: {
+ // 缂栬緫杞﹁締
+ handleEdit(data) {
+ this.dialogEdit = true
+ this.info = data;
+ },
+ // 鎼滅储杞﹁締
+ handleSearch(val) {
+ if (this.timer) {
+ clearTimeout(this.timer);
+ }
+ this.timer = setTimeout(() => {
+ this.getCarList();
+ }, 1000);
+ },
// 娣诲姞杞﹁締
- handleAddCar(){
+ handleAddCar() {
this.dialogAdd = true;
},
// 鐩戝惉琛ㄦ牸
tableChange(list) {
this.tempList = [];
list.forEach(item => {
- this.tempList.push(item.code);
+ this.tempList.push(item.id);
})
if (list.length === this.tableData.length) {
this.all = true;
@@ -175,62 +214,60 @@
})
},
// 鍒犻櫎鍗曟潯鏁版嵁
- handleDelete({ number }) {
- console.log(number);
+ handleDelete({ id }) {
this.$confirm('纭鍒犻櫎锛�')
.then(_ => {
- console.log(1);
+ const { mystatus } = this
+ let myurl = mystatus === 1 ? 'deletion_enforce' : 'deletion_slag'
this.$axios({
method: 'delete',
- url: `sccg/violations/delete?id=${number}`,
+ url: `/sccg/car_Manage/${myurl}?id=${id}`,
})
.then(res => {
- console.log(res);
this.$message({
type: res.code === 200 ? 'success' : 'warning',
message: res.message
})
- this.getUserList();
+ this.getCarList();
})
})
- .catch(_ => { console.log(2) });
+ .catch(_ => { });
},
- // 鑾峰彇鐢ㄦ埛鍒楄〃
- async getUserList() {
+ // 鑾峰彇杞﹁締鍒楄〃
+ async getCarList() {
const { currentPage, pageSize, context, mystatus } = this;
- let arr =[];
- if(mystatus===1){
+ let arr = [];
+ if (mystatus === 1) {
arr = await this.getLawCarList(currentPage, pageSize, context);
- }else{
+ } else {
arr = await this.getSoilCarList(currentPage, pageSize, context)
}
- console.log(arr);
this.tableData = arr.records;
this.totalNum = arr.total;
},
// 鑾峰彇鎵ф硶杞�
- async getLawCarList(currentPage,pageSize,carNum){
- let arr =[];
+ async getLawCarList(currentPage, pageSize, carNum) {
+ let arr = [];
await this.$axios({
- method:'get',
- url:`sccg/car_Manage/query_enforce?current=${currentPage}&size=${pageSize}&carNum=${carNum}`,
+ method: 'get',
+ url: `sccg/car_Manage/query_enforce?current=${currentPage}&size=${pageSize}&carNum=${carNum}`,
})
- .then(res=>{
- arr = res.data;
- })
+ .then(res => {
+ arr = res.data;
+ })
return arr;
},
// 鑾峰彇娓e湡杞�
- async getSoilCarList(currentPage,pageSize,carNum){
- let arr =[];
+ async getSoilCarList(currentPage, pageSize, carNum) {
+ let arr = [];
await this.$axios({
- method:'get',
- url:`sccg/car_Manage/query_slag?current=${currentPage}&size=${pageSize}&carNum=${carNum}`,
+ method: 'get',
+ url: `sccg/car_Manage/query_slag?current=${currentPage}&size=${pageSize}&carNum=${carNum}`,
})
- .then(res=>{
- arr = res.data;
- })
+ .then(res => {
+ arr = res.data;
+ })
return arr;
},
// 鏇存敼鎵ф硶杞�/娓e湡杞�
@@ -238,12 +275,13 @@
this.typeList.forEach((item, index) => {
if (index === idx) {
item.checked = true;
+ this.currentState=item.value;
} else {
item.checked = false;
}
})
this.mystatus = idx + 1;
- this.getUserList();
+ this.getCarList();
},
// 璁剧疆琛ㄦ牸鏂戦┈绾�
tableRowClassName({ row, rowIndex }) {
@@ -257,17 +295,17 @@
// 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
changeCurrentPage(page) {
this.currentPage = page;
- this.getUserList();
+ this.getCarList();
},
// 涓婁竴椤电偣鍑讳簨浠�
handlePrev(page) {
this.currentPage = page;
- this.getUserList();
+ this.getCarList();
},
// 涓嬩竴椤电偣鍑讳簨浠�
handleNext(page) {
this.currentPage = page;
- this.getUserList();
+ this.getCarList();
},
handleClose(done) {
this.$confirm('纭鍏抽棴锛�')
@@ -276,18 +314,75 @@
})
.catch(_ => { });
},
- async JumpView(data){
+ async JumpView(data) {
await this.getEventInfo(data.code);
},
- opernDialog(data){
+ handleNoClose(done) {
+ done();
+ },
+ opernDialog(data) {
this.dialogAdd = true;
this.caseId = data.id;
- // console.log(data);
},
- // 鍏抽棴涓婁紶鐣岄潰
- closeDialog({flag}){
+ // 鍏抽棴鐣岄潰
+ closeDialog({ flag, index }) {
this.dialogAdd = flag;
- }
+ this.dialogEdit = flag
+ if (index === 1) {
+ this.getCarList();
+ }
+ },
+ handleView(data) {
+ this.info = data;
+ this.dialogView = true;
+ },
+ selectChange(list) {
+ if (this.tempList.length !== 0) {
+
+ this.preMyIdx = list;
+ this.mulDelete(this.tempList);
+
+ } else {
+ this.myIdx = this.preMyIdx;
+ this.$message({
+ type: "warning",
+ message: "鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁",
+ });
+ }
+ },
+ // 澶氭潯鏁版嵁鍒犻櫎
+ mulDelete(idArr) {
+ var path=""
+ if(this.currentState==1){
+ path="/sccg/car_Manage/batch_deletion_enforce?ids="
+ }
+ else{
+ path="/sccg/car_Manage/batch_deletion_slag?ids="
+ }
+ this.$confirm("鎮ㄧ‘瀹氳鎵归噺鍒犻櫎杞﹁締淇℃伅鍚�?")
+ .then((_) => {
+ this.$axios({
+ method: "delete",
+ url: path + idArr,
+ }).then((res) => {
+ if (res.code === 200) {
+ this.$message({
+ type: "success",
+ message: "鎵归噺鍒犻櫎杞﹁締淇℃伅鎴愬姛",
+ });
+ this.getCarList();
+ } else {
+ this.$message({
+ type: "error",
+ message: res.message,
+ });
+ }
+ });
+ })
+ .catch((err) => {
+ console.log(err);
+ });
+ },
}
}
</script>
@@ -296,6 +391,7 @@
text-align: left;
margin: 10px 20px;
color: #4b9bb7;
+
header {
background-color: #09152f;
border: 1pox solid #fff;
@@ -348,18 +444,22 @@
}
}
}
+
&::v-deep .el-input__inner {
background-color: #09152f;
border: 1px solid #17324c;
}
+
main {
background-color: #09152f;
margin-top: 20px;
padding-bottom: 50px;
border: 1pox solid #fff;
- .btn span:hover{
+
+ .btn span:hover {
cursor: pointer;
}
+
.type-nav {
display: flex;
line-height: 40px;
@@ -392,11 +492,14 @@
.funs {
display: flex;
+ .funs-sp {
+ border: 1px solid #17324c;
+ }
+
.funsItem {
line-height: 28px;
display: flex;
align-items: center;
- border: 1px solid #17324c;
border-radius: 4px;
font-size: 12px;
margin-left: 10px;
@@ -517,9 +620,11 @@
width: 50px !important;
}
}
- .line{
+
+ .line {
padding: 0 5px;
}
+
&::v-deep .el-dialog__header,
&::v-deep .el-dialog__body {
background-color: #06122c;
--
Gitblit v1.8.0