|
@@ -2,8 +2,8 @@
|
|
<v-card class="pa-3" elevation="5">
|
|
<v-card class="pa-3" elevation="5">
|
|
<CtForm ref="CtFormRef" :items="formItems" class="mt-3">
|
|
<CtForm ref="CtFormRef" :items="formItems" class="mt-3">
|
|
<template #formBtn>
|
|
<template #formBtn>
|
|
- <v-btn color="primary" class="elevation-5" @click.stop="handleSearch">搜 索</v-btn>
|
|
|
|
- <v-btn variant="outlined" color="primary" class="elevation-5 ml-3" @click.stop="handleReset">重 置</v-btn>
|
|
|
|
|
|
+ <v-btn color="primary" class="elevation-5" width="90" @click.stop="handleSearch">搜 索</v-btn>
|
|
|
|
+ <v-btn variant="outlined" color="primary" width="90" class="elevation-5 ml-3" @click.stop="handleReset">重 置</v-btn>
|
|
</template>
|
|
</template>
|
|
</CtForm>
|
|
</CtForm>
|
|
</v-card>
|
|
</v-card>
|
|
@@ -29,8 +29,11 @@
|
|
</CtTable>
|
|
</CtTable>
|
|
</v-card>
|
|
</v-card>
|
|
|
|
|
|
- <v-navigation-drawer v-model="showDetail" absolute location="left" rounded temporary width="500" class="pa-5">
|
|
|
|
- 详情
|
|
|
|
|
|
+ <v-navigation-drawer v-model="showDetail" absolute location="right" rounded temporary width="500" class="pa-5">
|
|
|
|
+ <div style="width: 300px; height: 300px; margin: 0 auto;">
|
|
|
|
+ <v-img :src="detail?.picUrl" width="300" height="300" />
|
|
|
|
+ </div>
|
|
|
|
+ <div class="mt-10" v-html="detail?.detailIntroduction"></div>
|
|
</v-navigation-drawer>
|
|
</v-navigation-drawer>
|
|
|
|
|
|
<!-- 无权限提示 -->
|
|
<!-- 无权限提示 -->
|
|
@@ -38,22 +41,21 @@
|
|
<div class="d-flex align-center flex-column">
|
|
<div class="d-flex align-center flex-column">
|
|
<div class="color-warning">
|
|
<div class="color-warning">
|
|
<p>您没有权限查看门墩儿新任命信息</p>
|
|
<p>您没有权限查看门墩儿新任命信息</p>
|
|
- <p>请用微信扫描下方二维码联系门墩儿管理员开通权限</p>
|
|
|
|
|
|
+ <p>请用微信扫描下方企业微信联系门墩儿管理员开通权限</p>
|
|
</div>
|
|
</div>
|
|
<div style="width: 150px; height: 150px;">
|
|
<div style="width: 150px; height: 150px;">
|
|
- <v-img src="https://minio.citupro.com/dev/menduner/official-account-code4.jpg"></v-img>
|
|
|
|
|
|
+ <v-img src="https://minio.menduner.com/dev/menduner/contact.png"></v-img>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="text-center ml-5">潘青海先生(Peter Pan)</div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
</CtDialog>
|
|
</CtDialog>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
defineOptions({ name: 'newlyAppointedTable'})
|
|
defineOptions({ name: 'newlyAppointedTable'})
|
|
import { ref } from 'vue'
|
|
import { ref } from 'vue'
|
|
-import { getNewAppointmentsPage } from '@/api/recruit/enterprise/newlyAppointed'
|
|
|
|
|
|
+import { getNewAppointmentsPage, getNewAppointmentsDetail } from '@/api/recruit/enterprise/newlyAppointed'
|
|
import { useUserStore } from '@/store/user'
|
|
import { useUserStore } from '@/store/user'
|
|
-// import Snackbar from '@/plugins/snackbar'
|
|
|
|
|
|
|
|
const store = useUserStore()
|
|
const store = useUserStore()
|
|
const loading = ref(false)
|
|
const loading = ref(false)
|
|
@@ -62,22 +64,12 @@ const query = ref({
|
|
pageSize: 10,
|
|
pageSize: 10,
|
|
pageNo: 1
|
|
pageNo: 1
|
|
})
|
|
})
|
|
-const items = ref([
|
|
|
|
- { id: 1, nameChinese: '张三', workTerritory: '北京', inaugurationHotel: '北京王府半岛酒店' },
|
|
|
|
- { id: 2, nameChinese: '李四', workTerritory: '上海', inaugurationHotel: '上海外滩茂悦大酒店' },
|
|
|
|
- { id: 3, nameChinese: '王五', workTerritory: '广州', inaugurationHotel: '广州富力丽思卡尔顿酒店' },
|
|
|
|
- { id: 4, nameChinese: '赵六', workTerritory: '深圳', inaugurationHotel: '深圳华侨城洲际酒店' },
|
|
|
|
- { id: 5, nameChinese: '钱七', workTerritory: '杭州', inaugurationHotel: '杭州西溪喜来登酒店' },
|
|
|
|
- { id: 6, nameChinese: '孙八', workTerritory: '南京', inaugurationHotel: '南京金鹰国际酒店' },
|
|
|
|
- { id: 7, nameChinese: '周九', workTerritory: '武汉', inaugurationHotel: '武汉光谷希尔顿酒店' },
|
|
|
|
- { id: 8, nameChinese: '吴十', workTerritory: '成都', inaugurationHotel: '成都茂业万豪酒店' },
|
|
|
|
- { id: 9, nameChinese: '郑十一', workTerritory: '重庆', inaugurationHotel: '重庆富力丽思卡尔顿酒店' },
|
|
|
|
- { id: 10, nameChinese: '王十二', workTerritory: '西安', inaugurationHotel: '西安希尔顿酒店' },
|
|
|
|
-])
|
|
|
|
|
|
+const items = ref([])
|
|
const headers = [
|
|
const headers = [
|
|
{ title: '宣布日期', key: 'announceTime', sortable: false },
|
|
{ title: '宣布日期', key: 'announceTime', sortable: false },
|
|
{ title: '中文名', key: 'nameChinese', sortable: false },
|
|
{ title: '中文名', key: 'nameChinese', sortable: false },
|
|
{ title: '英文名', key: 'nameEnglish', sortable: false },
|
|
{ title: '英文名', key: 'nameEnglish', sortable: false },
|
|
|
|
+ { title: '性别', key: 'gender', sortable: false },
|
|
{ title: '职位', key: 'position', sortable: false },
|
|
{ title: '职位', key: 'position', sortable: false },
|
|
{ title: '任职酒店', key: 'inaugurationHotel', sortable: false },
|
|
{ title: '任职酒店', key: 'inaugurationHotel', sortable: false },
|
|
{ title: '酒店品牌', key: 'hotelBrand', sortable: false },
|
|
{ title: '酒店品牌', key: 'hotelBrand', sortable: false },
|
|
@@ -93,6 +85,7 @@ const formItems = ref({
|
|
key: 'nameChinese',
|
|
key: 'nameChinese',
|
|
value: '',
|
|
value: '',
|
|
label: '中文名',
|
|
label: '中文名',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
col: 3
|
|
col: 3
|
|
},
|
|
},
|
|
@@ -101,6 +94,7 @@ const formItems = ref({
|
|
key: 'nameEnglish',
|
|
key: 'nameEnglish',
|
|
value: '',
|
|
value: '',
|
|
label: '英文名',
|
|
label: '英文名',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
flexStyle: 'mx-3',
|
|
flexStyle: 'mx-3',
|
|
col: 3
|
|
col: 3
|
|
@@ -110,6 +104,7 @@ const formItems = ref({
|
|
key: 'position',
|
|
key: 'position',
|
|
value: '',
|
|
value: '',
|
|
label: '职位',
|
|
label: '职位',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
col: 3
|
|
col: 3
|
|
},
|
|
},
|
|
@@ -118,6 +113,7 @@ const formItems = ref({
|
|
key: 'inaugurationHotel',
|
|
key: 'inaugurationHotel',
|
|
value: '',
|
|
value: '',
|
|
label: '任职酒店',
|
|
label: '任职酒店',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
flexStyle: 'ml-3',
|
|
flexStyle: 'ml-3',
|
|
col: 3
|
|
col: 3
|
|
@@ -127,6 +123,7 @@ const formItems = ref({
|
|
key: 'hotelBrand',
|
|
key: 'hotelBrand',
|
|
value: '',
|
|
value: '',
|
|
label: '酒店品牌',
|
|
label: '酒店品牌',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
col: 3
|
|
col: 3
|
|
},
|
|
},
|
|
@@ -136,6 +133,7 @@ const formItems = ref({
|
|
value: '',
|
|
value: '',
|
|
label: '工作地域',
|
|
label: '工作地域',
|
|
flexStyle: 'mx-3',
|
|
flexStyle: 'mx-3',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
col: 3
|
|
col: 3
|
|
},
|
|
},
|
|
@@ -144,6 +142,7 @@ const formItems = ref({
|
|
key: 'workHistory',
|
|
key: 'workHistory',
|
|
value: '',
|
|
value: '',
|
|
label: '过往工作酒店品牌',
|
|
label: '过往工作酒店品牌',
|
|
|
|
+ clearable: true,
|
|
hideDetails: true,
|
|
hideDetails: true,
|
|
col: 3
|
|
col: 3
|
|
},
|
|
},
|
|
@@ -163,11 +162,18 @@ store.$subscribe((mutation, state) => {
|
|
if (Object.keys(state.entBaseInfo).length) info.value = state.entBaseInfo
|
|
if (Object.keys(state.entBaseInfo).length) info.value = state.entBaseInfo
|
|
})
|
|
})
|
|
|
|
|
|
|
|
+// 获取新任命分页
|
|
const getList = async () => {
|
|
const getList = async () => {
|
|
- const result = await getNewAppointmentsPage(query.value)
|
|
|
|
- items.value = result.list
|
|
|
|
- total.value = result.total
|
|
|
|
|
|
+ loading.value = true
|
|
|
|
+ try {
|
|
|
|
+ const result = await getNewAppointmentsPage(query.value)
|
|
|
|
+ items.value = result.list
|
|
|
|
+ total.value = result.total
|
|
|
|
+ } finally {
|
|
|
|
+ loading.value = false
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+getList()
|
|
|
|
|
|
// 分页切换
|
|
// 分页切换
|
|
const handleChangePage = async (e) => {
|
|
const handleChangePage = async (e) => {
|
|
@@ -189,30 +195,34 @@ const handleSearch = async () => {
|
|
showDialog.value = true
|
|
showDialog.value = true
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- const param = {}
|
|
|
|
formItems.value.options.forEach(item => {
|
|
formItems.value.options.forEach(item => {
|
|
if (item.noParam) return
|
|
if (item.noParam) return
|
|
- param[item.key] = item.value
|
|
|
|
|
|
+ query.value[item.key] = item.value
|
|
})
|
|
})
|
|
- console.log(param, 'search')
|
|
|
|
|
|
+ getList()
|
|
}
|
|
}
|
|
// 重置
|
|
// 重置
|
|
const handleReset = () => {
|
|
const handleReset = () => {
|
|
formItems.value.options.forEach(item => {
|
|
formItems.value.options.forEach(item => {
|
|
- if (!item.noParam) item.value = ''
|
|
|
|
|
|
+ if (item.noParam) return
|
|
|
|
+ item.value = ''
|
|
|
|
+ query.value[item.key] = ''
|
|
})
|
|
})
|
|
|
|
+ getList()
|
|
}
|
|
}
|
|
|
|
|
|
// 查看详情
|
|
// 查看详情
|
|
const showDetail = ref(false)
|
|
const showDetail = ref(false)
|
|
|
|
+const detail = ref({})
|
|
const handleDetail = async (item) => {
|
|
const handleDetail = async (item) => {
|
|
- console.log(item, 'detail')
|
|
|
|
await store.getEnterpriseInfo(true)
|
|
await store.getEnterpriseInfo(true)
|
|
// 没有权限提示联系门墩儿
|
|
// 没有权限提示联系门墩儿
|
|
if (!info.value?.entitlement?.newAppointment) {
|
|
if (!info.value?.entitlement?.newAppointment) {
|
|
showDialog.value = true
|
|
showDialog.value = true
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+ const result = await getNewAppointmentsDetail(item.id)
|
|
|
|
+ detail.value = result
|
|
showDetail.value = true
|
|
showDetail.value = true
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|