From b7426e2384b85e92ec1b59061bdada9b4f5c69ec Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期三, 23 四月 2025 16:12:40 +0800 Subject: [PATCH] feat: 接口 --- src/views/Reward/RewardGrant.vue | 98 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 74 insertions(+), 24 deletions(-) diff --git a/src/views/Reward/RewardGrant.vue b/src/views/Reward/RewardGrant.vue index 5891bf6..a576222 100644 --- a/src/views/Reward/RewardGrant.vue +++ b/src/views/Reward/RewardGrant.vue @@ -14,7 +14,18 @@ @change="getList()" ></FieldDatePicker> </QueryFilterItem> - <QueryFilterItem tip-content="鍙戞斁鏃ユ湡"> + <QueryFilterItem tip-content="鎷ㄤ粯鏃ユ湡"> + <FieldDatePicker + v-model="extraParamState.financeTime" + type="daterange" + range-separator="~" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + clearable + @change="getList()" + ></FieldDatePicker> + </QueryFilterItem> + <QueryFilterItem tip-content="鍏呭�兼棩鏈�"> <FieldDatePicker v-model="extraParamState.settleTime" type="daterange" @@ -25,7 +36,16 @@ @change="getList()" ></FieldDatePicker> </QueryFilterItem> - <QueryFilterItem> + <QueryFilterItem tip-content="璐㈡斂鎷ㄤ粯鐘舵��"> + <FieldRadio + v-model="extraParamState.financeStatus" + :value-enum="FinanceStatusEnumText" + buttonStyle + showAllBtn + @change="getList()" + /> + </QueryFilterItem> + <QueryFilterItem tip-content="骞冲彴鍏呭�肩姸鎬�"> <FieldRadio v-model="extraParamState.settleStatus" :value-enum="SettleStatusEnumText" @@ -55,7 +75,7 @@ :show-check-btn="false" downloadBtnText="鏌ョ湅" title="鏌ョ湅鍑瘉" - :BusinessTypeEnumText="ApplyTransferFileBusinessTypeEnumText" + :BusinessTypeEnumText="TransferFileEnumInRewardGrandText" /> <FinancialDialog v-bind="dialogFinancialProps"></FinancialDialog> <PlateformDialog v-bind="dialogPlateformProps"></PlateformDialog> @@ -80,7 +100,12 @@ } from '@bole-core/components'; import { Message, OrderInputType } from '@bole-core/core'; import { format } from '@/utils'; -import { SettleStatusEnum, SettleStatusEnumText } from '@/constants'; +import { + SettleStatusEnum, + SettleStatusEnumText, + FinanceStatusEnum, + FinanceStatusEnumText, +} from '@/constants'; import * as parkBountyApplyServices from '@/services/api/ParkBountyApply'; import FinancialDialog from './components/FinancialDialog.vue'; import PlateformDialog from './components/PlateformDialog.vue'; @@ -89,8 +114,8 @@ import { useQueryClient } from '@tanstack/vue-query'; import { FourStreamsMaterialUtils } from '@/components/commonView/utils'; import { - ApplyTransferMaterialFileTableItem, - ApplyTransferFileBusinessTypeEnumText, + TransferFileEnumInRewardGrandText, + TransferFileEnumInRewardGrandTableItem, } from '@/components/commonView/types'; defineOptions({ @@ -130,12 +155,12 @@ }, { id: '7', - enCode: 'settleStatus', + enCode: 'financeStatus', name: '璐㈡斂鎷ㄤ粯鐘舵��', }, { id: '8', - enCode: 'settleTime', + enCode: 'financeTime', name: '鎷ㄤ粯鏃ユ湡', }, { @@ -170,7 +195,7 @@ }, extraProps: { hide: (row: API.GetParkBountyApplyListOutput) => - row.settleStatus === SettleStatusEnum.HasSettle, + row.financeStatus === FinanceStatusEnum.HasIncome, }, }, { @@ -196,7 +221,8 @@ }, extraProps: { hide: (row: API.GetParkBountyApplyListOutput) => - row.settleStatus === SettleStatusEnum.WaitForSettle, + row.settleStatus === SettleStatusEnum.WaitForSettle && + row.financeStatus === FinanceStatusEnum.WaitForIncome, }, }, ]); @@ -230,10 +256,13 @@ }, batchNo: extraParamState.batchNo, settleStatus: extraParamState.settleStatus, + financeStatus: extraParamState.financeStatus, creationTimeBegin: format(extraParamState.creationTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), creationTimeEnd: format(extraParamState.creationTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), settleTimeBegin: format(extraParamState.settleTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), settleTimeEnd: format(extraParamState.settleTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), + financeTimeBegin: format(extraParamState.financeTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), + financeTimeEnd: format(extraParamState.financeTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), }; let res = await parkBountyApplyServices.getParkBountyApplyList(params, { showLoading: !state.loading, @@ -245,21 +274,25 @@ defaultExtraParams: { batchNo: '', settleStatus: '' as any as SettleStatusEnum, + financeStatus: '' as any as FinanceStatusEnum, creationTime: [] as unknown as ModelValueType, settleTime: [] as unknown as ModelValueType, + financeTime: [] as unknown as ModelValueType, orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }], }, columnsRenderProps: { applyMonth: { type: 'date', format: 'YYYY骞碝M鏈�' }, creationTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, settleTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, + financeTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, applySumAmount: { type: 'money' }, settleStatus: { type: 'enum', valueEnum: SettleStatusEnumText }, + financeStatus: { type: 'enum', valueEnum: FinanceStatusEnumText }, }, } ); -function goDetail(row: any) { +function goDetail(row: API.GetParkBountyApplyListOutput) { router.push({ name: 'RewardDeclareDetail', params: { @@ -268,15 +301,15 @@ }); } -function openMaterialFileDialog(row: API.ParkBountyApplyTransferDetailInfo) { +function openMaterialFileDialog(row: API.GetParkBountyApplyListOutput) { handleMaterialFileAdd({ - list: FourStreamsMaterialUtils.initApplyTransferMaterialFileList(row), + list: FourStreamsMaterialUtils.initApplyRewardGrandFileList(row), }); } const { dialogProps: dialogMaterialFileProps, handleAdd: handleMaterialFileAdd } = useFormDialog({ defaultFormParams: { - list: [] as ApplyTransferMaterialFileTableItem[], + list: [] as TransferFileEnumInRewardGrandTableItem[], }, }); @@ -289,25 +322,26 @@ onConfirm: handleFinancial, defaultFormParams: { parkBountyApplyId: '', - amount: 0, - settleFileUrl: [] as UploadUserFile[], + financeSumAmount: 0, + financeFileUrl: [] as UploadUserFile[], }, }); function openFinancialDialog(row?: API.GetParkBountyApplyListOutput) { handleFinancialEdit({ parkBountyApplyId: row.id, - amount: 0, - settleFileUrl: [] as UploadUserFile[], + financeSumAmount: 0, + financeFileUrl: [] as UploadUserFile[], }); } async function handleFinancial() { try { - let params: API.ParkBountyApplySettleInput = { + let params: API.ParkBountyApplyFinanceFileInput = { parkBountyApplyId: editFinancialForm.parkBountyApplyId, - settleFileUrl: editFinancialForm.settleFileUrl.map((x) => x.path).join('|'), + financeSumAmount: editFinancialForm.financeSumAmount, + financeFileUrl: editFinancialForm.financeFileUrl.map((x) => x.path).join('|'), }; - let res = await parkBountyApplyServices.parkBountyApplySettle(params); + let res = await parkBountyApplyServices.parkBountyApplyFinanceBill(params); if (res) { Message.successMessage('鎿嶄綔鎴愬姛'); getList(paginationState.pageIndex); @@ -326,7 +360,7 @@ onConfirm: handlePlateform, defaultFormParams: { parkBountyApplyId: '', - amount: 0, + settleSumAmount: 0, settleFileUrl: [] as UploadUserFile[], }, }); @@ -334,12 +368,28 @@ function openPlateformDialog(row?: API.GetParkBountyApplyListOutput) { handlePlateformEdit({ parkBountyApplyId: row.id, - amount: 0, + settleSumAmount: 0, settleFileUrl: [] as UploadUserFile[], }); } -async function handlePlateform() {} +async function handlePlateform() { + try { + let params: API.ParkBountyApplySettleInput = { + parkBountyApplyId: editPlateformForm.parkBountyApplyId, + settleSumAmount: editPlateformForm.settleSumAmount, + settleFileUrl: editPlateformForm.settleFileUrl.map((x) => x.path).join('|'), + }; + let res = await parkBountyApplyServices.parkBountyApplySettle(params); + if (res) { + Message.successMessage('鎿嶄綔鎴愬姛'); + getList(paginationState.pageIndex); + queryClient.invalidateQueries({ + queryKey: ['parkBountyApplyServices/getGoverDataBoard'], + }); + } + } catch (error) {} +} </script> <style lang="scss" scoped> -- Gitblit v1.9.1