-
-
-
-
-
-
-
-
-
{{ t.name }}
-
{{ t.note }}
-
-
-
-
-
+
+ 驳回后修改重报通过率
{{homeData?.reject?.repass_rate || 0}}%
+
驳回均留痕并附带理由,申请人可「修改重报」
-
-
处置子单(延期 / 转永久 / 恢复)均走简化审批并留痕,与本统计同源
-
-
-
-
-
-
- 主要驳回理由汇总({{period}} · 按驳回单数)
-
-
-
-
- {{ r.reason }}
-
-
- {{ r.n }} 起
-
-
-
可用于申请端填报质量改进:TOP2 理由已纳入 AI 预识别检查项
-
-
-
-
-
-
-
-
-
- 变更归档资料情况({{period}})
-
-
-
-
-
-
-
-
应归档 81 起 · 已归档 76 起
-
待补齐资料 5 起(已推送申请人补齐提醒)
-
归档包确认关闭后只读锁定,不可修改删除
-
-
-
-
资料缺项 TOP
-
-
-
{{ g.item }}缺失
-
-
- {{ g.n }}
-
-
-
-
-
-
-
归档构成(已关闭 81 起)
-
-
- {{ x.k }} {{ x.n }}
- {{ x.k }} {{ x.n }}
- {{ x.k }} {{ x.n }}
-
-
-
- 进入资料库 / 归档
+
+ 查看驳回单
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+ 各部门审批时长(天 · {{dateLabel}})
+
+
+
+ {{ e.org_name }}
+
+ {{ e.days }} 天
+
+
+
+
+
+
+
+
+
+ 临时变更后续处置方式({{dateLabel}})
+
+
+
+
+
+
+
+
办理延期
+
均符合「至多延期 1 次」
+
+
+
+
+
+
+
+
+
+
超期未处理
+
系统已推送超期提醒至申请人
+
+
+
+
+
处置子单(延期 / 转永久 / 恢复)均走简化审批并留痕,与本统计同源
+
+
+
+
+
+
+
+ 主要驳回理由汇总({{dateLabel}} · 按驳回单数)
+
+
+
+
+ {{ r.remark }}
+
+
+ {{ r.count }} 起
+
+
+
可用于申请端填报质量改进:TOP2 理由已纳入 AI 预识别检查项
+
+
+
+
+
+
+
+
+
+ 变更归档资料情况({{dateLabel}})
+
+
+
+
+
+
+ {{homeData?.archive?.rate || 0}}%
+
+
+
+
+
应归档 {{homeData?.archive?.should_total || 0}} 起 · 已归档 {{homeData?.archive?.archived_total || 0}} 起
+
待补齐资料 {{homeData?.archive?.pending_total || 0}} 起(已推送申请人补齐提醒)
+
归档包确认关闭后只读锁定,不可修改删除
+
+
+
+
资料缺项 TOP
+
+
+
{{ g.label }}
+
+
+ {{ g.count }}
+
+
+
+
+
+
+
归档构成(已关闭 {{homeData?.archive?.should_total || 0}} 起)
+
+ 资料齐全 {{ homeData?.archive?.archived_total || 0 }}
+
+ 缺培训签到 {{ x.count }}
+ 缺PSSR表 {{ x.count }}
+ 缺验收单 {{ x.count }}
+
+
+
+ 进入资料库 / 归档
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/report/modules/columnChart.vue b/src/views/report/modules/columnChart.vue
index 0e5f285..0638180 100644
--- a/src/views/report/modules/columnChart.vue
+++ b/src/views/report/modules/columnChart.vue
@@ -6,7 +6,7 @@ defineOptions({
name: 'RingChart'
});
-const props = defineProps<{ data: { name: string; value: number; }[]; }>();
+const props = defineProps<{ data: { org_name: string; count: number; }[]; }>();
const { domRef, updateOptions } = useEcharts(() => ({
tooltip: {
@@ -30,9 +30,9 @@ const { domRef, updateOptions } = useEcharts(() => ({
},
},
grid: {
- top: "5%",
- left: "5%",
- right: "5%",
+ top: "10%",
+ left: 0,
+ right: 0,
bottom: "11%",
},
calculable: true,
@@ -44,7 +44,8 @@ const { domRef, updateOptions } = useEcharts(() => ({
show: false,
},
axisLabel: {
- interval: 0,
+ interval: 'auto',
+ hideOverlap: true
},
splitLine: { show: false },
axisTick: { show: false },
@@ -72,8 +73,8 @@ const { domRef, updateOptions } = useEcharts(() => ({
function init() {
updateOptions(opts => {
- let allMonth = props.data.map((item:any) => item.name);
- let values = props.data.map((item:any) => item.value);
+ let allMonth = props.data.map((item:any) => item.org_name);
+ let values = props.data.map((item:any) => item.count);
opts.xAxis[0].data = allMonth;
opts.series[0].data = values;
return opts;
diff --git a/src/views/report/modules/ringChart.vue b/src/views/report/modules/ringChart.vue
index e8e23a8..82cd355 100644
--- a/src/views/report/modules/ringChart.vue
+++ b/src/views/report/modules/ringChart.vue
@@ -6,7 +6,8 @@ defineOptions({
name: 'RingChart'
});
-const props = defineProps<{ data?: { name: string; value: number }[]; colors?: string[] }>();
+const props = defineProps<{ data?: { name: string; value: number }[]; }>();
+const chartData = ref<{ name: string; value: number; }[]>([]);
const { domRef, updateOptions } = useEcharts(() => ({
tooltip: {
@@ -22,6 +23,25 @@ const { domRef, updateOptions } = useEcharts(() => ({
itemStyle: {
borderWidth: 0
},
+ textStyle: {
+ rich: {
+ name: {
+ padding: [0, 0, 0, 0],
+ },
+ count: {
+ padding: [0, 0, 0, 5],
+ fontWeight: 600,
+ },
+ }
+ },
+ formatter: function (name: string) {
+ var info = chartData.value?.find((item: { name: string }) => item.name === name);
+ if(info){
+ return '{name|'+name+'} {count|'+(info.value)+'}';
+ }else{
+ return name;
+ }
+ }
},
title: {
text: `{a|126}\n{b|总数}`,
@@ -50,7 +70,7 @@ const { domRef, updateOptions } = useEcharts(() => ({
series: [
{
type: 'pie',
- color: ['#5da8ff', '#8e9dff', '#fedc69', '#26deca'],
+ color: ["#2080f0", "#7CC242", "#F5A623"],
radius: ['45%', '65%'],
center: ['50%', '45%'],
avoidLabelOverlap: false,
@@ -72,8 +92,14 @@ const { domRef, updateOptions } = useEcharts(() => ({
function init() {
updateOptions(opts => {
- opts.series[0].data = props.data || [];
- opts.series[0].color = props.colors || [];
+ const total = props.data?.reduce((sum:number, item:any) => sum + item.count, 0);
+ const result:any = props.data?.map((item:any) => ({
+ name: item.label,
+ value: item.count,
+ }));
+ chartData.value = result || [];
+ opts.title.text = `{a|${total}}\n{b|总数}`;
+ opts.series[0].data = result || [];
return opts;
});
}