wupengfei
2025-11-11 31343bb1d812bdf43a1b61b67be789507b790f5a
src/views/FlexJobManage/FlexJobManage.vue
@@ -3,7 +3,7 @@
    <AppContainer>
      <ProTableQueryFilterBar @on-reset="reset">
        <template #query>
          <QueryFilterItem tip-content="录用状态">
          <!-- <QueryFilterItem tip-content="录用状态">
            <FieldRadio
              v-model="extraParamState.hireStatus"
              :value-enum="EnumTaskUserHireStatusText"
@@ -11,7 +11,7 @@
              showAllBtn
              @change="getList()"
            />
          </QueryFilterItem>
          </QueryFilterItem> -->
          <QueryFilterItem tip-content="实名状态">
            <FieldRadio
              v-model="extraParamState.isReal"
@@ -19,6 +19,16 @@
                { label: '已实名', value: true },
                { label: '未实名', value: false },
              ]"
              buttonStyle
              showAllBtn
              :all-btn-value="null"
              @change="getList()"
            />
          </QueryFilterItem>
          <QueryFilterItem tip-content="灵工来源">
            <FieldRadio
              v-model="extraParamState.isReal"
              :value-enum="[]"
              buttonStyle
              showAllBtn
              :all-btn-value="null"
@@ -43,7 +53,7 @@
              @change="getList()"
            />
          </QueryFilterItem>
          <QueryFilterItem>
          <!-- <QueryFilterItem>
            <FieldDatePicker
              v-model="extraParamState.createdTime"
              type="daterange"
@@ -66,12 +76,24 @@
              @change="getList()"
              tooltipContent="签约时间"
            ></FieldDatePicker>
          </QueryFilterItem> -->
          <QueryFilterItem>
            <FieldDatePicker
              v-model="extraParamState.createdTime"
              type="daterange"
              range-separator="~"
              start-placeholder="起始日期"
              end-placeholder="截止日期"
              clearable
              @change="getList()"
              tooltipContent="实名时间"
            ></FieldDatePicker>
          </QueryFilterItem>
          <QueryFilterItem>
            <SearchInput
              v-model="extraParamState.searchWord"
              style="width: 300px"
              placeholder="姓名/手机/身份证号/客户"
              placeholder="姓名/手机/身份证号"
              @on-click-search="getList"
              @keyup.enter="getList()"
            >
@@ -81,10 +103,11 @@
        <template #btn>
          <el-button @click="handleDownloadTemplate()" type="primary" link>模板下载</el-button>
          <el-button @click="handleBatchImportAdd()" type="primary">批量导入</el-button>
          <el-button @click="handleBatchUnSign()" type="primary">批量解约</el-button>
          <el-button @click="handleStaffInfoAdd()" type="primary">新建</el-button>
          <!-- <el-button @click="handleBatchUnSign()" type="primary">批量解约</el-button>
          <el-button @click="handleSendShotMessage()" type="primary">短信发送</el-button>
          <el-button @click="handleBatchSign()" type="primary">批量签约</el-button>
          <el-button @click="handleEnterpriseBatchSign()" type="primary">批量企业签约</el-button>
          <el-button @click="handleEnterpriseBatchSign()" type="primary">批量企业签约</el-button> -->
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
@@ -146,15 +169,15 @@
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'editBtn',
      name: '编辑',
    },
    emits: {
      onClick: (role) => openDialog(role),
    },
  },
  // {
  //   data: {
  //     enCode: 'editBtn',
  //     name: '编辑',
  //   },
  //   emits: {
  //     onClick: (role) => openDialog(role),
  //   },
  // },
  {
    data: {
      enCode: 'detailBtn',
@@ -165,54 +188,54 @@
        handleStaffDetailEdit({ id: role.id, tabType: 'info' }),
    },
  },
  {
    data: {
      enCode: 'enterpriseSignBtn',
      name: '企业签约',
    },
    emits: {
      onClick: (role) => handleEnterpriseSign(role),
    },
    extraProps: {
      hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
        !(
          row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass &&
          row.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Wait
        ),
    },
  },
  {
    data: {
      enCode: 'inviteSignBtn',
      name: '邀请签约',
    },
    emits: {
      onClick: (role) => handleInviteSign(role),
    },
    extraProps: {
      hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
        !(
          row.userSignContractStatus !== EnumTaskUserSignContractStatus.Pass &&
          row.hireStatus === EnumTaskUserHireStatus.Pass
        ),
    },
  },
  {
    data: {
      enCode: 'unSignBtn',
      name: '解约',
    },
    emits: {
      onClick: (role) => handleUnSign(role),
    },
    extraProps: {
      hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
        !(
          row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass &&
          row.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Pass
        ),
    },
  },
  // {
  //   data: {
  //     enCode: 'enterpriseSignBtn',
  //     name: '企业签约',
  //   },
  //   emits: {
  //     onClick: (role) => handleEnterpriseSign(role),
  //   },
  //   extraProps: {
  //     hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
  //       !(
  //         row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass &&
  //         row.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Wait
  //       ),
  //   },
  // },
  // {
  //   data: {
  //     enCode: 'inviteSignBtn',
  //     name: '邀请签约',
  //   },
  //   emits: {
  //     onClick: (role) => handleInviteSign(role),
  //   },
  //   extraProps: {
  //     hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
  //       !(
  //         row.userSignContractStatus !== EnumTaskUserSignContractStatus.Pass &&
  //         row.hireStatus === EnumTaskUserHireStatus.Pass
  //       ),
  //   },
  // },
  // {
  //   data: {
  //     enCode: 'unSignBtn',
  //     name: '解约',
  //   },
  //   emits: {
  //     onClick: (role) => handleUnSign(role),
  //   },
  //   extraProps: {
  //     hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
  //       !(
  //         row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass &&
  //         row.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Pass
  //       ),
  //   },
  // },
  // {
  //   data: {
  //     enCode: 'delBtn',
@@ -326,6 +349,7 @@
const {
  dialogProps: dialogStaffInfoProps,
  handleEdit: handleStaffInfoEdit,
  handleAdd: handleStaffInfoAdd,
  editForm: staffInfoEditForm,
} = useFormDialog({
  onConfirm: handleAddOrEdit,