From 286f1b727856d6b32a8d237f353ae008f3076deb Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 11 三月 2025 17:48:15 +0800 Subject: [PATCH] feat: 接口对接 --- packages/components/src/Card/JobApplicationCard.vue | 112 ++++++++++++++++++++++++++++++-------------------------- 1 files changed, 60 insertions(+), 52 deletions(-) diff --git a/packages/components/src/Card/JobApplicationCard.vue b/packages/components/src/Card/JobApplicationCard.vue index 20e606c..2b77b39 100644 --- a/packages/components/src/Card/JobApplicationCard.vue +++ b/packages/components/src/Card/JobApplicationCard.vue @@ -1,28 +1,38 @@ <template> <div class="job-application-card-wrapper"> <div class="job-application-card-title-wrapper"> - <div class="job-application-card-title">瀹㈡埧鏈嶅姟鍛�</div> - <TaskPrice :value="212" v-if="mode === 'taskManage'" /> + <div class="job-application-card-title">{{ taskName }}</div> + <TaskPrice :value="fee" :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> <div class="job-application-card-line"> - <div class="job-application-card-time">{{ `${'2025骞�2鏈�5鏃�'}鑷�${'2025骞�3鏈�5鏃�'}` }}</div> - <div class="job-application-card-status" v-if="mode === 'normal'">{{ '鐢熸晥涓�' }}</div> + <div class="job-application-card-time"> + {{ + `${dayjs(startDate).format('YYYY骞碝M鏈圖D鏃�')}鑷�${dayjs(endDate).format('YYYY骞碝M鏈圖D鏃�')}` + }} + </div> + <div class="job-application-card-status" v-if="mode === 'normal'"> + {{ FlexTaskReleaseStatusEnumText[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">瀹佹尝闆疯开妫厭搴�</div> + <div class="job-application-card-company-address">{{ address }}</div> </div> - <div class="job-application-card-people" v-if="mode === 'normal'">{{ `鎶ュ悕浜烘暟锛�${5}` }}</div> + <div class="job-application-card-people" v-if="mode === 'normal'"> + {{ `鎶ュ悕浜烘暟锛�${applyWorkerCount}` }} + </div> </div> <div class="job-application-card-line"> - <div class="job-application-card-publish-time">{{ `鍙戝竷鏃ユ湡锛�${'2022骞�12鏈�25鏃�'}` }}</div> + <div class="job-application-card-publish-time"> + {{ `鍙戝竷鏃ユ湡锛�${dayjs(creationTime).format('YYYY-MM-DD')}` }} + </div> <slot name="footer-actions"> <div class="job-application-card-fee"> - <TaskPrice :value="212" /> + <TaskPrice :value="fee" :unit="unit" /> </div> </slot> </div> @@ -36,6 +46,7 @@ import { ActionSheet } from '@nutui/nutui-taro'; import { Portal } from 'senin-mini/components'; import { TaskPrice } from '@12333/components'; +import dayjs from 'dayjs'; defineOptions({ name: 'JobApplicationCard', @@ -50,37 +61,36 @@ Delete, } -enum ResourceStatus { +enum FlexTaskReleaseStatusEnum { /** - * 宸查┏鍥� + * 鍙戝竷涓� */ - Reject = -10, + Releasing = 10, /** - * 鏈彁浜� + * 宸插仠姝� */ - Draft = 10, - /** - * 寰呭鏍� - */ - WaitAudit = 20, - /** - * 杩涜涓� - */ - Running = 30, - /** - * 宸蹭笅鏋� - */ - OffShelf = 40, - /** - * 绯荤粺涓嬫灦 - */ - SystemOffShelf = 50, + Stoping = 20, } + +const FlexTaskReleaseStatusEnumText = { + [FlexTaskReleaseStatusEnum.Releasing]: '鍙戝竷涓�', + [FlexTaskReleaseStatusEnum.Stoping]: '宸插仠姝�', +}; type Props = CommonTaskCardProps & { showActions?: boolean; - status?: ResourceStatus; + status?: FlexTaskReleaseStatusEnum; mode?: 'taskManage' | 'normal'; + + taskName?: string; + startDate?: string; + endDate?: string; + address?: string; + creationTime?: string; + fee?: number; + applyWorkerCount?: number; + unit?: string; + releaseStatus?: API.FlexTaskReleaseStatusEnum; }; const props = withDefaults(defineProps<Props>(), { @@ -99,40 +109,38 @@ const menuList = computed(() => { let _menuList = []; - if (props.status !== ResourceStatus.WaitAudit) { - _menuList.push({ + _menuList.push( + { name: '缂栬緫', value: ManageActions.Edit, - }); - } - _menuList.push({ - name: '鏌ョ湅璇︽儏', - value: ManageActions.Detail, - }); - if (props.status === ResourceStatus.OffShelf) { + }, + { + name: '鏌ョ湅璇︽儏', + value: ManageActions.Detail, + } + ); + if (props.releaseStatus === FlexTaskReleaseStatusEnum.Stoping) { _menuList.push({ name: '鍙戝竷', value: ManageActions.Publish, }); } - if (props.status === ResourceStatus.Running) { + if (props.releaseStatus === FlexTaskReleaseStatusEnum.Releasing) { _menuList.push({ name: '鍋滄鍙戝竷', value: ManageActions.Stop, }); } - if (props.status !== ResourceStatus.WaitAudit) { - _menuList.push( - { - name: '澶嶅埗', - value: ManageActions.Copy, - }, - { - name: '鍒犻櫎', - value: ManageActions.Delete, - } - ); - } + _menuList.push( + { + name: '澶嶅埗', + value: ManageActions.Copy, + }, + { + name: '鍒犻櫎', + value: ManageActions.Delete, + } + ); return _menuList; }); -- Gitblit v1.9.1