<template> <a-card :bordered="false"> <!-- 查询区域 --> <div class="table-page-search-wrapper"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :md="6" :sm="8"> <a-form-item label="订单编号"> <j-input placeholder="请输入订单编号" v-model="queryParam.paymentNum"></j-input> </a-form-item> </a-col> <!-- <a-col :md="6" :sm="8"> <a-form-model-item label="缴费类型"> <a-select style="width: 100%" v-model="queryParam.chargeType" placeholder="请选择缴费类型"> <a-select-option v-for="item in purposeOptions" :key="item.value" :value="item.value">{{item.label}}</a-select-option> </a-select> </a-form-model-item> </a-col> --> <!-- <a-col :md="6" :sm="8"> <a-form-model-item label="收据状态"> <a-select style="width: 100%" v-model="queryParam.receiptStatus" placeholder="请选择收据状态"> <a-select-option v-for="item in purposeOptions" :key="item.value" :value="item.value">{{item.label}}</a-select-option> </a-select> </a-form-model-item> </a-col> --> <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> <a-col :md="6" :sm="24"> <a-button type="primary" @click="searchQuery">查询</a-button> <a-button style="margin-left: 8px" @click="searchReset">重置</a-button> </a-col> </span> </a-row> </a-form> </div> <!-- 操作按钮区域 --> <div class="table-operator"> <!-- <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button> --> <!-- <a-button type="primary" icon="download" @click="handleExportXls('t_property_settled')">导出</a-button> --> <!-- <a-dropdown v-if="selectedRowKeys.length > 0"> <a-menu slot="overlay"> <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item> </a-menu> <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button> </a-dropdown> --> </div> <!-- table区域-begin --> <div> <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> <i class="anticon anticon-info-circle ant-alert-icon"></i>已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项 <a style="margin-left: 24px" v-if="selectedRowKeys.length > 0" @click="onClearSelected">清空</a> </div> <a-table ref="table" size="middle" :scroll="{x:true}" bordered rowKey="id" :columns="columns" :dataSource="dataSource" :pagination="ipagination" :loading="loading" :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" class="j-table-force-nowrap" @change="handleTableChange" > <span slot="roomName" slot-scope="text, record"> <span>{{record.buildingName}}{{record.unitName}}{{record.roomName}}</span> </span> <span slot="ownerName" slot-scope="text, record"> <span>{{record.ownerName}},{{record.ownerPhone}}</span> </span> <span slot="receiptStatus" slot-scope="text, record"> <span :style="{'color': record.receiptStatus === '1' ? 'green' : 'red'}">{{record.receiptStatus === '1' ? '是' : '否'}}</span> </span> <span slot="action" slot-scope="text, record"> <!-- <a @click="handleEdit(record)">编辑</a> --> <a @click="handleDetail(record)">查看</a> <a @click="onIssueReceipt(record)" style="margin-left: 10px;">开收据</a> </span> </a-table> </div> <!-- table区域-end --> <notice-modal ref="modalForm" @ok="modalFormOk"></notice-modal> <template-modal ref="templateModal"></template-modal> </a-card> </template> <script> import { JeecgListMixin } from '@/mixins/JeecgListMixin' import NoticeModal from './modules/NoticeModal' import templateModal from './templateModal' import {filterDictTextByCache} from '@/components/dict/JDictSelectUtil' const columns = [ { title: '房屋编号', dataIndex: 'roomName', scopedSlots: { customRender: 'roomName' }, key: 'roomName', align: 'center' }, { title: '业主', dataIndex: 'ownerName', scopedSlots: { customRender: 'ownerName' }, key: 'ownerName', align: 'center' }, { title: '订单编号', dataIndex: 'paymentNum', key: 'paymentNum', align: 'center', }, { title: '缴费类型', dataIndex: 'chargeTypeName', key: 'chargeTypeName', align: 'center' }, { title: '缴费周期(月)', dataIndex: 'chargeCycle', key: 'chargeCycle', align: 'center' }, { title: '缴费金额', dataIndex: 'totalAmount', key: 'totalAmount', align: 'center' }, { title: '缴费时间', dataIndex: 'paymentTime', key: 'paymentTime', align: 'center' }, { title: '收据状态', dataIndex: 'receiptStatus', scopedSlots: { customRender: 'receiptStatus' }, key: 'receiptStatus', align: 'center' }, { title: '操作', dataIndex: 'action', scopedSlots: { customRender: 'action' }, align: 'center', width: 150, fixed: 'right' } ] export default { name: 'PermissionListAsync', mixins: [JeecgListMixin], components: {NoticeModal, templateModal}, data() { return { // 表头 columns: columns, url: { list: "/property-community/payment/communityPayment/queryReceiptList", delete: '/property-community/property/communityReceipt/delete', deleteBatch: '/property-community/property/communityReceipt/deleteBatch' }, templateColumns: [ ], templateDta: [], pagination: { total: 0, current: 1, pageSize: 10, showSizeChanger: true } } }, methods: { onIssueReceipt(row) { console.log(this.$refs.templateModal) this.$refs.templateModal.onLoadTemplate() }, handleOk() {}, handleCancel() {}, } } </script> <style scoped> @import '~@assets/less/common.less'; </style>