From a2299a6d4a6f99e9c11132138f5d3e9ec68f03ea Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 06 六月 2025 19:19:34 +0800
Subject: [PATCH] 开发更新
---
admin/src/views/finance/bull.vue | 199 ++++++++++++++++++++++++++++++-------------------
1 files changed, 123 insertions(+), 76 deletions(-)
diff --git a/admin/src/views/finance/bull.vue b/admin/src/views/finance/bull.vue
index c0aea32..f2344d0 100644
--- a/admin/src/views/finance/bull.vue
+++ b/admin/src/views/finance/bull.vue
@@ -3,36 +3,91 @@
<QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" />
<div class="df_sb mt20">
<div class="tabs">
- <div class="tab" :class="{ active: activeTabs == 0 }" @click="tabsClick(0)">鏀舵璐﹀崟</div>
- <div class="tab" :class="{ active: activeTabs == 1 }" @click="tabsClick(1)">浠樻璐﹀崟</div>
+ <div class="tab" :class="{ active: billType === 0 }" @click="tabsClick(0)">鏀舵璐﹀崟</div>
+ <div class="tab" :class="{ active: billType === 1 }" @click="tabsClick(1)">浠樻璐﹀崟</div>
</div>
<div class="btns">
- <el-button type="primary" @click="handleEdit()" icon="el-icon-plus"
+ <el-button type="primary" @click="addOpen" icon="el-icon-plus"
v-permissions="['business:ywpatrolline:create']">鏂板缓</el-button>
- <el-button @click="handleEx" v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button>
+<!-- <el-button @click="handleDetail" v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button>-->
</div>
</div>
<el-table v-loading="loading" :data="list" stripe>
- <el-table-column prop="" label="瀹㈡埛鍚嶇О" min-width="100" show-overflow-tooltip />
- <el-table-column prop="code" label="妤煎畤鍚嶇О" min-width="100" show-overflow-tooltip />
- <el-table-column prop="name" label="鎴块棿鍙�" min-width="100" show-overflow-tooltip />
- <el-table-column prop="stautsName" label="鍚堝悓缂栧彿" min-width="100" show-overflow-tooltip />
- <el-table-column prop="remark" label="缁撴竻鐘舵��" min-width="100" show-overflow-tooltip />
- <el-table-column prop="createTime" label="璐﹀崟閲戦" min-width="100" show-overflow-tooltip />
- <el-table-column prop="createTime" label="搴旀敹閲戦" min-width="100" show-overflow-tooltip />
- <el-table-column prop="createTime" label="鍚堝悓鐘舵��" min-width="100" show-overflow-tooltip />
+ <el-table-column prop="customerName" label="瀹㈡埛鍚嶇О" min-width="100" show-overflow-tooltip />
+ <el-table-column label="鎴块棿" min-width="170" 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 prop="contractCode" 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.payStatus === 0">寰呮敹娆�</span>
+ <span v-if="row.payStatus === 1">宸茬粨娓�</span>
+ <span v-if="row.payStatus === 2">閮ㄥ垎缁撴竻</span>
+ <span v-if="row.payStatus === 3">寰呬粯娆�</span>
+ <span v-if="row.payStatus === 4">寰呴��娆�</span>
+ <span v-if="row.payStatus === 5">宸插叧闂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="totleFee" label="璐﹀崟閲戦" min-width="100" show-overflow-tooltip />
+ <el-table-column prop="receivableFee" :label="`搴�${billType === 0 ? '鏀�' : '浠�'}閲戦`" min-width="100" show-overflow-tooltip />
+ <el-table-column prop="actReceivableFee" :label="`瀹�${billType === 0 ? '鏀�' : '浠�'}閲戦`" min-width="100" show-overflow-tooltip />
+ <el-table-column :label="`闇�鏀�/浠橀噾棰漙" min-width="100" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ {{Math.abs(row.needReceivableFee)}}
+ </template>
+ </el-table-column>
+ <el-table-column label="璐圭敤绫诲瀷" min-width="100" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ <span v-if="row.costType === 0">绉熻祦璐�</span>
+ <span v-if="row.costType === 1">鐗╀笟璐�</span>
+ <span v-if="row.costType === 2">绉熻祦鎶奸噾</span>
+ <span v-if="row.costType === 3">鐗╀笟鎶奸噾</span>
+ <span v-if="row.costType === 4">姘寸數璐�</span>
+ <span v-if="row.costType === 5">鏉傞」璐�</span>
+ <span v-if="row.costType === 6">鍏跺畠</span>
+ <span v-if="row.costType === 7">淇濊瘉閲�</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鏄惁閫炬湡" min-width="100" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ <span v-if="row.isOverdue === 0">鏈�炬湡</span>
+ <span v-if="row.isOverdue === 1" style="color: red;">宸查�炬湡</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="璁¤垂鍛ㄦ湡" min-width="200" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ {{ row.startDate }} ~ {{ row.endDate }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="planPayDate" :label="`搴�${billType === 0 ? '鏀�' : '浠�'}鏃ユ湡`" min-width="100" show-overflow-tooltip />
+ <el-table-column label="璐﹀崟鏉ユ簮" min-width="100" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ <span v-if="row.type === 0">鍚堝悓璐﹀崟</span>
+ <span v-if="row.type === 1">鑷缓璐﹀崟</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="璐﹀崟鐘舵��" min-width="100" fixed="right" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ <span v-if="row.status === 0">寮�鍚�</span>
+ <span v-if="row.status === 1" style="color: red;">鍏抽棴</span>
+ </template>
+ </el-table-column>
<el-table-column label="鎿嶄綔" min-width="120" fixed="right">
<template slot-scope="{row}">
- <el-button type="text" @click="handleDetail(row)" icon="el-icon-edit"
- v-permissions="['business:category:update']">鏌ョ湅璇︽儏</el-button>
+ <el-button type="text" @click="handleDetail(row)" icon="el-icon-edit" v-permissions="['business:category:update']">鏌ョ湅璇︽儏</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" />
- <Detail ref="DetailRef" @success="getList" @close="showEdit = false" />
+ <Edit ref="EditRef" @success="getList" />
+ <Detail ref="DetailRef" @success="getList" />
+ <BullEditFu ref="BullEditFu" @success="getList" />
</div>
</template>
@@ -40,130 +95,124 @@
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
import Edit from './components/bullEdit.vue'
+import BullEditFu from './components/bullEditFu.vue'
import Detail from './components/bullDetail.vue'
-import { fetchList, deleteById } from '@/api/Inspection/device'
+import { fetchList } from '@/api/bill'
export default {
components: {
Pagination,
QueryForm,
Edit,
- Detail
+ Detail,
+ BullEditFu
},
- data() {
+ data () {
return {
loading: false,
- showEdit: false,
pagination: {
pageSize: 10,
page: 1,
total: 0
},
- activeTabs: 0,
- filters: {},
+ billType: 0,
+ filters: {
+ status: 0
+ },
list: [],
total: 0,
- statusMap: [
- { value: 0, label: '寰呮敹娆�' },
- { value: 1, label: '宸茬粨绠�' },
- { value: 2, label: '閮ㄥ垎缁撴竻' },
- { value: 3, label: '寰呴��娆�' },
- { value: 4, label: '寰呬粯娆�' },
- ],
queryFormConfig: {
formItems: [
{
- filed: 'name',
+ filed: 'customerName',
type: 'input',
- label: '瀹㈡埛鍚嶇О',
+ label: '瀹㈡埛鍚嶇О'
+ },
+ {
+ filed: 'contractCode',
+ type: 'input',
+ label: '鍚堝悓缂栧彿'
},
{
filed: 'status',
type: 'select',
label: '璐﹀崟鐘舵��',
options: [
- { value: '0', label: '寮�鍚�' },
- { value: '1', label: '鍏抽棴' },
+ { value: 0, label: '寮�鍚�' },
+ { value: 1, label: '鍏抽棴' }
]
},
{
- filed: 'status',
+ filed: 'payStatus',
type: 'select',
label: '缁撴竻鐘舵��',
- options: this.statusMap
+ options: [
+ { value: 0, label: '寰呮敹娆�' },
+ { value: 1, label: '宸茬粨娓�' },
+ { value: 2, label: '閮ㄥ垎缁撴竻' },
+ { value: 3, label: '寰呬粯娆�' },
+ { value: 4, label: '寰呴��娆�' }
+ ]
},
{
filed: 'selDate',
type: 'daterange',
label: '搴旀敹/浠樻棩鏈�'
- },
- ],
- online: true
+ }
+ ]
}
}
},
- created() {
+ created () {
this.getList()
},
methods: {
- getList(page) {
+ addOpen () {
+ if (this.billType === 0) {
+ this.$refs.EditRef.open('鍒涘缓鏀舵璐﹀崟')
+ } else {
+ this.$refs.BullEditFu.open('鍒涘缓浠樻璐﹀崟')
+ }
+ },
+ getList (page) {
const { pagination, filters } = this
+ let form = JSON.parse(JSON.stringify(filters))
+ if (form && form.selDate && form.selDate.length > 0) {
+ form.planPayDateStart = form.payDate[0]
+ form.planPayDateEnd = form.payDate[1]
+ }
this.loading = true
fetchList({
model: {
...filters,
+ billType: this.billType
},
capacity: pagination.pageSize,
- page: page || pagination.page,
+ 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 ? '鎹熷潖' : '鎶ュ簾'
+ item.statusName = item.status === 1 ? '鎹熷潖' : item.status === 2 ? '鎶ュ簾' : '姝e父'
})
this.pagination.total = res.total || 0
}, () => {
this.loading = false
})
},
- handleEx() {
-
+ tabsClick (val) {
+ this.billType = val
+ this.getList()
},
- tabsClick(val) {
- this.activeTabs = val
+ handleDetail (row) {
+ this.$refs.DetailRef.open('璐﹀崟璇︽儏', row.id)
},
- handleEdit(row) {
- this.showEdit = true
- this.$nextTick(() => {
- this.$refs.EditRef.isShowModal = true
- if (row && row.id) {
- this.$refs.EditRef.getDetail(row.id)
- }
- })
-
- },
- handleDetail() {
-
- },
- handleDel(row) {
- let message = `纭鍒犻櫎璇ヨ褰曞悧?`
- this.$dialog.deleteConfirm(message)
- .then(() => {
- this.isWorking.delete = true
- deleteById(row.id)
- .then(() => {
- this.$tip.apiSuccess('鍒犻櫎鎴愬姛')
- this.getList()
- })
- })
- .catch(() => { })
- },
- clear() {
+ clear () {
this.filters = {}
this.pagination.pageSize = 10
this.pagination.page = 1
this.getList()
},
- handleSizeChange(capacity) {
+ handleSizeChange (capacity) {
this.pagination.pageSize = capacity
this.getList()
}
@@ -175,10 +224,8 @@
@import '@/assets/style/variables.scss';
.tabs {
- border-bottom: 1px solid #DFE2E8;
display: flex;
margin-bottom: 20px;
- display: flex;
justify-content: center;
.tab {
--
Gitblit v1.9.3