From f790bdf751063dd882b5ae654cb540d81bf16d1d Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 12 八月 2025 14:58:33 +0800 Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp --- apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue | 2 apps/bMiniApp/src/components/Menu/MenuItem.vue | 2 packages/components/src/Input/ChooseInputWithDatePicker.vue | 2 apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue | 7 ++- apps/cMiniApp/.eslintrc-auto-import.json | 43 +++++++++------------ packages/components/src/Tabs/ProTabs.vue | 12 ++++++ apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue | 1 apps/bMiniApp/src/subpackages/jobApplicationManage/components/JobDetail.vue | 36 +++++++++-------- apps/bMiniApp/project.config.json | 4 +- apps/bMiniApp/project.private.config.json | 7 +++ 10 files changed, 66 insertions(+), 50 deletions(-) diff --git a/apps/bMiniApp/project.config.json b/apps/bMiniApp/project.config.json index e4afad4..7bc8fee 100644 --- a/apps/bMiniApp/project.config.json +++ b/apps/bMiniApp/project.config.json @@ -3,8 +3,8 @@ "description": "", "setting": { "urlCheck": false, - "es6": false, - "enhance": false, + "es6": true, + "enhance": true, "postcss": false, "preloadBackgroundData": false, "minified": false, diff --git a/apps/bMiniApp/project.private.config.json b/apps/bMiniApp/project.private.config.json index eedae10..c3f7281 100644 --- a/apps/bMiniApp/project.private.config.json +++ b/apps/bMiniApp/project.private.config.json @@ -9,6 +9,13 @@ "miniprogram": { "list": [ { + "name": "搴旇仒绠$悊璇︽儏", + "pathName": "subpackages/jobApplicationManage/jobApplicationDetail/jobApplicationDetail", + "query": "taskId=04c75425-e783-4dbf-0f16-08ddd626b756", + "launchMode": "default", + "scene": null + }, + { "name": "璁剧疆", "pathName": "subpackages/mine/setting/setting", "query": "", diff --git a/apps/bMiniApp/src/components/Menu/MenuItem.vue b/apps/bMiniApp/src/components/Menu/MenuItem.vue index acb4a8d..8a6cf7d 100644 --- a/apps/bMiniApp/src/components/Menu/MenuItem.vue +++ b/apps/bMiniApp/src/components/Menu/MenuItem.vue @@ -125,7 +125,7 @@ const style = computed(() => { return parent.props.direction === 'down' - ? { top: parent.offset.value + 'px' } + ? { top: parent.offset.value + 'px', zIndex: 222222222 } : { bottom: parent.offset.value + 'px' }; }); diff --git a/apps/bMiniApp/src/subpackages/jobApplicationManage/components/JobDetail.vue b/apps/bMiniApp/src/subpackages/jobApplicationManage/components/JobDetail.vue index 6a0d095..e10ac35 100644 --- a/apps/bMiniApp/src/subpackages/jobApplicationManage/components/JobDetail.vue +++ b/apps/bMiniApp/src/subpackages/jobApplicationManage/components/JobDetail.vue @@ -1,10 +1,10 @@ <template> <LoadingLayout :loading="isLoading" :error="isError" :loadError="refetch"> <ContentScrollView style="background-color: transparent"> - <Cell :title="detail.taskName" titleSize="large"> + <Cell :title="detail.name" titleSize="large"> <div class="taskDetail-time"> {{ - `${dayjs(detail.startDate).format('YYYY骞碝M鏈圖D鏃�')}鑷�${dayjs(detail.endDate).format( + `${dayjs(detail.beginTime).format('YYYY骞碝M鏈圖D鏃�')}鑷�${dayjs(detail.endTime).format( 'YYYY骞碝M鏈圖D鏃�' )}` }} @@ -12,18 +12,21 @@ <div class="task-card-welfare-wrapper"> <div class="task-card-welfare-list"> <div class="task-card-welfare-list-item"> - {{ FlexTaskSettleTypeEnumText[detail.settleType] }} + {{ EnumSettlementCycleText[detail.settlementCycle] }} </div> </div> - <TaskPrice :value="detail.fee" :unit="SalaryTimeTypeEnumUnit[detail.feeType]" /> + <TaskPrice + :value="toThousand(detail.serviceFee ?? 0)" + :unit="BillingMethodEnumUnit[detail.billingMethod]" + /> </div> <div class="taskDetail-address-wrapper"> <div class="taskDetail-address-title-wrapper"> <img :src="IconLocaltion" class="taskDetail-address-title-icon" /> - <div class="taskDetail-address-title">瀹佹尝鏌忔偊閰掑簵</div> + <div class="taskDetail-address-title">{{ detail?.addressName ?? '' }}</div> </div> <div class="taskDetail-address-info-wrapper"> - <div class="taskDetail-address-info">瀹佹尝甯傞劄宸炲尯涓滈挶婀栧ぇ鍫拌矾188鍙峰畞娉㈡煆鎮﹂厭搴�</div> + <div class="taskDetail-address-info">{{ detail?.addressDetail ?? '' }}</div> <RectRight :size="8" class="taskDetail-address-info-icon" /> </div> </div> @@ -32,10 +35,10 @@ <CellChunk title="绂忓埄淇℃伅"> <div class="taskDetail-welfare-list"> <TaskDetailWelfareItem - v-for="item in detail.taskWeals" - :key="item.id" - :icon="setOSSLink(item.imageUrl)" - :text="item.name" + v-for="benefit in detail.benefits" + :key="benefit.benefitCode" + :icon="setOSSLink(benefit.benefitField2)" + :text="benefit.benefitContent" /> </div> </CellChunk> @@ -47,13 +50,13 @@ <script setup lang="ts"> import { useQuery } from '@tanstack/vue-query'; import Taro from '@tarojs/taro'; -import * as flexWorkerServices from '@12333/services/api/FlexWorker'; +import * as taskServices from '@12333/services/apiV2/task'; import IconLocaltion from '@/assets/flexJob/icon-localtion.png'; import { TaskPrice, TaskDetailWelfareItem } from '@12333/components'; -import { SalaryTimeTypeEnumUnit, FlexTaskSettleTypeEnumText } from '@12333/constants/task'; import dayjs from 'dayjs'; -import { setOSSLink } from '@12333/utils'; +import { setOSSLink, toThousand } from '@12333/utils'; import { RectRight } from '@nutui/icons-vue-taro'; +import { BillingMethodEnumUnit, EnumSettlementCycleText } from '@12333/constants'; defineOptions({ name: 'JobDetail', @@ -72,17 +75,16 @@ data: detail, refetch, } = useQuery({ - queryKey: ['flexWorkerServices/getFlexTaskDto', taskId], + queryKey: ['taskServices/getTaskInfo', taskId], queryFn: async () => { - return await flexWorkerServices.getFlexTaskDto( + return await taskServices.getTaskInfo( { id: taskId }, { showLoading: false, } ); }, - placeholderData: () => ({} as API.GetFlexTaskDtoOutput), - onSuccess(data) {}, + placeholderData: () => ({} as API.GetTaskInfoQueryResult), }); </script> diff --git a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue index 62b3ab2..d2afb15 100644 --- a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue @@ -36,6 +36,7 @@ @edit="goEdit(item)" @copy="goEdit(item, true)" @detail="goDetail(item)" + @click="goDetail(item)" @publish="handleChangeStatus(item, EnumTaskReleaseStatus.InProcess)" @stop="handleChangeStatus(item, EnumTaskReleaseStatus.Stopped)" @delete="handleDelete(item)" diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue index 07fc40d..6019fdc 100644 --- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue @@ -272,7 +272,8 @@ message: '璇烽�夋嫨缁撴潫鏃ユ湡', validator(value) { if (!value) return Promise.reject('璇烽�夋嫨缁撴潫鏃ユ湡'); - if (value <= form.beginTime) return Promise.reject('缁撴潫鏃ユ湡涓嶈兘灏忎簬寮�濮嬫棩鏈�'); + if (!dayjs(value).isAfter(dayjs(form.beginTime))) + return Promise.reject('缁撴潫鏃ユ湡闇�澶т簬寮�濮嬫棩鏈�'); return Promise.resolve(true); }, }, @@ -306,8 +307,8 @@ form.ageMaxLimit = data.ageMaxLimit; form.genderLimit = data.genderLimit; form.credentialLimits = (data.credentialLimits ?? []).map((item) => item.typeCode); - form.beginTime = dayjs(data.beginTime).format('YYYY-MM-DD 00:00:00'); - form.endTime = dayjs(data.endTime).format('YYYY-MM-DD 23:59:59'); + form.beginTime = dayjs(data.beginTime).format('YYYY-MM-DD'); + form.endTime = dayjs(data.endTime).format('YYYY-MM-DD'); form.addressDetail = data.addressDetail; form.weMapInfo = { provinceName: data.provinceContent, diff --git a/apps/cMiniApp/.eslintrc-auto-import.json b/apps/cMiniApp/.eslintrc-auto-import.json index ade550f..d07633f 100644 --- a/apps/cMiniApp/.eslintrc-auto-import.json +++ b/apps/cMiniApp/.eslintrc-auto-import.json @@ -1,21 +1,23 @@ { "globals": { + "AppLocalConfig": true, + "BackType": true, "Component": true, "ComponentPublicInstance": true, "ComputedRef": true, - "DirectiveBinding": true, "EffectScope": true, "ExtractDefaultPropTypes": true, "ExtractPropTypes": true, "ExtractPublicPropTypes": true, "InjectionKey": true, - "MaybeRef": true, - "MaybeRefOrGetter": true, + "OssAssets": true, "PropType": true, "Ref": true, "RouterPath": true, - "Slot": true, - "Slots": true, + "TabBarPageRouter": true, + "TaskStatus": true, + "TaskStatusColor": true, + "TaskStatusText": true, "VNode": true, "WritableComputedRef": true, "acceptHMRUpdate": true, @@ -42,6 +44,7 @@ "mapStores": true, "mapWritableState": true, "markRaw": true, + "myClient": true, "nextTick": true, "onActivated": true, "onBeforeMount": true, @@ -76,40 +79,30 @@ "toValue": true, "triggerRef": true, "unref": true, + "useAccessLogin": true, + "useAccessPersonalInfo": true, "useAttrs": true, + "useAuth": true, "useCssModule": true, "useCssVars": true, + "useGoLogin": true, "useId": true, + "useIsLogin": true, "useLink": true, + "useLoginedJump": true, "useModel": true, + "useMyCertificationAuditInfo": true, "useRoute": true, "useRouter": true, "useSlots": true, + "useSwitchTab": true, "useTemplateRef": true, + "useUser": true, + "useUserResume": true, "watch": true, "watchEffect": true, "watchPostEffect": true, "watchSyncEffect": true, - "AppLocalConfig": true, - "BackType": true, - "HomeOrderType": true, - "OssAssets": true, - "TabBarPageRouter": true, - "TaskStatus": true, - "TaskStatusColor": true, - "TaskStatusText": true, - "myClient": true, - "useAccessLogin": true, - "useAccessPersonalInfo": true, - "useAuth": true, - "useGoLogin": true, - "useIsLogin": true, - "useLoginedJump": true, - "useMyCertificationAuditInfo": true, - "useSwitchTab": true, - "useTaskList": true, - "useUser": true, - "useUserResume": true, "useUpdateResume": true } } diff --git a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue index 8ac1076..da245b4 100644 --- a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue @@ -152,7 +152,7 @@ }); /** - * TODO 缂哄皯宸叉姤鍚嶄汉鏁� 鎵嬫満 鎶曡瘔涓炬姤鎺ュ彛 鎶ュ悕鎺ュ彛 + * TODO 缂哄皯 鎵嬫満 鎶曡瘔涓炬姤鎺ュ彛 鎶ュ悕鎺ュ彛 */ const router = Taro.useRouter(); diff --git a/packages/components/src/Input/ChooseInputWithDatePicker.vue b/packages/components/src/Input/ChooseInputWithDatePicker.vue index 2b21ef6..2e2bb17 100644 --- a/packages/components/src/Input/ChooseInputWithDatePicker.vue +++ b/packages/components/src/Input/ChooseInputWithDatePicker.vue @@ -45,7 +45,7 @@ modelValue: _modelValue, onCancel: onClose, onConfirm: ({ selectedValue }) => { - emit('update:modelValue', dayjs(selectedValue).format('YYYY-MM-DD')); + emit('update:modelValue', dayjs(selectedValue.join('-')).format('YYYY-MM-DD')); onClose(); }, minDate: props.minDate, diff --git a/packages/components/src/Tabs/ProTabs.vue b/packages/components/src/Tabs/ProTabs.vue index e4d8c51..f3d1b77 100644 --- a/packages/components/src/Tabs/ProTabs.vue +++ b/packages/components/src/Tabs/ProTabs.vue @@ -6,6 +6,7 @@ direction, { fullHeight, noContent: !showPaneContent, flexTitle, noSmile: !showSmile }, ]" + :style="tabsStyle" > <div :class="['pro-tabs__titles_wrapper', { isTransparent }]"> <scroll-view @@ -403,6 +404,17 @@ return { marginLeft: px, marginRight: px }; }); const refRandomId = Math.random().toString(36).slice(-8); + +const systemInfo = Taro.getSystemInfoSync(); +console.log('systemInfo: ', systemInfo); + +const tabsStyle = computed(() => { + if (systemInfo.platform === 'ios') { + return { overflow: 'visible' }; + } else { + return {}; + } +}); </script> <style lang="scss"> -- Gitblit v1.9.1