Browse Source

个人详情加立即沟通

Xiao_123 7 months ago
parent
commit
065795c334

+ 12 - 12
src/views/recruit/enterprise/search/recommend/index.vue

@@ -30,9 +30,9 @@
           <span class="defaultLink ml-3 mt-2">{{ item?.name }}</span>
         </div>
       </template>
-      <template #actions="{ item }">
+      <!-- <template #actions="{ item }">
         <v-btn color="primary" variant="text" @click="handleCommunicate(item)">立即沟通</v-btn>
-      </template>
+      </template> -->
     </CtTable>
   </div>
 </template>
@@ -42,12 +42,12 @@ defineOptions({ name: 'searchRecommend' })
 import { ref, computed } from 'vue'
 import { getPersonRecommendPage, getJobAdvertised } from '@/api/enterprise'
 import { timesTampChange } from '@/utils/date'
-import { talkToUser, defaultTextEnt } from '@/hooks/web/useIM'
-import { useRouter } from 'vue-router'
+// import { talkToUser, defaultTextEnt } from '@/hooks/web/useIM'
+// import { useRouter } from 'vue-router'
 import { dealDictArrayData } from '@/utils/position'
 import { getUserAvatar } from '@/utils/avatar'
 
-const router = useRouter()
+// const router = useRouter()
 const query = ref({
   pageNo: 1,
   pageSize: 10,
@@ -72,7 +72,7 @@ const headers = ref([
   { title: '户籍地', key: 'regName', sortable: false },
   { title: '婚姻状况', key: 'maritalStatusName', sortable: false },
   { title: '首次工作时间', key: 'firstWorkTime', sortable: false, value: item => timesTampChange(item.firstWorkTime, 'Y-M-D') },
-  { title: '操作', key: 'actions', sortable: false }
+  // { title: '操作', key: 'actions', sortable: false }
 ])
 
 // 职位列表
@@ -118,12 +118,12 @@ const handleChangePage = (e) =>{
 }
 
 // 立即沟通
-const handleCommunicate = async (item) => {
-  const userId = item.userId
-  await talkToUser({userId, text: defaultTextEnt})
-  let url = `/recruit/enterprise/chatTools?id=${userId}`
-  router.push(url)
-}
+// const handleCommunicate = async (item) => {
+//   const userId = item.userId
+//   await talkToUser({userId, text: defaultTextEnt})
+//   let url = `/recruit/enterprise/chatTools?id=${userId}`
+//   router.push(url)
+// }
 
 // 人才详情
 const handleToPersonDetail = ({ userId, id }) => {

+ 12 - 12
src/views/recruit/enterprise/search/retrieval/index.vue

@@ -50,9 +50,9 @@
           <span class="defaultLink ml-3 mt-2">{{ item?.name }}</span>
         </div>
       </template>
-      <template #actions="{ item }">
+      <!-- <template #actions="{ item }">
         <v-btn color="primary" variant="text" @click="handleCommunicate(item)">立即沟通</v-btn>
-      </template>
+      </template> -->
     </CtTable>
   </div>
 </template>
@@ -67,10 +67,10 @@ import { getPersonSearchPage } from '@/api/enterprise.js'
 import { dealDictArrayData } from '@/utils/position'
 import { timesTampChange } from '@/utils/date'
 import { getUserAvatar } from '@/utils/avatar'
-import { talkToUser, defaultTextEnt } from '@/hooks/web/useIM'
-import { useRouter } from 'vue-router'
+// import { talkToUser, defaultTextEnt } from '@/hooks/web/useIM'
+// import { useRouter } from 'vue-router'
 
-const router = useRouter()
+// const router = useRouter()
 const textItem = ref({
   type: 'text',
   width: 600,
@@ -103,7 +103,7 @@ const headers = ref([
   { title: '首次工作时间', key: 'firstWorkTime', sortable: false, value: item => timesTampChange(item.firstWorkTime, 'Y-M-D') },
   // { title: '联系电话', key: 'phone', sortable: false },
   // { title: '常用邮箱', key: 'email', sortable: false },
-  { title: '操作', key: 'actions', sortable: false }
+  // { title: '操作', key: 'actions', sortable: false }
 ])
 
 const getData = async () => {
@@ -151,12 +151,12 @@ const handleClear = () => {
 }
 
 // 立即沟通
-const handleCommunicate = async (item) => {
-  const userId = item.userId
-  await talkToUser({userId, text: defaultTextEnt})
-  let url = `/recruit/enterprise/chatTools?id=${userId}`
-  router.push(url)
-}
+// const handleCommunicate = async (item) => {
+//   const userId = item.userId
+//   await talkToUser({userId, text: defaultTextEnt})
+//   let url = `/recruit/enterprise/chatTools?id=${userId}`
+//   router.push(url)
+// }
 
 // 人才详情
 const handleToPersonDetail = ({ userId, id }) => {

+ 23 - 17
src/views/recruit/enterprise/talentPool/components/details.vue

@@ -39,25 +39,20 @@
         <span class="mr-6">{{ $t('resume.educationExp') }}</span>
         <educationExp style="flex: 1;" :data="cvData.eduList"></educationExp>
       </div>
-      <!-- 附件简历 -->
-      <!-- <div class="d-flex mt-8">
-        <span class="mr-6">{{ $t('resume.attachmentResume') }}</span>
-        <attachmentResume style="flex: 1;"></attachmentResume>
-      </div> -->
     </div>
-    <!-- <div class="operate pa-3">
+    <div class="operate pa-3">
       <v-list>
-        <v-list-subheader class="title">简历助手</v-list-subheader>
+        <v-list-subheader class="title">操作</v-list-subheader>
         <v-list-item
-          v-for="(item, i) in operateItems" :key="'简历助手' + i"
+          v-for="(item, i) in operateItems" :key="'操作' + i"
           color="primary"
           :prepend-icon="item.icon"
           :title="item.text"
-          @click="{}"
+          @click="handleCommunicate(item)"
         >
         </v-list-item>
       </v-list>
-    </div> -->
+    </div>
   </div>
 </template>
 
@@ -73,17 +68,18 @@ import educationExp from './details/educationExp.vue'
 // import attachmentResume from './details/attachmentResume.vue'
 import { getPersonCvDetail } from '@/api/enterprise'
 import { ref } from 'vue'
+import { talkToUser, defaultTextEnt } from '@/hooks/web/useIM'
 import { useRouter, useRoute } from 'vue-router'
 
 const route = useRoute()
 const router = useRouter()
-// const operateItems = [
-//   { text: '邀请面试', icon: 'mdi-account-check' },
-//   { text: '不合适', icon: 'mdi-close-circle-outline' },
-//   { text: '发起对话', icon: 'mdi-chat-processing-outline' },
-//   { text: '加入人才库', icon: 'mdi-tab-plus' },
-//   { text: '操作记录', icon: 'mdi-clock-edit-outline' },
-// ]
+const operateItems = [
+  // { text: '邀请面试', icon: 'mdi-account-check' },
+  // { text: '不合适', icon: 'mdi-close-circle-outline' },
+  { text: '立即沟通', icon: 'mdi-chat-processing-outline' },
+  // { text: '加入人才库', icon: 'mdi-tab-plus' },
+  // { text: '操作记录', icon: 'mdi-clock-edit-outline' },
+]
 
 // 获取人才详情
 const cvData = ref({})
@@ -96,6 +92,16 @@ const getCvDetail = async () => {
 }
 getCvDetail()
 
+// 立即沟通
+const handleCommunicate = async (item) => {
+  if (item.text !== '立即沟通') return
+  const userId = cvData.value.person.userId
+  if (!userId) return
+  await talkToUser({userId, text: defaultTextEnt})
+  let url = `/recruit/enterprise/chatTools?id=${userId}`
+  router.push(url)
+}
+
 </script>
 <style lang="scss" scoped>
 .operate {