|
@@ -1,23 +1,42 @@
|
|
|
<template>
|
|
|
<div class="page-wrap page-wrap-put-books">
|
|
|
- <tool-bar
|
|
|
- :text="['official_name', 'book_name']"
|
|
|
- :label="['公众号名称', '书名']"
|
|
|
- @confirm="onSearch"
|
|
|
- v-model:loading="inSearching"
|
|
|
- >
|
|
|
+ <tool-bar :text="['official_name', 'book_name']"
|
|
|
+ :label="['公众号名称', '书名']"
|
|
|
+ @confirm="onSearch"
|
|
|
+ v-model:loading="inSearching">
|
|
|
<template #picker>
|
|
|
<p class="label">日期</p>
|
|
|
<a-range-picker />
|
|
|
</template>
|
|
|
</tool-bar>
|
|
|
- <a-table :columns="columns" :data-source="list" :scroll="{x: 1800}">
|
|
|
+ <a-table :columns="columns"
|
|
|
+ :data-source="list"
|
|
|
+ :scroll="{x: true}">
|
|
|
<template #operator="data">
|
|
|
<div class="confirm-button">
|
|
|
- <a-button type="link" @click="more(data.record)">更多</a-button>
|
|
|
+ <a-button type="link"
|
|
|
+ @click="more(data.record)">更多</a-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
</a-table>
|
|
|
+ <drawer-wrapper v-model:show="show"
|
|
|
+ title="更多数据"
|
|
|
+ :columns="drawercolumns"
|
|
|
+ :source="drawerlist"
|
|
|
+ :meta="meta"
|
|
|
+ @page-change="onPageChange"
|
|
|
+ :scroll="{x: true}"
|
|
|
+ width="90%">
|
|
|
+ <template #tool-bar>
|
|
|
+ <tool-bar :text="['official_name', 'book_name']"
|
|
|
+ :label="['公众号名称', '书名']"
|
|
|
+ @confirm="draweronSearch"
|
|
|
+ v-model:loading="drawerinSearching"></tool-bar>
|
|
|
+ </template>
|
|
|
+ <!-- <template #default="{ data }">
|
|
|
+ <p>{{ data.id }}</p>
|
|
|
+ </template>-->
|
|
|
+ </drawer-wrapper>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -25,26 +44,36 @@
|
|
|
import { defineComponent, reactive, toRefs, ref } from "vue";
|
|
|
|
|
|
import ToolBar from "@/components/tool-bar/index.vue";
|
|
|
+import DrawerWrapper from "@/components/drawer-wrapper/index.vue";
|
|
|
|
|
|
-import { TableColumnOfPutData } from "../_pageOptions/table-put";
|
|
|
+import {
|
|
|
+ TableColumnOfPutData,
|
|
|
+ TableColumnOfMoreStat,
|
|
|
+} from "../_pageOptions/table-put";
|
|
|
|
|
|
-import { getDeliveryStatList } from "@/api";
|
|
|
+import { getDeliveryStatList, getDeliveryMoreStatList } from "@/api";
|
|
|
import usePagination from "@/hooks/usePagination";
|
|
|
|
|
|
-import { deliveryPlanItem, PageOptions } from "@/types/api";
|
|
|
+import { deliveryPlanItem, PageOptions, moreStatPlanItem } from "@/types/api";
|
|
|
import useApp from "@/hooks/useApp";
|
|
|
|
|
|
const PutData = defineComponent({
|
|
|
components: {
|
|
|
ToolBar,
|
|
|
+ DrawerWrapper,
|
|
|
},
|
|
|
setup() {
|
|
|
const { router } = useApp();
|
|
|
let { loading, meta, tablePageOptions } = usePagination();
|
|
|
const state = reactive({
|
|
|
- list: ref<deliveryPlanItem[]>([]),
|
|
|
+ list: ref<any>([]),
|
|
|
+ drawerlist: ref<moreStatPlanItem[]>([]),
|
|
|
columns: TableColumnOfPutData,
|
|
|
+ drawercolumns: TableColumnOfMoreStat,
|
|
|
inSearching: false,
|
|
|
+ drawerinSearching: false,
|
|
|
+ drawermeta: {},
|
|
|
+ show: false,
|
|
|
});
|
|
|
const onSearch = async (fields: Record<string, string>) => {
|
|
|
try {
|
|
@@ -76,10 +105,45 @@ const PutData = defineComponent({
|
|
|
});
|
|
|
};
|
|
|
const more = (data: any) => {
|
|
|
- console.log(data.date);
|
|
|
- router.push({ path: "/put/datamore" });
|
|
|
+ // console.log(data.date);
|
|
|
+ // router.push({ path: "/put/datamore" });
|
|
|
+ state.show = true;
|
|
|
+ getDeliveryMoreStatList().then((r) => {
|
|
|
+ state.drawerlist = r.data.list;
|
|
|
+ state.drawermeta = r.data.meta;
|
|
|
+ });
|
|
|
+ };
|
|
|
+
|
|
|
+ const draweronSearch = async (fields: Record<string, string>) => {
|
|
|
+ try {
|
|
|
+ const { official_name, book_name, start_time, end_time } = fields;
|
|
|
+ const { data } = await getDeliveryMoreStatList({
|
|
|
+ start_time,
|
|
|
+ end_time,
|
|
|
+ official_name,
|
|
|
+ book_name,
|
|
|
+ page: 1,
|
|
|
+ });
|
|
|
+ state.drawerlist = data.list;
|
|
|
+ state.drawermeta = data.meta;
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ } finally {
|
|
|
+ console.log(state.drawerinSearching);
|
|
|
+ state.drawerinSearching = false;
|
|
|
+ }
|
|
|
+ };
|
|
|
+ const onPageChange = (page: Number) => {};
|
|
|
+
|
|
|
+ return {
|
|
|
+ ...toRefs(state),
|
|
|
+ onSearch,
|
|
|
+ handleTableChange,
|
|
|
+ meta,
|
|
|
+ more,
|
|
|
+ onPageChange,
|
|
|
+ draweronSearch,
|
|
|
};
|
|
|
- return { ...toRefs(state), onSearch, handleTableChange, meta, more };
|
|
|
},
|
|
|
});
|
|
|
|