|  | @@ -39,6 +39,7 @@
 | 
	
		
			
				|  |  |      <!-- 邀请面试 -->
 | 
	
		
			
				|  |  |      <CtDialog :visible="showInvite" :widthType="2" titleClass="text-h6" title="面试信息" @close="handleEditClose" @submit="handleEditSubmit">
 | 
	
		
			
				|  |  |        <InvitePage v-if="showInvite && !inviteType" ref="inviteRef" :itemData="itemData"></InvitePage>
 | 
	
		
			
				|  |  | +      <PublicPage v-if="showInvite && inviteType" ref="publicRef" :item-data="itemData"></PublicPage>
 | 
	
		
			
				|  |  |      </CtDialog>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
	
		
			
				|  | @@ -54,6 +55,7 @@ import { useI18n } from '@/hooks/web/useI18n'
 | 
	
		
			
				|  |  |  import { useUserStore } from '@/store/user'
 | 
	
		
			
				|  |  |  import Snackbar from '@/plugins/snackbar'
 | 
	
		
			
				|  |  |  import InvitePage from './invite.vue'
 | 
	
		
			
				|  |  | +import PublicPage from './public.vue'
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const { t } = useI18n()
 | 
	
		
			
				|  |  |  const emit = defineEmits(['refresh'])
 | 
	
	
		
			
				|  | @@ -72,6 +74,7 @@ const badgeIcon = computed(() => (item) => {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const userStore = useUserStore()
 | 
	
		
			
				|  |  |  const inviteRef = ref()
 | 
	
		
			
				|  |  | +const publicRef = ref()
 | 
	
		
			
				|  |  |  const showInvite = ref(false)
 | 
	
		
			
				|  |  |  const headers = ref([
 | 
	
		
			
				|  |  |    { title: '姓名', value: 'name', sortable: false },
 | 
	
	
		
			
				|  | @@ -165,6 +168,7 @@ const handleEditClose = () => {
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const handleEditSubmit = async () => {
 | 
	
		
			
				|  |  | +  if (inviteType.value) return
 | 
	
		
			
				|  |  |    const { valid } = await inviteRef.value.CtFormRef.formRef.validate()
 | 
	
		
			
				|  |  |    if (!valid) return
 | 
	
		
			
				|  |  |    const query = inviteRef.value.getQuery()
 |