| <template> | 
|   <ProTabs | 
|     v-model="queryState.userSignContractStatus" | 
|     name="home-tab" | 
|     :showPaneContent="false" | 
|     class="home-tabs" | 
|     isTransparent | 
|     title-gutter="12" | 
|     title-scroll | 
|   > | 
|     <ProTabPane :title="`全部`" :pane-key="0"></ProTabPane> | 
|     <ProTabPane :title="`待签约`" :pane-key="EnumTaskUserSignContractStatus.Wait"></ProTabPane> | 
|     <ProTabPane :title="`生效中`" :pane-key="EnumTaskUserSignContractStatus.Pass"></ProTabPane> | 
|     <ProTabPane :title="`已终止`" :pane-key="EnumTaskUserSignContractStatus.Stop"></ProTabPane> | 
|   </ProTabs> | 
|   <InfiniteLoading | 
|     scrollViewClassName="common-infinite-scroll-list home-list" | 
|     v-bind="infiniteLoadingProps" | 
|     :key="queryState.userSignContractStatus" | 
|   > | 
|     <template #renderItem="{ item }"> | 
|       <MineAgreementSignCard | 
|         :enterpriseName="item.enterpriseName" | 
|         :userSignContractStatus="item.userSignContractStatus" | 
|         @click="goDetail(item)" | 
|       > | 
|       </MineAgreementSignCard> | 
|     </template> | 
|   </InfiniteLoading> | 
| </template> | 
|   | 
| <script setup lang="ts"> | 
| import { MineAgreementSignCard, ProTabs, ProTabPane } from '@12333/components'; | 
| import { useUserStore } from '@/stores/modules/user'; | 
| import { useInfiniteLoading } from '@12333/hooks'; | 
| import { EnumPagedListOrder, EnumTaskUserSignContractStatus } from '@12333/constants'; | 
| import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee'; | 
| import Taro from '@tarojs/taro'; | 
|   | 
| defineOptions({ | 
|   name: 'InnerPage', | 
| }); | 
|   | 
| const queryState = reactive({ | 
|   userSignContractStatus: 0 as any as EnumTaskUserSignContractStatus, | 
| }); | 
|   | 
| const userStore = useUserStore(); | 
|   | 
| const { infiniteLoadingProps } = useInfiniteLoading( | 
|   ({ pageParam }) => { | 
|     let params: API.GetPersonalUserElectronSignsQuery = { | 
|       pageModel: { | 
|         rows: 20, | 
|         page: pageParam, | 
|         orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], | 
|       }, | 
|       userSignContractStatus: Number(queryState.userSignContractStatus) | 
|         ? queryState.userSignContractStatus | 
|         : null, | 
|     }; | 
|   | 
|     return enterpriseEmployeeServices.getPersonalUserElectronSigns(params, { | 
|       showLoading: false, | 
|     }); | 
|   }, | 
|   { | 
|     queryKey: ['enterpriseEmployeeServices/getPersonalUserElectronSigns', queryState], | 
|   } | 
| ); | 
|   | 
| function goDetail(row: API.GetPersonalUserElectronSignsQueryResultItem) { | 
|   Taro.navigateTo({ | 
|     url: `${RouterPath.mineAgreementSignDetail}?id=${row.id}`, | 
|   }); | 
| } | 
| </script> | 
|   | 
| <style lang="scss"> | 
| @import '@/styles/common.scss'; | 
|   | 
| // .mineAgreementSign-page-wrapper { | 
| // | 
| // } | 
| </style> |