| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | 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({ |
| | |
| | | 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>(), { |
| | |
| | | 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, |