apps/cMiniApp/project.private.config.json | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/app.config.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/components/UserHome/UserHomeTopView.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/constants/router.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/MineAgreementSignDetailItem.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/InnerPage.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/mineCurriculumVitae.config.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/mineCurriculumVitae.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
apps/cMiniApp/project.private.config.json
@@ -21,6 +21,13 @@ "query": "", "launchMode": "default", "scene": null }, { "name": "", "pathName": "subpackages/mine/mineCurriculumVitae/mineCurriculumVitae", "query": "", "launchMode": "default", "scene": null } ] } apps/cMiniApp/src/app.config.ts
@@ -79,6 +79,7 @@ 'mineCollectTask/mineCollectTask', 'mineAgreementSign/mineAgreementSign', 'mineAgreementSignDetail/mineAgreementSignDetail', 'mineCurriculumVitae/mineCurriculumVitae', 'setting/setting', ], }, apps/cMiniApp/src/components/UserHome/UserHomeTopView.vue
@@ -1,7 +1,7 @@ <template> <div class="mine-page-top-view"> <slot name="avatar"></slot> <div class="setting-wrapper" v-if="showUserHomePageBtn" @click=""> <div class="setting-wrapper" v-if="showUserHomePageBtn" @click="goMineCurriculumVitae"> <div class="setting-text"> 我的简历<IconFont name="rect-right" size="16" color="#6D6E6E"></IconFont> </div> @@ -12,6 +12,7 @@ <script setup lang="ts"> import { useUser } from '@/hooks'; import Taro from '@tarojs/taro'; import { RouterPath } from '@/constants'; defineOptions({ name: 'UserHomeTopView', @@ -28,6 +29,12 @@ }); const { userDetail } = useUser(); function goMineCurriculumVitae() { Taro.navigateTo({ url: RouterPath.mineCurriculumVitae, }); } </script> <style lang="scss"> apps/cMiniApp/src/constants/router.ts
@@ -32,5 +32,6 @@ mineCollectTask = '/subpackages/mine/mineCollectTask/mineCollectTask', mineAgreementSign = '/subpackages/mine/mineAgreementSign/mineAgreementSign', mineAgreementSignDetail = '/subpackages/mine/mineAgreementSignDetail/mineAgreementSignDetail', mineCurriculumVitae = '/subpackages/mine/mineCurriculumVitae/mineCurriculumVitae', setting = '/subpackages/mine/setting/setting', } apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
@@ -1,11 +1,83 @@ <template> <div class="mine-agreement-sign-detail"> <MineAgreementSignDetailCard title="基本信息"> <template #content> <MineAgreementSignDetailItem label="姓名" detail="姓名"></MineAgreementSignDetailItem> </template> </MineAgreementSignDetailCard> </div> <LoadingLayout> <ContentScrollView :paddingH="false" style="background-color: transparent"> <div class="mine-agreement-sign-detail"> <MineAgreementSignDetailCard title="基本信息"> <template #content> <MineAgreementSignDetailItem label="协议编号" detail="QY1052511040446686047" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="协议状态" detail="生效中/已终止" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="起始时间" detail="2024.05.20" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="终止时间" detail="2025.05.19" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="协议类型" detail="劳动合同" ></MineAgreementSignDetailItem> </template> </MineAgreementSignDetailCard> <MineAgreementSignDetailCard title="签约方信息 - 员工"> <template #content> <MineAgreementSignDetailItem label="员工姓名" detail="阳阳" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="证件类型" detail="居民身份证" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="证件号码" detail="622429199105261913" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="岗位" detail="保洁"></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="签约时间" detail="2024.05.20" ></MineAgreementSignDetailItem> </template> </MineAgreementSignDetailCard> <MineAgreementSignDetailCard title="签约方信息 - 公司主体"> <template #content> <MineAgreementSignDetailItem label="主体类型" detail="公司" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="签约主体" detail="宁波人力无忧人力资源" ></MineAgreementSignDetailItem> <MineAgreementSignDetailItem label="签约时间" detail="2024.05.20" ></MineAgreementSignDetailItem> </template> </MineAgreementSignDetailCard> <MineAgreementSignDetailCard title="签约内容"> <template #content> <MineAgreementSignDetailItem label="协议内容"> <template #detail> <div class="detail-card-btn">查看协议</div> </template> </MineAgreementSignDetailItem> </template> </MineAgreementSignDetailCard> </div> </ContentScrollView> <PageFooter> <PageFooterBtn type="primary" @click="goToSign">去签约</PageFooterBtn> </PageFooter> </LoadingLayout> </template> <script setup lang="ts"> @@ -20,6 +92,8 @@ const queryState = reactive({}); const userStore = useUserStore(); function goToSign() {} </script> <style lang="scss"> @@ -27,5 +101,13 @@ .mine-agreement-sign-detail { padding: 20px 28px 0; .mine-agreement-sign-detail-card { margin-bottom: 24px; } } .detail-card-btn { color: boleGetCssVar('color', 'primary'); } </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/MineAgreementSignDetailItem.vue
@@ -1,6 +1,9 @@ <template> <div class="mine-agreement-sign-detail-item"> <div class="mine-agreement-sign-detail-item-lebel"> <div class="mine-agreement-sign-detail-item-lebel" :style="{ width: labelWidth, textAlign: textAlign }" > <slot name="label"> {{ label }} </slot> @@ -19,21 +22,41 @@ }); type Props = { label: string; detail: string; label?: string; detail?: string; labelWidth?: any; textAlign?: any; }; const props = withDefaults(defineProps<Props>(), {}); const props = withDefaults(defineProps<Props>(), { labelWidth: '50px', textAlign: 'left', }); </script> <style lang="scss"> @use '@/style/common.scss' as *; .mine-agreement-sign-detail-item { margin-bottom: 24px; display: flex; align-items: center; &:last-child { margin-bottom: 0; } .mine-agreement-sign-detail-item-lebel { font-size: 24px; line-height: 36px; margin-right: 24px; color: boleGetCssVar('text-color', 'regular'); } .mine-agreement-sign-detail-item-detail { font-size: 24px; line-height: 36px; color: boleGetCssVar('text-color', 'primary'); flex: 1; min-width: 0; } } </style> apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/InnerPage.vue
New file @@ -0,0 +1,138 @@ <template> <ContentView> <nut-noticebar text="个人简历已完善50%,完善简历可提升录用率" :left-icon="false" background="transparent" close-mode /> <div class="mine-curriculum-info-wrapper"> <UserAvatar :size="60" class="mine-curriculum-avatar" /> <div class="mine-curriculum-info-content"> <div class="mine-curriculum-info-item"> <div class="mine-curriculum-info-item-left"> <div class="mine-curriculum-info-item-name"> {{ userStore.userDetail?.userName ?? '' }} </div> <div class="mine-curriculum-info-item-gender"> <div class="mine-curriculum-info-item-gender-dot">·</div> <img :src="IconAuth" class="mine-curriculum-info-item-gender-icon" /> </div> </div> <IconFont name="rect-right" size="16" color="#6D6E6E"></IconFont> </div> <div class="mine-curriculum-info-item"> <div class="mine-curriculum-info-item-left"> <img :src="IconAuth" class="mine-curriculum-info-item-phone-icon" /> <div class="mine-curriculum-info-item-phone"> {{ userStore.userDetail?.phoneNumber ?? '' }} </div> </div> <div class="mine-curriculum-info-item-detail"> {{ '26岁 | 非学生 | 本科' }} </div> </div> </div> </div> <List class="mine-curriculum-intention"> <div class="mine-curriculum-intention-title"> <div class="mine-curriculum-intention-title-text">求职意向</div> <div class="mine-curriculum-intention-title-edit"> 编辑 <img :src="IconArrow" class="" /> </div> </div> </List> <ListItem title="资格证书"> <template #extra> <div class="user-account">编辑</div> </template> </ListItem> </ContentView> </template> <script setup lang="ts"> import { useUserStore } from '@/stores/modules/user'; import { useIsLogin } from '@/hooks'; import { List, ListItem } from '@12333/components'; import IconArrow from '@/assets/setting/icon-arrow.png'; import IconAuth from '@/assets/mine/icon-auth.png'; defineOptions({ name: 'InnerPage', }); const userStore = useUserStore(); const isLogin = useIsLogin(); </script> <style lang="scss"> @import '@/styles/common.scss'; .mine-curriculum-info-wrapper { padding: 24px 0 50px; display: flex; .mine-curriculum-avatar { margin-right: 24px; } .mine-curriculum-info-content { display: flex; flex-direction: column; padding: 12px 0; justify-content: space-between; flex: 1; min-width: 0; .mine-curriculum-info-item { display: flex; align-items: center; justify-content: space-between; .mine-curriculum-info-item-left { display: inline-flex; align-items: center; .mine-curriculum-info-item-name { font-size: 32px; line-height: 40px; color: boleGetCssVar('text-color', 'primary'); } .mine-curriculum-info-item-gender { display: inline-flex; align-items: center; .mine-curriculum-info-item-gender-dot { margin: 0 8px; line-height: 40px; } .mine-curriculum-info-item-gender-icon { width: 36px; height: 36px; } } .mine-curriculum-info-item-phone { font-size: 28px; line-height: 40px; color: boleGetCssVar('text-color', 'primary'); } .mine-curriculum-info-item-phone-icon { width: 24px; height: 24px; } } .mine-curriculum-info-item-detail { font-size: 24px; line-height: 40px; color: boleGetCssVar('text-color', 'primary'); } } } } </style> apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/mineCurriculumVitae.config.ts
New file @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineCurriculumVitae/mineCurriculumVitae.vue
New file @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'我的简历'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineCurriculumVitae', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style>