From e5b6f4180bd311bb63c3c5c9b3074e3b6b60e19e Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 08 八月 2025 10:32:12 +0800
Subject: [PATCH] feat: 任务
---
src/constants/user.ts | 4
types/global.d.ts | 6
src/constants/task.ts | 18 ++
.eslintrc-auto-import.json | 9 +
src/services/api/typings.d.ts | 75 ++++++++
src/services/api/dictionary.ts | 36 ++--
src/views/Permission/OperationUserManage.vue | 24 +-
src/services/api/task.ts | 42 ++++
src/services/api/index.ts | 16 +-
src/views/TaskManage/components/SignDetailView.vue | 31 ---
src/views/TaskManage/components/SelltementDetailView.vue | 83 ++++++++++
auto-imports.d.ts | 19 ++
src/constants/apiEnum.ts | 28 +++
src/constants/index.ts | 1
src/views/TaskManage/TaskManageDetail.vue | 4
src/services/api/user.ts | 16 +-
src/views/TaskManage/TaskManageList.vue | 39 ++--
17 files changed, 337 insertions(+), 114 deletions(-)
diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json
index d70254c..93803cd 100644
--- a/.eslintrc-auto-import.json
+++ b/.eslintrc-auto-import.json
@@ -34,13 +34,20 @@
"EnumRoleWebApiDataPowerText": true,
"EnumRoleWebApiDataPowerTextForFilter": true,
"EnumSettlementCycle": true,
+ "EnumSettlementCycleText": true,
"EnumSmsAccess": true,
"EnumSmsAccessText": true,
+ "EnumTaskCheckReceiveStatus": true,
+ "EnumTaskRecommendStatus": true,
+ "EnumTaskRecommendStatusText": true,
"EnumTaskReleaseStatus": true,
+ "EnumTaskReleaseStatusText": true,
+ "EnumTaskSettlementStatus": true,
"EnumTaskStatus": true,
+ "EnumTaskStatusText": true,
"EnumUserGender": true,
- "EnumUserInfoStatus": true,
"EnumUserInfoStatusText": true,
+ "EnumUserStatus": true,
"EnumUserType": true,
"EnumUserTypeText": true,
"ExtractDefaultPropTypes": true,
diff --git a/auto-imports.d.ts b/auto-imports.d.ts
index f3f0191..ca95e32 100644
--- a/auto-imports.d.ts
+++ b/auto-imports.d.ts
@@ -41,13 +41,21 @@
const EnumRoleWebApiDataPowerText: typeof import('./src/constants/apiEnumText')['EnumRoleWebApiDataPowerText']
const EnumRoleWebApiDataPowerTextForFilter: typeof import('./src/constants/apiEnumText')['EnumRoleWebApiDataPowerTextForFilter']
const EnumSettlementCycle: typeof import('./src/constants/apiEnum')['EnumSettlementCycle']
+ const EnumSettlementCycleText: typeof import('./src/constants/task')['EnumSettlementCycleText']
const EnumSmsAccess: typeof import('./src/constants/apiEnum')['EnumSmsAccess']
const EnumSmsAccessText: typeof import('./src/constants/enterprise')['EnumSmsAccessText']
+ const EnumTaskCheckReceiveStatus: typeof import('./src/constants/apiEnum')['EnumTaskCheckReceiveStatus']
+ const EnumTaskRecommendStatus: typeof import('./src/constants/apiEnum')['EnumTaskRecommendStatus']
+ const EnumTaskRecommendStatusText: typeof import('./src/constants/task')['EnumTaskRecommendStatusText']
const EnumTaskReleaseStatus: typeof import('./src/constants/apiEnum')['EnumTaskReleaseStatus']
+ const EnumTaskReleaseStatusText: typeof import('./src/constants/task')['EnumTaskReleaseStatusText']
+ const EnumTaskSettlementStatus: typeof import('./src/constants/apiEnum')['EnumTaskSettlementStatus']
const EnumTaskStatus: typeof import('./src/constants/apiEnum')['EnumTaskStatus']
+ const EnumTaskStatusText: typeof import('./src/constants/task')['EnumTaskStatusText']
const EnumUserGender: typeof import('./src/constants/apiEnum')['EnumUserGender']
const EnumUserInfoStatus: typeof import('./src/constants/apiEnum')['EnumUserInfoStatus']
const EnumUserInfoStatusText: typeof import('./src/constants/user')['EnumUserInfoStatusText']
+ const EnumUserStatus: typeof import('./src/constants/apiEnum')['EnumUserStatus']
const EnumUserType: typeof import('./src/constants/apiEnum')['EnumUserType']
const EnumUserTypeText: typeof import('./src/constants/apiEnumText')['EnumUserTypeText']
const EnumWebApiMethod: typeof import('./src/constants/apiEnum')['EnumWebApiMethod']
@@ -211,7 +219,7 @@
export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
import('vue')
// @ts-ignore
- export type { EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskReleaseStatus, EnumTaskStatus, EnumUserGender, EnumUserInfoStatus, EnumUserType, EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskReleaseStatus, EnumTaskStatus, EnumUserGender, EnumUserInfoStatus, EnumUserType } from './src/constants/apiEnum'
+ export type { EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType, EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType } from './src/constants/apiEnum'
import('./src/constants/apiEnum')
// @ts-ignore
export type { FlexWorkerEleSignEnum, FlexTaskWorkerHireEnum, FlexWorkerEleSignEnum, FlexTaskWorkerHireEnum } from './src/constants/cPerson'
@@ -283,13 +291,20 @@
readonly EnumRoleWebApiDataPowerText: UnwrapRef<typeof import('./src/constants/apiEnumText')['EnumRoleWebApiDataPowerText']>
readonly EnumRoleWebApiDataPowerTextForFilter: UnwrapRef<typeof import('./src/constants/apiEnumText')['EnumRoleWebApiDataPowerTextForFilter']>
readonly EnumSettlementCycle: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSettlementCycle']>
+ readonly EnumSettlementCycleText: UnwrapRef<typeof import('./src/constants/task')['EnumSettlementCycleText']>
readonly EnumSmsAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSmsAccess']>
readonly EnumSmsAccessText: UnwrapRef<typeof import('./src/constants/enterprise')['EnumSmsAccessText']>
+ readonly EnumTaskCheckReceiveStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskCheckReceiveStatus']>
+ readonly EnumTaskRecommendStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskRecommendStatus']>
+ readonly EnumTaskRecommendStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskRecommendStatusText']>
readonly EnumTaskReleaseStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskReleaseStatus']>
+ readonly EnumTaskReleaseStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskReleaseStatusText']>
+ readonly EnumTaskSettlementStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskSettlementStatus']>
readonly EnumTaskStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskStatus']>
+ readonly EnumTaskStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskStatusText']>
readonly EnumUserGender: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumUserGender']>
- readonly EnumUserInfoStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumUserInfoStatus']>
readonly EnumUserInfoStatusText: UnwrapRef<typeof import('./src/constants/user')['EnumUserInfoStatusText']>
+ readonly EnumUserStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumUserStatus']>
readonly EnumUserType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumUserType']>
readonly EnumUserTypeText: UnwrapRef<typeof import('./src/constants/apiEnumText')['EnumUserTypeText']>
readonly FastButtonMap: UnwrapRef<typeof import('./src/constants/module')['FastButtonMap']>
diff --git a/src/constants/apiEnum.ts b/src/constants/apiEnum.ts
index 1e227fd..f260f44 100644
--- a/src/constants/apiEnum.ts
+++ b/src/constants/apiEnum.ts
@@ -76,7 +76,7 @@
/**鐢ㄦ埛瑙掕壊 */
Role = 5,
/**鐢ㄦ埛淇℃伅 */
- UserInfo = 6,
+ User = 6,
/**浼佷笟淇℃伅 */
Enterprise = 7,
}
@@ -125,12 +125,36 @@
AliyunSms = 10,
}
+/** 浠诲姟缁撶畻鐘舵�� */
+export enum EnumTaskCheckReceiveStatus {
+ /**寰呴獙鏀� */
+ Wait = 10,
+ /**宸查獙鏀� */
+ Completed = 30,
+}
+
+/** 浠诲姟鎺ㄨ崘鐘舵�� */
+export enum EnumTaskRecommendStatus {
+ /**鏈帹鑽� */
+ No = 10,
+ /**宸叉帹鑽� */
+ Yes = 20,
+}
+
/** 浠诲姟鍙戝竷鐘舵�� */
export enum EnumTaskReleaseStatus {
/**鍙戝竷涓� */
InProcess = 20,
/**宸插仠姝� */
Stopped = 100,
+}
+
+/** 浠诲姟缁撶畻鐘舵�� */
+export enum EnumTaskSettlementStatus {
+ /**寰呯粨绠� */
+ Wait = 10,
+ /**宸茬粨绠� */
+ Completed = 30,
}
/** 浠诲姟瀹夋帓鐘舵�� */
@@ -150,7 +174,7 @@
}
/** 鐢ㄦ埛淇℃伅鐘舵�� */
-export enum EnumUserInfoStatus {
+export enum EnumUserStatus {
/**姝e父 */
Normal = 10,
/**绂佺敤 */
diff --git a/src/constants/index.ts b/src/constants/index.ts
index b179761..02c6032 100644
--- a/src/constants/index.ts
+++ b/src/constants/index.ts
@@ -16,3 +16,4 @@
export * from './apiEnumText';
export * from './user';
export * from './dic';
+export * from './task';
diff --git a/src/constants/task.ts b/src/constants/task.ts
new file mode 100644
index 0000000..fa7fd95
--- /dev/null
+++ b/src/constants/task.ts
@@ -0,0 +1,18 @@
+export const EnumTaskStatusText = {
+ [EnumTaskStatus.Wait]: '寰呭畨鎺�',
+ [EnumTaskStatus.Complete]: '宸插畨鎺�',
+};
+export const EnumSettlementCycleText = {
+ [EnumSettlementCycle.Month]: '鏈堢粨',
+ [EnumSettlementCycle.Week]: '鍛ㄧ粨',
+ [EnumSettlementCycle.Day]: '鏃ョ粨',
+};
+
+export const EnumTaskReleaseStatusText = {
+ [EnumTaskReleaseStatus.InProcess]: '鍙戝竷涓�',
+ [EnumTaskReleaseStatus.Stopped]: '宸插仠姝�',
+};
+export const EnumTaskRecommendStatusText = {
+ [EnumTaskRecommendStatus.No]: '鏈帹鑽�',
+ [EnumTaskRecommendStatus.Yes]: '宸叉帹鑽�',
+};
diff --git a/src/constants/user.ts b/src/constants/user.ts
index 588b889..b0c901c 100644
--- a/src/constants/user.ts
+++ b/src/constants/user.ts
@@ -1,4 +1,4 @@
export const EnumUserInfoStatusText = {
- [EnumUserInfoStatus.Normal]: '姝e父',
- [EnumUserInfoStatus.Disabled]: '绂佺敤',
+ [EnumUserStatus.Normal]: '姝e父',
+ [EnumUserStatus.Disabled]: '绂佺敤',
};
diff --git a/src/services/api/dictionary.ts b/src/services/api/dictionary.ts
index c48fb89..4c74b85 100644
--- a/src/services/api/dictionary.ts
+++ b/src/services/api/dictionary.ts
@@ -2,12 +2,12 @@
// @ts-ignore
import { request } from '@/utils/request';
-/** 鍒犻櫎鏁版嵁瀛楀吀绫诲埆 DELETE /api/main/dictionary/deleteDictionaryCategory */
+/** 鍒犻櫎鏁版嵁瀛楀吀绫诲埆 DELETE /api/flexjob/dictionary/deleteDictionaryCategory */
export async function deleteDictionaryCategory(
body: API.DeleteDictionaryCategoryCommand,
options?: API.RequestConfig
) {
- return request<number>('/api/main/dictionary/deleteDictionaryCategory', {
+ return request<number>('/api/flexjob/dictionary/deleteDictionaryCategory', {
method: 'DELETE',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -17,13 +17,13 @@
});
}
-/** 鑾峰彇鏁版嵁瀛楀吀绫诲埆鍒嗛〉鍒楄〃鏁版嵁 POST /api/main/dictionary/getDictionaryCategories */
+/** 鑾峰彇鏁版嵁瀛楀吀绫诲埆鍒嗛〉鍒楄〃鏁版嵁 POST /api/flexjob/dictionary/getDictionaryCategories */
export async function getDictionaryCategories(
body: API.GetDictionaryCategoriesQuery,
options?: API.RequestConfig
) {
return request<API.PagedListQueryResultGetDictionaryCategoriesQueryResultItem>(
- '/api/main/dictionary/getDictionaryCategories',
+ '/api/flexjob/dictionary/getDictionaryCategories',
{
method: 'POST',
headers: {
@@ -35,14 +35,14 @@
);
}
-/** 鏌ヨ鏁版嵁瀛楀吀绫诲埆閫夋嫨鍣ㄦ暟鎹� GET /api/main/dictionary/getDictionaryCategorySelect */
+/** 鏌ヨ鏁版嵁瀛楀吀绫诲埆閫夋嫨鍣ㄦ暟鎹� GET /api/flexjob/dictionary/getDictionaryCategorySelect */
export async function getDictionaryCategorySelect(
// 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
params: API.APIgetDictionaryCategorySelectParams,
options?: API.RequestConfig
) {
return request<API.SelectOptionGuidGetDictionaryCategorySelectQueryOption[]>(
- '/api/main/dictionary/getDictionaryCategorySelect',
+ '/api/flexjob/dictionary/getDictionaryCategorySelect',
{
method: 'GET',
params: {
@@ -55,13 +55,13 @@
);
}
-/** 鑾峰彇鏁版嵁瀛楀吀鍒嗛〉鍒楄〃鏁版嵁 POST /api/main/dictionary/getDictionaryDatas */
+/** 鑾峰彇鏁版嵁瀛楀吀鍒嗛〉鍒楄〃鏁版嵁 POST /api/flexjob/dictionary/getDictionaryDatas */
export async function getDictionaryDatas(
body: API.GetDictionaryDatasQuery,
options?: API.RequestConfig
) {
return request<API.PagedListQueryResultGetDictionaryDatasQueryResultItem>(
- '/api/main/dictionary/getDictionaryDatas',
+ '/api/flexjob/dictionary/getDictionaryDatas',
{
method: 'POST',
headers: {
@@ -73,14 +73,14 @@
);
}
-/** 鏌ヨ鏁版嵁瀛楀吀閫夋嫨鍣� GET /api/main/dictionary/getDictionaryDataSelect */
+/** 鏌ヨ鏁版嵁瀛楀吀閫夋嫨鍣� GET /api/flexjob/dictionary/getDictionaryDataSelect */
export async function getDictionaryDataSelect(
// 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
params: API.APIgetDictionaryDataSelectParams,
options?: API.RequestConfig
) {
return request<API.SelectOptionStringGetDictionaryDataSelectQueryResultOption[]>(
- '/api/main/dictionary/getDictionaryDataSelect',
+ '/api/flexjob/dictionary/getDictionaryDataSelect',
{
method: 'GET',
params: {
@@ -91,12 +91,12 @@
);
}
-/** 淇濆瓨鏁版嵁瀛楀吀绫诲埆 POST /api/main/dictionary/saveDictionaryCategory */
+/** 淇濆瓨鏁版嵁瀛楀吀绫诲埆 POST /api/flexjob/dictionary/saveDictionaryCategory */
export async function saveDictionaryCategory(
body: API.SaveDictionaryCategoryCommand,
options?: API.RequestConfig
) {
- return request<string>('/api/main/dictionary/saveDictionaryCategory', {
+ return request<string>('/api/flexjob/dictionary/saveDictionaryCategory', {
method: 'POST',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -106,12 +106,12 @@
});
}
-/** 淇濆瓨鏁版嵁瀛楀吀 POST /api/main/dictionary/saveDictionaryData */
+/** 淇濆瓨鏁版嵁瀛楀吀 POST /api/flexjob/dictionary/saveDictionaryData */
export async function saveDictionaryData(
body: API.SaveDictionaryDataCommand,
options?: API.RequestConfig
) {
- return request<string>('/api/main/dictionary/saveDictionaryData', {
+ return request<string>('/api/flexjob/dictionary/saveDictionaryData', {
method: 'POST',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -121,12 +121,12 @@
});
}
-/** 璁剧疆鏁版嵁瀛楀吀鏄惁绂佺敤 PUT /api/main/dictionary/setDictionaryDataIsDisabled */
+/** 璁剧疆鏁版嵁瀛楀吀鏄惁绂佺敤 PUT /api/flexjob/dictionary/setDictionaryDataIsDisabled */
export async function setDictionaryDataIsDisabled(
body: API.SetDictionaryDataIsDisabledCommand,
options?: API.RequestConfig
) {
- return request<number>('/api/main/dictionary/setDictionaryDataIsDisabled', {
+ return request<number>('/api/flexjob/dictionary/setDictionaryDataIsDisabled', {
method: 'PUT',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -136,12 +136,12 @@
});
}
-/** 鍚屾浜哄姏璧勬簮鍦板尯瀛楀吀鏁版嵁 POST /api/main/dictionary/syncHumanResourcesAreaDictionaryData */
+/** 鍚屾浜哄姏璧勬簮鍦板尯瀛楀吀鏁版嵁 POST /api/flexjob/dictionary/syncHumanResourcesAreaDictionaryData */
export async function syncHumanResourcesAreaDictionaryData(
body: API.SyncHumanResourcesAreaDictionaryDataCommand,
options?: API.RequestConfig
) {
- return request<number>('/api/main/dictionary/syncHumanResourcesAreaDictionaryData', {
+ return request<number>('/api/flexjob/dictionary/syncHumanResourcesAreaDictionaryData', {
method: 'POST',
headers: {
'Content-Type': 'application/json-patch+json',
diff --git a/src/services/api/index.ts b/src/services/api/index.ts
index de6fd71..dcda25c 100644
--- a/src/services/api/index.ts
+++ b/src/services/api/index.ts
@@ -2,21 +2,21 @@
/* eslint-disable */
// API 鏇存柊鏃堕棿锛�
// API 鍞竴鏍囪瘑锛�
-import * as userInfo from './userInfo';
-import * as auth from './auth';
import * as dictionary from './dictionary';
import * as menu from './menu';
-import * as resource from './resource';
-import * as role from './role';
import * as enterprise from './enterprise';
import * as task from './task';
+import * as auth from './auth';
+import * as user from './user';
+import * as role from './role';
+import * as resource from './resource';
export default {
- userInfo,
- auth,
dictionary,
menu,
- resource,
- role,
enterprise,
task,
+ auth,
+ user,
+ role,
+ resource,
};
diff --git a/src/services/api/task.ts b/src/services/api/task.ts
index 264a625..23c1be7 100644
--- a/src/services/api/task.ts
+++ b/src/services/api/task.ts
@@ -2,13 +2,13 @@
// @ts-ignore
import { request } from '@/utils/request';
-/** 鏌ヨ浠诲姟璇︽儏 GET /api/main/task/getTaskInfo */
+/** 鏌ヨ浠诲姟璇︽儏 GET /api/flexjob/task/getTaskInfo */
export async function getTaskInfo(
// 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
params: API.APIgetTaskInfoParams,
options?: API.RequestConfig
) {
- return request<API.GetTaskInfoQueryResult>('/api/main/task/getTaskInfo', {
+ return request<API.GetTaskInfoQueryResult>('/api/flexjob/task/getTaskInfo', {
method: 'GET',
params: {
...params,
@@ -17,10 +17,10 @@
});
}
-/** 鏌ヨ浠诲姟鍒嗛〉鍒楄〃 POST /api/main/task/getTaskInfos */
+/** 鏌ヨ浠诲姟鍒嗛〉鍒楄〃 POST /api/flexjob/task/getTaskInfos */
export async function getTaskInfos(body: API.GetTaskInfosQuery, options?: API.RequestConfig) {
return request<API.PagedListQueryResultGetTaskInfosQueryResultItem>(
- '/api/main/task/getTaskInfos',
+ '/api/flexjob/task/getTaskInfos',
{
method: 'POST',
headers: {
@@ -32,9 +32,9 @@
);
}
-/** 淇濆瓨浠诲姟 POST /api/main/task/saveTaskInfo */
+/** 淇濆瓨浠诲姟 POST /api/flexjob/task/saveTaskInfo */
export async function saveTaskInfo(body: API.SaveTaskInfoCommand, options?: API.RequestConfig) {
- return request<string>('/api/main/task/saveTaskInfo', {
+ return request<string>('/api/flexjob/task/saveTaskInfo', {
method: 'POST',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -43,3 +43,33 @@
...(options || {}),
});
}
+
+/** 璁剧疆浠诲姟鏄惁鎺ㄨ崘 PUT /api/flexjob/task/setTaskInfoRecommendStatus */
+export async function setTaskInfoRecommendStatus(
+ body: API.SetTaskInfoRecommendStatusCommand,
+ options?: API.RequestConfig
+) {
+ return request<number>('/api/flexjob/task/setTaskInfoRecommendStatus', {
+ method: 'PUT',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
+/** 璁剧疆浠诲姟鍙戝竷鐘舵�� PUT /api/flexjob/task/setTaskInfoReleaseStatus */
+export async function setTaskInfoReleaseStatus(
+ body: API.SetTaskInfoReleaseStatusCommand,
+ options?: API.RequestConfig
+) {
+ return request<number>('/api/flexjob/task/setTaskInfoReleaseStatus', {
+ method: 'PUT',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index f99c072..4d2153f 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -192,7 +192,7 @@
/**鐢ㄦ埛瑙掕壊 */
Role = 5,
/**鐢ㄦ埛淇℃伅 */
- UserInfo = 6,
+ User = 6,
/**浼佷笟淇℃伅 */
Enterprise = 7,
}
@@ -237,11 +237,32 @@
AliyunSms = 10,
}
+ enum EnumTaskCheckReceiveStatus {
+ /**寰呴獙鏀� */
+ Wait = 10,
+ /**宸查獙鏀� */
+ Completed = 30,
+ }
+
+ enum EnumTaskRecommendStatus {
+ /**鏈帹鑽� */
+ No = 10,
+ /**宸叉帹鑽� */
+ Yes = 20,
+ }
+
enum EnumTaskReleaseStatus {
/**鍙戝竷涓� */
InProcess = 20,
/**宸插仠姝� */
Stopped = 100,
+ }
+
+ enum EnumTaskSettlementStatus {
+ /**寰呯粨绠� */
+ Wait = 10,
+ /**宸茬粨绠� */
+ Completed = 30,
}
enum EnumTaskStatus {
@@ -258,7 +279,7 @@
Female = 20,
}
- enum EnumUserInfoStatus {
+ enum EnumUserStatus {
/**姝e父 */
Normal = 10,
/**绂佺敤 */
@@ -996,7 +1017,7 @@
remark?: string;
/** 瑙掕壊 */
roles?: GetOperationUserInfosQueryResultItemRole[];
- status?: EnumUserInfoStatus;
+ status?: EnumUserStatus;
}
interface GetOperationUserInfosQueryResultItemRole {
@@ -1102,6 +1123,12 @@
interface GetTaskInfoQueryResult {
/** Id */
id?: string;
+ /** 浼佷笟Id */
+ enterpriseId?: string;
+ /** 浼佷笟鍏ㄧО */
+ enterpriseName?: string;
+ /** 鍦ㄦ嫑宀椾綅鏁伴噺 */
+ taskCount?: number;
/** 浠诲姟鍚嶇О */
name?: string;
billingMethod?: EnumBillingMethod;
@@ -1125,14 +1152,18 @@
cityCode?: string;
/** 浠诲姟鍦扮偣鎵�灞炲煄甯� */
cityName?: string;
+ /** 浠诲姟鍦扮偣鍚嶇О */
+ addressName?: string;
/** 浠诲姟鍦扮偣璇︾粏鍦板潃 */
- address?: string;
+ addressDetail?: string;
/** 浠诲姟寮�濮嬫椂闂� */
beginTime?: string;
/** 浠诲姟缁撴潫鏃堕棿 */
endTime?: string;
/** 鍒涘缓鏃堕棿 */
createdTime?: string;
+ /** 鏄惁宸叉敹钘� */
+ isCollected?: boolean;
}
interface GetTaskInfosQuery {
@@ -1141,11 +1172,20 @@
keywords?: string;
/** 鍙戝竷鏃堕棿 */
time?: string;
+ /** 浠诲姟鍦扮偣鎵�灞炲煄甯傜紪鍙� */
+ cityCode?: string;
+ settlementCycle?: EnumSettlementCycle;
+ /** 鍛樺伐绂忓埄 */
+ benefitCodes?: string[];
+ genderLimit?: EnumUserGender;
status?: EnumTaskStatus;
releaseStatus?: EnumTaskReleaseStatus;
+ recommendStatus?: EnumTaskRecommendStatus;
}
interface GetTaskInfosQueryResultItem {
+ /** Id */
+ id?: string;
/** 浠诲姟鍚嶇О */
name: string;
/** 浠诲姟鍗曞彿 */
@@ -1163,6 +1203,11 @@
/** 浠诲姟缁撴潫鏃堕棿 */
endTime?: string;
releaseStatus?: EnumTaskReleaseStatus;
+ checkReceiveStatus?: EnumTaskCheckReceiveStatus;
+ settlementStatus?: EnumTaskSettlementStatus;
+ recommendStatus?: EnumTaskRecommendStatus;
+ /** 鍒涘缓鏃堕棿 */
+ createdTime?: string;
}
interface GetUserInfoRolesQueryResultItem {
@@ -1492,8 +1537,14 @@
provinceCode: string;
/** 浠诲姟鍦扮偣鎵�灞炲煄甯傜紪鍙� */
cityCode: string;
+ /** 浠诲姟鍦扮偣鍚嶇О */
+ addressName: string;
/** 浠诲姟鍦扮偣璇︾粏鍦板潃 */
- address: string;
+ addressDetail: string;
+ /** 缁忓害 */
+ longitude?: number;
+ /** 绾害 */
+ latitude?: number;
/** 浠诲姟寮�濮嬫椂闂� */
beginTime: string;
/** 浠诲姟缁撴潫鏃堕棿 */
@@ -1567,6 +1618,18 @@
userInfoIds?: string[];
}
+ interface SetTaskInfoRecommendStatusCommand {
+ /** Id */
+ ids?: string[];
+ recommendStatus?: EnumTaskRecommendStatus;
+ }
+
+ interface SetTaskInfoReleaseStatusCommand {
+ /** Id */
+ ids?: string[];
+ releaseStatus?: EnumTaskReleaseStatus;
+ }
+
interface SetUserInfoRolesCommand {
/** 鐢ㄦ埛Id */
userInfoId?: string;
@@ -1577,7 +1640,7 @@
interface SetUserInfoStatusCommand {
/** Id */
ids?: string[];
- status?: EnumUserInfoStatus;
+ status?: EnumUserStatus;
}
type SyncHumanResourcesAreaDictionaryDataCommand = Record<string, any>;
diff --git a/src/services/api/userInfo.ts b/src/services/api/user.ts
similarity index 71%
rename from src/services/api/userInfo.ts
rename to src/services/api/user.ts
index 4367d18..3d4e6e0 100644
--- a/src/services/api/userInfo.ts
+++ b/src/services/api/user.ts
@@ -2,13 +2,13 @@
// @ts-ignore
import { request } from '@/utils/request';
-/** 鏌ヨ杩愯惀绔敤鎴峰垎椤靛垪琛ㄦ暟鎹� POST /api/user/userInfo/getOperationUserInfos */
+/** 鏌ヨ杩愯惀绔敤鎴峰垎椤靛垪琛ㄦ暟鎹� POST /api/user/user/getOperationUserInfos */
export async function getOperationUserInfos(
body: API.GetOperationUserInfosQuery,
options?: API.RequestConfig
) {
return request<API.PagedListQueryResultGetOperationUserInfosQueryResultItem>(
- '/api/user/userInfo/getOperationUserInfos',
+ '/api/user/user/getOperationUserInfos',
{
method: 'POST',
headers: {
@@ -20,13 +20,13 @@
);
}
-/** 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃 GET /api/user/userInfo/getUserInfoRoles */
+/** 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃 GET /api/user/user/getUserInfoRoles */
export async function getUserInfoRoles(
// 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
params: API.APIgetUserInfoRolesParams,
options?: API.RequestConfig
) {
- return request<API.GetUserInfoRolesQueryResultItem[]>('/api/user/userInfo/getUserInfoRoles', {
+ return request<API.GetUserInfoRolesQueryResultItem[]>('/api/user/user/getUserInfoRoles', {
method: 'GET',
params: {
...params,
@@ -35,12 +35,12 @@
});
}
-/** 璁剧疆鐢ㄦ埛淇℃伅瑙掕壊 PUT /api/user/userInfo/setUserInfoRoles */
+/** 璁剧疆鐢ㄦ埛淇℃伅瑙掕壊 PUT /api/user/user/setUserInfoRoles */
export async function setUserInfoRoles(
body: API.SetUserInfoRolesCommand,
options?: API.RequestConfig
) {
- return request<number>('/api/user/userInfo/setUserInfoRoles', {
+ return request<number>('/api/user/user/setUserInfoRoles', {
method: 'PUT',
headers: {
'Content-Type': 'application/json-patch+json',
@@ -50,12 +50,12 @@
});
}
-/** 璁剧疆鐢ㄦ埛淇℃伅鐘舵�� PUT /api/user/userInfo/setUserInfoStatus */
+/** 璁剧疆鐢ㄦ埛淇℃伅鐘舵�� PUT /api/user/user/setUserInfoStatus */
export async function setUserInfoStatus(
body: API.SetUserInfoStatusCommand,
options?: API.RequestConfig
) {
- return request<number>('/api/user/userInfo/setUserInfoStatus', {
+ return request<number>('/api/user/user/setUserInfoStatus', {
method: 'PUT',
headers: {
'Content-Type': 'application/json-patch+json',
diff --git a/src/views/Permission/OperationUserManage.vue b/src/views/Permission/OperationUserManage.vue
index c33d828..b66c8c3 100644
--- a/src/views/Permission/OperationUserManage.vue
+++ b/src/views/Permission/OperationUserManage.vue
@@ -24,8 +24,8 @@
v-model="row.status"
active-text="鍚敤"
inactive-text="绂佺敤"
- :active-value="EnumUserInfoStatus.Normal"
- :inactive-value="EnumUserInfoStatus.Disabled"
+ :active-value="EnumUserStatus.Normal"
+ :inactive-value="EnumUserStatus.Disabled"
:before-change="() => setStatus(row)"
/>
</template>
@@ -50,9 +50,9 @@
} from '@bole-core/components';
import { useAccess } from '@/hooks';
import { formatRoleName } from '@/utils';
-import * as userInfoServices from '@/services/api/userInfo';
+import * as userServices from '@/services/api/user';
import { Message } from '@bole-core/core';
-import { EnumUserInfoStatus } from '@/constants';
+import { EnumUserStatus } from '@/constants';
import SetOperationUserRoleDialog from './components/SetOperationUserRoleDialog.vue';
defineOptions({
@@ -95,7 +95,7 @@
},
keywords: extraParamState.keywords,
};
- let res = await userInfoServices.getOperationUserInfos(params, {
+ let res = await userServices.getOperationUserInfos(params, {
showLoading: !state.loading,
});
return res;
@@ -106,7 +106,7 @@
keywords: '',
orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
},
- queryKey: ['userInfoServices/getOperationUserInfos'],
+ queryKey: ['userServices/getOperationUserInfos'],
columnsRenderProps: {},
}
);
@@ -114,16 +114,14 @@
async function setStatus(row: API.GetOperationUserInfosQueryResultItem) {
try {
await Message.tipMessage(
- `纭瑕�${row.status === EnumUserInfoStatus.Normal ? '绂佺敤' : '鍚敤'}璇ヨ处鍙峰悧锛焋
+ `纭瑕�${row.status === EnumUserStatus.Normal ? '绂佺敤' : '鍚敤'}璇ヨ处鍙峰悧锛焋
);
let params: API.SetUserInfoStatusCommand = {
ids: [row.id],
status:
- row.status === EnumUserInfoStatus.Normal
- ? EnumUserInfoStatus.Disabled
- : EnumUserInfoStatus.Normal,
+ row.status === EnumUserStatus.Normal ? EnumUserStatus.Disabled : EnumUserStatus.Normal,
};
- let res = await userInfoServices.setUserInfoStatus(params);
+ let res = await userServices.setUserInfoStatus(params);
return !!res;
} catch (error) {}
}
@@ -154,7 +152,7 @@
userInfoId: editForm.userInfoId,
roleIds: editForm.roleIds,
};
- let res = await userInfoServices.setUserInfoRoles(params);
+ let res = await userServices.setUserInfoRoles(params);
if (res) {
Message.successMessage('鎿嶄綔鎴愬姛');
getList(paginationState.pageIndex);
@@ -168,7 +166,7 @@
userInfoId: row.id,
// clientType: row.clientType,
};
- let res = await userInfoServices.getUserInfoRoles(params);
+ let res = await userServices.getUserInfoRoles(params);
return res;
} catch (error) {}
}
diff --git a/src/views/TaskManage/TaskManageDetail.vue b/src/views/TaskManage/TaskManageDetail.vue
index f664309..3dd88d4 100644
--- a/src/views/TaskManage/TaskManageDetail.vue
+++ b/src/views/TaskManage/TaskManageDetail.vue
@@ -8,6 +8,9 @@
<ProTabPane lazy label="鎶ュ悕璇︽儏" name="sign">
<SignDetailView></SignDetailView>
</ProTabPane>
+ <ProTabPane lazy label="缁撶畻璇︽儏" name="settle">
+ <SelltementDetailView></SelltementDetailView>
+ </ProTabPane>
</ProTabs>
</AppContainer>
</LoadingLayout>
@@ -17,6 +20,7 @@
import { AppContainer, ProTabs, ProTabPane } from '@bole-core/components';
import TaskDetailView from './components/TaskDetailView.vue';
import SignDetailView from './components/SignDetailView.vue';
+import SelltementDetailView from './components/SelltementDetailView.vue';
defineOptions({
name: 'TaskManageDetail',
diff --git a/src/views/TaskManage/TaskManageList.vue b/src/views/TaskManage/TaskManageList.vue
index 1409251..b6433ff 100644
--- a/src/views/TaskManage/TaskManageList.vue
+++ b/src/views/TaskManage/TaskManageList.vue
@@ -5,11 +5,8 @@
<template #query>
<QueryFilterItem tip-content="鍙戝竷鐘舵��">
<FieldRadio
- v-model="extraParamState.status"
- :value-enum="[
- { value: true, label: '鍙戝竷涓�' },
- { value: false, label: '宸插仠姝�' },
- ]"
+ v-model="extraParamState.releaseStatus"
+ :value-enum="EnumTaskReleaseStatusText"
buttonStyle
showAllBtn
@change="getList()"
@@ -17,11 +14,8 @@
</QueryFilterItem>
<QueryFilterItem tip-content="鎺ㄨ崘鐘舵��">
<FieldRadio
- v-model="extraParamState.status"
- :value-enum="[
- { value: true, label: '宸叉帹鑽�' },
- { value: false, label: '鏈帹鑽�' },
- ]"
+ v-model="extraParamState.recommendStatus"
+ :value-enum="EnumTaskRecommendStatusText"
buttonStyle
showAllBtn
@change="getList()"
@@ -29,7 +23,7 @@
</QueryFilterItem>
<QueryFilterItem tip-content="鍙戝竷鏃堕棿">
<FieldDatePicker
- v-model="extraParamState.beginDate"
+ v-model="extraParamState.time"
type="daterange"
range-separator="~"
start-placeholder="寮�濮嬫棩鏈�"
@@ -40,7 +34,7 @@
</QueryFilterItem>
<QueryFilterItem>
<SearchInput
- v-model="extraParamState.keyword"
+ v-model="extraParamState.keywords"
style="width: 260px"
placeholder="浠诲姟鍚嶇О"
@on-click-search="getList"
@@ -70,7 +64,8 @@
} from '@bole-core/components';
import { useAccess } from '@/hooks';
import { ModelValueType } from 'element-plus';
-import * as enterpriseServices from '@/services/api/enterprise';
+import * as taskServices from '@/services/api/task';
+import { EnumTaskReleaseStatusText, EnumTaskRecommendStatusText } from '@/constants';
defineOptions({
name: 'OperationManageList',
@@ -118,15 +113,18 @@
} = useTable(
async ({ pageIndex, pageSize }, extraParamState) => {
try {
- let params: API.GetEnterprisesQuery = {
+ let params: API.GetTaskInfosQuery = {
pageModel: {
rows: pageSize,
page: pageIndex,
orderInput: extraParamState.orderInput,
},
- // searchKeys: extraParamState.keyword,
+ keywords: extraParamState.keywords,
+ releaseStatus: extraParamState.releaseStatus,
+ recommendStatus: extraParamState.recommendStatus,
+ // time: extraParamState.time,
};
- let res = await enterpriseServices.getEnterprises(params, {
+ let res = await taskServices.getTaskInfos(params, {
showLoading: !state.loading,
});
return res;
@@ -134,11 +132,10 @@
},
{
defaultExtraParams: {
- keyword: '',
- pageType: '' as any as number,
- status: '' as any as boolean,
- beginDate: [] as unknown as ModelValueType,
- endDate: [] as unknown as ModelValueType,
+ keywords: '',
+ releaseStatus: '' as any as EnumTaskReleaseStatus,
+ recommendStatus: '' as any as EnumTaskRecommendStatus,
+ time: [] as unknown as ModelValueType,
orderInput: [{ property: 'id', order: EnumPagedListOrder.Asc }],
},
columnsRenderProps: {},
diff --git a/src/views/TaskManage/components/SelltementDetailView.vue b/src/views/TaskManage/components/SelltementDetailView.vue
new file mode 100644
index 0000000..58e1843
--- /dev/null
+++ b/src/views/TaskManage/components/SelltementDetailView.vue
@@ -0,0 +1,83 @@
+<template>
+ <LoadingLayout :loading="state.loading">
+ <AppContainer>
+ <ProTableV2
+ v-bind="proTableProps"
+ :columns="settleColumns"
+ :operationBtns="settleOperationBtns"
+ >
+ </ProTableV2>
+ </AppContainer>
+ </LoadingLayout>
+</template>
+
+<script setup lang="ts">
+import { ProTableV2, LoadingLayout, AppContainer, useTable } from '@bole-core/components';
+import { ModelValueType } from 'element-plus';
+import * as enterpriseServices from '@/services/api/enterprise';
+
+defineOptions({
+ name: 'SelltementDetailView',
+});
+
+const operationBtnMap: Record<string, OperationBtnType> = {
+ 'settle-downloadBtn': { emits: { onClick: (role) => handleDownload(role) } },
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+ operationBtnMap,
+});
+
+const [settleColumns] = useGroupColumns(column, ['settle-']);
+const [settleOperationBtns] = useGroupOperationBtns(operationBtns, ['settle-']);
+
+const router = useRouter();
+const BaseState = {
+ loading: true,
+};
+
+const state = reactive({ ...BaseState });
+
+onMounted(async () => {
+ await getList();
+ state.loading = false;
+});
+
+const {
+ getDataSource: getList,
+ proTableProps,
+ paginationState,
+ extraParamState,
+ reset,
+} = useTable(
+ async ({ pageIndex, pageSize }, extraParamState) => {
+ try {
+ let params: API.GetEnterprisesQuery = {
+ pageModel: {
+ rows: pageSize,
+ page: pageIndex,
+ orderInput: extraParamState.orderInput,
+ },
+ // searchKeys: extraParamState.keyword,
+ };
+ let res = await enterpriseServices.getEnterprises(params, {
+ showLoading: !state.loading,
+ });
+ return res;
+ } catch (error) {}
+ },
+ {
+ defaultExtraParams: {
+ keyword: '',
+ pageType: '' as any as number,
+ status: '' as any as boolean,
+ beginDate: [] as unknown as ModelValueType,
+ endDate: [] as unknown as ModelValueType,
+ orderInput: [{ property: 'id', order: EnumPagedListOrder.Asc }],
+ },
+ columnsRenderProps: {},
+ }
+);
+
+function handleDownload(row) {}
+</script>
diff --git a/src/views/TaskManage/components/SignDetailView.vue b/src/views/TaskManage/components/SignDetailView.vue
index 8a59d91..7ef9a0f 100644
--- a/src/views/TaskManage/components/SignDetailView.vue
+++ b/src/views/TaskManage/components/SignDetailView.vue
@@ -1,21 +1,14 @@
<template>
<LoadingLayout :loading="state.loading">
<AppContainer>
- <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
+ <ProTableV2 v-bind="proTableProps" :columns="signColumns" :operationBtns="signOperationBtns">
</ProTableV2>
</AppContainer>
</LoadingLayout>
</template>
<script setup lang="ts">
-import {
- OperationBtnType,
- ProTableV2,
- LoadingLayout,
- AppContainer,
- useTable,
-} from '@bole-core/components';
-import { useAccess } from '@/hooks';
+import { ProTableV2, LoadingLayout, AppContainer, useTable } from '@bole-core/components';
import { ModelValueType } from 'element-plus';
import * as enterpriseServices from '@/services/api/enterprise';
@@ -24,25 +17,15 @@
});
const operationBtnMap: Record<string, OperationBtnType> = {
- detailBtn: { emits: { onClick: (role) => goDetail(role) } },
- recommendBtn: {
- emits: { onClick: (role) => setAdvertiseOnShowStatus(role) },
- extraProps: {
- hide: (row) => row.status,
- },
- },
- cancelRecommendBtn: {
- emits: { onClick: (role) => setAdvertiseOnShowStatus(role) },
- props: { type: 'danger' },
- extraProps: {
- hide: (row) => !row.status,
- },
- },
+ 'sign-detailBtn': { emits: { onClick: (role) => goDetail(role) } },
};
const { checkSubModuleItemShow, column, operationBtns } = useAccess({
operationBtnMap,
});
+
+const [signColumns] = useGroupColumns(column, ['sign-']);
+const [signOperationBtns] = useGroupOperationBtns(operationBtns, ['sign-']);
const router = useRouter();
const BaseState = {
@@ -92,7 +75,7 @@
}
);
-async function setAdvertiseOnShowStatus(row) {
+async function handleRecommend(row) {
try {
} catch (error) {}
}
diff --git a/types/global.d.ts b/types/global.d.ts
index 33ce661..b091bab 100644
--- a/types/global.d.ts
+++ b/types/global.d.ts
@@ -137,9 +137,9 @@
provinceName?: string;
cityName?: string;
countyName?: string;
- provinceCode?: number;
- cityCode?: number;
- countyCode?: number;
+ provinceCode?: string;
+ cityCode?: string;
+ countyCode?: string;
address?: string;
}
--
Gitblit v1.9.1