wupengfei
2025-12-03 7ea7cd0ce3faafb0ab881935d88bef7928fc2ca7
src/views/EmploymentManage/EmploymentManageArrange.vue
@@ -33,11 +33,7 @@
          </QueryFilterItem>
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="EmploymentArrangeColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
      </ProTableV2>
    </AppContainer>
  </LoadingLayout>
@@ -54,35 +50,34 @@
  useTable,
  FieldDatePicker,
  FieldRadio,
  defineOperationBtns,
} from '@bole-core/components';
import { EmploymentArrangeColumns } from './constants';
import { Message } from '@bole-core/core';
import * as taskUserServices from '@/services/api/taskUser';
import {
  EnumTaskUserArrangeStatusText,
  EnumGetArrangeTaskUsersQueryApplyStatusText,
} from '@/constants';
import { hiddenIDNumberForEnd4 } from '@/utils';
defineOptions({
  name: 'EmploymentManageArrange',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'arrangeBtn',
      name: '安排',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  arrangeBtn: {
    emits: {
      onClick: (role) => handleArrange(role),
    },
    extraProps: {
      hide: (row: API.GetArrangeTaskUsersQueryResultItem) =>
        row.arrangeStatus === EnumTaskUserArrangeStatus.Complete,
        row.arrangeStatus === EnumTaskUserArrangeStatus.Complete || !state.isInternal,
    },
  },
]);
};
const { checkSubModuleItemShow, column, operationBtns } = useAccess({
  operationBtnMap,
});
const router = useRouter();
const route = useRoute();
@@ -90,6 +85,7 @@
const BaseState = {
  loading: true,
  isInternal: false,
};
const state = reactive({ ...BaseState });
@@ -123,6 +119,9 @@
      let res = await taskUserServices.getArrangeTaskUsers(params, {
        showLoading: !state.loading,
      });
      if (res) {
        state.isInternal = res.objectData?.isInternal;
      }
      return res;
    } catch (error) {
      console.log('error: ', error);
@@ -139,6 +138,11 @@
    columnsRenderProps: {
      gender: { type: 'enum', valueEnum: EnumUserGenderTextForPerson },
      arrangeStatus: { type: 'enum', valueEnum: EnumTaskUserArrangeStatusText },
      identity: {
        formatter: (row: API.GetArrangeTaskUsersQueryResultItem) => {
          return hiddenIDNumberForEnd4(row.identity);
        },
      },
    },
  }
);