|  | @@ -4,12 +4,12 @@
 | 
	
		
			
				|  |  |        <view class="box-top-title">
 | 
	
		
			
				|  |  |          {{ info.name }}
 | 
	
		
			
				|  |  |          <text class="subText">
 | 
	
		
			
				|  |  | -          {{ info.postName || '' }}
 | 
	
		
			
				|  |  | -          <text v-if="info.postName && info.enterpriseName" class="gun">|</text>
 | 
	
		
			
				|  |  | +          {{ info?.postName || '' }}
 | 
	
		
			
				|  |  | +          <text v-if="info?.postName && info.enterpriseName" class="gun">|</text>
 | 
	
		
			
				|  |  |            {{ info.enterpriseName }}
 | 
	
		
			
				|  |  |          </text>
 | 
	
		
			
				|  |  |        </view>
 | 
	
		
			
				|  |  | -      <view class="box-top-content" v-if="interview.length">
 | 
	
		
			
				|  |  | +      <!-- <view class="box-top-content" v-if="interview.length">
 | 
	
		
			
				|  |  |          <view v-for="val in interview" :key="val.id" class="color-666">
 | 
	
		
			
				|  |  |            <view class="box-top-content-t">
 | 
	
		
			
				|  |  |              <view class="font-weight-bold color-primary">
 | 
	
	
		
			
				|  | @@ -34,10 +34,10 @@
 | 
	
		
			
				|  |  |              </view>
 | 
	
		
			
				|  |  |            </view>
 | 
	
		
			
				|  |  |          </view>
 | 
	
		
			
				|  |  | -      </view>
 | 
	
		
			
				|  |  | +      </view> -->
 | 
	
		
			
				|  |  | +      <uni-notice-bar v-if="hasWaitingProcessingInterview" show-get-more single text="您有待处理的面试邀请,点击查看详情" @click="handleToCenter"/>
 | 
	
		
			
				|  |  |      </view>
 | 
	
		
			
				|  |  | -    <!-- <view class="box-main"  ref="chatRef"> -->
 | 
	
		
			
				|  |  | -      <scroll-view class="box-main"  ref="chatRef" scroll-y="true" :scroll-top="scrollInto"  >
 | 
	
		
			
				|  |  | +      <scroll-view class="box-main" scroll-y="true" ref="chatRef" :scroll-top="scrollInto">
 | 
	
		
			
				|  |  |          <view class="box-main-more" v-if="hasMore">
 | 
	
		
			
				|  |  |            <text @click="handleMore">查看更多</text>
 | 
	
		
			
				|  |  |          </view>
 | 
	
	
		
			
				|  | @@ -105,19 +105,19 @@
 | 
	
		
			
				|  |  |              </template>
 | 
	
		
			
				|  |  |              <!-- 发起面试邀请 -->
 | 
	
		
			
				|  |  |              <view class="message-text none" v-else-if="val.payload?.type === 101">
 | 
	
		
			
				|  |  | -              <uni-tag text="发起了面试邀请" type="primary" />
 | 
	
		
			
				|  |  | +              <uni-tag text="发起了面试邀请" custom-style="background-color: #00897B; border-color: #00897B; color: #fff;" />
 | 
	
		
			
				|  |  |              </view>
 | 
	
		
			
				|  |  |              <view class="message-text none" v-else-if="val.payload?.type === 103">
 | 
	
		
			
				|  |  |                <uni-tag text="拒绝了面试邀请" type="error" />
 | 
	
		
			
				|  |  |              </view>
 | 
	
		
			
				|  |  |              <view class="message-text none" v-else-if="val.payload?.type === 104">
 | 
	
		
			
				|  |  | -              <uni-tag text="接受了面试邀请" type="success" />
 | 
	
		
			
				|  |  | +              <uni-tag text="接受了面试邀请" custom-style="background-color: #00897B; border-color: #00897B; color: #fff;" />
 | 
	
		
			
				|  |  |              </view>
 | 
	
		
			
				|  |  |              <view v-else-if="val.payload.type === 105" class="text-end">
 | 
	
		
			
				|  |  |                <uni-tag
 | 
	
		
			
				|  |  |                  v-if="val.from_uid === IM.uid"
 | 
	
		
			
				|  |  |                  :text="val.payload.content?.type === 1 ? '附件简历已发送' : '简历请求已发送'"
 | 
	
		
			
				|  |  | -                type="success"
 | 
	
		
			
				|  |  | +                custom-style="background-color: #00897B; border-color: #00897B; color: #fff;"
 | 
	
		
			
				|  |  |                />
 | 
	
		
			
				|  |  |                <view
 | 
	
		
			
				|  |  |                  v-if="val.payload.content?.type !== 2 || val.from_uid !== IM.uid"
 | 
	
	
		
			
				|  | @@ -144,7 +144,6 @@
 | 
	
		
			
				|  |  |          </view>
 | 
	
		
			
				|  |  |        </scroll-view>
 | 
	
		
			
				|  |  |        
 | 
	
		
			
				|  |  | -    <!-- </view> -->
 | 
	
		
			
				|  |  |      <view class="box-bottom">
 | 
	
		
			
				|  |  |        <view class="box-bottom-tool" style="display: flex; justify-content: space-between;">
 | 
	
		
			
				|  |  |          <uni-tag :text="isSendResume ? '简历已投递' : '发送简历'" :disabled="isSendResume" type="success" @tap="handleFindResume"/>
 | 
	
	
		
			
				|  | @@ -186,7 +185,7 @@
 | 
	
		
			
				|  |  |        </view>
 | 
	
		
			
				|  |  |      </uni-popup>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    <uni-popup ref="confirm" type="dialog">
 | 
	
		
			
				|  |  | +    <!-- <uni-popup ref="confirm" type="dialog">
 | 
	
		
			
				|  |  |        <uni-popup-dialog
 | 
	
		
			
				|  |  |          :type="isAgree ? 'success' : 'warn'"
 | 
	
		
			
				|  |  |          cancelText="取消"
 | 
	
	
		
			
				|  | @@ -196,13 +195,13 @@
 | 
	
		
			
				|  |  |          @confirm="handleConfirm"
 | 
	
		
			
				|  |  |          @close="handleCloseConfirm"
 | 
	
		
			
				|  |  |        ></uni-popup-dialog>
 | 
	
		
			
				|  |  | -    </uni-popup>
 | 
	
		
			
				|  |  | +    </uni-popup> -->
 | 
	
		
			
				|  |  |    </view>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script setup>
 | 
	
		
			
				|  |  | -import { ref, watch } from 'vue'
 | 
	
		
			
				|  |  | -import { onLoad } from '@dcloudio/uni-app'
 | 
	
		
			
				|  |  | +import { ref, watch, nextTick } from 'vue'
 | 
	
		
			
				|  |  | +import { onLoad, onShow } from '@dcloudio/uni-app'
 | 
	
		
			
				|  |  |  import { useIMStore } from '@/store/im'
 | 
	
		
			
				|  |  |  import { userStore } from '@/store/user'
 | 
	
		
			
				|  |  |  import { initConnect, send, initChart, getMoreMessages } from '@/hooks/useIM'
 | 
	
	
		
			
				|  | @@ -213,7 +212,7 @@ import { preview } from '@/utils/preview'
 | 
	
		
			
				|  |  |  import { getPersonResumeCv, saveResume } from '@/api/user'
 | 
	
		
			
				|  |  |  import { uploadFile } from '@/api/file'
 | 
	
		
			
				|  |  |  import { getInterviewInviteListByInviteUserId, getMessageType } from '@/api/common'
 | 
	
		
			
				|  |  | -import { userInterviewInviteReject } from '@/api/personalCenter'
 | 
	
		
			
				|  |  | +// import { userInterviewInviteReject } from '@/api/personalCenter'
 | 
	
		
			
				|  |  |  import {
 | 
	
		
			
				|  |  |    jobCvRelSend,
 | 
	
		
			
				|  |  |    jobCvRelCheckSend,
 | 
	
	
		
			
				|  | @@ -240,9 +239,9 @@ const interview = ref([])
 | 
	
		
			
				|  |  |  const statusList = ref([])
 | 
	
		
			
				|  |  |  const inputValue = ref('')
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -const isAgree = ref(false)
 | 
	
		
			
				|  |  | -const confirm = ref()
 | 
	
		
			
				|  |  | -const chooseInvite = ref(null)
 | 
	
		
			
				|  |  | +// const isAgree = ref(false)
 | 
	
		
			
				|  |  | +// const confirm = ref()
 | 
	
		
			
				|  |  | +// const chooseInvite = ref(null)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const scrollInto = ref(0)
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -313,6 +312,7 @@ function setScrollBottom () {
 | 
	
		
			
				|  |  |    // scrollInto.value = 200
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +const hasWaitingProcessingInterview = ref(false) // 是否有待接受的面试邀请
 | 
	
		
			
				|  |  |  async function getInterviewInviteList () {
 | 
	
		
			
				|  |  |    if (!info.value.id) return
 | 
	
		
			
				|  |  |    const { data } = await getInterviewInviteListByInviteUserId(info.value.id)
 | 
	
	
		
			
				|  | @@ -326,6 +326,7 @@ async function getInterviewInviteList () {
 | 
	
		
			
				|  |  |        statusText
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }) : []
 | 
	
		
			
				|  |  | +  hasWaitingProcessingInterview.value = interview.value.some(e => e.status === '0')
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const getStatusList = async () => {
 | 
	
	
		
			
				|  | @@ -349,7 +350,7 @@ function handleSend () {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  function handleToCenter () {
 | 
	
		
			
				|  |  |    uni.navigateTo({
 | 
	
		
			
				|  |  | -    url: '/pagesA/interview/index'
 | 
	
		
			
				|  |  | +    url: '/pagesA/interview/index?index=1'
 | 
	
		
			
				|  |  |    })
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -428,35 +429,35 @@ async function handleSendResume () {
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  // 拒绝邀请
 | 
	
		
			
				|  |  | -function handleRefuse (val) {
 | 
	
		
			
				|  |  | -  isAgree.value = false
 | 
	
		
			
				|  |  | -  chooseInvite.value = val
 | 
	
		
			
				|  |  | -  confirm.value.open()
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function handleRefuse (val) {
 | 
	
		
			
				|  |  | +//   isAgree.value = false
 | 
	
		
			
				|  |  | +//   chooseInvite.value = val
 | 
	
		
			
				|  |  | +//   confirm.value.open()
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  // 接受邀请
 | 
	
		
			
				|  |  | -function handleAgree (val) {
 | 
	
		
			
				|  |  | -  isAgree.value = true
 | 
	
		
			
				|  |  | -  chooseInvite.value = val
 | 
	
		
			
				|  |  | -  confirm.value.open()
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function handleAgree (val) {
 | 
	
		
			
				|  |  | +//   isAgree.value = true
 | 
	
		
			
				|  |  | +//   chooseInvite.value = val
 | 
	
		
			
				|  |  | +//   confirm.value.open()
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  // 确认
 | 
	
		
			
				|  |  | -async function handleConfirm () {
 | 
	
		
			
				|  |  | -  // 拒绝
 | 
	
		
			
				|  |  | -  if (!isAgree.value) {
 | 
	
		
			
				|  |  | -    await userInterviewInviteReject(chooseInvite.value.id)
 | 
	
		
			
				|  |  | -  } else {
 | 
	
		
			
				|  |  | -    await userInterviewInviteReject(chooseInvite.value.id)
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  uni.showToast({ title: '操作成功', icon: 'none' })
 | 
	
		
			
				|  |  | -  send(JSON.stringify({ id: chooseInvite.value.id }), channelItem.value, isAgree.value ? 104 : 103)
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// async function handleConfirm () {
 | 
	
		
			
				|  |  | +//   // 拒绝
 | 
	
		
			
				|  |  | +//   if (!isAgree.value) {
 | 
	
		
			
				|  |  | +//     await userInterviewInviteReject(chooseInvite.value.id)
 | 
	
		
			
				|  |  | +//   } else {
 | 
	
		
			
				|  |  | +//     await userInterviewInviteReject(chooseInvite.value.id)
 | 
	
		
			
				|  |  | +//   }
 | 
	
		
			
				|  |  | +//   uni.showToast({ title: '操作成功', icon: 'none' })
 | 
	
		
			
				|  |  | +//   send(JSON.stringify({ id: chooseInvite.value.id }), channelItem.value, isAgree.value ? 104 : 103)
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  // 关闭
 | 
	
		
			
				|  |  | -function handleCloseConfirm () {
 | 
	
		
			
				|  |  | -  confirm.value.close()
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function handleCloseConfirm () {
 | 
	
		
			
				|  |  | +//   confirm.value.close()
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  // 查看更多
 | 
	
		
			
				|  |  |  async function handleMore () {
 |