wupengfei
2025-11-10 e68dea768aeed46c881af49067c03f2c3887be4b
src/views/EmploymentManage/CheckReceiveTaskDetail.vue
@@ -1,5 +1,5 @@
<template>
  <LoadingLayout :loading="state.loading">
  <LoadingLayout v-loading="state.loading">
    <AppContainer>
      <el-card class="query-filter-bar-wrapper" shadow="never">
        <ProForm :model="taskInfo" is-read>
@@ -16,7 +16,7 @@
            </ProFormColItem>
            <ProFormColItem :span="8">
              <ProFormItemV2 label="服务费金额:">
                {{ `${taskInfo.serviceFee}${EnumBillingMethodUnitText[taskInfo.billingMethod]}` }}
                {{ OrderUtils.getServiceFeeText(taskInfo.serviceFee, taskInfo.billingMethod) }}
              </ProFormItemV2>
            </ProFormColItem>
          </ProFormCol>
@@ -32,7 +32,7 @@
              </ProFormItemV2>
            </ProFormColItem>
            <ProFormColItem :span="8">
              <ProFormItemV2 label="发布日期:">
              <ProFormItemV2 label="结束日期:">
                {{ dayjs(taskInfo.endTime ?? '').format('YYYY-MM-DD') }}
              </ProFormItemV2>
            </ProFormColItem>
@@ -48,6 +48,7 @@
      </ProTableV2>
    </AppContainer>
    <CheckManageDialog v-bind="dialogProps" />
    <ManualCheckManageDialog v-bind="dialogManualProps" />
  </LoadingLayout>
</template>
@@ -68,10 +69,12 @@
import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
import * as taskServices from '@/services/api/task';
import { useQuery } from '@tanstack/vue-query';
import { OrderUtils } from '@/utils';
import { CheckReceiveTaskDetailColumns } from './constants';
import { EnumBillingMethodUnitText } from '@/constants';
import { EnumBillingMethodUnitText, EnumBillingMethod, EnumBillingMethodText } from '@/constants';
import dayjs from 'dayjs';
import CheckManageDialog from './components/CheckManageDialog.vue';
import ManualCheckManageDialog from './components/ManualCheckManageDialog.vue';
defineOptions({
  name: 'CheckReceiveTaskDetail',
@@ -88,7 +91,10 @@
    },
    extraProps: {
      hide: (row: API.GetCheckReceiveTaskQueryResultItem) =>
        row.checkReceiveStatus !== EnumTaskCheckReceiveStatus.WaitCheckReceive,
        !(
          row.checkReceiveStatus === EnumTaskCheckReceiveStatus.WaitCheckReceive &&
          row.checkReceiveMethods.includes(EnumTaskCheckReceiveMethod.Submit)
        ),
    },
  },
  {
@@ -120,6 +126,7 @@
const BaseState = {
  loading: true,
  checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[],
};
const state = reactive({ ...BaseState });
@@ -155,6 +162,7 @@
      let res = await taskCheckReceiveServices.getCheckReceiveTask(params, {
        showLoading: !state.loading,
      });
      state.checkReceiveMethods = res.objectData?.checkReceiveMethods;
      return res;
    } catch (error) {}
  },
@@ -171,16 +179,34 @@
);
function openDialog(row: API.GetCheckReceiveTaskQueryResultItem, isDetail = false) {
  // if (state.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn) {
  //   handleManualEdit({
  //     id: row.id,
  //   });
  // } else {
  handleEdit({
    id: row.id,
    tabType: state.checkReceiveMethods.includes(EnumTaskCheckReceiveMethod.CheckIn)
      ? 'signRecord'
      : '',
    checkReceiveMethods: state.checkReceiveMethods,
    isDetail,
  });
  // }
}
const { dialogProps, handleEdit } = useFormDialog({
  defaultFormParams: {
    id: '',
    tabType: '',
    checkReceiveMethods: [] as any as EnumTaskCheckReceiveMethod[],
    isDetail: false,
  },
});
const { dialogProps: dialogManualProps, handleEdit: handleManualEdit } = useFormDialog({
  defaultFormParams: {
    id: '',
  },
});
</script>