From 7041b2e8a0e9ff955f50d59c8d5c3dc3185396a6 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 11 十一月 2025 17:38:08 +0800
Subject: [PATCH] feat: s
---
src/views/EmploymentManage/EmploymentSignList.vue | 34 +----
src/views/EmploymentManage/TaskManageList.vue | 85 ++-----------
src/views/EmploymentManage/CheckReceiveTaskDetail.vue | 36 +----
src/router/index.ts | 107 -----------------
src/views/EmploymentManage/CheckManage.vue | 28 +---
src/views/EmploymentManage/EmploymentManageArrange.vue | 22 +--
6 files changed, 52 insertions(+), 260 deletions(-)
diff --git a/src/router/index.ts b/src/router/index.ts
index 908eab2..07632d9 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -96,113 +96,6 @@
},
},
{
- path: '/EmploymentManage',
- redirect: 'noRedirect',
- component: Layout,
- hidden: false,
- alwaysShow: true,
- meta: {
- rank: 10020,
- title: '鐢ㄤ汉绠$悊',
- rootMenu: true,
- icon: 'home',
- },
- children: [
- {
- path: '/TaskManageList',
- name: 'TaskManageList',
- hidden: false,
- alwaysShow: true,
- component: () => import('@/views/EmploymentManage/TaskManageList.vue'),
- meta: {
- rank: 10021,
- title: '浠诲姟绠$悊',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/AddOrEditEmployment/:id?',
- name: 'AddOrEditEmployment',
- hidden: true,
- alwaysShow: false,
- component: () => import('@/views/EmploymentManage/AddOrEditEmployment.vue'),
- meta: {
- rank: 10022,
- title: '鍙戝竷缂栬緫浜哄憳',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/EmploymentManageDetail/:id',
- name: 'EmploymentManageDetail',
- hidden: true,
- alwaysShow: false,
- component: () => import('@/views/EmploymentManage/EmploymentManageDetail.vue'),
- meta: {
- rank: 10023,
- title: '浜哄憳绠$悊璇︽儏',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/EmploymentSignList/:id',
- name: 'EmploymentSignList',
- hidden: true,
- alwaysShow: false,
- component: () => import('@/views/EmploymentManage/EmploymentSignList.vue'),
- meta: {
- rank: 10024,
- title: '鎶ュ悕鍒楄〃',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/EmploymentManageArrange/:id',
- name: 'EmploymentManageArrange',
- hidden: true,
- alwaysShow: false,
- component: () => import('@/views/EmploymentManage/EmploymentManageArrange.vue'),
- meta: {
- rank: 10025,
- title: '浜哄憳瀹夋帓',
- // rootMenu: true,
- icon: 'home',
- },
- },
-
- {
- path: '/CheckManage',
- name: 'CheckManage',
- hidden: false,
- alwaysShow: true,
- component: () => import('@/views/EmploymentManage/CheckManage.vue'),
- meta: {
- rank: 10030,
- title: '楠屾敹绠$悊',
- // rootMenu: true,
- icon: 'home',
- },
- },
- {
- path: '/CheckReceiveTaskDetail/:id',
- name: 'CheckReceiveTaskDetail',
- hidden: true,
- alwaysShow: false,
- component: () => import('@/views/EmploymentManage/CheckReceiveTaskDetail.vue'),
- meta: {
- rank: 10031,
- title: '楠屾敹璇︽儏',
- // rootMenu: true,
- icon: 'home',
- },
- },
- ],
- },
- {
path: '/ServiceChargeManage',
redirect: 'noRedirect',
component: Layout,
diff --git a/src/views/EmploymentManage/CheckManage.vue b/src/views/EmploymentManage/CheckManage.vue
index d1a95ab..7e7ac26 100644
--- a/src/views/EmploymentManage/CheckManage.vue
+++ b/src/views/EmploymentManage/CheckManage.vue
@@ -36,11 +36,7 @@
</QueryFilterItem>
</template>
</ProTableQueryFilterBar>
- <ProTableV2
- v-bind="proTableProps"
- :columns="CheckManageColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
</LoadingLayout>
@@ -57,10 +53,8 @@
useTable,
FieldDatePicker,
FieldRadio,
- defineOperationBtns,
useFormDialog,
} from '@bole-core/components';
-import { CheckManageColumns } from './constants';
import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
import { ModelValueType } from 'element-plus';
import { downloadFileByUrl, format, OrderUtils, setOSSLink } from '@/utils';
@@ -70,21 +64,13 @@
name: 'CheckManage',
});
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
onClick: (role) => goCheckReceiveTaskDetail(role),
},
},
- {
- data: {
- enCode: 'exportBtn',
- name: '瀵煎嚭',
- },
+ exportBtn: {
emits: {
onClick: (role) => handleExport(role),
},
@@ -93,7 +79,11 @@
row.checkReceiveStatus !== EnumTaskCheckReceiveStatus.Completed,
},
},
-]);
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const router = useRouter();
diff --git a/src/views/EmploymentManage/CheckReceiveTaskDetail.vue b/src/views/EmploymentManage/CheckReceiveTaskDetail.vue
index 195a931..c0e74fa 100644
--- a/src/views/EmploymentManage/CheckReceiveTaskDetail.vue
+++ b/src/views/EmploymentManage/CheckReceiveTaskDetail.vue
@@ -40,11 +40,7 @@
</ProForm>
</el-card>
- <ProTableV2
- v-bind="proTableProps"
- :columns="CheckReceiveTaskDetailColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
<CheckManageDialog v-bind="dialogProps" />
@@ -59,7 +55,6 @@
AppContainer,
useTable,
useFormDialog,
- defineOperationBtns,
ProForm,
ProFormCol,
ProFormColItem,
@@ -69,7 +64,6 @@
import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
import * as taskServices from '@/services/api/task';
import { useQuery } from '@tanstack/vue-query';
-import { CheckReceiveTaskDetailColumns } from './constants';
import { OrderUtils } from '@/utils';
import { EnumBillingMethodUnitText, EnumBillingMethod, EnumBillingMethodText } from '@/constants';
import dayjs from 'dayjs';
@@ -80,31 +74,17 @@
name: 'CheckReceiveTaskDetail',
});
-const operationBtns = defineOperationBtns([
- // {
- // data: {
- // enCode: 'exportBtn',
- // name: '楠屾敹',
- // },
- // emits: {
- // onClick: (role) => openDialog(role),
- // },
- // extraProps: {
- // hide: (row: API.GetCheckReceiveTaskQueryResultItem) =>
- // row.checkReceiveStatus === EnumTaskCheckReceiveStatus.Completed ||
- // state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn,
- // },
- // },
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
onClick: (role) => openDialog(role, true),
},
},
-]);
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const route = useRoute();
const id = (route.params.id as string) ?? '';
diff --git a/src/views/EmploymentManage/EmploymentManageArrange.vue b/src/views/EmploymentManage/EmploymentManageArrange.vue
index 017f5c4..573d5d4 100644
--- a/src/views/EmploymentManage/EmploymentManageArrange.vue
+++ b/src/views/EmploymentManage/EmploymentManageArrange.vue
@@ -33,11 +33,7 @@
</QueryFilterItem>
</template>
</ProTableQueryFilterBar>
- <ProTableV2
- v-bind="proTableProps"
- :columns="EmploymentArrangeColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
</LoadingLayout>
@@ -54,9 +50,7 @@
useTable,
FieldDatePicker,
FieldRadio,
- defineOperationBtns,
} from '@bole-core/components';
-import { EmploymentArrangeColumns } from './constants';
import { Message } from '@bole-core/core';
import * as taskUserServices from '@/services/api/taskUser';
import {
@@ -68,12 +62,8 @@
name: 'EmploymentManageArrange',
});
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'arrangeBtn',
- name: '瀹夋帓',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ arrangeBtn: {
emits: {
onClick: (role) => handleArrange(role),
},
@@ -82,7 +72,11 @@
row.arrangeStatus === EnumTaskUserArrangeStatus.Complete,
},
},
-]);
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const router = useRouter();
const route = useRoute();
diff --git a/src/views/EmploymentManage/EmploymentSignList.vue b/src/views/EmploymentManage/EmploymentSignList.vue
index cbd0382..9ef4fb9 100644
--- a/src/views/EmploymentManage/EmploymentSignList.vue
+++ b/src/views/EmploymentManage/EmploymentSignList.vue
@@ -24,11 +24,7 @@
</QueryFilterItem>
</template>
</ProTableQueryFilterBar>
- <ProTableV2
- v-bind="proTableProps"
- :columns="EmploymentSignColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
<StaffInfoDialog v-bind="dialogStaffInfoProps" />
@@ -45,11 +41,9 @@
QueryFilterItem,
useTable,
FieldRadio,
- defineOperationBtns,
useFormDialog,
UploadUserFile,
} from '@bole-core/components';
-import { EmploymentSignColumns } from './constants/columns';
import { Message } from '@bole-core/core';
import { EnumUserGender, EnumTaskUserHireStatusText } from '@/constants';
import StaffInfoDialog from '@/views/FlexJobManage/components/StaffInfoDialog.vue';
@@ -61,21 +55,13 @@
name: 'EmploymentSignList',
});
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
onClick: (role) => openDialog(role),
},
},
- {
- data: {
- enCode: 'recruitBtn',
- name: '褰曠敤',
- },
+ recruitBtn: {
emits: {
onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Pass),
},
@@ -84,11 +70,7 @@
row.hireStatus === EnumTaskUserHireStatus.Pass,
},
},
- {
- data: {
- enCode: 'refuseBtn',
- name: '璋㈢粷',
- },
+ refuseBtn: {
emits: {
onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Refuse),
},
@@ -97,7 +79,11 @@
row.hireStatus !== EnumTaskUserHireStatus.Wait,
},
},
-]);
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const router = useRouter();
const route = useRoute();
diff --git a/src/views/EmploymentManage/TaskManageList.vue b/src/views/EmploymentManage/TaskManageList.vue
index 929134e..d602103 100644
--- a/src/views/EmploymentManage/TaskManageList.vue
+++ b/src/views/EmploymentManage/TaskManageList.vue
@@ -43,14 +43,15 @@
</QueryFilterItem>
</template>
<template #btn>
- <el-button @click="goAddOrEdit()" type="primary">鍙戝竷</el-button>
+ <el-button
+ v-if="checkSubModuleItemShow('pageButton', 'addBtn')"
+ @click="goAddOrEdit()"
+ type="primary"
+ >鍙戝竷</el-button
+ >
</template>
</ProTableQueryFilterBar>
- <ProTableV2
- v-bind="proTableProps"
- :columns="EmploymentManageColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
<template #userCount="{ row }">
<el-button link type="primary" @click="goSignList(row)">{{
row.userCount || 0
@@ -88,47 +89,7 @@
});
const operationBtnMap: Record<string, OperationBtnType> = {
- // editBtn: {
- // emits: {
- // onClick: (role) => goAddOrEdit(role),
- // },
- // extraProps: {
- // hide: (row: API.GetTaskInfosQueryResultItem) => row.status === EnumTaskStatus.Complete,
- // },
- // },
- detailBtn: {
- emits: {
- onClick: (row: API.GetTaskInfosQueryResultItem) => goDetail(row),
- },
- },
- // publishBtn: {
- // emits: {
- // onClick: (row: API.GetTaskInfosQueryResultItem) =>
- // setTaskInfoReleaseStatus(row, EnumTaskReleaseStatus.InProcess),
- // },
- // extraProps: {
- // hide: (row: API.GetTaskInfosQueryResultItem) =>
- // row.releaseStatus === EnumTaskReleaseStatus.InProcess,
- // },
- // },
- // unPublishBtn: {
- // emits: {
- // onClick: (row: API.GetTaskInfosQueryResultItem) =>
- // setTaskInfoReleaseStatus(row, EnumTaskReleaseStatus.Stopped),
- // },
- // extraProps: {
- // hide: (row: API.GetTaskInfosQueryResultItem) =>
- // row.releaseStatus === EnumTaskReleaseStatus.Stopped,
- // },
- // },
-};
-
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'editBtn',
- name: '缂栬緫',
- },
+ editBtn: {
emits: {
onClick: (role) => goAddOrEdit(role),
},
@@ -136,20 +97,12 @@
hide: (row: API.GetTaskInfosQueryResultItem) => row.status === EnumTaskStatus.Complete,
},
},
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+ detailBtn: {
emits: {
onClick: (row: API.GetTaskInfosQueryResultItem) => goDetail(row),
},
},
- {
- data: {
- enCode: 'publishBtn',
- name: '鍙戝竷',
- },
+ publishBtn: {
emits: {
onClick: (row: API.GetTaskInfosQueryResultItem) =>
setTaskInfoReleaseStatus(row, EnumTaskReleaseStatus.InProcess),
@@ -159,11 +112,7 @@
row.releaseStatus === EnumTaskReleaseStatus.InProcess,
},
},
- {
- data: {
- enCode: 'unPublishBtn',
- name: '鍋滄鍙戝竷',
- },
+ unPublishBtn: {
emits: {
onClick: (row: API.GetTaskInfosQueryResultItem) =>
setTaskInfoReleaseStatus(row, EnumTaskReleaseStatus.Stopped),
@@ -173,11 +122,7 @@
row.releaseStatus === EnumTaskReleaseStatus.Stopped,
},
},
- {
- data: {
- enCode: 'arrangeBtn',
- name: '瀹夋帓',
- },
+ arrangeBtn: {
emits: {
onClick: (row: API.GetTaskInfosQueryResultItem) => handleArrange(row),
},
@@ -186,7 +131,11 @@
row.releaseStatus === EnumTaskReleaseStatus.Stopped,
},
},
-]);
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const router = useRouter();
--
Gitblit v1.9.1