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