From 7298d5354963a88643a543b51b90192dc9fc934c Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 11 九月 2025 18:43:14 +0800
Subject: [PATCH] 最新版本541200007
---
admin/src/views/business/reportRecord.vue | 182 +++++++++++++++++++++++++++++++++------------
1 files changed, 133 insertions(+), 49 deletions(-)
diff --git a/admin/src/views/business/reportRecord.vue b/admin/src/views/business/reportRecord.vue
index aef500a..2cba9f7 100644
--- a/admin/src/views/business/reportRecord.vue
+++ b/admin/src/views/business/reportRecord.vue
@@ -1,56 +1,105 @@
<template>
- <div class="main_app">
-
- <div ref="QueryFormRef">
- <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" />
+ <div class="main_app" >
+ <QueryForm
+ v-model="filters"
+ :query-form-config="queryFormConfig"
+ @handleQuery="getList(1)"
+ @clear="clear"
+ />
+ <div class="query_btns" style="margin: 16px 0 0" v-permissions="['business:visits:create', 'business:visits:exportExcel']">
+ <el-button type="primary" @click="handleEdit()" icon="el-icon-plus" v-permissions="['business:visits:create']">鏂板缓</el-button>
+ <el-button type="primary" :loading="exLoading" @click="exportExcel" v-permissions="['business:visits:exportExcel']">瀵煎嚭</el-button>
</div>
- <div class="query_btns" style="margin: 16px 0 0"
- v-permissions="['business:visits:create', 'business:visits:exportExcel']">
- <el-button type="primary" @click="handleEdit()" icon="el-icon-plus"
- v-permissions="['business:visits:create']">鏂板缓</el-button>
- <el-button type="primary" :loading="exLoading" @click="exportExcel"
- v-permissions="['business:visits:exportExcel']">瀵煎嚭</el-button>
- </div>
- <el-table :max-height="tableHeight" v-loading="loading" :data="dataList" stripe row-key="id" default-expand-all>
+ <el-table
+ :height="tableHeightNew"
+ v-loading="loading"
+ :data="dataList"
+ stripe
+ row-key="id"
+ default-expand-all
+ >
<el-table-column type="selection" width="55" align="center"></el-table-column>
- <el-table-column prop="carNos" label="鍏ュ洯杞﹁締" min-width="100px"></el-table-column>
- <el-table-column prop="companyName" label="鍏徃鍚嶇О" min-width="100px"></el-table-column>
- <el-table-column prop="name" label="鑱旂郴浜轰俊鎭�" min-width="100px"></el-table-column>
- <el-table-column prop="phone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
- <el-table-column prop="receptMemberName" label="琚浜�" min-width="100px"></el-table-column>
+ <el-table-column
+ prop="carNos"
+ label="鍏ュ洯杞﹁締"
+ min-width="100px"
+ ></el-table-column>
+ <el-table-column
+ prop="companyName"
+ label="鍏徃鍚嶇О"
+ min-width="100px"
+ ></el-table-column>
+ <el-table-column
+ prop="name"
+ label="鑱旂郴浜轰俊鎭�"
+ min-width="100px"
+ ></el-table-column>
+ <el-table-column
+ prop="phone"
+ label="鎵嬫満鍙�"
+ min-width="100px"
+ ></el-table-column>
+ <el-table-column
+ prop="receptMemberName"
+ label="琚浜�"
+ min-width="100px"
+ ></el-table-column>
<el-table-column label="鎷滆鏃堕棿" min-width="160px">
<template slot-scope="{ row }">
- <span>璧凤細{{ row.starttime }}</span><br />
+ <span>璧凤細{{ row.starttime }}</span
+ ><br />
<span>姝細{{ row.endtime }}</span>
</template>
</el-table-column>
- <el-table-column prop="reason" label="鎷滆浜嬬敱" min-width="100"></el-table-column>
- <el-table-column prop="status" fixed="right" label="鐘舵��" align="center" min-width="100">
+ <el-table-column
+ prop="reason"
+ label="鎷滆浜嬬敱"
+ min-width="100"
+ ></el-table-column>
+ <el-table-column
+ prop="status"
+ fixed="right"
+ label="鐘舵��"
+ align="center"
+ min-width="100"
+ >
<template slot-scope="{ row }">
- <span style="color: rgba(245, 154, 35, 0.996)" v-if="row.status === 0">寰呮彁浜ゅ鎵�</span>
- <span v-if="row.status === 1" style="color: rgba(245, 154, 35, 0.996)">澶勭悊涓�</span>
- <span v-if="row.status === 2" style="color: rgba(245, 154, 35, 0.996)">宸插悓鎰�</span>
+ <span style="color: rgba(245, 154, 35, 0.996)" v-if="row.status === 0"
+ >寰呮彁浜ゅ鎵�</span
+ >
+ <span v-if="row.status === 1" style="color: rgba(245, 154, 35, 0.996)"
+ >澶勭悊涓�</span
+ >
+ <span v-if="row.status === 2" style="color: rgba(245, 154, 35, 0.996)"
+ >宸插悓鎰�</span
+ >
<span style="color: gray" v-if="row.status === 3">宸叉嫆缁�</span>
<span v-if="row.status === 4" style="color: gray">鍙栨秷</span>
<span v-if="row.status === 5" style="color: green">涓嬪彂鎴愬姛</span>
<span v-if="row.status === 6" style="color: gray">涓嬪彂澶辫触</span>
- <span v-if="row.status === 7" style="color: green">鎷滆涓�</span>
+ <span v-if="row.status === 7" style="color: green">宸茬櫥璁�</span>
<span v-if="row.status === 8" style="color: red">宸茬绂�</span>
<span v-if="row.status === 9" style="color: gray">宸插け鏁�</span>
</template>
</el-table-column>
- <el-table-column label="鎿嶄綔" align="center" width="180" fixed="right">
+ <el-table-column label="鎿嶄綔" align="center" width="240" fixed="right">
<template slot-scope="{ row }">
- <el-button type="text" @click="handleDetail(row)" v-permissions="['business:company:update']">鏌ョ湅璇︽儏</el-button>
- <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red"
- v-permissions="['business:visits:delete']">鍒犻櫎</el-button>
+ <el-button
+ type="text"
+ @click="handleDetail(row)"
+ v-permissions="['business:company:update']">鏌ョ湅璇︽儏</el-button>
+ <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:visits:delete']">鍒犻櫎</el-button>
+ <el-button type="text" @click="cancel(row.id)" v-permissions="['business:visits:cancel']" v-if="(row.status == 0 || row.status == 1 || row.status == 2|| row.status == 5)" icon="el-icon-delete" style="color: red" >鍙栨秷棰勭害</el-button>
</template>
</el-table-column>
</el-table>
- <pagination class="mt10" @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" />
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="getList"
+ :pagination="pagination"
+ />
<ReportDetail v-if="isShowReport" ref="VisReportDetailRef" />
- <OperaVisitsReportWindow @close="isShowEdit = false" @success="getList" v-if="isShowEdit"
- ref="operaVisitsWindowRef" />
+ <OperaVisitsReportWindow @close="isShowEdit = false" @success="getList" v-if="isShowEdit" ref="operaVisitsWindowRef" />
</div>
</template>
@@ -60,19 +109,21 @@
// import ReportDetail from './page-components/ReportDetail.vue'
import ReportDetail from '@/views/task/visReportDetail.vue'
import OperaVisitsReportWindow from '@/components/business/operaVisitsReportWindow.vue'
-import { fetchList, exportExcel, deleteById } from '@/api/business/visits'
+import { fetchList, exportExcel, deleteById ,visitsCancel} from '@/api/business/visits'
+import BasePage from '@/components/base/BasePage'
+import {mapState } from "vuex";
export default {
+ extends: BasePage,
components: {
ReportDetail,
QueryForm,
Pagination,
OperaVisitsReportWindow
},
- data() {
+ data () {
return {
isShowEdit: false,
exLoading: false,
- tableHeight: 400,
isShowReport: false,
activeTab: '0',
@@ -91,6 +142,12 @@
filed: 'companyName',
type: 'input',
label: '鍏徃鍚嶇О'
+ },
+ {
+ filed1: 'queryStarttime',
+ filed2: 'queryEndtime',
+ type: 'datetime',
+ label: '鎷滆鏃堕棿'
}
],
online: true
@@ -108,16 +165,28 @@
total: 0
}
},
- created() {
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ created () {
this.getList()
},
- mounted() {
- this.$nextTick(() => {
- this.tableHeight = document.body.scrollHeight - this.$refs.QueryFormRef.offsetHeight - 300
- })
- },
methods: {
- exportExcel() {
+ cancel (id) {
+ this.$confirm('纭畾鍙栨秷棰勭害鍚�, 鏄惁缁х画?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ visitsCancel(id)
+ .then(res => {
+ this.pagination.page = 1
+ this.getList()
+ })
+ }).catch(() => {
+ })
+ },
+ exportExcel () {
this.$dialog.exportConfirm('纭瀵煎嚭鍚楋紵')
.then(() => {
this.exLoading = true
@@ -137,13 +206,13 @@
})
})
},
- handleEdit() {
+ handleEdit () {
this.isShowEdit = true
this.$nextTick(() => {
this.$refs.operaVisitsWindowRef.isShowModal = true
})
},
- deleteById(row) {
+ deleteById (row) {
this.$confirm('纭畾鍒犻櫎璇ヨ褰曞悧, 鏄惁缁х画?', '鎻愮ず', {
confirmButtonText: '纭畾',
cancelButtonText: '鍙栨秷',
@@ -158,7 +227,7 @@
}).catch(() => {
})
},
- handleDetail(row) {
+ handleDetail (row) {
this.isShowReport = true
this.$nextTick(() => {
this.$nextTick(() => {
@@ -169,7 +238,7 @@
})
})
},
- getList(page) {
+ getList (page) {
const { pagination, filters } = this
pagination.page = page || pagination.page
fetchList({
@@ -180,18 +249,33 @@
this.pagination.total = res.total
})
},
- clear() {
+ clear () {
this.filters = {
type: 2
}
this.getList(0)
},
- handleSizeChange(capacity) {
+ handleSizeChange (capacity) {
this.pagination.capacity = capacity
- this.getList()
+ this.getList(1)
}
}
}
</script>
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.table-pagination {
+
+ margin-left: 0px;
+ padding: 16px 0px ;
+ text-align: left;
+ display: block;
+ z-index: 100;
+ width: -webkit-fill-available;
+ /* width: 80%; */
+ position: fixed;
+ bottom: 0px;
+ background-color: white;
+ margin-right: 50px;
+}
+</style>
--
Gitblit v1.9.3