|
@@ -59,15 +59,21 @@
|
|
|
:data="state.tableData1"
|
|
|
@updateTable="queryList"
|
|
|
:loading="state.loading"
|
|
|
- :total="state.total"
|
|
|
+ :total="state.total1"
|
|
|
v-model:page-index="state.queryParams1.PageIndex"
|
|
|
v-model:page-size="state.queryParams1.PageSize"
|
|
|
:toolButton="['refresh', 'setting', 'exportCurrent', 'exportAll']"
|
|
|
- :exportMethod="statisticsOrderPublishExport"
|
|
|
+ :exportMethod="centerPublishUserListExport"
|
|
|
:exportParams="requestParams"
|
|
|
>
|
|
|
<template #table-search>
|
|
|
<el-form :model="state.queryParams1" ref="ruleFormRef1" @submit.native.prevent inline>
|
|
|
+ <el-form-item label="归档类型" prop="ProcessType">
|
|
|
+ <el-select v-model="state.queryParams1.ProcessType" placeholder="请选择归档类型" @change="handleQuery" class="w100" clearable>
|
|
|
+ <el-option label="中心归档" value="10" />
|
|
|
+ <el-option label="部门归档" value="20" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="时间段" prop="crTime">
|
|
|
<el-date-picker
|
|
|
v-model="state.queryParams1.crTime"
|
|
@@ -90,54 +96,76 @@
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</template>
|
|
|
+ <template #description>
|
|
|
+ <el-popover :width="500" trigger="click">
|
|
|
+ <template #reference>
|
|
|
+ <el-button circle title="口径说明"><SvgIcon name="ele-QuestionFilled" /></el-button>
|
|
|
+ </template>
|
|
|
+ <el-descriptions title="" :column="1" border style="max-height: 400px; overflow: auto">
|
|
|
+ <el-descriptions-item label="发布人">当前登录系统发布工单的用户</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="待发布量">待发布工单总数量</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="不公开发布量">勾选不公开发布的工单总量</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="公开发布量">勾选公开发布的工单总量</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="总量">待发布量+不公开发布量+公开发量</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </el-popover>
|
|
|
+ </template>
|
|
|
</ProTable>
|
|
|
</template>
|
|
|
<template v-if="state.active === 'list'">
|
|
|
- <ProTable
|
|
|
- ref="proTableRef2"
|
|
|
- :columns="columns2"
|
|
|
- :data="state.tableData2"
|
|
|
- @updateTable="queryList"
|
|
|
- :loading="state.loading"
|
|
|
- :total="state.total2"
|
|
|
- v-model:page-index="state.queryParams2.PageIndex"
|
|
|
- v-model:page-size="state.queryParams2.PageSize"
|
|
|
- :toolButton="['refresh', 'setting', 'exportCurrent', 'exportAll']"
|
|
|
- :exportMethod="statisticsOrderPublishExport"
|
|
|
- :exportParams="requestParams"
|
|
|
- >
|
|
|
- <template #table-search>
|
|
|
- <el-form :model="state.queryParams2" ref="ruleFormRef2" @submit.native.prevent inline>
|
|
|
- <el-form-item label="归档类型" prop="FiledType">
|
|
|
- <el-select v-model="state.queryParams2.FiledType" placeholder="请选择归档类型" @change="handleQuery" class="w100">
|
|
|
- <el-option label="中心归档" value="10" />
|
|
|
- <el-option label="部门归档" value="20" />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="时间段" prop="crTime">
|
|
|
- <el-date-picker
|
|
|
- v-model="state.queryParams2.crTime"
|
|
|
- type="daterange"
|
|
|
- unlink-panels
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始时间"
|
|
|
- end-placeholder="结束时间"
|
|
|
- :shortcuts="shortcuts"
|
|
|
- @change="handleQuery"
|
|
|
- value-format="YYYY-MM-DD"
|
|
|
- :clearable="false"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label-width="0">
|
|
|
- <el-button type="primary" @click="handleQuery" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
|
|
|
- <el-button @click="resetQuery(queryParams2)" class="default-button" :loading="state.loading">
|
|
|
- <SvgIcon name="ele-Refresh" class="mr5" />重置
|
|
|
- </el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- </template>
|
|
|
- </ProTable>
|
|
|
- </template>
|
|
|
+ <ProTable
|
|
|
+ ref="proTableRef2"
|
|
|
+ :columns="columns2"
|
|
|
+ :data="state.tableData2"
|
|
|
+ @updateTable="queryList"
|
|
|
+ :loading="state.loading"
|
|
|
+ :total="state.total2"
|
|
|
+ v-model:page-index="state.queryParams2.PageIndex"
|
|
|
+ v-model:page-size="state.queryParams2.PageSize"
|
|
|
+ :toolButton="['refresh', 'setting', 'exportCurrent', 'exportAll']"
|
|
|
+ :exportMethod="centerPublishListExport"
|
|
|
+ :exportParams="requestParams"
|
|
|
+ >
|
|
|
+ <template #table-search>
|
|
|
+ <el-form :model="state.queryParams2" ref="ruleFormRef2" @submit.native.prevent inline>
|
|
|
+ <el-form-item label="时间段" prop="crTime">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="state.queryParams2.crTime"
|
|
|
+ type="daterange"
|
|
|
+ unlink-panels
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始时间"
|
|
|
+ end-placeholder="结束时间"
|
|
|
+ :shortcuts="shortcuts"
|
|
|
+ @change="handleQuery"
|
|
|
+ value-format="YYYY-MM-DD"
|
|
|
+ :clearable="false"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="0">
|
|
|
+ <el-button type="primary" @click="handleQuery" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
|
|
|
+ <el-button @click="resetQuery(queryParams2)" class="default-button" :loading="state.loading">
|
|
|
+ <SvgIcon name="ele-Refresh" class="mr5" />重置
|
|
|
+ </el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </template>
|
|
|
+ <template #description>
|
|
|
+ <el-popover :width="500" trigger="click">
|
|
|
+ <template #reference>
|
|
|
+ <el-button circle title="口径说明"><SvgIcon name="ele-QuestionFilled" /></el-button>
|
|
|
+ </template>
|
|
|
+ <el-descriptions title="" :column="1" border style="max-height: 400px; overflow: auto">
|
|
|
+ <el-descriptions-item label="发布时间">工单发布时间</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="办理部门">工单最后办理部门</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="待发布">工单待发布件</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="发布公开">单发布勾选公开</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="发布不公开">工单发布勾选不公开</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </el-popover>
|
|
|
+ </template>
|
|
|
+ </ProTable>
|
|
|
+ </template>
|
|
|
</el-card>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -146,7 +174,14 @@ import { onMounted, reactive, ref } from 'vue';
|
|
|
import { FormInstance } from 'element-plus';
|
|
|
import { defaultDate, shortcuts } from '@/utils/constants';
|
|
|
import Other from '@/utils/other';
|
|
|
-import { statisticsOrderPublish,statisticsOrderPublishExport } from '@/api/statistics/center';
|
|
|
+import {
|
|
|
+ centerPublish,
|
|
|
+ centerPublishList,
|
|
|
+ centerPublishUserList,
|
|
|
+ centerPublishListExport,
|
|
|
+ centerPublishUserListExport,
|
|
|
+} from '@/api/statistics/center';
|
|
|
+import { formatDate } from '@/utils/formatTime';
|
|
|
|
|
|
const proTableRef = ref<RefType>(); // 表格ref
|
|
|
// 表格配置项
|
|
@@ -165,9 +200,8 @@ const state = reactive<any>({
|
|
|
StartTime: null,
|
|
|
EndTime: null,
|
|
|
},
|
|
|
- tableData: [], //表单
|
|
|
+
|
|
|
loading: false, // 加载
|
|
|
- total: 0, // 总数
|
|
|
active: 'pie',
|
|
|
queryParams1: {
|
|
|
crTime: defaultDate, //
|
|
@@ -175,14 +209,16 @@ const state = reactive<any>({
|
|
|
EndTime: null,
|
|
|
PageIndex: 1,
|
|
|
PageSize: 10,
|
|
|
+ ProcessType: null,
|
|
|
},
|
|
|
- queryParams2:{
|
|
|
+ tableData1: [], //表单
|
|
|
+ total1: 0, // 总数
|
|
|
+ queryParams2: {
|
|
|
crTime: defaultDate, //
|
|
|
StartTime: null,
|
|
|
EndTime: null,
|
|
|
PageIndex: 1,
|
|
|
PageSize: 10,
|
|
|
- FiledType:null
|
|
|
},
|
|
|
tableData2: [], //表单
|
|
|
total2: 0, // 总数
|
|
@@ -204,18 +240,19 @@ const queryList = async () => {
|
|
|
requestParams.value.StartTime = state.queryParams.crTime === null ? null : state.queryParams.crTime[0];
|
|
|
requestParams.value.EndTime = state.queryParams.crTime === null ? null : state.queryParams.crTime[1];
|
|
|
Reflect.deleteProperty(requestParams.value, 'crTime');
|
|
|
+ const response = await centerPublish(requestParams.value);
|
|
|
state.tableData = [
|
|
|
{
|
|
|
label: '待发布',
|
|
|
- num: 1731,
|
|
|
+ num: response.result.waitCount,
|
|
|
},
|
|
|
{
|
|
|
label: '发布公开',
|
|
|
- num: 60,
|
|
|
+ num: response.result.publicCount,
|
|
|
},
|
|
|
{
|
|
|
label: '发布不公开',
|
|
|
- num: 37918,
|
|
|
+ num: response.result.privateCount,
|
|
|
},
|
|
|
];
|
|
|
const xData = state.tableData.map((item: any) => item.label);
|
|
@@ -238,8 +275,9 @@ const queryList = async () => {
|
|
|
requestParams.value.StartTime = state.queryParams1.crTime === null ? null : state.queryParams1.crTime[0];
|
|
|
requestParams.value.EndTime = state.queryParams1.crTime === null ? null : state.queryParams1.crTime[1];
|
|
|
Reflect.deleteProperty(requestParams.value, 'crTime');
|
|
|
- const { result} = await statisticsOrderPublish(requestParams.value);
|
|
|
- console.log(result)
|
|
|
+ const { result } = await centerPublishUserList(requestParams.value);
|
|
|
+ state.tableData1 = result.items ?? [];
|
|
|
+ state.total1 = result.total;
|
|
|
state.loading = false;
|
|
|
break;
|
|
|
case 'list': // 列表
|
|
@@ -247,6 +285,9 @@ const queryList = async () => {
|
|
|
requestParams.value.StartTime = state.queryParams2.crTime === null ? null : state.queryParams2.crTime[0];
|
|
|
requestParams.value.EndTime = state.queryParams2.crTime === null ? null : state.queryParams2.crTime[1];
|
|
|
Reflect.deleteProperty(requestParams.value, 'crTime');
|
|
|
+ const listResponse = await centerPublishList(requestParams.value);
|
|
|
+ state.tableData2 = listResponse.result?.items ?? [];
|
|
|
+ state.total2 = listResponse.result?.total;
|
|
|
state.loading = false;
|
|
|
break;
|
|
|
default:
|
|
@@ -366,11 +407,19 @@ const columns1 = ref<any[]>([
|
|
|
{ prop: 'totalCount', label: '总量', align: 'center' },
|
|
|
]);
|
|
|
const columns2 = ref<any[]>([
|
|
|
- { prop: 'label', label: '发布时间', align: 'center' },
|
|
|
- { prop: 'num', label: '办理部门', align: 'center',minWidth: 150 },
|
|
|
- { prop: 'num', label: '待发布', align: 'center' },
|
|
|
- { prop: 'num', label: '发布公开', align: 'center' },
|
|
|
- { prop: 'num', label: '发布不公开', align: 'center' },
|
|
|
+ {
|
|
|
+ prop: 'publishTime',
|
|
|
+ label: '发布时间',
|
|
|
+ align: 'center',
|
|
|
+ minWidth: 160,
|
|
|
+ render: (scope) => {
|
|
|
+ return <span>{formatDate(scope.row.publishTime, 'YYYY-mm-dd')}</span>;
|
|
|
+ },
|
|
|
+ },
|
|
|
+ { prop: 'name', label: '办理部门', align: 'center', minWidth: 150 },
|
|
|
+ { prop: 'waitCount', label: '待发布', align: 'center' },
|
|
|
+ { prop: 'publicCount', label: '发布公开', align: 'center' },
|
|
|
+ { prop: 'privateCount', label: '发布不公开', align: 'center' },
|
|
|
]);
|
|
|
onMounted(() => {
|
|
|
queryList();
|