wupengfei
8 天以前 5694090781fb8badc7ab31d9a4a38de1856d5eda
packages/components/src/Card/JobApplicationCard.vue
@@ -1,8 +1,8 @@
<template>
  <div class="job-application-card-wrapper">
    <div class="job-application-card-title-wrapper">
      <div class="job-application-card-title">{{ taskName }}</div>
      <TaskPrice :value="fee" :unit="unit" v-if="mode === 'taskManage'" />
      <div class="job-application-card-title">{{ name }}</div>
      <TaskPrice :value="serviceFee" :unit="unit" v-if="mode === 'taskManage'" />
      <div v-else class="job-application-card-title-more" @click.stop="handleMore">
        <img :src="IconMore" class="more-btn-icon" />
      </div>
@@ -10,29 +10,29 @@
    <div class="job-application-card-line">
      <div class="job-application-card-time">
        {{
          `${dayjs(startDate).format('YYYY年MM月DD日')}至${dayjs(endDate).format('YYYY年MM月DD日')}`
          `${dayjs(beginTime).format('YYYY年MM月DD日')}至${dayjs(endTime).format('YYYY年MM月DD日')}`
        }}
      </div>
      <div class="job-application-card-status" v-if="mode === 'normal'">
        {{ FlexTaskReleaseStatusEnumText[releaseStatus] }}
        {{ EnumTaskReleaseStatusText[releaseStatus] }}
      </div>
    </div>
    <div class="job-application-card-line">
      <div class="job-application-card-company">
        <div class="job-application-card-company-tag">H</div>
        <div class="job-application-card-company-address">{{ address }}</div>
        <div class="job-application-card-company-address">{{ addressName }}</div>
      </div>
      <div class="job-application-card-people" v-if="mode === 'normal'">
        {{ `报名人数:${applyWorkerCount}` }}
        {{ `报名人数:${userCount}` }}
      </div>
    </div>
    <div class="job-application-card-line">
      <div class="job-application-card-publish-time">
        {{ `发布日期:${dayjs(creationTime).format('YYYY-MM-DD')}` }}
        {{ `发布日期:${dayjs(createdTime).format('YYYY-MM-DD')}` }}
      </div>
      <slot name="footer-actions">
        <div class="job-application-card-fee">
          <TaskPrice :value="fee" :unit="unit" />
          <TaskPrice :value="serviceFee" :unit="unit" />
        </div>
      </slot>
    </div>
@@ -46,6 +46,7 @@
import { ActionSheet } from '@nutui/nutui-taro';
import { Portal } from 'senin-mini/components';
import { TaskPrice } from '@12333/components';
import { EnumTaskStatus, EnumTaskReleaseStatus, EnumTaskReleaseStatusText } from '@12333/constants';
import dayjs from 'dayjs';
defineOptions({
@@ -61,36 +62,20 @@
  Delete,
}
enum FlexTaskReleaseStatusEnum {
  /**
   * 发布中
   */
  Releasing = 10,
  /**
   * 已停止
   */
  Stoping = 20,
}
const FlexTaskReleaseStatusEnumText = {
  [FlexTaskReleaseStatusEnum.Releasing]: '发布中',
  [FlexTaskReleaseStatusEnum.Stoping]: '已停止',
};
type Props = CommonTaskCardProps & {
  showActions?: boolean;
  status?: FlexTaskReleaseStatusEnum;
  status?: EnumTaskStatus;
  mode?: 'taskManage' | 'normal';
  taskName?: string;
  startDate?: string;
  endDate?: string;
  address?: string;
  creationTime?: string;
  fee?: number;
  applyWorkerCount?: number;
  name?: string;
  beginTime?: string;
  endTime?: string;
  addressName?: string;
  createdTime?: string;
  serviceFee?: number;
  userCount?: number;
  unit?: string;
  releaseStatus?: API.FlexTaskReleaseStatusEnum;
  releaseStatus?: EnumTaskReleaseStatus;
};
const props = withDefaults(defineProps<Props>(), {
@@ -119,13 +104,13 @@
      value: ManageActions.Detail,
    }
  );
  if (props.releaseStatus === FlexTaskReleaseStatusEnum.Stoping) {
  if (props.releaseStatus === EnumTaskReleaseStatus.Stopped) {
    _menuList.push({
      name: '发布',
      value: ManageActions.Publish,
    });
  }
  if (props.releaseStatus === FlexTaskReleaseStatusEnum.Releasing) {
  if (props.releaseStatus === EnumTaskReleaseStatus.InProcess) {
    _menuList.push({
      name: '停止发布',
      value: ManageActions.Stop,