Commit 4a3e39cb authored by “yiyousong”'s avatar “yiyousong”

feat:添加微官网注册报表

parent 72b270e3
...@@ -129,3 +129,11 @@ export function getStorageList(params) { ...@@ -129,3 +129,11 @@ export function getStorageList(params) {
export function getOtherList(params) { export function getOtherList(params) {
return http.post(`${BASEURL}/pickup/reportform/otherlist`, params); return http.post(`${BASEURL}/pickup/reportform/otherlist`, params);
} }
/**
* 微官网注册报表
*/
// 获取报表数据
export function getRigusersList(params) {
return http.get(`${BASEURL}/admin/reportforms/rigusers`, params);
}
...@@ -409,9 +409,10 @@ export default { ...@@ -409,9 +409,10 @@ export default {
5: "好差评", 5: "好差评",
6: "一体化评价", 6: "一体化评价",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.pjxt == keys) { if (item.pjxt == keys) {
...@@ -419,14 +420,8 @@ export default { ...@@ -419,14 +420,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"办事部门评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.togetevalist({ await this.togetevalist({
page: 1, page: 1,
size: -1, size: -1,
...@@ -440,13 +435,13 @@ export default { ...@@ -440,13 +435,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"办事部门评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"办事部门评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
// 删除 // 删除
......
...@@ -412,9 +412,10 @@ export default { ...@@ -412,9 +412,10 @@ export default {
5: "好差评", 5: "好差评",
6: "一体化评价", 6: "一体化评价",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.pjxt == keys) { if (item.pjxt == keys) {
...@@ -422,14 +423,8 @@ export default { ...@@ -422,14 +423,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"办理事项评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.togetevalist({ await this.togetevalist({
page: 1, page: 1,
size: -1, size: -1,
...@@ -443,13 +438,13 @@ export default { ...@@ -443,13 +438,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"办理事项评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"办理事项评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
// 删除 // 删除
......
...@@ -415,9 +415,10 @@ export default { ...@@ -415,9 +415,10 @@ export default {
5: "好差评", 5: "好差评",
6: "一体化评价", 6: "一体化评价",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.pjxt == keys) { if (item.pjxt == keys) {
...@@ -425,14 +426,8 @@ export default { ...@@ -425,14 +426,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"窗口服务评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.togetevalist({ await this.togetevalist({
page: 1, page: 1,
size: -1, size: -1,
...@@ -446,13 +441,13 @@ export default { ...@@ -446,13 +441,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"窗口服务评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"窗口服务评价记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
// 删除 // 删除
......
...@@ -301,9 +301,10 @@ export default { ...@@ -301,9 +301,10 @@ export default {
1: "本地打印", 1: "本地打印",
2: "在线提交", 2: "在线提交",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.type == keys) { if (item.type == keys) {
...@@ -311,14 +312,8 @@ export default { ...@@ -311,14 +312,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"填单记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.togetPrintList({ page: 1, size: -1 }) await this.togetPrintList({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -329,13 +324,13 @@ export default { ...@@ -329,13 +324,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"填单记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"填单记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
...@@ -332,9 +332,10 @@ export default { ...@@ -332,9 +332,10 @@ export default {
// 导出 // 导出
async handleExportTable() { async handleExportTable() {
this.btnLoading = true; this.btnLoading = true;
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
for (let item of data) { for (let item of data) {
Object.keys(this.statusItem).forEach((key) => { Object.keys(this.statusItem).forEach((key) => {
if (item.status == key) { if (item.status == key) {
...@@ -342,14 +343,8 @@ export default { ...@@ -342,14 +343,8 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"预约记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getOrderList({ page: 1, size: -1 }) await this.getOrderList({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -360,13 +355,13 @@ export default { ...@@ -360,13 +355,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"预约记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"预约记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
<template> <template>
<div> <div>
<a-drawer title="用户详情" placement="right" :closable="false" :visible="visible" closable @close="onClose" <a-drawer
width="600"> title="用户详情"
<div class="drawerMain"> :visible="visible"
<div class="drawerMain-top"> width="600"
<a-avatar :size="64" icon="user" /> @close="Visible = false"
<div class="drawer-user"> >
<span>NICKNAME</span> <div class="drawerMain">
<span class="userTips">实名认证</span> <div class="drawerMain-top">
<div class="userInfo"> <a-avatar :size="64" icon="user" />
男,四川,成都 <div class="drawer-user">
</div> <span>{{ userInfo.nickname || "--" }}</span>
</div> <span class="userTips">实名认证</span>
<div class="someUserInfo"> <div class="userInfo">{{ userInfo.idcard_Sex }},四川,成都</div>
<div class="infoBox"> </div>
<span class="infoTitle">openid:</span> <div class="someUserInfo">
<span class="infoContent">OPENID</span> <div class="infoBox">
</div> <span class="infoTitle">openid:</span>
<div class="infoBox"> <span class="infoContent">{{ userInfo.openid }}</span>
<span class="infoTitle">授权时间:</span>
<span class="infoContent">2022-11-07 16:00:00</span>
</div>
<div class="infoBox">
<span class="infoTitle">最近访问时间:</span>
<span class="infoContent">2022-11-07 16:00:00</span>
</div>
</div>
<a-divider />
<div class="someUserInfo">
<div class="infoBox">
<span class="infoTitle">证件类型:</span>
<span class="infoContent">身份证</span>
</div>
<div class="infoBox">
<span class="infoTitle">姓名:</span>
<span class="infoContent">刘德华</span>
</div>
<div class="infoBox">
<span class="infoTitle">身份证号:</span>
<span class="infoContent">513821199303021234</span>
</div>
<div class="infoBox">
<span class="infoTitle imgBox">身份证人像面:</span>
<span class="infoContent">
<img src="@/assets/images/logo.png" alt="">
</span>
</div>
<div class="infoBox">
<span class="infoTitle imgBox">身份证国徽面:</span>
<span class="infoContent">
<img src="@/assets/images/logo.png" alt="">
</span>
</div>
<div class="infoBox">
<span class="infoTitle">人脸认证:</span>
<span class="infoContent">
<span class="state">已通过</span>
</span>
</div>
<div class="infoBox">
<span class="infoTitle">认证时间:</span>
<span class="infoContent">513821199303021234</span>
</div>
</div>
<a-divider />
<div class="someUserInfo">
<b>区块链信息</b>
<div class="infoBox">
<span class="infoTitle">哈希值:</span>
<span class="infoContent">nd68as4d654q5w4d21ccx1cv5adsdaawqewd1c1c1zsda1s1gd2sa2</span>
</div>
<div class="infoBox">
<span class="infoTitle">区块高度:</span>
<span class="infoContent">2438265</span>
</div>
<div class="infoBox">
<span class="infoTitle">创建时间:</span>
<span class="infoContent">2022-11-07 16:00:00</span>
</div>
</div>
</div>
</div> </div>
</a-drawer> <div class="infoBox">
</div> <span class="infoTitle">授权时间:</span>
<span class="infoContent">{{ userInfo.create_time }}</span>
</div>
<div class="infoBox">
<span class="infoTitle">最近访问时间:</span>
<span class="infoContent">{{ userInfo.last_time || "--" }}</span>
</div>
</div>
<a-divider />
<div class="someUserInfo">
<div class="infoBox">
<span class="infoTitle">证件类型:</span>
<span class="infoContent">身份证</span>
</div>
<div class="infoBox">
<span class="infoTitle">姓名:</span>
<span class="infoContent">{{ userInfo.idcard_Name }}</span>
</div>
<div class="infoBox">
<span class="infoTitle">身份证号:</span>
<span class="infoContent">{{ userInfo.idcard_IDCardNo }}</span>
</div>
<div class="infoBox">
<span class="infoTitle imgBox">身份证人像面:</span>
<span class="infoContent">
<img v-if="userInfo.z_img" :src="userInfo.z_img" />
<span v-else>--</span>
</span>
</div>
<div class="infoBox">
<span class="infoTitle imgBox">身份证国徽面:</span>
<span class="infoContent">
<img v-if="userInfo.b_img" :src="userInfo.z_img" />
<span v-else>--</span>
</span>
</div>
<!-- <div class="infoBox">
<span class="infoTitle">人脸认证:</span>
<span class="infoContent">
<span class="state">已通过</span>
</span>
</div>
<div class="infoBox">
<span class="infoTitle">认证时间:</span>
<span class="infoContent">513821199303021234</span>
</div> -->
</div>
<a-divider />
<!-- <div class="someUserInfo">
<b>区块链信息</b>
<div class="infoBox">
<span class="infoTitle">哈希值:</span>
<span class="infoContent"
>nd68as4d654q5w4d21ccx1cv5adsdaawqewd1c1c1zsda1s1gd2sa2</span
>
</div>
<div class="infoBox">
<span class="infoTitle">区块高度:</span>
<span class="infoContent">2438265</span>
</div>
<div class="infoBox">
<span class="infoTitle">创建时间:</span>
<span class="infoContent">2022-11-07 16:00:00</span>
</div>
</div> -->
</div>
</div>
</a-drawer>
</div>
</template> </template>
<script> <script>
export default { export default {
name:"FormDetails", name: "FormDetails",
props:{ props: {
visible:Boolean visible: {
type: Boolean,
required: true,
default: false,
}, },
methods:{ userInfo: {
onClose(){ type: Object,
this.$emit('onClose') required: true,
} default: () => {
} return {};
} },
},
},
computed: {
Visible: {
get() {
return this.visible;
},
set(val) {
this.$emit("update:visible", val);
},
},
},
methods: {},
};
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.drawerMain { .drawerMain {
width: 70%; width: 70%;
height: 100%; height: 100%;
margin: 0 auto; margin: 0 auto;
text-align: center; text-align: center;
.drawer-user { .drawer-user {
margin: 10px 0; margin: 10px 0;
position: relative; position: relative;
font-size: 16px; font-size: 16px;
.userTips { .userTips {
position: absolute; position: absolute;
top: -2px; top: -2px;
display: inline-block; display: inline-block;
color: #1A7AF8; color: #1a7af8;
border: 1px solid #1A7AF8; border: 1px solid #1a7af8;
font-size: 12px; font-size: 12px;
border-radius: 4px; border-radius: 4px;
padding: 3px 6px; padding: 3px 6px;
margin-left: 10px; margin-left: 10px;
font-weight: 400; font-weight: 400;
}
.userInfo {
margin-top: 6px;
font-size: 12px;
}
} }
.someUserInfo { .userInfo {
.infoBox { margin-top: 6px;
width: 100%; font-size: 12px;
display: flex; }
justify-content: space-between; }
margin: 6px 0;
line-height: 25px;
.infoTitle { .someUserInfo {
display: inline-block; .infoBox {
width: 50%; width: 100%;
text-align: right; display: flex;
} justify-content: space-between;
margin: 6px 0;
line-height: 25px;
.infoContent { .infoTitle {
display: inline-block; display: inline-block;
width: 48%; width: 50%;
text-align: left; text-align: right;
} }
.state { .infoContent {
display: inline-block; display: inline-block;
padding: 0 6px; width: 48%;
border: 1px solid #40A850; text-align: left;
border-radius: 4px; }
color: #40A850;
}
.imgBox { .state {
line-height: 50px; display: inline-block;
} padding: 0 6px;
border: 1px solid #40a850;
border-radius: 4px;
color: #40a850;
}
img { .imgBox {
height: 50px; line-height: 50px;
width: auto; }
}
}
img {
height: 50px;
width: auto;
}
} }
}
} }
</style> </style>
\ No newline at end of file
<template> <template>
<div class="callRecord-Container"> <div class="callRecord-Container">
<div class="header_box"> <div class="header_box">
<div> <div>
<a-button type="success" @click="exportTable"> <a-button
<span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span> :loading="btnLoading"
</a-button> type="success"
</div> @click="handleExportTable"
<span> >
<a-input-group compact> <span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span>
<a-select default-value="Zhejiang" style="width:25%"> </a-button>
<a-select-option value="Zhejiang"> </div>
按事项 <span>
</a-select-option> <a-space>
<a-select-option value="Jiangsu"> <a-select v-model="searchForm.check_real">
按材料 <a-select-option value="-1"> 全部类型 </a-select-option>
</a-select-option> <a-select-option
</a-select> v-for="(v, key) in check_realList"
<a-input style="width:74.3%" v-model="searchName" placeholder="请输入评价人姓名或窗口编号搜索"> :key="key"
<a-icon slot="prefix" type="search" /> :value="key"
</a-input> >
</a-input-group> {{ v }}
<a-range-picker format="YYYY年MM月DD日" class="range_picker_style" @change="rangePickerChange" </a-select-option>
v-model="BegindAndEndTime"> </a-select>
</a-range-picker> <a-range-picker
<a-select placeholder="全部状态"> style="width: 200px"
<a-select-option value="001"> 打印 </a-select-option> format="YYYY-MM-DD"
<a-select-option value="002"> 在线提交 </a-select-option> valueFormat="YYYY-MM-DD"
</a-select> v-model="searchForm.time"
<a-button type="primary">搜索</a-button> >
</span> </a-range-picker>
</div> <a-input
<div class="main"> style="width: 200px"
<a-table size="small" bordered :row-key="(record) => record.id" :row-selection="{ v-model="searchForm.search"
selectedRowKeys: tableSelectedKeys, placeholder="请输入昵称关键字搜索"
onChange: onSelectChange, @pressEnter="handleSearch"
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading" >
:columns="tableHeaders" :dataSource="tableSourceData"> <a-icon slot="prefix" type="search" />
<template slot="用户头像" slot-scope="text, record, index"> </a-input>
<a-avatar :size="40" icon="user" /> <a-button type="primary" @click="handleSearch">搜索</a-button>
</template> <a-button @click="handleReset">重置</a-button>
<template slot="操作" slot-scope="text, record, index"> </a-space>
<a-button type="link" @click="showDrawer">详细信息</a-button> </span>
</template>
</a-table>
</div>
<!-- 详情抽屉效果 -->
<FormDetails @onClose="onClose" @showDrawer="showDrawer" :visible="visible"/>
</div> </div>
<div class="main">
<a-table
size="small"
bordered
:row-key="(record) => record.id"
:row-selection="{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}"
:scroll="{ y: 590 }"
:pagination="{
showTotal: (total) => `共 ${total} 条`,
current: current,
total: total,
pageSize: size,
showSizeChanger: true,
showQuickJumper: true,
pageSizeOptions: pageSizeOptions,
onChange: changePage,
onShowSizeChange: changSize,
}"
:loading="tableLoading"
:columns="tableHeaders"
:dataSource="tableSourceData"
>
<template slot="avater">
<a-avatar :size="40" icon="user" />
</template>
<template slot="action" slot-scope="text">
<a-button type="link" @click="showDrawer(text)">详细信息</a-button>
</template>
</a-table>
</div>
<!-- 详情抽屉效果 -->
<FormDetails :visible.sync="visible" :userInfo="userInfo" />
</div>
</template> </template>
<script> <script>
import table from "@/mixins/table"; import { getRigusersList } from "@/api/dataAdmin";
import { export2Excel } from "@/utils/js/exportExcel";
import FormDetails from "./components/FormDetails.vue"; import FormDetails from "./components/FormDetails.vue";
let check_realList = {
0: "未实名认证",
1: "实名认证",
};
let tHeader = [
// 导出的表头名信息
"openid",
"普通用户昵称",
"普通用户性别",
"普通用户省份",
"普通用户城市",
"授权时间",
"是否实名认证",
];
let filterVal = [
// 导出的表头字段名,需要导出表格字段名
"openid",
"nickname",
"idcard_Sex",
"普通用户省份",
"普通用户城市",
"create_time",
"是否实名认证",
];
export default { export default {
mixins: [table], name: "microForm",
name: "microForm", data() {
let tableHeaders = [
data() { {
return { title: "序号",
tableHeaders: [ dataIndex: "index",
{ width: "60px",
title: "序号", key: "index",
dataIndex: "index", align: "center",
width: "60px", customRender: (text, record, index) =>
key: "index", (this.current - 1) * this.size + index + 1,
align: "center", },
customRender: (text, record, index) => `${index + 1}`, {
}, title: "openid",
{ align: "center",
title: "openid", dataIndex: "openid",
align: "center", },
dataIndex: "openid", {
}, title: "普通用户昵称",
{ align: "center",
title: "普通用户昵称", customRender: (text) => text.nickname || "--",
align: "center", },
dataIndex: "普通用户昵称", {
}, title: "普通用户性别",
{ align: "center",
title: "普通用户性别", dataIndex: "idcard_Sex",
align: "center", },
dataIndex: "普通用户性别", {
}, title: "普通用户省份",
{ align: "center",
title: "普通用户省份", customRender: (text) => "--",
align: "center", },
dataIndex: "普通用户省份", {
}, title: "普通用户城市",
{ align: "center",
title: "普通用户城市", customRender: (text) => "--",
align: "center", },
dataIndex: "普通用户城市", {
}, title: "用户头像",
{ align: "center",
title: "用户头像", scopedSlots: {
align: "center", customRender: "avater",
dataIndex: "用户头像", },
scopedSlots: { },
customRender: "用户头像", {
}, title: "授权时间",
}, align: "center",
{ customRender: (text) => text.create_time || "--",
title: "授权时间", },
align: "center", {
dataIndex: "授权时间", title: "是否实名认证",
}, align: "center",
{ customRender: (text) => "--",
title: "是否实名认证", // customRender: (text) => text.create_time || "--",
align: "center", },
dataIndex: "是否实名认证", {
}, title: "操作",
{ align: "center",
title: "操作", scopedSlots: {
align: "center", customRender: "action",
dataIndex: "操作", },
scopedSlots: { },
customRender: "操作", ];
}, return {
}, tableHeaders,
], check_realList,
BegindAndEndTime: [], tHeader,
searchName: undefined, filterVal,
visible: false, visible: false,
}; btnLoading: false,
tableLoading: false,
searchForm: {
search: "",
check_real: "-1",
time: [
this.$moment(new Date()).format("YYYY-MM-DD"),
this.$moment(new Date()).format("YYYY-MM-DD"),
],
},
current: 1,
size: 10,
total: 0,
pageSizeOptions: ["10", "20", "30", "40", "50", "100", "200"],
tableSelectedKeys: [],
tableSelectedRows: [],
tableSourceData: [],
userInfo: {}, // 用户信息
};
},
components: {
FormDetails,
},
created() {
this.getRigusersList();
},
methods: {
// 获取记录报表
async getRigusersList(search = {}) {
let res = await getRigusersList({
page: this.current,
size: this.size,
check_real: this.searchForm.check_real,
begin_time: this.searchForm.time[0],
end_time: this.searchForm.time[1],
search: this.searchForm.search,
...search,
});
if (res.code == 1) {
let { data, total } = res.data;
this.total = total;
this.tableSourceData = data;
return data;
}
}, },
components: { // 翻页
FormDetails changePage(cur) {
this.current = cur;
this.getRigusersList();
}, },
mounted() { // 改变每页显示数量
this.setMoment(); changSize(cur, size) {
for (let key = 0; key < 20; key++) { this.current = cur;
this.tableSourceData.push({ this.size = size;
id: `00${key + 1}`, this.getRigusersList();
openid: `1313321${key + 1}`,
普通用户昵称: `唐3`,
普通用户性别: `男`,
普通用户省份: `四川`,
普通用户城市: `成都`,
授权时间: `2021-09-09 09:09:0${key + 1}`,
是否实名认证: `实名认证`,
});
}
}, },
methods: { // 搜索
rangePickerChange(val) { handleSearch() {
console.log(val); this.current = 1;
}, this.tableSelectedKeys = [];
this.tableSelectedRows = [];
QueueState(type) { this.getRigusersList();
switch (type) { },
case 0: // 重置搜索
return "type1"; handleReset() {
case 1: this.current = 1;
return "type2"; this.tableSelectedKeys = [];
default: this.tableSelectedRows = [];
return "type0"; this.searchForm = {
} search: "",
}, check_real: "-1",
time: [
showDrawer() { this.$moment(new Date()).format("YYYY-MM-DD"),
this.visible = true; this.$moment(new Date()).format("YYYY-MM-DD"),
}, ],
onClose() { };
this.visible = false; this.getRigusersList();
}, },
// 选中
onSelectChange(keys, rows) {
this.tableSelectedKeys = keys;
const res = new Map();
this.tableSelectedRows = [...this.tableSelectedRows, ...rows]
.filter((v) => {
return !res.has(v.id) && res.set(v.id, 1);
})
.filter((v) => {
return this.tableSelectedKeys.some((val) => v.id == val);
});
},
// 导出
async handleExportTable() {
this.btnLoading = true;
let data;
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示
data = this.$_.cloneDeep(this.tableSelectedRows);
// for (let item of data) {
// Object.keys(obj).forEach((key) => {
// if (item.type == key) {
// item.type = obj[key];
// }
// });
// }
} else {
data = this.$_.cloneDeep(
await this.getRigusersList({ page: 1, size: -1 })
);
if (!data.length) return;
// for (let item of data) {
// Object.keys(obj).forEach((key) => {
// if (item.type == key) {
// item.type = obj[key];
// }
// });
// }
}
export2Excel(
this.tHeader,
this.filterVal,
data,
"微官网注册报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false;
}, },
// 查看信息
showDrawer(row) {
this.userInfo = row;
this.visible = true;
},
},
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
/deep/.ant-spin-container { /deep/.ant-spin-container {
display: block; display: block;
} }
.header_box { .header_box {
padding-bottom: 1rem; padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
& > div {
display: flex; display: flex;
justify-content: space-between; justify-content: flex-start;
align-items: center; align-items: center;
&>div { b {
display: flex; font-style: normal;
justify-content: flex-start; font-weight: unset;
align-items: center; font-size: 16px;
margin-left: 20px;
b { i {
font-style: normal; color: #0595fd;
font-weight: unset; font-style: normal;
font-size: 16px; }
margin-left: 20px; }
i {
color: #0595fd;
font-style: normal;
}
}
sub { sub {
font-size: 14px; font-size: 14px;
font-style: normal; font-style: normal;
bottom: unset; bottom: unset;
margin-left: 20px; margin-left: 20px;
}
} }
}
} }
.tabFont { .tabFont {
font-size: 12px; font-size: 12px;
font-weight: 300; font-weight: 300;
} }
</style> </style>
......
...@@ -272,9 +272,10 @@ export default { ...@@ -272,9 +272,10 @@ export default {
1: "未取件", 1: "未取件",
2: "已取件", 2: "已取件",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
for (let item of data) { for (let item of data) {
Object.keys(obj).forEach((key) => { Object.keys(obj).forEach((key) => {
if (item.status == key) { if (item.status == key) {
...@@ -282,14 +283,8 @@ export default { ...@@ -282,14 +283,8 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"存件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getStorageList({ page: 1, size: -1 }) await this.getStorageList({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -300,13 +295,13 @@ export default { ...@@ -300,13 +295,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"存件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"存件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
...@@ -262,9 +262,10 @@ export default { ...@@ -262,9 +262,10 @@ export default {
2: "管理员", 2: "管理员",
3: "邮递员", 3: "邮递员",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
for (let item of data) { for (let item of data) {
Object.keys(obj).forEach((key) => { Object.keys(obj).forEach((key) => {
if (item.userType == key) { if (item.userType == key) {
...@@ -277,14 +278,8 @@ export default { ...@@ -277,14 +278,8 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"其他操作记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getOtherList({ page: 1, size: -1 }) await this.getOtherList({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -300,13 +295,13 @@ export default { ...@@ -300,13 +295,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"其他操作记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"其他操作记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
// 过滤操作类型 // 过滤操作类型
......
...@@ -201,7 +201,7 @@ export default { ...@@ -201,7 +201,7 @@ export default {
let res = await getSitePickupDevice(); let res = await getSitePickupDevice();
this.devList = res.data; this.devList = res.data;
}, },
// 获取取号记录报表 // 获取记录报表
async getPickupList(search = {}) { async getPickupList(search = {}) {
let res = await getPickupList({ let res = await getPickupList({
page: this.current, page: this.current,
...@@ -262,17 +262,17 @@ export default { ...@@ -262,17 +262,17 @@ export default {
return this.tableSelectedKeys.some((val) => v.id == val); return this.tableSelectedKeys.some((val) => v.id == val);
}); });
}, },
// 导出 // 导出
async handleExportTable() { async handleExportTable() {
this.btnLoading = true; this.btnLoading = true;
let data = [];
let obj = { let obj = {
1: "取件码取件", 1: "取件码取件",
2: "身份证取件", 2: "身份证取件",
}; };
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
for (let item of data) { for (let item of data) {
Object.keys(obj).forEach((key) => { Object.keys(obj).forEach((key) => {
if (item.type == key) { if (item.type == key) {
...@@ -280,14 +280,8 @@ export default { ...@@ -280,14 +280,8 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"取件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getPickupList({ page: 1, size: -1 }) await this.getPickupList({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -298,13 +292,13 @@ export default { ...@@ -298,13 +292,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"取件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"取件记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
...@@ -457,9 +457,10 @@ export default { ...@@ -457,9 +457,10 @@ export default {
1: "办理中", 1: "办理中",
4: "办理完成", 4: "办理完成",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.style == keys) { if (item.style == keys) {
...@@ -467,14 +468,8 @@ export default { ...@@ -467,14 +468,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"呼叫记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getCallQueListArr({ await this.getCallQueListArr({
page: 1, page: 1,
size: -1, size: -1,
...@@ -488,13 +483,13 @@ export default { ...@@ -488,13 +483,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"呼叫记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"呼叫记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
...@@ -451,9 +451,10 @@ export default { ...@@ -451,9 +451,10 @@ export default {
1: "办理中", 1: "办理中",
4: "办理完成", 4: "办理完成",
}; };
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
let data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => { data.forEach((item) => {
Object.keys(obj).forEach((keys) => { Object.keys(obj).forEach((keys) => {
if (item.style == keys) { if (item.style == keys) {
...@@ -461,14 +462,8 @@ export default { ...@@ -461,14 +462,8 @@ export default {
} }
}); });
}); });
export2Excel(
this.tHeader,
this.filterVal,
data,
"排队记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = this.$_.cloneDeep( data = this.$_.cloneDeep(
await this.getQueueDataArr({ page: 1, size: -1 }) await this.getQueueDataArr({ page: 1, size: -1 })
); );
if (!data.length) return; if (!data.length) return;
...@@ -479,13 +474,13 @@ export default { ...@@ -479,13 +474,13 @@ export default {
} }
}); });
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"排队记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"排队记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
...@@ -245,15 +245,14 @@ export default { ...@@ -245,15 +245,14 @@ export default {
// 导出 // 导出
async handleExportTable() { async handleExportTable() {
this.btnLoading = true; this.btnLoading = true;
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
export2Excel( // 深度克隆避免影响页面表格展示
this.tHeader, data = this.$_.cloneDeep(this.tableSelectedRows);
this.filterVal,
this.tableSelectedRows,
"样表记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} else { } else {
let data = await this.getBillList({ page: 1, size: -1 }); data = this.$_.cloneDeep(
await this.togetBillList({ page: 1, size: -1 })
);
if (!data.length) return; if (!data.length) return;
// for (let item of data) { // for (let item of data) {
// Object.keys(obj).forEach((key) => { // Object.keys(obj).forEach((key) => {
...@@ -262,13 +261,13 @@ export default { ...@@ -262,13 +261,13 @@ export default {
// } // }
// }); // });
// } // }
export2Excel(
this.tHeader,
this.filterVal,
data,
"样表记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
} }
export2Excel(
this.tHeader,
this.filterVal,
data,
"样表记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false; this.btnLoading = false;
}, },
}, },
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment