From e8e17acc60c337194c6a46ec1ef98adee6b9e12c Mon Sep 17 00:00:00 2001 From: fangyuan <527392886@qq.com> Date: 星期一, 12 十二月 2022 14:32:42 +0800 Subject: [PATCH] 车辆管理及审核管理 批处理修改 --- src/views/operate/car/myIndex/index.vue | 207 +++++++++++++++++++++++++++++++++------------------ src/views/operate/management/myIndex/index.vue | 7 + 2 files changed, 139 insertions(+), 75 deletions(-) diff --git a/src/views/operate/car/myIndex/index.vue b/src/views/operate/car/myIndex/index.vue index df8191b..49be8c7 100644 --- a/src/views/operate/car/myIndex/index.vue +++ b/src/views/operate/car/myIndex/index.vue @@ -7,7 +7,7 @@ <div class="option"> <el-input v-model="context" placeholder="璇疯緭鍏ヨ溅鐗屽彿"></el-input> </div> - + <div class="findBtn"> <el-button type="primary" @click="handleSearch">鏌ヨ</el-button> </div> @@ -20,29 +20,32 @@ <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="carNumber" label="杞︾墝鍙�" min-width="10"> </el-table-column> - <el-table-column prop="carModel" 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="mystatus ===1 ? 'ownerName':'carOwner'" label="杞︿富濮撳悕" min-width="10"> + <el-table-column :prop="mystatus === 1 ? 'ownerName' : 'carOwner'" label="杞︿富濮撳悕" min-width="10"> </el-table-column> - <el-table-column v-if="mystatus ===2" :prop="mystatus ===1 ? 'vehicleUser' : 'carUser'" 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="mystatus ===1 ? 'contact' : 'phone' " label="鑱旂郴鏂瑰紡" min-width="10"> + <el-table-column :prop="mystatus === 1 ? 'contact' : 'phone'" label="鑱旂郴鏂瑰紡" min-width="10"> </el-table-column> - <el-table-column :prop="mystatus===1 ? 'pdepartName' : 'geographicPosition'" :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="mystatus===1 ? 'departName' : 'constructionOrg'" :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"> @@ -57,20 +60,20 @@ </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"> + <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" :before-close="handleClose"> + <el-dialog :visible.sync="dialogEdit" width="60%" title="缂栬緫杞﹁締淇℃伅" v-if="dialogEdit" + :before-close="handleClose"> <MyEditLaw v-if="mystatus === 1" @closeDialog="closeDialog" :info="info"></MyEditLaw> <MyEditSoil v-else @closeDialog="closeDialog" :info="info"></MyEditSoil> </el-dialog> @@ -84,9 +87,9 @@ <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> @@ -111,16 +114,16 @@ import MyEditSoil from './edit/soil' export default { components: { - Mycreate,MySoil,MyViewLaw, - MyViewSoil,MyEditLaw,MyEditSoil + Mycreate, MySoil, MyViewLaw, + MyViewSoil, MyEditLaw, MyEditSoil }, data() { return { tableData: [], context: "", - dialogAdd:false, - dialogView:false, - dialogEdit:false, + dialogAdd: false, + dialogView: false, + dialogEdit: false, info: '', totalNum: null, pageSize: 10, @@ -134,14 +137,14 @@ label: '鎵归噺鎿嶄綔', disabled: true, }, - { - value: 1, - label: '鎵归噺鍚敤', - }, - { - value: 2, - label: '鎵归噺绂佺敤', - }, + // { + // value: 1, + // label: '鎵归噺鍚敤', + // }, + // { + // value: 2, + // label: '鎵归噺绂佺敤', + // }, { value: 3, label: '鎵归噺鍒犻櫎', @@ -160,9 +163,10 @@ checked: false, }, ], - mystatus:1, - caseId:'', - timer:null, + mystatus: 1, + caseId: '', + timer: null, + currentState: 1 } }, created() { @@ -170,28 +174,28 @@ }, methods: { // 缂栬緫杞﹁締 - handleEdit(data){ + handleEdit(data) { this.dialogEdit = true this.info = data; }, // 鎼滅储杞﹁締 - handleSearch(val){ - if(this.timer){ + handleSearch(val) { + if (this.timer) { clearTimeout(this.timer); } - this.timer = setTimeout(()=>{ + this.timer = setTimeout(() => { this.getCarList(); - },1000); + }, 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; @@ -210,11 +214,11 @@ }) }, // 鍒犻櫎鍗曟潯鏁版嵁 - handleDelete({id}) { + handleDelete({ id }) { this.$confirm('纭鍒犻櫎锛�') .then(_ => { - const {mystatus} = this - let myurl = mystatus === 1 ? 'deletion_enforce':'deletion_slag' + const { mystatus } = this + let myurl = mystatus === 1 ? 'deletion_enforce' : 'deletion_slag' this.$axios({ method: 'delete', url: `/sccg/car_Manage/${myurl}?id=${id}`, @@ -228,42 +232,42 @@ this.getCarList(); }) }) - .catch(_ => { }); + .catch(_ => { }); }, // 鑾峰彇杞﹁締鍒楄〃 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) } 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湡杞� @@ -271,6 +275,7 @@ this.typeList.forEach((item, index) => { if (index === idx) { item.checked = true; + this.currentState=item.value; } else { item.checked = false; } @@ -309,28 +314,75 @@ }) .catch(_ => { }); }, - async JumpView(data){ + async JumpView(data) { await this.getEventInfo(data.code); }, - handleNoClose(done){ + handleNoClose(done) { done(); }, - opernDialog(data){ + opernDialog(data) { this.dialogAdd = true; this.caseId = data.id; }, // 鍏抽棴鐣岄潰 - closeDialog({flag,index}){ + closeDialog({ flag, index }) { this.dialogAdd = flag; this.dialogEdit = flag - if(index===1){ + if (index === 1) { this.getCarList(); } }, - handleView(data){ + 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> @@ -339,6 +391,7 @@ text-align: left; margin: 10px 20px; color: #4b9bb7; + header { background-color: #09152f; border: 1pox solid #fff; @@ -391,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; @@ -434,9 +491,11 @@ .funs { display: flex; - .funs-sp{ + + .funs-sp { border: 1px solid #17324c; } + .funsItem { line-height: 28px; display: flex; @@ -561,9 +620,11 @@ width: 50px !important; } } - .line{ + + .line { padding: 0 5px; } + &::v-deep .el-dialog__header, &::v-deep .el-dialog__body { background-color: #06122c; diff --git a/src/views/operate/management/myIndex/index.vue b/src/views/operate/management/myIndex/index.vue index 151e216..b355df8 100644 --- a/src/views/operate/management/myIndex/index.vue +++ b/src/views/operate/management/myIndex/index.vue @@ -88,7 +88,7 @@ <MyIllDetail :info=info v-else :mycode="code"></MyIllDetail> </el-dialog> <!-- tools --> - <div class="tools"> + <!-- <div class="tools"> <div class="funs"> <div class="funsItem funs-sp"> <el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox> @@ -110,7 +110,7 @@ @prev-click="handlePrev" @next-click="handleNext"> </el-pagination> </div> - </div> + </div> --> </div> </main> </div> @@ -468,6 +468,9 @@ text-overflow: ellipsis; white-space: nowrap; overflow: hidden; + .el-checkbox { + display: none; + } } &::v-deep .el-table__empty-block { -- Gitblit v1.8.0