From a8c0f3a72c24c756bc2c7493144bce717dc13ff4 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期二, 16 九月 2025 10:23:46 +0800
Subject: [PATCH] feat: 接口对接
---
packages/constants/task.ts | 44 ++++++
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue | 43 ++++--
packages/services/apiV2/task.ts | 78 +++++++++--
packages/services/apiV2/typings.d.ts | 229 +++++++++++++++++++++++---------
4 files changed, 300 insertions(+), 94 deletions(-)
diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
index d71bf5a..b95cbea 100644
--- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -36,7 +36,11 @@
required
label-width="90px"
>
- <nut-radio-group v-model="form.settlementCycle" direction="horizontal">
+ <nut-radio-group
+ v-model="form.settlementCycle"
+ direction="horizontal"
+ @change="settleTypeChange"
+ >
<BlRadio :label="Number(key)" v-for="(val, key) in EnumSettlementCycleText" :key="key">{{
val
}}</BlRadio>
@@ -45,14 +49,15 @@
<nut-form-item
label="缁撶畻鏃ユ湡:"
class="bole-form-item"
- prop="settlementCycleDate"
+ prop="settlementDate"
label-width="90px"
required
+ v-if="form.settlementCycle !== EnumSettlementCycle.Day"
>
<ChooseInputWithPicker
- v-model="form.genderLimit"
+ v-model="form.settlementDate"
placeholder="璇疯缃粨绠楁棩鏈�"
- :value-enum="[]"
+ :value-enum="settlementDateList"
/>
</nut-form-item>
<nut-form-item label="绂忓埄:" class="bole-form-item" prop="benefits" label-width="90px">
@@ -114,11 +119,6 @@
</nut-form-item>
<nut-form-item label="浠诲姟鍦扮偣" class="bole-form-item" prop="weMapInfo" required>
<ChooseLocationInput placeholder="璇烽�夋嫨浠诲姟鍦扮偣" v-model="form.weMapInfo" />
- <!-- <ChooseInputWithAreaPicker
- :columns="areaTreeList"
- v-model="form.areaList"
- placeholder="璇烽�夋嫨鎵�鍦ㄥ湴鍖�"
- ></ChooseInputWithAreaPicker> -->
</nut-form-item>
<nut-form-item
label="璇︾粏鍦板潃:"
@@ -168,6 +168,8 @@
EnumSettlementCycleText,
BillingMethodEnumUnit,
EnumUserGenderTextOptions,
+ EnumSettlementCycleDateWeekArray,
+ EnumSettlementCycleDateMonthArray,
} from '@12333/constants';
import {
ChooseInputWithPicker,
@@ -198,7 +200,6 @@
const taskId = router.params?.id ?? '';
const isEdit = !!taskId;
const isCopy = router.params?.isCopy === 'true';
-console.log('isCopy: ', router.params?.isCopy);
const nowDate = dayjs().toDate();
@@ -207,6 +208,16 @@
});
const { dictionaryDataList: CertificateTypeList } = useDictionaryDataSelect({
categoryCode: CategoryCode.CertificateType,
+});
+
+const settlementDateList = computed(() => {
+ if (form.settlementCycle === EnumSettlementCycle.Month) {
+ return EnumSettlementCycleDateMonthArray;
+ }
+ if (form.settlementCycle === EnumSettlementCycle.Week) {
+ return EnumSettlementCycleDateWeekArray;
+ }
+ return [];
});
const form = reactive({
@@ -219,10 +230,9 @@
ageMaxLimit: '' as any as number,
genderLimit: 0 as any as EnumUserGender,
credentialLimits: [] as string[],
- // address: '',
beginTime: '',
endTime: '',
- // areaList: [] as number[],
+ settlementDate: null as number,
weMapInfo: {} as WeMapModel,
addressDetail: '',
@@ -251,9 +261,6 @@
weMapInfo: [
{ required: true, message: '璇疯缃伐浣滃湴鐐�', validator: FormValidator.validatorWeMap },
],
- // areaList: [
- // { required: true, message: '璇锋坊鍔犲伐浣滃湴鐐�', validator: FormValidator.validatorArray },
- // ],
ageMinLimit: [
{
@@ -316,6 +323,7 @@
form.billingMethod = data.billingMethod;
form.serviceFee = data.serviceFee;
form.settlementCycle = data.settlementCycle;
+ form.settlementDate = data.settlementDate;
form.benefits = (data.benefits ?? []).map((item) => item.benefitCode);
form.ageMinLimit = data.ageMinLimit;
form.ageMaxLimit = data.ageMaxLimit;
@@ -353,6 +361,7 @@
billingMethod: form.billingMethod,
serviceFee: form.serviceFee,
settlementCycle: form.settlementCycle,
+ settlementDate: form.settlementDate,
benefits: form.benefits,
ageMinLimit: form.ageMinLimit,
ageMaxLimit: form.ageMaxLimit,
@@ -384,6 +393,10 @@
} catch (error) {}
}
+function settleTypeChange() {
+ form.settlementDate = null as number;
+}
+
function handleCancel() {
goBack();
}
diff --git a/packages/constants/task.ts b/packages/constants/task.ts
index c03f939..fd41f55 100644
--- a/packages/constants/task.ts
+++ b/packages/constants/task.ts
@@ -46,6 +46,50 @@
[EnumBillingMethod.Piece]: '鍏�/浠�',
};
+export const EnumSettlementCycleDateWeekArray = [
+ { label: '鏄熸湡涓�', value: 1 },
+ { label: '鏄熸湡浜�', value: 2 },
+ { label: '鏄熸湡涓�', value: 3 },
+ { label: '鏄熸湡鍥�', value: 4 },
+ { label: '鏄熸湡浜�', value: 5 },
+ { label: '鏄熸湡鍏�', value: 6 },
+ { label: '鏄熸湡鏃�', value: 7 },
+];
+
+export const EnumSettlementCycleDateMonthArray = [
+ { label: '1鏃�', value: 1 },
+ { label: '2鏃�', value: 2 },
+ { label: '3鏃�', value: 3 },
+ { label: '4鏃�', value: 4 },
+ { label: '5鏃�', value: 5 },
+ { label: '6鏃�', value: 6 },
+ { label: '7鏃�', value: 7 },
+ { label: '8鏃�', value: 8 },
+ { label: '9鏃�', value: 9 },
+ { label: '10鏃�', value: 10 },
+ { label: '11鏃�', value: 11 },
+ { label: '12鏃�', value: 12 },
+ { label: '13鏃�', value: 13 },
+ { label: '14鏃�', value: 14 },
+ { label: '15鏃�', value: 15 },
+ { label: '16鏃�', value: 16 },
+ { label: '17鏃�', value: 17 },
+ { label: '18鏃�', value: 18 },
+ { label: '19鏃�', value: 19 },
+ { label: '20鏃�', value: 20 },
+ { label: '21鏃�', value: 21 },
+ { label: '22鏃�', value: 22 },
+ { label: '23鏃�', value: 23 },
+ { label: '24鏃�', value: 24 },
+ { label: '25鏃�', value: 25 },
+ { label: '26鏃�', value: 26 },
+ { label: '27鏃�', value: 27 },
+ { label: '28鏃�', value: 28 },
+ { label: '29鏃�', value: 29 },
+ { label: '30鏃�', value: 30 },
+ { label: '31鏃�', value: 31 },
+];
+
export const EnumTaskReleaseStatusText = {
[EnumTaskReleaseStatus.InProcess]: '鍙戝竷涓�',
[EnumTaskReleaseStatus.Stopped]: '宸插仠姝�',
diff --git a/packages/services/apiV2/task.ts b/packages/services/apiV2/task.ts
index 06e974f..0f797ab 100644
--- a/packages/services/apiV2/task.ts
+++ b/packages/services/apiV2/task.ts
@@ -14,6 +14,36 @@
});
}
+/** 缂栬緫缁撶畻鍚嶅崟 POST /api/flexjob/task/editTaskSettlementOrderRoster */
+export async function editTaskSettlementOrderRoster(
+ body: API.EditTaskSettlementOrderRosterCommand,
+ options?: API.RequestConfig
+) {
+ return request<string>('/api/flexjob/task/editTaskSettlementOrderRoster', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
+/** 瀵煎嚭缁撶畻鍚嶅崟 POST /api/flexjob/task/exportTaskSettlementOrderRosters */
+export async function exportTaskSettlementOrderRosters(
+ body: API.ExportTaskSettlementOrderRostersCommand,
+ options?: API.RequestConfig
+) {
+ return request<string>('/api/flexjob/task/exportTaskSettlementOrderRosters', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
/** 鏌ヨ寮�鏀句换鍔″垎椤靛垪琛� POST /api/flexjob/task/getOpenTaskInfos */
export async function getOpenTaskInfos(
body: API.GetOpenTaskInfosQuery,
@@ -173,6 +203,39 @@
);
}
+/** 鏌ヨ浠诲姟缁撶畻鏃� GET /api/flexjob/task/getTaskSettlementDates */
+export async function getTaskSettlementDates(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetTaskSettlementDatesParams,
+ options?: API.RequestConfig
+) {
+ return request<string[]>('/api/flexjob/task/getTaskSettlementDates', {
+ method: 'GET',
+ params: {
+ ...params,
+ },
+ ...(options || {}),
+ });
+}
+
+/** 瀵煎叆缁撶畻鍚嶅崟 POST /api/flexjob/task/importTaskSettlementOrderRosters */
+export async function importTaskSettlementOrderRosters(
+ body: API.ImportTaskSettlementOrderRostersCommand,
+ options?: API.RequestConfig
+) {
+ return request<API.ImportTaskSettlementOrderRostersCommandResult>(
+ '/api/flexjob/task/importTaskSettlementOrderRosters',
+ {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ }
+ );
+}
+
/** 鎾ゅ洖缁撶畻 POST /api/flexjob/task/revokeTaskSettlementOrder */
export async function revokeTaskSettlementOrder(
body: API.RevokeTaskSettlementOrderCommand,
@@ -236,21 +299,6 @@
options?: API.RequestConfig
) {
return request<string>('/api/flexjob/task/sureTaskSettlement', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json-patch+json',
- },
- data: body,
- ...(options || {}),
- });
-}
-
-/** 纭缁撶畻鍗� POST /api/flexjob/task/sureTaskSettlementOrder */
-export async function sureTaskSettlementOrder(
- body: API.SureTaskSettlementOrderCommand,
- options?: API.RequestConfig
-) {
- return request<string>('/api/flexjob/task/sureTaskSettlementOrder', {
method: 'POST',
headers: {
'Content-Type': 'application/json-patch+json',
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index c3ea930..64d7946 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -207,10 +207,8 @@
}
interface APIgetSettlementTaskUsersParams {
- /** 浠诲姟Id */
- taskInfoId?: string;
- /** 缁撶畻鍗曞湴鍧� */
- settlementOrderUrl?: string;
+ /** 缁撶畻璁㈠崟Id */
+ id?: string;
}
interface APIgetTaskEnterpriseParams {
@@ -226,6 +224,17 @@
interface APIgetTaskSelectParams {
/** 鍏抽敭瀛� */
keywords?: string;
+ }
+
+ interface APIgetTaskSettlementDatesParams {
+ /** 浠诲姟寮�濮嬫椂闂� */
+ beginTime?: string;
+ /** 浠诲姟缁撴潫鏃堕棿 */
+ endTime?: string;
+ /** 缁撶畻鏂瑰紡 */
+ settlementCycle?: EnumSettlementCycle;
+ /** 缁撶畻鏃ユ湡 */
+ settlementDate?: number;
}
interface APIgetTaskUserHireStatusParams {
@@ -429,6 +438,21 @@
identityBackImg?: string;
/** Id */
id?: string;
+ }
+
+ interface EditTaskSettlementOrderRosterCommand {
+ /** 鍚嶅崟Id */
+ id?: string;
+ /** 缁撶畻閲戦 */
+ settlementAmount: number;
+ /** 瀹炲彂閲戦 */
+ actualSettlementAmount: number;
+ /** 鏀舵璐︽埛 */
+ receiveAccount: string;
+ /** 鎵�灞為摱琛� */
+ bank: string;
+ /** 寮�鎴锋敮琛屽悕绉� */
+ bankBranch?: string;
}
interface ElectronSignCallbackCommand {
@@ -979,6 +1003,11 @@
interface ExportTaskCheckReceiveTaskUsersCommand {
/** 浠诲姟Id */
+ id?: string;
+ }
+
+ interface ExportTaskSettlementOrderRostersCommand {
+ /** 缁撶畻璁㈠崟Id */
id?: string;
}
@@ -2064,6 +2093,24 @@
timestamp?: number;
}
+ interface FriendlyResultImportTaskSettlementOrderRostersCommandResult {
+ /** 璺熻釜Id */
+ traceId?: string;
+ /** 鐘舵�佺爜 */
+ code?: number;
+ /** 閿欒鐮� */
+ errorCode?: string;
+ data?: ImportTaskSettlementOrderRostersCommandResult;
+ /** 鎵ц鎴愬姛 */
+ success?: boolean;
+ /** 閿欒淇℃伅 */
+ msg?: any;
+ /** 闄勫姞鏁版嵁 */
+ extras?: any;
+ /** 鏃堕棿鎴� */
+ timestamp?: number;
+ }
+
interface FriendlyResultInt32 {
/** 璺熻釜Id */
traceId?: string;
@@ -2073,6 +2120,25 @@
errorCode?: string;
/** 鏁版嵁 */
data?: number;
+ /** 鎵ц鎴愬姛 */
+ success?: boolean;
+ /** 閿欒淇℃伅 */
+ msg?: any;
+ /** 闄勫姞鏁版嵁 */
+ extras?: any;
+ /** 鏃堕棿鎴� */
+ timestamp?: number;
+ }
+
+ interface FriendlyResultListDateTime {
+ /** 璺熻釜Id */
+ traceId?: string;
+ /** 鐘舵�佺爜 */
+ code?: number;
+ /** 閿欒鐮� */
+ errorCode?: string;
+ /** 鏁版嵁 */
+ data?: string[];
/** 鎵ц鎴愬姛 */
success?: boolean;
/** 閿欒淇℃伅 */
@@ -4236,6 +4302,10 @@
keywords?: string;
settlementOrderStatus?: EnumTaskSettlementOrderStatus;
settlementStatus?: EnumTaskSettlementStatus;
+ /** 缁撶畻鏃堕棿-璧峰 */
+ settlementTimeBegin?: string;
+ /** 缁撶畻鏃堕棿-鎴 */
+ settlementTimeEnd?: string;
pageModel?: PagedListQueryPageModel;
}
@@ -4247,6 +4317,40 @@
interface GetSettlementTasksQueryResultItem {
/** 浠诲姟Id */
+ id?: string;
+ /** 鎵�灞炰换鍔� */
+ name?: string;
+ /** 浠诲姟鍗曞彿 */
+ code?: string;
+ checkReceiveStatus?: EnumTaskCheckReceiveStatus;
+ settlementOrderStatus?: EnumTaskSettlementOrderStatus;
+ /** 缁撶畻鍗曞悕绉� */
+ settlementOrderName?: string;
+ /** 涓婁紶鏃堕棿 */
+ settlementOrderTime?: string;
+ /** 瀹炲彂閲戦 */
+ actualSettlementAmount?: number;
+ /** 缁撶畻閲戦 */
+ settlementAmount?: number;
+ settlementStatus?: EnumTaskSettlementStatus;
+ /** 鍒涘缓鏃堕棿 */
+ createdTime?: string;
+ /** 缁撶畻鏃堕棿 */
+ settlementTime?: string;
+ /** 澶囨敞 */
+ settlementRemark?: string;
+ /** 缁撶畻浜烘暟 */
+ settlementUserCount?: number;
+ }
+
+ interface GetSettlementTaskUsersQueryResult {
+ detail?: GetSettlementTaskUsersQueryResultDetail;
+ /** 缁撶畻鍚嶅崟 */
+ data?: GetSettlementTaskUsersQueryResultItem[];
+ }
+
+ interface GetSettlementTaskUsersQueryResultDetail {
+ /** 缁撶畻璁㈠崟Id */
id?: string;
/** 浠诲姟鍚嶇О */
name?: string;
@@ -4266,41 +4370,10 @@
settlementTime?: string;
/** 澶囨敞 */
settlementRemark?: string;
- /** 缁撶畻浜烘暟 */
- settlementUserCount?: number;
- }
-
- interface GetSettlementTaskUsersQueryResult {
- detail?: GetSettlementTaskQueryResult;
- /** 缁撶畻鍚嶅崟 */
- data?: GetSettlementTaskUsersQueryResultItem[];
- /** 閿欒淇℃伅 */
- errors?: GetSettlementTaskUsersQueryResultError[];
- }
-
- interface GetSettlementTaskUsersQueryResultError {
- /** 閿欒淇℃伅 */
- errorMessage?: string;
- /** 濮撳悕 */
- name?: string;
- /** 韬唤璇佸彿 */
- identity?: string;
- /** 缁撶畻閲戦 */
- settlementAmount?: number;
- /** 瀹炲彂閲戦 */
- actualSettlementAmount?: number;
- /** 鏀舵璐︽埛 */
- receiveAccount?: string;
- /** 鎵�灞為摱琛� */
- bank?: string;
- /** 寮�鎴锋敮琛屽悕绉� */
- bankBranch?: string;
- /** 浠诲姟鍚嶇О */
- taskName?: string;
}
interface GetSettlementTaskUsersQueryResultItem {
- /** 浠诲姟鐢ㄦ埛Id */
+ /** 缁撶畻鍚嶅崟Id */
id?: string;
/** 濮撳悕 */
name?: string;
@@ -4308,7 +4381,6 @@
identity?: string;
/** 鎵嬫満鍙� */
contactPhoneNumber?: string;
- checkReceiveStatus?: EnumTaskCheckReceiveStatus;
settlementStatus?: EnumTaskSettlementStatus;
/** 鎵�灞為摱琛� */
bank?: string;
@@ -4368,6 +4440,8 @@
/** 鏈嶅姟璐� */
serviceFee?: number;
settlementCycle?: EnumSettlementCycle;
+ /** 缁撶畻鏃ユ湡 */
+ settlementDate?: number;
/** 绂忓埄 */
benefits?: GetTaskInfoQueryResultBenefit[];
/** 骞撮緞鑼冨洿鏈�灏� */
@@ -4520,7 +4594,6 @@
endTime?: string;
releaseStatus?: EnumTaskReleaseStatus;
checkReceiveStatus?: EnumTaskCheckReceiveStatus;
- settlementStatus?: EnumTaskSettlementStatus;
recommendStatus?: EnumTaskRecommendStatus;
/** 鎺ㄨ崘鏃堕棿 */
recommendTime?: string;
@@ -4909,6 +4982,58 @@
contactPhoneNumber?: string;
/** 韬唤璇佸彿 */
identity?: string;
+ }
+
+ interface ImportTaskSettlementOrderRostersCommand {
+ /** 缁撶畻璁㈠崟Id */
+ id?: string;
+ /** 瀵煎叆鏂囦欢鍦板潃 */
+ url: string;
+ }
+
+ interface ImportTaskSettlementOrderRostersCommandResult {
+ /** Id */
+ id?: string;
+ /** 浠诲姟鍚嶇О */
+ name?: string;
+ /** 浠诲姟鍗曞彿 */
+ code?: string;
+ settlementOrderStatus?: EnumTaskSettlementOrderStatus;
+ /** 缁撶畻鍗曞悕绉� */
+ settlementOrderName?: string;
+ /** 涓婁紶鏃堕棿 */
+ settlementOrderTime?: string;
+ /** 瀹炲彂閲戦 */
+ actualSettlementAmount?: number;
+ /** 缁撶畻閲戦 */
+ settlementAmount?: number;
+ settlementStatus?: EnumTaskSettlementStatus;
+ /** 缁撶畻鏃堕棿 */
+ settlementTime?: string;
+ /** 澶囨敞 */
+ settlementRemark?: string;
+ errors?: ImportTaskSettlementOrderRostersCommandResultError[];
+ }
+
+ interface ImportTaskSettlementOrderRostersCommandResultError {
+ /** 閿欒淇℃伅 */
+ errorMessage?: string;
+ /** 濮撳悕 */
+ name?: string;
+ /** 韬唤璇佸彿 */
+ identity?: string;
+ /** 缁撶畻閲戦 */
+ settlementAmount?: number;
+ /** 瀹炲彂閲戦 */
+ actualSettlementAmount?: number;
+ /** 鏀舵璐︽埛 */
+ receiveAccount?: string;
+ /** 鎵�灞為摱琛� */
+ bank?: string;
+ /** 寮�鎴锋敮琛屽悕绉� */
+ bankBranch?: string;
+ /** 浠诲姟鍚嶇О */
+ taskName?: string;
}
interface InviteElectronSignCommand {
@@ -5386,6 +5511,8 @@
/** 鏈嶅姟璐� */
serviceFee: number;
settlementCycle: EnumSettlementCycle;
+ /** 缁撶畻鏃ユ湡 */
+ settlementDate: number;
/** 绂忓埄缂栧彿 */
benefits?: string[];
/** 骞撮緞鑼冨洿鏈�灏� */
@@ -5642,32 +5769,6 @@
interface SureTaskSettlementCommand {
/** 浠诲姟Id */
taskInfoId?: string;
- }
-
- interface SureTaskSettlementOrderCommand {
- /** 浠诲姟Id */
- taskInfoId?: string;
- /** 缁撶畻鍗曞湴鍧� */
- settlementOrderUrl?: string;
- /** 缁撶畻鍚嶅崟 */
- taskInfoUsers?: SureTaskSettlementOrderCommandUser[];
- }
-
- interface SureTaskSettlementOrderCommandUser {
- /** 浠诲姟鐢ㄦ埛Id */
- id?: string;
- /** 濮撳悕 */
- name?: string;
- /** 鎵�灞為摱琛� */
- bank?: string;
- /** 寮�鎴锋敮琛屽悕绉� */
- bankBranch?: string;
- /** 鏀舵璐︽埛 */
- receiveAccount: string;
- /** 缁撶畻閲戦 */
- settlementAmount: number;
- /** 瀹炲彂閲戦 */
- actualSettlementAmount: number;
}
type SyncDatabaseCommand = Record<string, any>;
--
Gitblit v1.9.1