Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp
| | |
| | | :age="item.age" |
| | | :avatar="item.avatar" |
| | | :educationalBackgroundContent="item.educationalBackgroundContent" |
| | | :personalIdentityContent="item.personalIdentityContent" |
| | | :workExperience="item.workExperience" |
| | | :workSeniority="item.workSeniority" |
| | | :taskCount="item.taskCount" |
| | | :showFooterLeft="false" |
| | | > |
| | |
| | | const { userDetail } = useUser(); |
| | | const { findAreaNameFromCode } = useAllAreaList(); |
| | | const router = Taro.useRouter(); |
| | | const taskId = router.params?.taskId ?? ''; |
| | | const taskId = router.params?.id ?? ''; |
| | | const isEdit = !!taskId; |
| | | const isCopy = router.params?.isCopy === 'true'; |
| | | console.log('isCopy: ', router.params?.isCopy); |
| | |
| | | message: '请选择结束日期', |
| | | validator(value) { |
| | | if (!value) return Promise.reject('请选择结束日期'); |
| | | if (!dayjs(value).isAfter(dayjs(form.beginTime))) |
| | | if (dayjs(value).isBefore(dayjs(form.beginTime))) |
| | | return Promise.reject('结束日期需大于开始日期'); |
| | | return Promise.resolve(true); |
| | | }, |
| | |
| | | } |
| | | let res = await taskServices.saveTaskInfo(params); |
| | | if (res) { |
| | | Message.success(isEdit ? '编辑成功' : '发布成功', { |
| | | Message.success(isEdit && !isCopy ? '编辑成功' : '发布成功', { |
| | | onClosed() { |
| | | goBack(); |
| | | }, |
| | |
| | | const bgHeight = computed(() => 133 + systemStore.navHeight); |
| | | |
| | | Taro.useDidShow(() => { |
| | | updateUserInfo(); |
| | | if (isLogin.value) { |
| | | updateUserInfo(); |
| | | } |
| | | }); |
| | | |
| | | function goLogin() { |
| | |
| | | url: `${RouterPath.taskSubmitCheck}?id=${item.id}&date=${queryState.date}`, |
| | | }); |
| | | } |
| | | if (Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed) { |
| | | if ( |
| | | Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.WaitCheckReceive || |
| | | Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed |
| | | ) { |
| | | Taro.navigateTo({ |
| | | url: `${RouterPath.taskCheckDetail}?id=${item.id}`, |
| | | }); |
| | |
| | | /> |
| | | </nut-form-item> |
| | | <nut-form-item label="证书编号:" class="bole-form-item" prop="code"> |
| | | <nut-input v-model="form.code" type="text" placeholder="请输入"> </nut-input> |
| | | <nut-input v-model="form.code" type="number" placeholder="请输入"> </nut-input> |
| | | </nut-form-item> |
| | | <nut-form-item |
| | | label="永久证书:" |
| | |
| | | title-scroll |
| | | > |
| | | <ProTabPane :title="`全部`" :pane-key="0"></ProTabPane> |
| | | <ProTabPane :title="`待开始`" :pane-key="GetPersonalHireTaskInfosQueryStatus.Wait"></ProTabPane> |
| | | <ProTabPane |
| | | :title="`进行中`" |
| | | :pane-key="GetPersonalHireTaskInfosQueryStatus.InProcess" |
| | |
| | | <template> |
| | | <div class="bole-calendar-wrapper"> |
| | | <div :class="['bole-calendar-inner', { isCollapse }]"> |
| | | <nut-calendar-card v-model="model" class="bole-calendar"></nut-calendar-card> |
| | | <nut-calendar-card |
| | | v-model="model" |
| | | class="bole-calendar" |
| | | ref="calendar" |
| | | @change="handleChange" |
| | | ></nut-calendar-card> |
| | | </div> |
| | | <div :class="['bole-calendar-arrow', { active: !isCollapse }]" @click="toggle"> |
| | | <DownArrow :size="12" :class="['bole-calendar-arrow-icon']" /> |
| | |
| | | <script setup lang="ts"> |
| | | import { DownArrow } from '@nutui/icons-vue-taro'; |
| | | import { useToggle } from 'senin-mini/hooks'; |
| | | import { ref, watch } from 'vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'Calendar', |
| | |
| | | const model = defineModel<Date | Date[]>(); |
| | | |
| | | const { isCollapse, toggle } = useToggle(true); |
| | | |
| | | const calendar = ref(); |
| | | function handleChange(value) { |
| | | console.log('value: ', value); |
| | | console.log('calendar: ', calendar.value); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | |
| | | v-if="releaseStatus === EnumTaskReleaseStatus.InProcess" |
| | | type="primary" |
| | | @click="emit('apply', props.id)" |
| | | :disabled="!!hireStatus" |
| | | >报名</nut-button |
| | | > |
| | | </slot> |
| | |
| | | EnumUserGenderText, |
| | | EnumSettlementCycleText, |
| | | BillingMethodEnumUnit, |
| | | EnumTaskUserHireStatus, |
| | | } from '@12333/constants'; |
| | | import TaskPrice from './TaskPrice.vue'; |
| | | import { CommonTaskCardProps } from './card'; |
| | |
| | | recommendStatus?: EnumTaskRecommendStatus; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | hireStatus?: EnumTaskUserHireStatus; |
| | | }; |
| | | |
| | | const props = withDefaults(defineProps<Props>(), { |
| | |
| | | }; |
| | | |
| | | export const GetPersonalHireTaskInfosQueryStatusText = { |
| | | [GetPersonalHireTaskInfosQueryStatus.Wait]: '待开始', |
| | | [GetPersonalHireTaskInfosQueryStatus.InProcess]: '进行中', |
| | | [GetPersonalHireTaskInfosQueryStatus.Completed]: '已完成', |
| | | }; |
| | | |
| | | export const GetPersonalHireTaskInfosQueryStatusColor = { |
| | | [GetPersonalHireTaskInfosQueryStatus.Wait]: '#9FA4AC', |
| | | [GetPersonalHireTaskInfosQueryStatus.InProcess]: '#2A9E1B', |
| | | [GetPersonalHireTaskInfosQueryStatus.Completed]: '#9FA4AC', |
| | | }; |
| | | |
| | | export const GetTaskInfoQueryResultHireButtonText = { |
| | | [GetTaskInfoQueryResultHireButton.ApplyCheckReceive]: '申请验收', |
| | | [GetTaskInfoQueryResultHireButton.Wait]: '待开始', |
| | | [GetTaskInfoQueryResultHireButton.InProcess]: '进行中', |
| | | [GetTaskInfoQueryResultHireButton.Completed]: '已完成', |
| | | }; |
| | |
| | | rows: 20, |
| | | page: pageParam, |
| | | }, |
| | | id: id, |
| | | taskInfoId: id, |
| | | }; |
| | | |
| | | return taskCheckReceiveServices.getCheckReceiveTaskUserSubmits(params, { |