From 7ea7cd0ce3faafb0ab881935d88bef7928fc2ca7 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 03 十二月 2025 17:52:38 +0800
Subject: [PATCH] feat: 页面

---
 src/services/api/task.ts                          |   18 ++
 /dev/null                                         |    1 
 src/views/CustomerManage/CustomerManage.vue       |    3 
 src/services/api/typings.d.ts                     |   89 ++++++++-
 src/views/CustomerManage/AddOrEditCustomer.vue    |    2 
 src/views/DataReport/DistributionDetailReport.vue |   47 +---
 src/views/EmploymentManage/TaskManageList.vue     |    1 
 src/views/EmploymentManage/TaskArrange.vue        |  292 ++++++++++++++++++++++++++++++++
 src/constants/apiEnum.ts                          |   32 +-
 src/services/api/auth.ts                          |   15 +
 10 files changed, 433 insertions(+), 67 deletions(-)

diff --git a/src/constants/apiEnum.ts b/src/constants/apiEnum.ts
index 3fc61b0..e0dff19 100644
--- a/src/constants/apiEnum.ts
+++ b/src/constants/apiEnum.ts
@@ -429,36 +429,38 @@
   CommonServerSmsUtils = 10,
   /**閰嶇疆 */
   CommonServerSettings = 11,
+  /**宸茶 */
+  CommonServerReadRecord = 12,
   /**鐢ㄦ埛璁よ瘉 */
-  UserServerAuth = 12,
+  UserServerAuth = 13,
   /**鐢ㄦ埛鑿滃崟 */
-  UserServerMenu = 13,
+  UserServerMenu = 14,
   /**鐢ㄦ埛璧勬簮 */
-  UserServerResource = 14,
+  UserServerResource = 15,
   /**鐢ㄦ埛瑙掕壊 */
-  UserServerRole = 15,
+  UserServerRole = 16,
   /**鐢ㄦ埛淇℃伅 */
-  UserServerUser = 16,
+  UserServerUser = 17,
   /**鐢ㄦ埛閽卞寘 */
-  UserServerUserWallet = 17,
+  UserServerUserWallet = 18,
   /**鐢靛瓙绛� */
-  UserServerElectronSign = 18,
+  UserServerElectronSign = 19,
   /**鐢ㄦ埛绠�鍘� */
-  UserServerUserResume = 19,
+  UserServerUserResume = 20,
   /**浼佷笟淇℃伅 */
-  UserServerEnterprise = 20,
+  UserServerEnterprise = 21,
   /**浼佷笟閽卞寘 */
-  UserServerEnterpriseWallet = 21,
+  UserServerEnterpriseWallet = 22,
   /**浼佷笟鍚堜綔閽卞寘 */
-  UserServerEnterpriseCooperationWallet = 22,
+  UserServerEnterpriseCooperationWallet = 23,
   /**鐏靛伐淇℃伅 */
-  UserServerEnterpriseEmployee = 23,
+  UserServerEnterpriseEmployee = 24,
   /**鐢靛瓙绛� */
-  ElectronSignServerElectronSign = 24,
+  ElectronSignServerElectronSign = 25,
   /**鐭俊 */
-  ToolServerSms = 25,
+  ToolServerSms = 26,
   /**灏忕▼搴� */
-  ToolServerWxmp = 26,
+  ToolServerWxmp = 27,
 }
 
 /** 璧勬簮璇锋眰鏂瑰紡 */
diff --git a/src/services/api/auth.ts b/src/services/api/auth.ts
index 29e4032..87bd6be 100644
--- a/src/services/api/auth.ts
+++ b/src/services/api/auth.ts
@@ -169,6 +169,21 @@
   });
 }
 
+/** 瑙g粦寰俊灏忕▼搴忓揩鎹风櫥褰� POST /api/user/auth/unBindUserWxmpId */
+export async function unBindUserWxmpId(
+  body: API.UnBindUserWxmpIdCommand,
+  options?: API.RequestConfig
+) {
+  return request<string>('/api/user/auth/unBindUserWxmpId', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
 /** 鍙戦�佹洿鎹㈡墜鏈哄彿鐭俊 POST /api/user/auth/updatePhoneNumberVerifyCode */
 export async function updatePhoneNumberVerifyCode(
   body: API.UpdatePhoneNumberVerifyCodeCommand,
diff --git a/src/services/api/task.ts b/src/services/api/task.ts
index 05569e2..5ec27db 100644
--- a/src/services/api/task.ts
+++ b/src/services/api/task.ts
@@ -281,6 +281,24 @@
   });
 }
 
+/** 鏌ヨ鍙戞斁鏄庣粏鎶ヨ〃鍒嗛〉鍒楄〃鏁版嵁 POST /api/flexjob/task/getTaskSettlementReleaseReports */
+export async function getTaskSettlementReleaseReports(
+  body: API.GetTaskSettlementReleaseReportsQuery,
+  options?: API.RequestConfig
+) {
+  return request<API.GetTaskSettlementReleaseReportsQueryResult>(
+    '/api/flexjob/task/getTaskSettlementReleaseReports',
+    {
+      method: 'POST',
+      headers: {
+        'Content-Type': 'application/json-patch+json',
+      },
+      data: body,
+      ...(options || {}),
+    }
+  );
+}
+
 /** 瀵煎叆缁撶畻鍚嶅崟 POST /api/flexjob/task/importTaskSettlementOrderRosters */
 export async function importTaskSettlementOrderRosters(
   body: API.ImportTaskSettlementOrderRostersCommand,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index b9f42a2..9037a1f 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -1172,36 +1172,38 @@
     CommonServerSmsUtils = 10,
     /**閰嶇疆 */
     CommonServerSettings = 11,
+    /**宸茶 */
+    CommonServerReadRecord = 12,
     /**鐢ㄦ埛璁よ瘉 */
-    UserServerAuth = 12,
+    UserServerAuth = 13,
     /**鐢ㄦ埛鑿滃崟 */
-    UserServerMenu = 13,
+    UserServerMenu = 14,
     /**鐢ㄦ埛璧勬簮 */
-    UserServerResource = 14,
+    UserServerResource = 15,
     /**鐢ㄦ埛瑙掕壊 */
-    UserServerRole = 15,
+    UserServerRole = 16,
     /**鐢ㄦ埛淇℃伅 */
-    UserServerUser = 16,
+    UserServerUser = 17,
     /**鐢ㄦ埛閽卞寘 */
-    UserServerUserWallet = 17,
+    UserServerUserWallet = 18,
     /**鐢靛瓙绛� */
-    UserServerElectronSign = 18,
+    UserServerElectronSign = 19,
     /**鐢ㄦ埛绠�鍘� */
-    UserServerUserResume = 19,
+    UserServerUserResume = 20,
     /**浼佷笟淇℃伅 */
-    UserServerEnterprise = 20,
+    UserServerEnterprise = 21,
     /**浼佷笟閽卞寘 */
-    UserServerEnterpriseWallet = 21,
+    UserServerEnterpriseWallet = 22,
     /**浼佷笟鍚堜綔閽卞寘 */
-    UserServerEnterpriseCooperationWallet = 22,
+    UserServerEnterpriseCooperationWallet = 23,
     /**鐏靛伐淇℃伅 */
-    UserServerEnterpriseEmployee = 23,
+    UserServerEnterpriseEmployee = 24,
     /**鐢靛瓙绛� */
-    ElectronSignServerElectronSign = 24,
+    ElectronSignServerElectronSign = 25,
     /**鐭俊 */
-    ToolServerSms = 25,
+    ToolServerSms = 26,
     /**灏忕▼搴� */
-    ToolServerWxmp = 26,
+    ToolServerWxmp = 27,
   }
 
   enum EnumResourceMethod {
@@ -2921,6 +2923,24 @@
     /** 閿欒鐮� */
     errorCode?: string;
     data?: GetTaskInfosQueryResult;
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
+  interface FriendlyResultGetTaskSettlementReleaseReportsQueryResult {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    data?: GetTaskSettlementReleaseReportsQueryResult;
     /** 鎵ц鎴愬姛 */
     success?: boolean;
     /** 閿欒淇℃伅 */
@@ -5017,6 +5037,8 @@
     collectedUserCount?: number;
     /** 鑱旂郴璁板綍 */
     contactedRecordCount?: number;
+    /** 缁戝畾寰俊蹇嵎鐧诲綍 */
+    bindWxmpId?: boolean;
   }
 
   interface GetEnterpriseQueryResult {
@@ -5870,6 +5892,8 @@
     /** 浠诲姟鍦扮偣鍚嶇О */
     addressName?: string;
     status?: GetPersonalApplyTaskInfosQueryStatus;
+    /** 鏈 */
+    unRead?: boolean;
   }
 
   enum GetPersonalApplyTaskInfosQueryStatus {
@@ -5981,6 +6005,8 @@
     /** 浠诲姟鍦扮偣鍚嶇О */
     addressName?: string;
     status?: GetPersonalHireTaskInfosQueryStatus;
+    /** 鏈 */
+    unRead?: boolean;
   }
 
   enum GetPersonalHireTaskInfosQueryStatus {
@@ -7047,6 +7073,8 @@
     status?: EnumTaskStatus;
     releaseStatus?: EnumTaskReleaseStatus;
     hireStatus?: EnumTaskUserHireStatus;
+    /** 褰曠敤澶囨敞 */
+    hireRemark?: string;
     /** 鐏靛伐Id */
     enterpriseEmployeeId?: string;
     applyButton?: GetTaskInfoQueryResultApplyButton;
@@ -7220,6 +7248,33 @@
     code?: string;
     /** 浠诲姟鍚嶇О */
     name?: string;
+  }
+
+  interface GetTaskSettlementReleaseReportsQuery {
+    /** 寮�濮嬫棩鏈� */
+    startMonth?: string;
+    /** 缁撴潫鏃ユ湡 */
+    endMonth?: string;
+    pageModel?: PagedListQueryPageModel;
+  }
+
+  interface GetTaskSettlementReleaseReportsQueryResult {
+    pageModel?: PagedListQueryResultPageModel;
+    /** 鏁版嵁 */
+    data?: GetTaskSettlementReleaseReportsQueryResultItem[];
+  }
+
+  interface GetTaskSettlementReleaseReportsQueryResultItem {
+    /** 鏃ユ湡 */
+    month?: string;
+    /** 鍙戞斁閲戦 */
+    amount?: number;
+    /** 鍙戞斁浜烘暟 */
+    peopleCount?: number;
+    /** 鐢熸垚鏃ユ湡 */
+    createdTime?: string;
+    /** 姹囨�昏〃鏍� */
+    url?: string;
   }
 
   interface GetTaskUserHireStatusQueryResult {
@@ -7942,6 +7997,8 @@
   }
 
   interface PasswordLoginCommand {
+    /** 鐢ㄦ埛鐧诲綍鍑瘉 */
+    code?: string;
     /** 璐﹀彿 */
     userName: string;
     /** 瀵嗙爜 */
@@ -9057,6 +9114,8 @@
 
   type TestEventCommand = Record<string, any>;
 
+  type UnBindUserWxmpIdCommand = Record<string, any>;
+
   interface UpdateEnterpriseWeChatPayWalletBankAccountInfoCommand {
     /** 浼佷笟Id */
     enterpriseId?: string;
diff --git a/src/views/CustomerManage/AddOrEditCustomer.vue b/src/views/CustomerManage/AddOrEditCustomer.vue
index 219c8f0..93668ad 100644
--- a/src/views/CustomerManage/AddOrEditCustomer.vue
+++ b/src/views/CustomerManage/AddOrEditCustomer.vue
@@ -1,5 +1,5 @@
 <template>
-  <AddOrEditCustomerView :isDetail="false"/>
+  <AddOrEditCustomerView :isDetail="false" />
 </template>
 
 <script lang="ts">
diff --git a/src/views/CustomerManage/CustomerManage.vue b/src/views/CustomerManage/CustomerManage.vue
index 43934cc..269b27d 100644
--- a/src/views/CustomerManage/CustomerManage.vue
+++ b/src/views/CustomerManage/CustomerManage.vue
@@ -57,11 +57,8 @@
   AppContainer,
   QueryFilterItem,
   useTable,
-  useFormDialog,
-  defineOperationBtns,
 } from '@bole-core/components';
 import * as enterpriseServices from '@/services/api/enterprise';
-import { CustomerManageColumns } from './constants';
 import {
   EnumEnterpriseCooperationStatusText,
   EnumEnterpriseCooperationSignStatusText,
diff --git a/src/views/CustomerManage/constants/customerManage.ts b/src/views/CustomerManage/constants/customerManage.ts
deleted file mode 100644
index ceb47dc..0000000
--- a/src/views/CustomerManage/constants/customerManage.ts
+++ /dev/null
@@ -1,54 +0,0 @@
-import { defineColumns } from '@bole-core/components';
-
-export const CustomerManageColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'enterpriseName',
-    name: '浼佷笟鍚嶇О',
-  },
-  {
-    id: '2',
-    enCode: 'societyCreditCode',
-    name: '缁熶竴淇$敤浠g爜',
-  },
-  {
-    id: '3',
-    enCode: 'partyAEnterpriseId',
-    name: '瀹㈡埛ID',
-  },
-  {
-    id: '4',
-    enCode: 'legalPerson',
-    name: '娉曚汉濮撳悕',
-  },
-  {
-    id: '5',
-    enCode: 'contacts',
-    name: '鑱旂郴浜哄悕绉�',
-  },
-  {
-    id: '6',
-    enCode: 'contactPhoneNumber',
-    name: '鑱旂郴鐢佃瘽',
-  },
-  {
-    id: '7',
-    enCode: 'provinceContent',
-    name: '鐪佷唤',
-  },
-  {
-    id: '8',
-    enCode: 'cityContent',
-    name: '鍩庡競',
-  },
-  {
-    id: '9',
-    enCode: 'cooperationStatus',
-    name: '鍚堜綔鐘舵��',
-  },
-  {
-    id: '10',
-    enCode: 'signStatus',
-    name: '绛剧害鐘舵��',
-  },
-]);
diff --git a/src/views/CustomerManage/constants/index.ts b/src/views/CustomerManage/constants/index.ts
deleted file mode 100644
index c9d7805..0000000
--- a/src/views/CustomerManage/constants/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from './customerManage'
diff --git a/src/views/DataReport/DistributionDetailReport.vue b/src/views/DataReport/DistributionDetailReport.vue
index 4af5c00..55134bf 100644
--- a/src/views/DataReport/DistributionDetailReport.vue
+++ b/src/views/DataReport/DistributionDetailReport.vue
@@ -5,14 +5,14 @@
         <template #query>
           <QueryFilterItem>
             <FieldDatePicker
-              v-model="extraParamState.checkReceiveTime"
+              v-model="extraParamState.time"
               type="daterange"
               range-separator="~"
               start-placeholder="璧峰鏃ユ湡"
               end-placeholder="鎴鏃ユ湡"
               clearable
               @change="getList()"
-              tooltipContent="楠屾敹鏃ユ湡"
+              tooltipContent="鏃ユ湡"
             ></FieldDatePicker>
           </QueryFilterItem>
         </template>
@@ -33,7 +33,7 @@
   useTable,
   FieldDatePicker,
 } from '@bole-core/components';
-import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
+import * as taskServices from '@/services/api/task';
 import { ModelValueType } from 'element-plus';
 import { downloadFileByUrl, format, OrderUtils, setOSSLink } from '@/utils';
 
@@ -47,8 +47,7 @@
       onClick: (role) => handleDownload(role),
     },
     extraProps: {
-      hide: (row: API.GetCheckReceiveTasksQueryResultItem) =>
-        row.checkReceiveStatus !== EnumTaskCheckReceiveStatus.Completed,
+      hide: (row: API.GetTaskSettlementReleaseReportsQueryResultItem) => !row.url,
     },
   },
 };
@@ -79,23 +78,17 @@
 } = useTable(
   async ({ pageIndex, pageSize }, extraParamState) => {
     try {
-      let params: API.GetCheckReceiveTasksQuery = {
+      let params: API.GetTaskSettlementReleaseReportsQuery = {
         pageModel: {
           rows: pageSize,
           page: pageIndex,
           orderInput: extraParamState.orderInput,
         },
-        checkReceiveTimeBegin: format(
-          extraParamState.checkReceiveTime?.[0] ?? '',
-          'YYYY-MM-DD 00:00:00'
-        ),
-        checkReceiveTimeEnd: format(
-          extraParamState.checkReceiveTime?.[1] ?? '',
-          'YYYY-MM-DD 23:59:59'
-        ),
+        startMonth: format(extraParamState.time?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
+        endMonth: format(extraParamState.time?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
       };
 
-      let res = await taskCheckReceiveServices.getCheckReceiveTasks(params, {
+      let res = await taskServices.getTaskSettlementReleaseReports(params, {
         showLoading: !state.loading,
       });
       return res;
@@ -105,27 +98,19 @@
   },
   {
     defaultExtraParams: {
-      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
-      checkReceiveTime: [] as unknown as ModelValueType,
+      orderInput: [{ property: 'month', order: EnumPagedListOrder.Desc }],
+      time: [] as unknown as ModelValueType,
     },
-    queryKey: ['taskCheckReceiveServices/getCheckReceiveTasks'],
+    queryKey: ['taskServices/getTaskSettlementReleaseReports'],
     columnsRenderProps: {
-      serviceFee: { type: 'money' },
-      createdTime: { type: 'date', format: 'YYYY-MM-DD' },
-      beginTime: { type: 'date', format: 'YYYY-MM-DD' },
+      amount: { type: 'money' },
+      month: { type: 'date', format: 'YYYY-MM-DD' },
+      createdTime: { type: 'date' },
     },
   }
 );
 
-async function handleDownload(row: API.GetCheckReceiveTasksQueryResultItem) {
-  try {
-    let params: API.ExportTaskCheckReceiveTaskUsersCommand = {
-      id: row.id,
-    };
-    let res = await taskCheckReceiveServices.exportTaskCheckReceiveTaskUsers(params);
-    if (res) {
-      downloadFileByUrl(setOSSLink(res));
-    }
-  } catch (error) {}
+async function handleDownload(row: API.GetTaskSettlementReleaseReportsQueryResultItem) {
+  downloadFileByUrl(setOSSLink(row.url));
 }
 </script>
diff --git a/src/views/EmploymentManage/TaskArrange.vue b/src/views/EmploymentManage/TaskArrange.vue
new file mode 100644
index 0000000..6e6e855
--- /dev/null
+++ b/src/views/EmploymentManage/TaskArrange.vue
@@ -0,0 +1,292 @@
+<template>
+  <LoadingLayout :loading="state.loading">
+    <AppContainer>
+      <ProTableQueryFilterBar @on-reset="reset">
+        <template #query>
+          <QueryFilterItem tip-content="浠诲姟鐘舵��">
+            <FieldRadio
+              v-model="extraParamState.status"
+              :value-enum="EnumTaskStatusText"
+              buttonStyle
+              showAllBtn
+              @change="getList()"
+            />
+          </QueryFilterItem>
+          <QueryFilterItem tip-content="鍙戝竷鐘舵��">
+            <FieldRadio
+              v-model="extraParamState.releaseStatus"
+              :value-enum="EnumTaskReleaseStatusText"
+              buttonStyle
+              showAllBtn
+              @change="getList()"
+            />
+          </QueryFilterItem>
+          <QueryFilterItem tip-content="鍙戝竷鏃堕棿">
+            <FieldDatePicker
+              v-model="extraParamState.time"
+              type="daterange"
+              range-separator="~"
+              start-placeholder="寮�濮嬫棩鏈�"
+              end-placeholder="缁撴潫鏃ユ湡"
+              clearable
+              @change="getList()"
+            ></FieldDatePicker>
+          </QueryFilterItem>
+          <QueryFilterItem>
+            <SearchInput
+              v-model="extraParamState.keywords"
+              style="width: 260px"
+              placeholder="浠诲姟鍚嶇О/瀹㈡埛"
+              @on-click-search="getList"
+            >
+            </SearchInput>
+          </QueryFilterItem>
+        </template>
+        <template #btn>
+          <el-button
+            v-if="checkSubModuleItemShow('pageButton', 'addBtn')"
+            @click="goAddOrEdit()"
+            type="primary"
+            >鍙戝竷</el-button
+          >
+        </template>
+      </ProTableQueryFilterBar>
+      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
+        <template #userCount="{ row }">
+          <el-button v-if="!row.isInternal" link type="primary" @click="goSignList(row)">{{
+            row.userCount || 0
+          }}</el-button>
+          <span v-else>/</span>
+        </template>
+      </ProTableV2>
+    </AppContainer>
+  </LoadingLayout>
+</template>
+
+<script setup lang="ts">
+import {
+  ProTableQueryFilterBar,
+  ProTableV2,
+  SearchInput,
+  LoadingLayout,
+  AppContainer,
+  QueryFilterItem,
+  useTable,
+  FieldDatePicker,
+  FieldRadio,
+} from '@bole-core/components';
+import { EnumTaskStatusText, EnumTaskReleaseStatusText } from '@/constants';
+import { useGlobalEventContext } from '@/hooks';
+import * as taskServices from '@/services/api/task';
+import { format, OrderUtils } from '@/utils';
+import { ModelValueType } from 'element-plus';
+import { Message } from '@bole-core/core';
+import dayjs from 'dayjs';
+
+defineOptions({
+  name: 'TaskArrange',
+});
+
+const operationBtnMap: Record<string, OperationBtnType> = {
+  editBtn: {
+    emits: {
+      onClick: (role) => goAddOrEdit(role),
+    },
+    extraProps: {
+      hide: (row: API.GetTaskInfosQueryResultItem) =>
+        row.status === EnumTaskStatus.Complete || !row.isInternal,
+    },
+  },
+  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 || !row.isInternal,
+    },
+  },
+  unPublishBtn: {
+    emits: {
+      onClick: (row: API.GetTaskInfosQueryResultItem) =>
+        setTaskInfoReleaseStatus(row, EnumTaskReleaseStatus.Stopped),
+    },
+    extraProps: {
+      hide: (row: API.GetTaskInfosQueryResultItem) =>
+        row.releaseStatus === EnumTaskReleaseStatus.Stopped || !row.isInternal,
+    },
+  },
+  arrangeBtn: {
+    emits: {
+      onClick: (row: API.GetTaskInfosQueryResultItem) => handleArrange(row),
+    },
+    extraProps: {
+      hide: (row: API.GetTaskInfosQueryResultItem) =>
+        row.releaseStatus === EnumTaskReleaseStatus.Stopped || !row.isInternal,
+    },
+  },
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+  operationBtnMap,
+});
+
+const router = useRouter();
+
+const BaseState = {
+  loading: true,
+};
+
+const state = reactive({ ...BaseState });
+
+const eventContext = useGlobalEventContext();
+
+eventContext.addEvent('taskManage:add', () => {
+  getList();
+});
+
+eventContext.addEvent('taskManage:edit', () => {
+  getList(paginationState.pageIndex);
+});
+
+onMounted(async () => {
+  await getList();
+  state.loading = false;
+});
+
+const {
+  getDataSource: getList,
+  proTableProps,
+  paginationState,
+  extraParamState,
+  reset,
+} = useTable(
+  async ({ pageIndex, pageSize }, extraParamState) => {
+    try {
+      let params: API.GetTaskInfosQuery = {
+        pageModel: {
+          rows: pageSize,
+          page: pageIndex,
+          orderInput: extraParamState.orderInput,
+        },
+        keywords: extraParamState.keywords,
+        status: extraParamState.status,
+        releaseStatus: extraParamState.releaseStatus,
+        beginTime: format(extraParamState.time?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
+        endTime: format(extraParamState.time?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
+      };
+
+      let res = await taskServices.getTaskInfos(params, {
+        showLoading: !state.loading,
+      });
+      return res;
+    } catch (error) {
+      console.log('error: ', error);
+    }
+  },
+  {
+    defaultExtraParams: {
+      keywords: '',
+      status: '' as any as EnumTaskStatus,
+      releaseStatus: '' as any as EnumTaskReleaseStatus,
+      time: [] as unknown as ModelValueType,
+      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
+    },
+    queryKey: ['taskServices/getTaskInfos'],
+    columnsRenderProps: {
+      billingMethod: { type: 'enum', valueEnum: EnumBillingMethodText },
+      settlementCycle: { type: 'enum', valueEnum: EnumSettlementCycleText },
+      genderLimit: { type: 'enum', valueEnum: EnumUserGenderText },
+      status: { type: 'enum', valueEnum: EnumTaskStatusText },
+      releaseStatus: { type: 'enum', valueEnum: EnumTaskReleaseStatusText },
+      createdTime: { type: 'date', format: 'YYYY-MM-DD' },
+      beginTime: { type: 'date', format: 'YYYY-MM-DD' },
+      endTime: { type: 'date', format: 'YYYY-MM-DD' },
+      serviceFee: {
+        type: 'money',
+        formatter: (row: API.GetTaskInfosQueryResultItem) => {
+          return OrderUtils.getServiceFeeText(row.serviceFee, row.billingMethod);
+        },
+      },
+      applyBeginTime: { type: 'date', format: 'YYYY-MM-DD' },
+      applyEndTime: { type: 'date', format: 'YYYY-MM-DD' },
+      //@ts-ignore
+      applyStatus: {
+        formatter: (row: API.GetTaskInfosQueryResultItem) => {
+          const applyBeginTime = dayjs(row.applyBeginTime);
+          const applyEndTime = dayjs(row.applyEndTime);
+          const now = dayjs();
+          if (applyEndTime.isBefore(now)) {
+            return '宸茬粨鏉�';
+          } else if (applyBeginTime.isAfter(now)) {
+            return '寰呭紑濮�';
+          } else {
+            return '杩涜涓�';
+          }
+        },
+      },
+    },
+  }
+);
+
+async function setTaskInfoReleaseStatus(
+  row: API.GetTaskInfosQueryResultItem,
+  releaseStatus: EnumTaskReleaseStatus
+) {
+  try {
+    await Message.tipMessage(`纭瑕�${EnumTaskReleaseStatusTextForTip[releaseStatus]}鍚楋紵`);
+    let params: API.SetTaskInfoReleaseStatusCommand = {
+      ids: [row.id],
+      releaseStatus: releaseStatus,
+    };
+    let res = await taskServices.setTaskInfoReleaseStatus(params);
+    if (res) {
+      Message.successMessage('鎿嶄綔鎴愬姛');
+      getList(paginationState.pageIndex);
+    }
+  } catch (error) {}
+}
+
+function handleArrange(row: API.GetTaskInfosQueryResultItem) {
+  router.push({
+    name: 'EmploymentManageArrange',
+    params: {
+      id: row?.id ?? '',
+    },
+  });
+}
+function goAddOrEdit(row?: API.GetTaskInfosQueryResultItem) {
+  router.push({
+    name: 'AddOrEditEmployment',
+    params: {
+      id: row?.id ?? '',
+    },
+    query: {
+      supplierEnterpriseId: row?.supplierEnterpriseId,
+    },
+  });
+}
+function goDetail(row: API.GetTaskInfosQueryResultItem) {
+  router.push({
+    name: 'EmploymentManageDetail',
+    params: {
+      id: row?.id ?? '',
+    },
+  });
+}
+
+function goSignList(row: API.GetTaskInfosQueryResultItem) {
+  router.push({
+    name: 'EmploymentSignList',
+    params: {
+      id: row?.id ?? '',
+    },
+  });
+}
+</script>
diff --git a/src/views/EmploymentManage/TaskManageList.vue b/src/views/EmploymentManage/TaskManageList.vue
index abc7300..70829b7 100644
--- a/src/views/EmploymentManage/TaskManageList.vue
+++ b/src/views/EmploymentManage/TaskManageList.vue
@@ -76,7 +76,6 @@
   FieldRadio,
   defineOperationBtns,
 } from '@bole-core/components';
-import { EmploymentManageColumns } from './constants';
 import { EnumTaskStatusText, EnumTaskReleaseStatusText } from '@/constants';
 import { useGlobalEventContext } from '@/hooks';
 import * as taskServices from '@/services/api/task';
diff --git a/src/views/EmploymentManage/constants/columns.ts b/src/views/EmploymentManage/constants/columns.ts
deleted file mode 100644
index f342338..0000000
--- a/src/views/EmploymentManage/constants/columns.ts
+++ /dev/null
@@ -1,276 +0,0 @@
-import { defineColumns } from '@bole-core/components';
-
-export const EmploymentManageColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '浠诲姟鍚嶇О',
-  },
-  {
-    id: '2',
-    enCode: 'code',
-    name: '浠诲姟鍗曞彿',
-  },
-  {
-    id: '3',
-    enCode: 'enterpriseName',
-    name: '鍙戝崟瀹㈡埛',
-  },
-  {
-    id: '4',
-    enCode: 'enterpriseId',
-    name: '瀹㈡埛ID',
-  },
-  {
-    id: '5',
-    enCode: 'billingMethod',
-    name: '缁撶畻鍛ㄦ湡',
-  },
-  {
-    id: '6',
-    enCode: 'serviceFee',
-    name: '鏈嶅姟璐归噾棰�',
-  },
-  {
-    id: '7',
-    enCode: 'settlementCycle',
-    name: '缁撶畻鏂瑰紡',
-  },
-  {
-    id: '8',
-    enCode: 'genderLimit',
-    name: '鎬у埆瑕佹眰',
-  },
-  {
-    id: '9',
-    enCode: 'needPeopleNumber',
-    name: '闇�姹備汉鏁�',
-  },
-  {
-    id: '10',
-    enCode: 'userCount',
-    name: '鎶ュ悕浜烘暟',
-  },
-  {
-    id: '11',
-    enCode: 'applyBeginTime',
-    name: '鎶ュ悕寮�濮�',
-  },
-  {
-    id: '12',
-    enCode: 'applyEndTime',
-    name: '鎶ュ悕缁撴潫',
-  },
-  {
-    id: '13',
-    enCode: 'applyStatus',
-    name: '鎶ュ悕鐘舵��',
-  },
-  {
-    id: '14',
-    enCode: 'status',
-    name: '浠诲姟鐘舵��',
-  },
-  {
-    id: '15',
-    enCode: 'createdTime',
-    name: '鍙戝竷鏃ユ湡',
-  },
-  {
-    id: '16',
-    enCode: 'beginTime',
-    name: '浠诲姟寮�濮嬫棩鏈�',
-  },
-  {
-    id: '17',
-    enCode: 'endTime',
-    name: '浠诲姟缁撴潫鏃ユ湡',
-  },
-  {
-    id: '18',
-    enCode: 'releaseStatus',
-    name: '鍙戝竷鐘舵��',
-  },
-]);
-
-export const EmploymentArrangeColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '濮撳悕',
-  },
-  {
-    id: '2',
-    enCode: 'identity',
-    name: '韬唤璇佸彿',
-  },
-  {
-    id: '3',
-    enCode: 'contactPhoneNumber',
-    name: '鐢佃瘽',
-  },
-  {
-    id: '4',
-    enCode: 'age',
-    name: '骞撮緞',
-  },
-  {
-    id: '5',
-    enCode: 'gender',
-    name: '鎬у埆',
-  },
-  {
-    id: '6',
-    enCode: 'educationalBackgroundContent',
-    name: '瀛﹀巻',
-  },
-  {
-    id: '7',
-    enCode: 'arrangeStatus',
-    name: '鎺掔彮鐘舵��',
-  },
-]);
-
-export const EmploymentSignColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '濮撳悕',
-  },
-  {
-    id: '2',
-    enCode: 'identity',
-    name: '韬唤璇佸彿',
-  },
-  {
-    id: '3',
-    enCode: 'contactPhoneNumber',
-    name: '鐢佃瘽',
-  },
-  {
-    id: '4',
-    enCode: 'age',
-    name: '骞撮緞',
-  },
-  {
-    id: '5',
-    enCode: 'gender',
-    name: '鎬у埆',
-  },
-  {
-    id: '6',
-    enCode: 'educationalBackgroundContent',
-    name: '瀛﹀巻',
-  },
-  {
-    id: '7',
-    enCode: 'hireStatus',
-    name: '褰曠敤鐘舵��',
-  },
-]);
-
-export const CheckManageColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '浠诲姟鍚嶇О',
-  },
-  {
-    id: '2',
-    enCode: 'code',
-    name: '浠诲姟鍗曞彿',
-  },
-  {
-    id: '3',
-    enCode: 'billingMethod',
-    name: '缁撶畻鍛ㄦ湡',
-  },
-  {
-    id: '4',
-    enCode: 'serviceFee',
-    name: '鏈嶅姟璐归噾棰�',
-  },
-  {
-    id: '5',
-    enCode: 'settlementCycle',
-    name: '缁撶畻鏂瑰紡',
-  },
-  {
-    id: '6',
-    enCode: 'createdTime',
-    name: '鍙戝竷鏃ユ湡',
-  },
-  {
-    id: '6-1',
-    enCode: 'beginTime',
-    name: '寮�濮嬫棩鏈�',
-  },
-  {
-    id: '7',
-    enCode: 'endTime',
-    name: '缁撴潫鏃ユ湡',
-  },
-  {
-    id: '8',
-    enCode: 'checkReceiveMethods',
-    name: '楠屾敹鏂瑰紡',
-  },
-  {
-    id: '9',
-    enCode: 'checkReceiveStatus',
-    name: '浠诲姟楠屾敹鐘舵��',
-  },
-  {
-    id: '10',
-    enCode: 'lastCheckReceiveTime',
-    name: '鏈�杩戦獙鏀舵椂闂�',
-  },
-]);
-
-export const CheckReceiveTaskDetailColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '濮撳悕',
-  },
-  {
-    id: '2',
-    enCode: 'identity',
-    name: '韬唤璇佸彿',
-  },
-  {
-    id: '3',
-    enCode: 'gender',
-    name: '鎬у埆',
-  },
-  {
-    id: '4',
-    enCode: 'age',
-    name: '骞撮緞',
-  },
-  {
-    id: '5',
-    enCode: 'contactPhoneNumber',
-    name: '鎵嬫満鍙�',
-  },
-  {
-    id: '6',
-    enCode: 'taskInfoName',
-    name: '浠诲姟鍚嶇О',
-  },
-  {
-    id: '7',
-    enCode: 'taskInfoCode',
-    name: '浠诲姟缂栧彿',
-  },
-  {
-    id: '8',
-    enCode: 'lastSubmitTime',
-    name: '鏈�杩戞彁浜ゆ椂闂�',
-  },
-  {
-    id: '8',
-    enCode: 'checkReceiveStatus',
-    name: '浠诲姟楠屾敹鐘舵��',
-  },
-]);
diff --git a/src/views/EmploymentManage/constants/index.ts b/src/views/EmploymentManage/constants/index.ts
deleted file mode 100644
index a7f066b..0000000
--- a/src/views/EmploymentManage/constants/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from './columns';
diff --git a/src/views/FlexJobManage/constants/columns.ts b/src/views/FlexJobManage/constants/columns.ts
deleted file mode 100644
index 65fa563..0000000
--- a/src/views/FlexJobManage/constants/columns.ts
+++ /dev/null
@@ -1,84 +0,0 @@
-import { defineColumns } from '@bole-core/components';
-
-export const FlexJobManageColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '濮撳悕',
-  },
-  {
-    id: '2',
-    enCode: 'identity',
-    name: '韬唤璇佸彿',
-  },
-  {
-    id: '3',
-    enCode: 'gender',
-    name: '鎬у埆',
-  },
-  {
-    id: '5',
-    enCode: 'age',
-    name: '骞撮緞',
-  },
-  {
-    id: '6',
-    enCode: 'contactPhoneNumber',
-    name: '鎵嬫満鍙�',
-  },
-  // {
-  //   id: '8',
-  //   enCode: 'hireStatus',
-  //   name: '褰曠敤鐘舵��',
-  // },
-  {
-    id: '9',
-    enCode: 'userIsReal',
-    name: '瀹炲悕鐘舵��',
-  },
-  {
-    id: '10',
-    enCode: 'userSignContractStatus',
-    name: '鐏靛伐绛剧害鐘舵��',
-  },
-  // {
-  //   id: '11',
-  //   enCode: 'hireTime',
-  //   name: '褰曠敤鏃堕棿',
-  // },
-  // {
-  //   id: '12',
-  //   enCode: 'userRealTime',
-  //   name: '瀹炲悕鏃堕棿',
-  // },
-  // {
-  //   id: '13',
-  //   enCode: 'userSignContractTime',
-  //   name: '绛剧害鏃堕棿',
-  // },
-  {
-    id: '14',
-    enCode: 'enterpriseSignContractStatus',
-    name: '浼佷笟绛剧害鐘舵��',
-  },
-  // {
-  //   id: '15',
-  //   enCode: 'enterpriseSignContractTime',
-  //   name: '浼佷笟绛剧害鏃堕棿',
-  // },
-  {
-    id: '16',
-    enCode: 'a',
-    name: '鍗忚璧峰',
-  },
-  {
-    id: '17',
-    enCode: 'a',
-    name: '鍗忚缁堟',
-  },
-  {
-    id: '18',
-    enCode: 'a',
-    name: '鐏靛伐鏉ユ簮',
-  },
-]);
diff --git a/src/views/FlexJobManage/constants/index.ts b/src/views/FlexJobManage/constants/index.ts
deleted file mode 100644
index a7f066b..0000000
--- a/src/views/FlexJobManage/constants/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from './columns';
diff --git a/src/views/UserManage/constants/columns.ts b/src/views/UserManage/constants/columns.ts
deleted file mode 100644
index caf8385..0000000
--- a/src/views/UserManage/constants/columns.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { defineColumns } from '@bole-core/components';
-
-export const UserManageColumns = defineColumns([
-  {
-    id: '1',
-    enCode: 'name',
-    name: '濮撳悕',
-  },
-  {
-    id: '2',
-    enCode: 'userName',
-    name: '鐢ㄦ埛鍚�',
-  },
-  {
-    id: '3',
-    enCode: 'phoneNumber',
-    name: '鎵嬫満鍙�',
-  },
-  {
-    id: '4',
-    enCode: 'roles',
-    name: '瑙掕壊',
-  },
-  {
-    id: '5',
-    enCode: 'status',
-    name: '鐘舵��',
-  },
-  {
-    id: '6',
-    enCode: 'remark',
-    name: '澶囨敞',
-  },
-]);
diff --git a/src/views/UserManage/constants/index.ts b/src/views/UserManage/constants/index.ts
deleted file mode 100644
index a7f066b..0000000
--- a/src/views/UserManage/constants/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from './columns';

--
Gitblit v1.9.1