diff --git a/src/api/attendance.js b/src/api/attendance.js
index 53d6265..57ec8d9 100644
--- a/src/api/attendance.js
+++ b/src/api/attendance.js
@@ -51,3 +51,11 @@ export function preDistance(params) {
params
})
}
+
+export function leaveByYear(params) {
+ return request({
+ method: 'get',
+ url: '/api/oa/statistics/leave-by-year',
+ params
+ })
+}
diff --git a/src/icons/svg/year-statistics.svg b/src/icons/svg/year-statistics.svg
new file mode 100644
index 0000000..b268725
--- /dev/null
+++ b/src/icons/svg/year-statistics.svg
@@ -0,0 +1 @@
+
diff --git a/src/views/attendance/YearStatistics.vue b/src/views/attendance/YearStatistics.vue
new file mode 100644
index 0000000..0d7e4b2
--- /dev/null
+++ b/src/views/attendance/YearStatistics.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
diff --git a/src/views/flow/components/MultiDeal.vue b/src/views/flow/components/MultiDeal.vue
index a86e3cb..e181ebb 100644
--- a/src/views/flow/components/MultiDeal.vue
+++ b/src/views/flow/components/MultiDeal.vue
@@ -39,6 +39,12 @@
field="id"
title="流水号"
>
+
+
{
+ let options = []
+ if (field.show_in_list && field.type !== 'relation' && data[field.name]) {
+ if (field?.selection_model) {
+ options = field.selection_model_items || [];
+ }
+ text += `${field.label}:${(field?.selection_model ? options.find(j => j.id === data[field.name])?.name : data[field.name]) ?? '-'}。\n`
+ }
+ row._simple = text
+ })
+ },
cellClickEvent(e) {
if (e.column?.field !== 'title') return
this.listPopoverId = e.row.id
@@ -539,6 +560,9 @@ export default {
try {
const res = await flowList(this.$route.params.type, this.select, false);
console.log(res);
+ if (this.$route.params.type === 'todo') {
+ res.data?.data?.forEach(i => this.contentFormatter(i))
+ }
this.list = res?.data?.data || [];
this.total = res?.data?.total ?? 0;
this.models = res.customModels;