|
@@ -1,52 +1,59 @@
|
|
|
<template>
|
|
|
- <div>
|
|
|
- <BasicTable @register="registerTable">
|
|
|
- <template #toolbar>
|
|
|
- <a-button type="primary" @click="exportExcel" v-if="getCheckPerm('invoice-export')"> 导出</a-button>
|
|
|
+ <PageWrapper contentBackground>
|
|
|
+ <template #footer>
|
|
|
+ <a-tabs v-model:activeKey="incrementTypeId" @change="changeTable">
|
|
|
+ <a-tab-pane :key="0" tab="会员权益" >
|
|
|
+ <div class="desc-wrap-BasicTable">
|
|
|
+ <BasicTable @register="registerTable">
|
|
|
+ <template #toolbar>
|
|
|
+ <a-button type="primary" @click="handleInvoice"> 新增授权</a-button>
|
|
|
+ </template>
|
|
|
+ <template #action="{ record }">
|
|
|
+ <TableAction
|
|
|
+ stopButtonPropagation
|
|
|
+ :actions="[
|
|
|
+ {
|
|
|
+ label: '续费',
|
|
|
+ //icon: 'la:file-invoice-dollar',
|
|
|
+ onClick: headleDetails.bind(null, record),
|
|
|
+ }
|
|
|
+ ]"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+ </BasicTable>
|
|
|
+ </div>
|
|
|
+ </a-tab-pane>
|
|
|
+ <a-tab-pane :key="1" tab="场景下载" >
|
|
|
+ <div class="desc-wrap-BasicTable">
|
|
|
+ <BasicTable @register="registerDownTable">
|
|
|
+ <template #toolbar>
|
|
|
+ <a-button type="primary" @click="handleInvoice"> 新增下载</a-button>
|
|
|
+ </template>
|
|
|
+ </BasicTable>
|
|
|
+ </div>
|
|
|
+ </a-tab-pane>
|
|
|
+ </a-tabs>
|
|
|
</template>
|
|
|
- <template #action="{ record }">
|
|
|
- <TableAction
|
|
|
- stopButtonPropagation
|
|
|
- :actions="[
|
|
|
- {
|
|
|
- label: '开票登记',
|
|
|
- //icon: 'la:file-invoice-dollar',
|
|
|
- ifShow:getCheckPerm('invoice-checkin') && record.invoiced==0,
|
|
|
- onClick: handleInvoice.bind(null, record),
|
|
|
- },
|
|
|
- {
|
|
|
- label: '电子发票',
|
|
|
- ifShow:record.type == 2 && record.invoiced==1,
|
|
|
- //icon: 'simple-icons:invoiceninja',
|
|
|
- onClick: headleDetails.bind(null, record),
|
|
|
- },
|
|
|
- {
|
|
|
- label: '快递单号',
|
|
|
- ifShow:record.type != 2&& record.invoiced==1,
|
|
|
- //icon: 'icon-park-outline:express-delivery',
|
|
|
- onClick: headleDetails.bind(null, record),
|
|
|
- },
|
|
|
- ]"
|
|
|
- />
|
|
|
- </template>
|
|
|
- </BasicTable>
|
|
|
<AddModal @update="reload" @register="registerAddModal" />
|
|
|
<EditModal @register="registerEditModal" @update="reload" />
|
|
|
- </div>
|
|
|
+ <DownModal @register="registerDownModal" @update="reload" />
|
|
|
+ </PageWrapper>
|
|
|
</template>
|
|
|
<script lang="ts">
|
|
|
- import { defineComponent, h, reactive } from 'vue';
|
|
|
+ import { defineComponent, h, reactive, ref, computed } from 'vue';
|
|
|
import { BasicTable, useTable, TableAction, TableImg } from '/@/components/Table';
|
|
|
import { PageWrapper } from '/@/components/Page';
|
|
|
import { useModal } from '/@/components/Modal';
|
|
|
- import { Descriptions } from 'ant-design-vue';
|
|
|
+ import { Descriptions,Tabs } from 'ant-design-vue';
|
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
|
- import { InvoiceList,InvoiceExport } from '/@/api/order'
|
|
|
+ import { listApi, dowmListApi } from '/@/api/equity'
|
|
|
import { downloadByData } from '/@/utils/file/download'
|
|
|
- import { searchForm, columns } from './data'
|
|
|
+ import { useUserStore } from '/@/store/modules/user';
|
|
|
+ import { searchForm, columns, columnsDown, DownSchemas } from './data'
|
|
|
import AddModal from './InvoiceModal.vue';
|
|
|
import EditModal from './EditModal.vue';
|
|
|
+ import DownModal from './DownModal.vue'
|
|
|
import { usePermissionStore } from '/@/store/modules/permission';
|
|
|
interface apiDataParam {
|
|
|
orderSn?: string;
|
|
@@ -61,17 +68,24 @@
|
|
|
components: {
|
|
|
AddModal,
|
|
|
EditModal,
|
|
|
+ DownModal,
|
|
|
BasicTable,
|
|
|
TableAction,
|
|
|
PageWrapper,
|
|
|
TableImg,
|
|
|
[Descriptions.name]: Descriptions,
|
|
|
[Descriptions.Item.name]: Descriptions.Item,
|
|
|
+ [Tabs.name]: Tabs,
|
|
|
+ [Tabs.TabPane.name]: Tabs.TabPane,
|
|
|
},
|
|
|
setup() {
|
|
|
const { t } = useI18n();
|
|
|
+ const userStore = useUserStore();
|
|
|
const permissionStore = usePermissionStore();
|
|
|
+ const { afterLoginAction } = userStore
|
|
|
+ const agent = computed(() => userStore.getAgent);
|
|
|
const { getCheckPerm } = permissionStore;
|
|
|
+ const incrementTypeId = ref<number>(0); //0看看 、1看见、2深时
|
|
|
const apiData = reactive<apiDataParam>({
|
|
|
orderSn: '',
|
|
|
payTimeStart: '',
|
|
@@ -81,37 +95,21 @@
|
|
|
orderBy: '',
|
|
|
sortBy: '',
|
|
|
});
|
|
|
- const { createMessage,createConfirm } = useMessage();
|
|
|
+ const { createMessage, createConfirm } = useMessage();
|
|
|
const [registerAddModal, { openModal: openAddModal }] = useModal();
|
|
|
+ const [registerDownModal, { openModal: openDownModal }] = useModal();
|
|
|
const [registerEditModal, { openModal: openEditModal }] = useModal();
|
|
|
- const [registerTable, { reload }] = useTable({
|
|
|
- api: InvoiceList,
|
|
|
- title: '发票列表',
|
|
|
+ const [registerTable, { reload:reloadEqiuty }] = useTable({
|
|
|
+ api: listApi,
|
|
|
+ title: '',
|
|
|
// titleHelpMessage: ['已启用expandRowByClick', '已启用stopButtonPropagation'],
|
|
|
columns: columns,
|
|
|
useSearchForm: true,
|
|
|
formConfig: searchForm,
|
|
|
showTableSetting: true,
|
|
|
showIndexColumn:false,
|
|
|
+ searchInfo: { incrementTypeId:0 },
|
|
|
rowKey: 'id',
|
|
|
- beforeFetch:(params) =>{
|
|
|
- let searchData = {
|
|
|
- orderSn: params.orderSn,
|
|
|
- payTimeStart: params.payTime && params.payTime[0],
|
|
|
- payTimeEnd: params.payTime && params.payTime[1],
|
|
|
- invoiceTimeStart: params.invoiceTime && params.invoiceTime[0],
|
|
|
- invoiceTimeEnd: params.invoiceTime && params.invoiceTime[1],
|
|
|
- }
|
|
|
- apiData.orderSn = searchData.orderSn
|
|
|
- apiData.payTimeStart = searchData.payTimeStart
|
|
|
- apiData.payTimeEnd = searchData.payTimeEnd
|
|
|
- apiData.invoiceTimeStart = searchData.invoiceTimeStart
|
|
|
- apiData.invoiceTimeEnd = searchData.invoiceTimeEnd
|
|
|
- return {
|
|
|
- ...params,
|
|
|
- ...searchData,
|
|
|
- }
|
|
|
- },
|
|
|
fetchSetting: {
|
|
|
pageField: 'pageNum',
|
|
|
sizeField: 'pageSize',
|
|
@@ -127,13 +125,38 @@
|
|
|
},
|
|
|
canResize: false,
|
|
|
});
|
|
|
+ const [registerDownTable, { reload:reloadDown }] = useTable({
|
|
|
+ api: dowmListApi,
|
|
|
+ title: '',
|
|
|
+ // titleHelpMessage: ['已启用expandRowByClick', '已启用stopButtonPropagation'],
|
|
|
+ columns: columnsDown,
|
|
|
+ useSearchForm: true,
|
|
|
+ formConfig: DownSchemas,
|
|
|
+ showTableSetting: true,
|
|
|
+ showIndexColumn:false,
|
|
|
+ searchInfo: { incrementTypeId:1 },
|
|
|
+ rowKey: 'id',
|
|
|
+ fetchSetting: {
|
|
|
+ pageField: 'pageNum',
|
|
|
+ sizeField: 'pageSize',
|
|
|
+ listField: 'list',
|
|
|
+ totalField: 'total',
|
|
|
+ },
|
|
|
+ canResize: false,
|
|
|
+ });
|
|
|
function handleDelete(record: Recordable) {
|
|
|
console.log('点击了删除', record);
|
|
|
}
|
|
|
function handleInvoice(record: Recordable) {
|
|
|
- openAddModal(true, {
|
|
|
- ...record,
|
|
|
- });
|
|
|
+ if(incrementTypeId.value == 0){
|
|
|
+ openAddModal(true, {
|
|
|
+ ...record,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ openDownModal(true, {
|
|
|
+ ...record,
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
function handleEdit(record: Recordable) {
|
|
|
console.log('record', record);
|
|
@@ -144,6 +167,17 @@
|
|
|
...record,
|
|
|
});
|
|
|
}
|
|
|
+ function reload(value){
|
|
|
+ if(value){
|
|
|
+ afterLoginAction()
|
|
|
+ }
|
|
|
+ if(incrementTypeId.value == 0){
|
|
|
+ reloadEqiuty()
|
|
|
+ }else{
|
|
|
+ reloadDown()
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
function exportExcel() {
|
|
|
createConfirm({
|
|
|
iconType: 'warning',
|
|
@@ -156,6 +190,7 @@
|
|
|
}
|
|
|
return {
|
|
|
registerTable,
|
|
|
+ registerDownTable,
|
|
|
handleDelete,
|
|
|
registerAddModal,
|
|
|
registerEditModal,
|
|
@@ -164,7 +199,11 @@
|
|
|
handleEdit,
|
|
|
headleDetails,
|
|
|
reload,
|
|
|
+ reloadEqiuty,
|
|
|
+ reloadDown,
|
|
|
+ incrementTypeId,
|
|
|
getCheckPerm,
|
|
|
+ registerDownModal,
|
|
|
};
|
|
|
},
|
|
|
});
|