From f68b6f735eb1b0f3702022d3a25510fcd21d1cf8 Mon Sep 17 00:00:00 2001 From: renkang <8417338+k94314517@user.noreply.gitee.com> Date: 星期四, 09 一月 2025 18:30:45 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1 --- admin/src/views/finance/payments.vue | 134 +++++++++++++++++++++++++++++--------------- 1 files changed, 88 insertions(+), 46 deletions(-) diff --git a/admin/src/views/finance/payments.vue b/admin/src/views/finance/payments.vue index 3334854..212bc99 100644 --- a/admin/src/views/finance/payments.vue +++ b/admin/src/views/finance/payments.vue @@ -2,56 +2,75 @@ <div class="main_app"> <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" /> <div class="mt20"> - <el-button type="primary" @click="handleEdit()" icon="el-icon-plus" - v-permissions="['business:ywpatrolline:create']">鏂板缓</el-button> - <el-button @click="handleEdit()" v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button> +<!-- <el-button v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button>--> </div> <el-table v-loading="loading" :data="list" stripe> - <el-table-column prop="" label="瀹㈡埛鍚嶇О" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鍚堝悓缂栧彿" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="搴忓彿" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="璐﹀彿缂栧彿" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鏀舵敮绫诲瀷" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鍙戠敓閲戦" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鏀舵鏂瑰紡" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鍏ヨ处鏃ユ湡" min-width="100" show-overflow-tooltip /> - <el-table-column prop="" label="鐘舵��" min-width="100" show-overflow-tooltip> - <template v-slot="scope"> - <el-switch v-model="scope.row.status" active-value="0" inactive-value="1"> - </el-switch> + <el-table-column prop="customerName" label="瀹㈡埛鍚嶇О" min-width="100" show-overflow-tooltip /> + <el-table-column prop="contractCode" label="鍚堝悓缂栧彿" min-width="100" show-overflow-tooltip /> + <el-table-column label="鎴垮彿" min-width="100" show-overflow-tooltip> + <template slot-scope="{row}"> + <div style="display: flex; flex-direction: column;" v-if="row.roomPathName"> + <span v-for="(item, index) in row.roomPathName.split(';')" :key="index">{{item}}</span> + </div> </template> </el-table-column> - <el-table-column label="鎿嶄綔" min-width="120" fixed="right"> + <el-table-column prop="billCode" label="璐﹀崟缂栧彿" min-width="100" show-overflow-tooltip /> + <el-table-column label="鏀舵敮绫诲瀷" min-width="100" show-overflow-tooltip> <template slot-scope="{row}"> - <!-- <el-button type="text" @click="handleEdit(row)" icon="el-icon-edit" - v-permissions="['business:category:update']">缂栬緫</el-button> --> - <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" - v-permissions="['business:category:delete']">閫�娆�</el-button> + <span v-if="row.revenueType === 0">鏀跺叆</span> + <span v-if="row.revenueType === 1">鏀嚭</span> + </template> + </el-table-column> + <el-table-column prop="actReceivableFee" label="鍙戠敓閲戦" min-width="100" show-overflow-tooltip /> + <el-table-column label="鏀舵鏂瑰紡" min-width="100" show-overflow-tooltip> + <template slot-scope="{row}"> + <span v-if="row.payType === 0">鐜伴噾</span> + <span v-if="row.payType === 1">缃戦摱杞处</span> + <span v-if="row.payType === 2">POS鏈�</span> + <span v-if="row.payType === 3">鏀粯瀹�</span> + <span v-if="row.payType === 4">寰俊</span> + <span v-if="row.payType === 5">杞处鏀エ</span> + <span v-if="row.payType === 6">鍏朵粬</span> + </template> + </el-table-column> + <el-table-column prop="actPayDate" label="鍏ヨ处鏃ユ湡" show-overflow-tooltip /> + <el-table-column prop="createDate" label="鍒涘缓鏃ユ湡" show-overflow-tooltip /> + <el-table-column prop="realname" label="鍒涘缓浜�" show-overflow-tooltip /> + <el-table-column label="鐘舵��" min-width="100" fixed="right" show-overflow-tooltip> + <template slot-scope="{row}"> + <el-tag type="success" v-if="row.status === 0">寮�鍚�</el-tag> + <el-tag type="info" v-if="row.status === 1">鍏抽棴</el-tag> + </template> + </el-table-column> + <el-table-column label="鎿嶄綔" min-width="190" fixed="right"> + <template slot-scope="{row}"> + <el-button type="text" @click="$refs.details.open('鏀舵敮娴佹按璇︽儏', row.id)">鏌ョ湅璇︽儏</el-button> + <el-button type="text" @click="closeDW(row.id)" v-if="isShow(row.status, row.contractStatus)">鍏抽棴娴佹按</el-button> </template> </el-table-column> </el-table> <div class="mt20"> <Pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" /> </div> - <Edit v-if="showEdit" ref="EditRef" @success="getList" @close="showEdit = false" /> + <!-- 璇︽儏 --> + <Details ref="details" /> </div> </template> <script> import Pagination from '@/components/common/Pagination' import QueryForm from '@/components/common/QueryForm' -import Edit from './components/paymentsEdit.vue' -import { companyGetList, deleteById } from '@/api/business/company' +import Details from './components/details' +import { fetchList, close } from '@/api/ywContractRevenue' export default { components: { Pagination, QueryForm, - Edit + Details }, data() { return { loading: false, - showEdit: false, pagination: { pageSize: 10, page: 1, @@ -63,22 +82,35 @@ queryFormConfig: { formItems: [ { - filed: 'name', + filed: 'customerName', type: 'input', label: '瀹㈡埛鍚嶇О' }, { - filed: 'name', + filed: 'revenueType', type: 'select', - label: '鏀舵敮绫诲瀷' + label: '鏀舵敮绫诲瀷', + options: [ + { value: 0, label: '鏀跺叆' }, + { value: 1, label: '鏀嚭' } + ] }, { - filed: 'name', + filed: 'payType', type: 'select', - label: '鏀舵鏂瑰紡' + label: '鏀舵鏂瑰紡', + options: [ + { value: 0, label: '鐜伴噾' }, + { value: 1, label: '缃戦摱杞处' }, + { value: 2, label: 'POS鏈�' }, + { value: 3, label: '鏀粯瀹�' }, + { value: 4, label: '寰俊' }, + { value: 5, label: '杞处鏀エ' }, + { value: 6, label: '鍏朵粬' } + ] }, { - filed: 'name', + filed: 'payDate', type: 'daterange', label: '鍏ヨ处鏃ユ湡' }, @@ -91,36 +123,46 @@ this.getList() }, methods: { + isShow (status, contractStatus) { + if (status === 1) return false + if (contractStatus === '3' || contractStatus === '4') return false + return true + }, getList(page) { const { pagination, filters } = this + let form = JSON.parse(JSON.stringify(filters)) + if (form && form.payDate && form.payDate.length > 0) { + form.payDateStart = form.payDate[0] + form.payDateEnd = form.payDate[1] + } this.loading = true - companyGetList({ + fetchList({ model: { - ...filters, - type: 2 + ...form }, capacity: pagination.pageSize, page: page || pagination.page, }).then(res => { this.loading = false this.list = res.records || [] - this.list.forEach(item => { - item.stautsName = item.status == 0 ? '姝e父' : item.status == 1 ? '鎹熷潖' : '鎶ュ簾' - }) this.pagination.total = res.total || 0 }, () => { this.loading = false }) }, - handleEdit(row) { - this.showEdit = true - this.$nextTick(() => { - this.$refs.EditRef.isShowModal = true - if (row && row.id) { - this.$refs.EditRef.getDetail(row.id) - } - }) - + closeDW (id) { + this.$confirm('纭鍏抽棴姝ゆ祦姘村悧?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + close(id) + .then(res => { + this.getList() + }) + }).catch(() => { + + }); }, handleDel(row) { let message = `纭鍒犻櫎璇ヨ褰曞悧?` -- Gitblit v1.9.3