| | |
| | | <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="detail?.contractCode" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="协议状态" |
| | | :detail="EnumTaskUserSignContractStatusText[detail?.userSignContractStatus]" |
| | | ></MineAgreementSignDetailItem> |
| | | </template> |
| | | </MineAgreementSignDetailCard> |
| | | <MineAgreementSignDetailCard title="签约方信息 - 员工"> |
| | | <template #content> |
| | | <MineAgreementSignDetailItem |
| | | label="员工姓名" |
| | | :detail="detail?.name" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="证件类型" |
| | | :detail="detail?.identityType" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="证件号码" |
| | | :detail="detail?.identity" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="签约时间" |
| | | :detail="format(detail?.userSignContractTime, 'YYYY-MM-DD')" |
| | | ></MineAgreementSignDetailItem> |
| | | </template> |
| | | </MineAgreementSignDetailCard> |
| | | <MineAgreementSignDetailCard title="签约方信息 - 公司主体"> |
| | | <template #content> |
| | | <MineAgreementSignDetailItem |
| | | label="主体类型" |
| | | :detail="detail?.enterpriseType" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="签约主体" |
| | | :detail="detail?.enterpriseName" |
| | | ></MineAgreementSignDetailItem> |
| | | <MineAgreementSignDetailItem |
| | | label="签约时间" |
| | | :detail="format(detail?.enterpriseSignContractTime, 'YYYY-MM-DD')" |
| | | ></MineAgreementSignDetailItem> |
| | | </template> |
| | | </MineAgreementSignDetailCard> |
| | | <MineAgreementSignDetailCard title="签约内容"> |
| | | <template #content> |
| | | <MineAgreementSignDetailItem label="协议内容"> |
| | | <template #detail> |
| | | <div class="detail-card-btn" @click="checkAgreement">查看协议</div> |
| | | </template> |
| | | </MineAgreementSignDetailItem> |
| | | </template> |
| | | </MineAgreementSignDetailCard> |
| | | </div> |
| | | </ContentScrollView> |
| | | <PageFooter v-if="detail?.userSignContractStatus === EnumTaskUserSignContractStatus.Wait"> |
| | | <PageFooterBtn type="primary" @click="goToSign">去签约</PageFooterBtn> |
| | | </PageFooter> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { useUserStore } from '@/stores/modules/user'; |
| | | import { useQuery } from '@tanstack/vue-query'; |
| | | import MineAgreementSignDetailCard from './MineAgreementSignDetailCard.vue'; |
| | | import MineAgreementSignDetailItem from './MineAgreementSignDetailItem.vue'; |
| | | import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee'; |
| | | import { |
| | | EnumTaskUserSignContractStatus, |
| | | EnumTaskUserSignContractStatusText, |
| | | } from '@12333/constants'; |
| | | import { format } from '@12333/utils'; |
| | | import Taro from '@tarojs/taro'; |
| | | |
| | | defineOptions({ |
| | | name: 'InnerPage', |
| | | }); |
| | | |
| | | const queryState = reactive({}); |
| | | const router = Taro.useRouter(); |
| | | const id = router.params?.id; |
| | | const code = router.params?.code; |
| | | |
| | | const userStore = useUserStore(); |
| | | const { |
| | | isLoading, |
| | | isError, |
| | | data: detail, |
| | | refetch, |
| | | } = useQuery({ |
| | | queryKey: ['enterpriseEmployeeServices/getTaskInfo', id, code], |
| | | queryFn: async () => { |
| | | return await enterpriseEmployeeServices.getPersonalUserElectronSign( |
| | | { id: id, code: code }, |
| | | { |
| | | showLoading: false, |
| | | } |
| | | ); |
| | | }, |
| | | placeholderData: () => ({} as API.GetPersonalUserElectronSignQueryResult), |
| | | onSuccess(data) { |
| | | // if (data.isExistTradeChatRecord) setTrue(); |
| | | }, |
| | | }); |
| | | |
| | | function checkAgreement() { |
| | | const encodedUrl = encodeURIComponent(detail?.value?.contractUrl); |
| | | Taro.navigateTo({ |
| | | url: `${RouterPath.mineAgreementSignDetail}?url=${encodedUrl}`, |
| | | }); |
| | | } |
| | | |
| | | const goToSign = useAccessReal(() => {}); |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | @import '@/styles/common.scss'; |
| | | |
| | | .mine-agreement-sign-detail { |
| | | padding: 20px 28px 0; |
| | | .mineAgreementSignDetail-page-wrapper { |
| | | .mine-agreement-sign-detail { |
| | | padding: 20px 28px 0; |
| | | |
| | | .mine-agreement-sign-detail-card { |
| | | margin-bottom: 24px; |
| | | } |
| | | } |
| | | |
| | | .detail-card-btn { |
| | | color: boleGetCssVar('color', 'primary'); |
| | | } |
| | | } |
| | | </style> |