|
@@ -7,12 +7,12 @@
|
|
<!-- 选择 -->
|
|
<!-- 选择 -->
|
|
<div class="d-flex align-center pb-5" style="border-bottom: 1px solid #dddddd;">
|
|
<div class="d-flex align-center pb-5" style="border-bottom: 1px solid #dddddd;">
|
|
<div style="color: #777;">选择企业: </div>
|
|
<div style="color: #777;">选择企业: </div>
|
|
- <Autocomplete v-model="item.value" :item="item"></Autocomplete>
|
|
|
|
- <v-btn class="ml-3" color="primary" @click="null">确认屏蔽</v-btn>
|
|
|
|
|
|
+ <Autocomplete v-model="item.value" :item="item" @search="getEnterpriseData"></Autocomplete>
|
|
|
|
+ <v-btn class="ml-3" color="primary" :disabled="!item.value" @click="handleJoin">确认屏蔽</v-btn>
|
|
</div>
|
|
</div>
|
|
<!-- 展示 -->
|
|
<!-- 展示 -->
|
|
<v-chip v-for="k in dataList" class="mt-3 mr-3" :key="k.id">
|
|
<v-chip v-for="k in dataList" class="mt-3 mr-3" :key="k.id">
|
|
- <span class="cursor-pointer">{{ getText(k.skillId, skillList, 'nameCn', 'id') }}</span>
|
|
|
|
|
|
+ <span class="cursor-pointer">{{ k.name }}</span>
|
|
<template v-slot:append>
|
|
<template v-slot:append>
|
|
<v-icon class="ml-2" @click="handleDelete(k)">mdi-close-circle</v-icon>
|
|
<v-icon class="ml-2" @click="handleDelete(k)">mdi-close-circle</v-icon>
|
|
</template>
|
|
</template>
|
|
@@ -23,11 +23,11 @@
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
import {
|
|
import {
|
|
- savePersonResumeCv,
|
|
|
|
- getResumePersonSkill,
|
|
|
|
- enterpriseSearchByName,
|
|
|
|
-} from '@/api/recruit/personal/resume'
|
|
|
|
-import { getText } from '@/utils/getText'
|
|
|
|
|
|
+ getBlockEnterpriseList,
|
|
|
|
+ handleBlockEnterprise,
|
|
|
|
+ handleUnBlockEnterprise,
|
|
|
|
+} from '@/api/recruit/personal/resume/blockEnt.js'
|
|
|
|
+import { enterpriseSearchByName } from '@/api/recruit/personal/resume'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
import Confirm from '@/plugins/confirm'
|
|
import Confirm from '@/plugins/confirm'
|
|
import { ref } from 'vue'
|
|
import { ref } from 'vue'
|
|
@@ -37,36 +37,36 @@ defineOptions({name: 'resume-blockEnt'})
|
|
// 获取数据
|
|
// 获取数据
|
|
const dataList = ref([])
|
|
const dataList = ref([])
|
|
const getData = async () => {
|
|
const getData = async () => {
|
|
- const data = await getResumePersonSkill()
|
|
|
|
- dataList.value = data
|
|
|
|
|
|
+ const { list } = await getBlockEnterpriseList()
|
|
|
|
+ dataList.value = list || []
|
|
}
|
|
}
|
|
getData()
|
|
getData()
|
|
|
|
|
|
-// 删除
|
|
|
|
-const handleDelete = ({ id }) => {
|
|
|
|
- Confirm('系统提示', '是否确认删除此职业技能?').then(async () => {
|
|
|
|
- await savePersonResumeCv(id)
|
|
|
|
|
|
+// 取消屏蔽
|
|
|
|
+const handleDelete = ({ id, name }) => {
|
|
|
|
+ Confirm('系统提示', `是否取消屏蔽【${name}】?`).then(async () => {
|
|
|
|
+ await handleUnBlockEnterprise(id)
|
|
getData()
|
|
getData()
|
|
Snackbar.success('删除成功!')
|
|
Snackbar.success('删除成功!')
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// 屏蔽
|
|
|
|
+const handleJoin = async () => {
|
|
|
|
+ await handleBlockEnterprise({ enterpriseId: item.value.value })
|
|
|
|
+ getData()
|
|
|
|
+ Snackbar.success('加入屏蔽企业成功!')
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
// 企业名称下拉列表
|
|
// 企业名称下拉列表
|
|
-const enterpriseNameInput = ref('')
|
|
|
|
const getEnterpriseData = async (name) => {
|
|
const getEnterpriseData = async (name) => {
|
|
- // const item = formItems.value.options.find(e => e.key === 'enterpriseId')
|
|
|
|
- // if (!item) return
|
|
|
|
- if (item.items?.length && (enterpriseNameInput.value === name)) return // 防抖
|
|
|
|
- item[item.itemTextName] = enterpriseNameInput.value = name
|
|
|
|
- if (name === null || name === '') { item.items = [] }
|
|
|
|
- else {
|
|
|
|
- const data = await enterpriseSearchByName({ name })
|
|
|
|
- item.items = data
|
|
|
|
- }
|
|
|
|
|
|
+ if (!name) return
|
|
|
|
+ const data = await enterpriseSearchByName({ name })
|
|
|
|
+ item.value.items = data
|
|
}
|
|
}
|
|
-const item = {
|
|
|
|
|
|
+
|
|
|
|
+const item = ref({
|
|
type: 'autocomplete',
|
|
type: 'autocomplete',
|
|
key: 'enterpriseId',
|
|
key: 'enterpriseId',
|
|
value: null,
|
|
value: null,
|
|
@@ -75,13 +75,12 @@ const item = {
|
|
outlined: true,
|
|
outlined: true,
|
|
clearable: true,
|
|
clearable: true,
|
|
hireDetails: true,
|
|
hireDetails: true,
|
|
- itemTextName: 'enterpriseName',
|
|
|
|
itemText: 'value',
|
|
itemText: 'value',
|
|
itemValue: 'key',
|
|
itemValue: 'key',
|
|
width: '400',
|
|
width: '400',
|
|
search: getEnterpriseData,
|
|
search: getEnterpriseData,
|
|
items: []
|
|
items: []
|
|
-}
|
|
|
|
|
|
+})
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|