提交 107189c3 authored 作者: 宋雄's avatar 宋雄

完善流程

...@@ -166,7 +166,9 @@ ...@@ -166,7 +166,9 @@
</a-col> </a-col>
</a-row> </a-row>
<a-modal :title="noticeTitle" :visible="visible" @cancel="handleCancel" :footer="null" width="40%"> <a-modal :title="noticeTitle" :visible="visible" @cancel="handleCancel" :footer="null" width="40%">
<p v-html="noticeContent "></p> <div class="notice-content">
<p v-html="noticeContent "></p>
</div>
</a-modal> </a-modal>
</div> </div>
</template> </template>
...@@ -452,4 +454,10 @@ export default { ...@@ -452,4 +454,10 @@ export default {
} }
} }
} }
.notice-content{
img{
width: 100%;
height: auto;
}
}
</style> </style>
\ No newline at end of file
...@@ -30,28 +30,38 @@ ...@@ -30,28 +30,38 @@
<a-input v-model="model.createTime" placeholder="请输入"></a-input> <a-input v-model="model.createTime" placeholder="请输入"></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12">
<a-form-model-item label="图片" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="complaintImg">
<j-image-upload bizPath="scott/pic" accept="image/png, image/jpeg"
v-model="model.complaintImg"></j-image-upload>
</a-form-model-item>
</a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="问题描述" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol" prop="problemDesc"> <a-form-model-item label="问题描述" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol"
prop="problemDesc">
<a-textarea v-model="model.problemDesc" placeholder="请输入" style="width:80%" /> <a-textarea v-model="model.problemDesc" placeholder="请输入" style="width:80%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
</j-form-container> </j-form-container>
<j-form-container v-if="!formDisabled"> <j-form-container v-if="!formDisabled || model.handleStatus == 'finish'"
<a-form-model ref="form" :model="form" :rules="validatorRules" slot="detail"> :disabled="model.handleStatus == 'finish'">
<a-form-model ref="form" :model="form" slot="detail">
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="处理状态" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol" prop="handleStatus"> <a-form-model-item label="处理状态" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol"
<a-select v-model="form.handleStatus" placeholder="请选择与业主关系" style="width:50%"> prop="handleStatus">
<a-select-option value="pending" v-if="model.handleStatus !== 'pending'">处理中</a-select-option> <a-select v-model="form.handleStatus" placeholder="请选择处理状态" style="width:50%">
<a-select-option value="pending">处理中</a-select-option>
<a-select-option value="finish">处理完成</a-select-option> <a-select-option value="finish">处理完成</a-select-option>
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24" v-if="model.handleStatus === 'pending'"> <a-col :span="24">
<a-form-model-item label="处理结果" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol" prop="handleResult"> <a-form-model-item label="处理结果" :labelCol="{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol"
<a-textarea v-model="model.handleResult" placeholder="请输入" style="width:80%" /> prop="handleResult">
<a-textarea v-model="form.handleResult" placeholder="请输入" style="width:80%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
...@@ -60,77 +70,72 @@ ...@@ -60,77 +70,72 @@
<div style="text-align:center"> <div style="text-align:center">
<a-button @click="onReturn">返回</a-button> <a-button @click="onReturn">返回</a-button>
<a-button style="margin-left: 16px" type="primary" v-if="!formDisabled" @click="onSubmit">提交</a-button> <a-button style="margin-left: 16px" type="primary" v-if="!formDisabled" @click="onSubmit">提交</a-button>
</div> </div>
</a-spin> </a-spin>
</div> </div>
</template> </template>
<script> <script>
import { querycommunityComplaintApi, auditCommunityComplaintApi} from '@/api/api' import { querycommunityComplaintApi, auditCommunityComplaintApi } from '@/api/api'
export default { export default {
name: 'PropertyChargruleForm', name: 'PropertyChargruleForm',
inject:['closeCurrent'], inject: ['closeCurrent'],
data () { data() {
return { return {
currentStep: 1, currentStep: 1,
model:{}, model: {},
form: { form: {
handleStatus: 'pending', handleStatus: 'pending',
auditOpinion: '' handleResult: '',
},
labelCol: {
xs: { span: 24 },
sm: { span: 4 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 20 },
},
validatorRules: {
handleStatus: [{ required: true, message: '请选择处理状态', trigger: 'change' }],
handleResult: [{ required: true, message: '请输入处理结果', trigger: 'blur' }]
},
confirmLoading: false,
}
},
computed: {
formDisabled(){
return this.$route.query.type === '1'
}, },
}, labelCol: {
created () { xs: { span: 24 },
//备份model原始值 sm: { span: 4 },
this.getDetail()
},
methods: {
async getDetail() {
this.confirmLoading = true
let {result} = await querycommunityComplaintApi({id: this.$route.query.id})
if(result.handleStatus === 'pending') {
this.form.handleStatus = 'finish'
}
this.model = {...result}
this.confirmLoading = false
}, },
onReturn() { wrapperCol: {
this.closeCurrent() xs: { span: 24 },
sm: { span: 20 },
}, },
onSubmit() { confirmLoading: false,
this.$refs.form.validate(async valid => {
if (valid) {
let res = await auditCommunityComplaintApi({
...this.model,
id: this.$route.query.id,
handleStatus: this.form.handleStatus
})
this.$message.success(res.message);
this.closeCurrent()
}
})
}
} }
} },
computed: {
formDisabled() {
return this.$route.query.type === '1'
},
},
created() {
//备份model原始值
this.getDetail()
},
methods: {
async getDetail() {
this.confirmLoading = true
let { result } = await querycommunityComplaintApi({ id: this.$route.query.id })
this.model = { ...result }
if (this.model.handleStatus == 'finish') {
this.form.handleStatus = this.model.handleStatus
this.form.handleResult = this.model.handleResult
}
this.confirmLoading = false
},
onReturn() {
this.$store.dispatch('tags/delView', this.$route.path)
this.$router.go(-1)
},
async onSubmit() {
let res = await auditCommunityComplaintApi({
id: this.$route.query.id,
handleStatus: this.form.handleStatus,
handleResult: this.form.handleResult,
})
this.$message.success(res.message)
this.$store.dispatch('tags/delView', this.$route.path)
this.$router.go(-1)
},
},
}
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<a-form-item label="业主姓名"> <a-form-item label="业主姓名">
<a-input placeholder="请输入业主姓名" v-model="queryParam.employeeName"></a-input> <a-input placeholder="请输入业主姓名" v-model="queryParam.ownerName"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
...@@ -29,11 +29,16 @@ ...@@ -29,11 +29,16 @@
<!-- 操作按钮区域 --> <!-- 操作按钮区域 -->
<div class="table-operator"> <div class="table-operator">
<a-button @click="onMeterReading" type="primary" icon="plus">抄表</a-button> <a-button @click="onMeterReading" type="primary" icon="plus">抄表</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('t_property_settled')">导出</a-button> <a-button icon="download" @click="downloadExportXls()">模板下载</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader"
:action="importExcelUrl" @change="handleImportExcel">
<a-button type="primary" icon="import">导入</a-button>
</a-upload>
<a-button type="primary" icon="download" @click="handleExportXls('生活缴费')">导出</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0"> <a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay"> <a-menu slot="overlay">
<a-menu-item key="1" @click="onBatchCallpay"><a-icon type="message"/>催缴</a-menu-item> <a-menu-item key="1" @click="onBatchCallpay"><a-icon type="message" />催缴</a-menu-item>
<a-menu-item key="2" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item> <a-menu-item key="2" @click="batchDel"><a-icon type="delete" />删除</a-menu-item>
</a-menu> </a-menu>
<a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button> <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
</a-dropdown> </a-dropdown>
...@@ -47,24 +52,12 @@ ...@@ -47,24 +52,12 @@
<a style="margin-left: 24px" v-if="selectedRowKeys.length > 0" @click="onClearSelected">清空</a> <a style="margin-left: 24px" v-if="selectedRowKeys.length > 0" @click="onClearSelected">清空</a>
</div> </div>
<a-table <a-table ref="table" size="middle" :scroll="{ x: 1500}" bordered rowKey="id" :columns="columns"
ref="table" :dataSource="dataSource" :pagination="ipagination" :loading="loading" :rowSelection="{
size="middle"
:scroll="{ x: 1500, y: 300 }"
bordered
rowKey="id"
:columns="columns"
:dataSource="dataSource"
:pagination="ipagination"
:loading="loading"
:rowSelection="{
selectedRowKeys: selectedRowKeys, selectedRowKeys: selectedRowKeys,
onChange: onSelectChange, onChange: onSelectChange,
getCheckboxProps: onCheckboxProps getCheckboxProps: onCheckboxProps
}" }" class="j-table-force-nowrap" @change="handleTableChange">
class="j-table-force-nowrap"
@change="handleTableChange"
>
<span slot="ownerId" slot-scope="text, record"> <span slot="ownerId" slot-scope="text, record">
<span>{{record.ownerName}}{{record.ownerPhone}}</span> <span>{{record.ownerName}}{{record.ownerPhone}}</span>
</span> </span>
...@@ -77,9 +70,9 @@ ...@@ -77,9 +70,9 @@
<span slot="action" slot-scope="text, record"> <span slot="action" slot-scope="text, record">
<a @click="onDetail(record.id)">查看</a> <a @click="onDetail(record.id)">查看</a>
<template v-if="record.paymentStatus === 'unPaid'"> <template v-if="record.paymentStatus === 'unPaid'">
<a-divider type="vertical"/> <a-divider type="vertical" />
<a @click="onCallPay(record.id)">催缴</a> <a @click="onCallPay(record.id)">催缴</a>
<a-divider type="vertical"/> <a-divider type="vertical" />
<a @click="handleDelete(record)">删除</a> <a @click="handleDelete(record)">删除</a>
</template> </template>
</span> </span>
...@@ -95,225 +88,275 @@ ...@@ -95,225 +88,275 @@
</template> </template>
<script> <script>
import { getBuildingListApi, getUnitListApi, getRoomListApi, callPayMentApi } from '@/api/api' import { getBuildingListApi, getUnitListApi, getRoomListApi, callPayMentApi } from '@/api/api'
import { JeecgListMixin } from '@/mixins/JeecgListMixin' import { downFile } from '@/api/manage'
import NoticeModal from './modules/NoticeModal' import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import {PAYMENT_STATUS, RELATION_SHIP, filterDictTextByStatic} from '@/assets/static.js' import NoticeModal from './modules/NoticeModal'
import { PAYMENT_STATUS, RELATION_SHIP, filterDictTextByStatic } from '@/assets/static.js'
const columns = [ const columns = [
{ {
title: '收费类型', title: '收费类型',
dataIndex: 'chargeTypeName', dataIndex: 'chargeTypeName',
key: 'chargeTypeName', key: 'chargeTypeName',
width: 120, width: 120,
align: 'center' align: 'center',
},
{
title: '收费项目',
dataIndex: 'chargeItem',
key: 'chargeItem',
width: 120,
align: 'center',
},
{
title: '业主',
dataIndex: 'ownerId',
key: 'ownerId',
width: 160,
scopedSlots: { customRender: 'ownerId' },
align: 'center',
},
{
title: '与业主关系',
dataIndex: 'relationShip',
key: 'relationShip',
width: 120,
align: 'center',
customRender: function (text) {
return filterDictTextByStatic(RELATION_SHIP, text)
}, },
{ },
title: '收费项目', {
dataIndex: 'chargeItem', title: '住户',
key: 'chargeItem', dataIndex: 'residentPhone',
width: 120, key: 'residentPhone',
align: 'center' width: 160,
scopedSlots: { customRender: 'residentPhone' },
align: 'center',
},
{
title: '房屋编号',
dataIndex: 'roomId',
scopedSlots: { customRender: 'roomId' },
key: 'roomId',
width: 140,
align: 'center',
},
{
title: '金额(元)',
dataIndex: 'totalAmount',
key: 'totalAmount',
width: 120,
align: 'center',
},
{
title: '本期读表时间',
dataIndex: 'meterReadingTime',
key: 'meterReadingTime',
width: 150,
align: 'center',
},
{
title: '缴费状态',
dataIndex: 'paymentStatus',
key: 'paymentStatus',
width: 120,
align: 'center',
customRender: function (text) {
return filterDictTextByStatic(PAYMENT_STATUS, text)
}, },
{ },
title: '业主', {
dataIndex: 'ownerId', title: '缴费单号',
key: 'ownerId', dataIndex: 'paymentNum',
width: 160, key: 'paymentNum',
scopedSlots: { customRender: 'ownerId' }, width: 120,
align: 'center' align: 'center',
},
{
title: '缴费日期',
dataIndex: 'paymentTime',
key: 'paymentTime',
width: 150,
align: 'center',
},
{
title: '创建日期',
dataIndex: 'createTime',
key: 'createTime',
width: 150,
align: 'center',
},
{
title: '操作',
dataIndex: 'action',
scopedSlots: { customRender: 'action' },
align: 'center',
width: 150,
fixed: 'right',
},
]
export default {
name: 'PermissionListAsync',
mixins: [JeecgListMixin],
components: { NoticeModal },
data() {
return {
// 表头
columns: columns,
url: {
list: '/property-community/payment/communityPayment/list',
delete: '/property-community/payment/communityPayment/delete',
deleteBatch: '/property-community/payment/communityPayment/deleteBatch',
exportXlsUrl: '/property-community/payment/communityPayment/exportXls',
importExcelUrl: 'property-community/payment/communityPayment/importExcel',
downloadExcelUrl: '/property-community/payment/communityPayment/downloadPaymentTemplate',
},
treeData: [],
}
},
created() {
this.getBuildingList()
// this.initDictData()
},
computed: {
importExcelUrl: function () {
return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
}, },
{ },
title: '与业主关系', methods: {
dataIndex: 'relationShip', onCheckboxProps(record) {
key: 'relationShip', let props = {
width: 120, disabled: record.paymentStatus === 'paid',
align: 'center', name: record.chargeTypeName,
customRender: function(text) {
return filterDictTextByStatic(RELATION_SHIP, text);
} }
return props
}, },
{ async getBuildingList() {
title: '住户', let { result } = await getBuildingListApi()
dataIndex: 'residentPhone', this.treeData = result.map((item) => {
key: 'residentPhone', return {
width: 160, title: item.buildingName,
scopedSlots: { customRender: 'residentPhone' }, key: item.id,
align: 'center' }
}, })
{
title: '房屋编号',
dataIndex: 'roomId',
scopedSlots: { customRender: 'roomId' },
key: 'roomId',
width: 140,
align: 'center'
},
{
title: '金额(元)',
dataIndex: 'totalAmount',
key: 'totalAmount',
width: 120,
align: 'center'
},
{
title: '本期读表时间',
dataIndex: 'meterReadingTime',
key: 'meterReadingTime',
width: 150,
align: 'center'
}, },
{ onClickTree(value, option) {
title: '缴费状态', console.log(value, option)
dataIndex: 'paymentStatus', let level = option.node.pos.split('-').length
key: 'paymentStatus', if (level === 2) {
width: 120, this.queryParam['buildingId'] = value[0]
align: 'center', this.queryParam['unitId'] = undefined
customRender: function(text) { this.queryParam['roomId'] = undefined
return filterDictTextByStatic(PAYMENT_STATUS, text);
} }
if (level === 3) {
this.queryParam['buildingId'] = undefined
this.queryParam['unitId'] = value[0]
this.queryParam['roomId'] = undefined
}
if (level === 4) {
this.queryParam['buildingId'] = undefined
this.queryParam['unitId'] = undefined
this.queryParam['roomId'] = value[0]
}
this.searchQuery()
}, },
{ onLoadData(treeNode) {
title: '缴费单号', return new Promise(async (resolve) => {
dataIndex: 'paymentNum', if (treeNode.dataRef.children) {
key: 'paymentNum', resolve()
width: 120, return
align: 'center' }
}, if (treeNode.pos.split('-').length === 2) {
{ let { result } = await getUnitListApi({ id: treeNode.eventKey })
title: '缴费日期', treeNode.dataRef.children = result.map((item) => {
dataIndex: 'paymentTime', return {
key: 'paymentTime', title: item.unitName,
width: 150, key: item.id,
align: 'center' }
})
this.treeData = [...this.treeData]
resolve()
} else {
let { result } = await getRoomListApi({ id: treeNode.eventKey })
treeNode.dataRef.children = result.map((item) => {
return {
title: item.roomNum,
key: item.id,
isLeaf: true,
}
})
this.treeData = [...this.treeData]
resolve()
}
})
}, },
{ onMeterReading() {
title: '创建日期', this.$refs.modalForm.add()
dataIndex: 'createTime', this.$refs.modalForm.title = '抄表'
key: 'createTime', this.$refs.modalForm.disableSubmit = false
width: 150,
align: 'center'
}, },
{ onBatchCallpay() {
title: '操作', // console.log(this.selectionRows)
dataIndex: 'action', let chooseIds = this.selectedRowKeys.join(',')
scopedSlots: { customRender: 'action' }, this.onCallPay(chooseIds)
align: 'center',
width: 150,
fixed: 'right'
}
]
export default {
name: 'PermissionListAsync',
mixins: [JeecgListMixin],
components: {NoticeModal},
data() {
return {
// 表头
columns: columns,
url: {
list: "/property-community/payment/communityPayment/list",
delete: '/property-community/payment/communityPayment/delete',
deleteBatch: '/property-community/payment/communityPayment/deleteBatch'
},
treeData: []
}
}, },
created () { onDetail(id) {
this.getBuildingList() this.$router.push({
// this.initDictData() path: '/property/living-detail?id=' + id,
})
}, },
methods: { onCallPay(chooseIds) {
onCheckboxProps(record) { let that = this
let props = { this.$confirm({
disabled: record.paymentStatus === 'paid', title: '催缴账单',
name: record.chargeTypeName content: '是否催缴当前选择的账单发送给对应业主?',
} onOk: function () {
return props that.loading = true
}, callPayMentApi({ chooseIds })
async getBuildingList() { .then((res) => {
let {result} = await getBuildingListApi()
this.treeData = result.map(item=> {
return {
title: item.buildingName,
key: item.id
}
})
},
onClickTree(value, optios) {
console.log(value, optios)
},
onLoadData(treeNode) {
return new Promise(async resolve => {
if (treeNode.dataRef.children) {
resolve();
return;
}
if(treeNode.pos.split('-').length === 2) {
let {result} = await getUnitListApi({id: treeNode.eventKey})
treeNode.dataRef.children = result.map(item=> {
return {
title: item.unitName,
key: item.id
}
})
this.treeData = [...this.treeData];
resolve();
} else {
let {result} = await getRoomListApi({id: treeNode.eventKey})
treeNode.dataRef.children = result.map(item=> {
return {
title: item.roomNum,
key: item.id,
isLeaf: true
}
})
this.treeData = [...this.treeData];
resolve();
}
});
},
onMeterReading() {
this.$refs.modalForm.add();
this.$refs.modalForm.title = "抄表";
this.$refs.modalForm.disableSubmit = false;
},
onBatchCallpay() {
// console.log(this.selectionRows)
let chooseIds = this.selectedRowKeys.join(',')
this.onCallPay(chooseIds)
},
onDetail(id) {
this.$router.push({
path: '/property/living-detail?id=' + id
});
},
onCallPay(chooseIds) {
let that = this
this.$confirm({
title: "催缴账单",
content: "是否催缴当前选择的账单发送给对应业主?",
onOk: function () {
that.loading = true;
callPayMentApi({chooseIds}).then((res) => {
if (res.success) { if (res.success) {
//重新计算分页问题 //重新计算分页问题
that.$message.success(res.message); that.$message.success(res.message)
// that.searchQuery(); // that.searchQuery();
that.onClearSelected(); that.onClearSelected()
} else { } else {
that.$message.warning(res.message); that.$message.warning(res.message)
} }
}).finally(() => { })
that.loading = false; .finally(() => {
}); that.loading = false
} })
}); },
} })
} },
} downloadExportXls() {
let fileName = '生活缴费模板'
downFile(this.url.downloadExcelUrl, '').then((data) => {
if (!data) {
this.$message.warning('文件下载失败')
return
}
if (typeof window.navigator.msSaveBlob !== 'undefined') {
window.navigator.msSaveBlob(new Blob([data], { type: 'application/vnd.ms-excel' }), fileName + '.xls')
} else {
let url = window.URL.createObjectURL(new Blob([data], { type: 'application/vnd.ms-excel' }))
let link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.setAttribute('download', fileName + '.xls')
document.body.appendChild(link)
link.click()
document.body.removeChild(link) //下载完成移除元素
window.URL.revokeObjectURL(url) //释放掉blob对象
}
})
},
},
}
</script> </script>
<style scoped> <style scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
</style> </style>
\ No newline at end of file
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
</a-col> </a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<a-form-model-item label="工单状态"> <a-form-model-item label="工单状态">
<a-select style="width: 100%" v-model="queryParam.useTo" placeholder="请选择工单状态"> <a-select style="width: 100%" v-model="queryParam.repairStatus" placeholder="请选择工单状态">
<a-select-option v-for="item in repairStatus" :key="item.value" :value="item.value">{{item.label}}</a-select-option> <a-select-option v-for="item in repairStatus" :key="item.value" :value="item.value">{{item.label}}</a-select-option>
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
......
...@@ -4,15 +4,15 @@ ...@@ -4,15 +4,15 @@
<a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="支付订单号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderNo"> <a-form-model-item label="支付订单号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="paymentNum">
<a-input v-model="model.orderNo" placeholder="请输入支付订单号"></a-input> <a-input v-model="model.paymentNum" placeholder="请输入支付订单号"></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <!-- <a-col :span="12">
<a-form-model-item label="支付金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="chargeMoney"> <a-form-model-item label="支付金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="totalAmount">
<a-input v-model="model.chargeMoney" placeholder="请输入支付金额"></a-input> <a-input v-model="model.totalAmount" placeholder="请输入支付金额"></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col> -->
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="业主" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ownerName"> <a-form-model-item label="业主" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ownerName">
<a-input v-model="model.ownerName" placeholder="请输入业主"></a-input> <a-input v-model="model.ownerName" placeholder="请输入业主"></a-input>
...@@ -24,15 +24,13 @@ ...@@ -24,15 +24,13 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="缴费类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="chargeType"> <a-form-model-item label="缴费类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="chargeItem">
<a-select style="width: 100%" v-model="model.chargeType" placeholder="请选择缴费类型"> <a-input v-model="model.chargeItem" placeholder="请输入房屋编号"></a-input>
<a-select-option v-for="item in dictOptions" :key="item.value" :value="item.value">{{item.label}}</a-select-option>
</a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="缴费金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="chargeMoney"> <a-form-model-item label="缴费金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="totalAmount">
<a-input v-model="model.chargeMoney" placeholder="请输入缴费金额"></a-input> <a-input v-model="model.totalAmount" placeholder="请输入缴费金额"></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
...@@ -41,16 +39,13 @@ ...@@ -41,16 +39,13 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="缴费时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="updateTime"> <a-form-model-item label="缴费时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="paymentTime">
<a-input v-model="model.updateTime" placeholder="请输入缴费时间"></a-input> <a-input v-model="model.paymentTime" placeholder="请输入缴费时间"></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="收据状态" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiptStatus"> <a-form-model-item label="收据状态" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiptStatus">
<a-select style="width: 100%" v-model="model.receiptStatus" placeholder="请选择收据状态"> <span :style="{'color': model.receiptStatus === '1' ? 'green' : 'red'}">{{model.receiptStatus === '1' ? '是' : '否'}}</span>
<a-select-option value="1">在职</a-select-option>
<a-select-option value="0">离职</a-select-option>
</a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<a-form-item label="订单编号"> <a-form-item label="订单编号">
<a-input placeholder="请输入订单编号" v-model="queryParam.orderNo"></a-input> <a-input placeholder="请输入订单编号" v-model="queryParam.paymentNum"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<!-- <a-col :md="6" :sm="8"> <!-- <a-col :md="6" :sm="8">
...@@ -68,13 +68,13 @@ ...@@ -68,13 +68,13 @@
class="j-table-force-nowrap" class="j-table-force-nowrap"
@change="handleTableChange" @change="handleTableChange"
> >
<span slot="employeeStatus" slot-scope="text, record"> <span slot="receiptStatus" slot-scope="text, record">
<span :style="{'color': record.employeeStatus === '1' ? 'green' : 'red'}">{{record.employeeStatus === '1' ? '在职' : '离职'}}</span> <span :style="{'color': record.receiptStatus === '1' ? 'green' : 'red'}">{{record.receiptStatus === '1' ? '是' : '否'}}</span>
</span> </span>
<span slot="action" slot-scope="text, record"> <span slot="action" slot-scope="text, record">
<!-- <a @click="handleEdit(record)">编辑</a> --> <!-- <a @click="handleEdit(record)">编辑</a> -->
<a @click="handleDetail(record)">查看</a> <a @click="handleDetail(record)">查看</a>
<a @click="onIssueReceipt(record)">开收据</a> <a @click="onIssueReceipt(record)" style="margin-left: 10px;">开收据</a>
<!-- <a-divider type="vertical"/> <!-- <a-divider type="vertical"/>
<a-dropdown> <a-dropdown>
...@@ -117,14 +117,14 @@ ...@@ -117,14 +117,14 @@
}, },
{ {
title: '业主', title: '业主',
dataIndex: 'ownerId', dataIndex: 'ownerName',
key: 'ownerId', key: 'ownerName',
align: 'center' align: 'center'
}, },
{ {
title: '订单编号', title: '订单编号',
dataIndex: 'orderNo', dataIndex: 'paymentNum',
key: 'orderNo', key: 'paymentNum',
align: 'center', align: 'center',
// customRender: function(text) { // customRender: function(text) {
// return filterDictTextByCache('duties', text); // return filterDictTextByCache('duties', text);
...@@ -132,8 +132,8 @@ ...@@ -132,8 +132,8 @@
}, },
{ {
title: '缴费类型', title: '缴费类型',
dataIndex: 'chargeType', dataIndex: 'chargeItem',
key: 'chargeType', key: 'chargeItem',
// scopedSlots: { customRender: 'employeeStatus' }, // scopedSlots: { customRender: 'employeeStatus' },
align: 'center' align: 'center'
}, },
...@@ -145,19 +145,20 @@ ...@@ -145,19 +145,20 @@
}, },
{ {
title: '缴费金额', title: '缴费金额',
dataIndex: 'chargeMoney', dataIndex: 'totalAmount',
key: 'chargeMoney', key: 'totalAmount',
align: 'center' align: 'center'
}, },
{ {
title: '缴费时间', title: '缴费时间',
dataIndex: 'createTime', dataIndex: 'paymentTime',
key: 'createTime', key: 'paymentTime',
align: 'center' align: 'center'
}, },
{ {
title: '收据状态', title: '收据状态',
dataIndex: 'receiptStatus', dataIndex: 'receiptStatus',
scopedSlots: { customRender: 'receiptStatus' },
key: 'receiptStatus', key: 'receiptStatus',
align: 'center' align: 'center'
}, },
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论