|
@@ -36,6 +36,7 @@
|
|
|
<!-- <v-btn color="primary" variant="text" @click="handleInterviewInvite(item)">邀请面试</v-btn> -->
|
|
|
<v-btn color="primary" variant="text" @click="handleAction('', 0, item)">入职</v-btn>
|
|
|
</div>
|
|
|
+ <v-btn v-if="tab === 4" color="primary" variant="text" @click="handleCancelEliminate(item)">取消不合适</v-btn>
|
|
|
</template>
|
|
|
</v-data-table>
|
|
|
</div>
|
|
@@ -45,7 +46,7 @@
|
|
|
defineOptions({ name: 'table-page'})
|
|
|
import { ref, computed, watch } from 'vue'
|
|
|
import { previewFile } from '@/utils'
|
|
|
-import { personJobCvLook, joinEliminate, personEntryByEnterprise } from '@/api/recruit/enterprise/personnel'
|
|
|
+import { personJobCvLook, joinEliminate, personEntryByEnterprise, personCvUnfitCancel } from '@/api/recruit/enterprise/personnel'
|
|
|
import { useI18n } from '@/hooks/web/useI18n'
|
|
|
import Snackbar from '@/plugins/snackbar'
|
|
|
|
|
@@ -115,6 +116,7 @@ const handleEliminate = async (item) => {
|
|
|
const query = {
|
|
|
bizId: item.id,
|
|
|
jobId: item.job.id,
|
|
|
+ userId: item.userId,
|
|
|
type: props.tab === 0 ? '0' : '1' // 投递简历0 已邀约1
|
|
|
}
|
|
|
await joinEliminate(query)
|
|
@@ -122,6 +124,14 @@ const handleEliminate = async (item) => {
|
|
|
emit('refresh')
|
|
|
}
|
|
|
|
|
|
+// 取消不合适
|
|
|
+const handleCancelEliminate = async (item) => {
|
|
|
+ if (!item.id) return
|
|
|
+ await personCvUnfitCancel(item.id)
|
|
|
+ Snackbar.success(t('common.operationSuccessful'))
|
|
|
+ emit('refresh')
|
|
|
+}
|
|
|
+
|
|
|
// 查看简历
|
|
|
const handlePreviewResume = async ({ url, id }) => {
|
|
|
if (!url || !id) return
|