|
@@ -4,16 +4,23 @@
|
|
|
<div class="d-flex justify-center mt-3">
|
|
|
<TextUI :item="textItem" @enter="handleEnter" @appendInnerClick="handleEnter"></TextUI>
|
|
|
</div>
|
|
|
- <div class="text-end">
|
|
|
- <v-btn prepend-icon="mdi-plus" color="primary" @click="handleAdd">{{ $t('position.newPositionsAdded') }}</v-btn>
|
|
|
- <span>
|
|
|
- <v-btn :loading="uploadLoading" prepend-icon="mdi-download-box-outline" color="primary" variant="tonal" class="ml-3" @click="handleUploadBefore">
|
|
|
- 批量上传职位
|
|
|
- </v-btn>
|
|
|
- <File ref="uploadFile" :custom="true" customName="multipartFile" accept=".xlsx, .xls" @success="handleUploadPosition"></File>
|
|
|
- </span>
|
|
|
- <v-btn :loading="templateLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleDownloadTemplate">批量上传模版下载</v-btn>
|
|
|
- <v-btn :loading="exportLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleExport">职位列表下载</v-btn>
|
|
|
+ <div style="height: 40px">
|
|
|
+ <div class="float-left color-666 font-size-14" style="line-height: 52px;">
|
|
|
+ <span>共可发布职位数 <strong class="color-primary">50</strong> 个 </span>|
|
|
|
+ <span> 已发布 <strong class="color-primary">{{ baseInfo?.entitlement?.publishJobCount ? (50 - baseInfo?.entitlement?.publishJobCount) : 0 }}</strong> 个 </span>|
|
|
|
+ <span> 剩余 <strong class="color-primary">{{ baseInfo?.entitlement?.publishJobCount || 0 }}</strong> 个</span>
|
|
|
+ </div>
|
|
|
+ <div class="float-right">
|
|
|
+ <v-btn prepend-icon="mdi-plus" color="primary" @click="handleAdd">新增</v-btn>
|
|
|
+ <span>
|
|
|
+ <v-btn :loading="uploadLoading" prepend-icon="mdi-download-box-outline" color="primary" variant="tonal" class="ml-3" @click="handleUploadBefore">
|
|
|
+ 职位批量导入
|
|
|
+ </v-btn>
|
|
|
+ <File ref="uploadFile" :custom="true" customName="multipartFile" accept=".xlsx, .xls" @success="handleUploadPosition"></File>
|
|
|
+ </span>
|
|
|
+ <v-btn :loading="templateLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleDownloadTemplate">批量导入模版下载</v-btn>
|
|
|
+ <v-btn :loading="exportLoading" prepend-icon="mdi-export-variant" color="primary" variant="tonal" class="ml-3" @click="handleExport">职位导出</v-btn>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
|
|
|
<div class="mt-3">
|
|
@@ -69,14 +76,16 @@ const templateLoading = ref(false)
|
|
|
const uploadLoading = ref(false)
|
|
|
const exportLoading = ref(false)
|
|
|
const uploadFile = ref()
|
|
|
-
|
|
|
const tab = ref(1)
|
|
|
-
|
|
|
const tabList = [
|
|
|
{ label: t('position.recruitmentInProgress'), value: 1 },
|
|
|
{ label: t('position.closed'), value: 2 },
|
|
|
{ label: t('position.expiredPosition'), value: 3 }
|
|
|
]
|
|
|
+let baseInfo = ref(JSON.parse(localStorage.getItem('entBaseInfo')) || {})
|
|
|
+store.$subscribe((mutation, state) => {
|
|
|
+ if (Object.keys(state.entBaseInfo).length) baseInfo.value = state.entBaseInfo
|
|
|
+})
|
|
|
|
|
|
const items = ref([])
|
|
|
const textItem = ref({
|
|
@@ -91,6 +100,9 @@ const textItem = ref({
|
|
|
const handleAdd = async () => {
|
|
|
const data = await getEnterprisePubJobTypePermission()
|
|
|
if (!data || !data.length) return Snackbar.warning('没有该操作权限,请联系平台管理员升级后再试')
|
|
|
+ // 新增职位时查询是否有可发布职位数
|
|
|
+ await store.getEnterpriseInfo()
|
|
|
+ if (baseInfo.value?.entitlement.publishJobCount <= 0) return Snackbar.warning('可发布职位数不足,请联系平台管理员')
|
|
|
router.push('/recruit/enterprise/position/add')
|
|
|
await store.getEnterpriseUserAccountInfo()
|
|
|
}
|
|
@@ -98,6 +110,7 @@ const handleAdd = async () => {
|
|
|
const loading = ref(false)
|
|
|
// 获取职位列表
|
|
|
const getPositionList = async () => {
|
|
|
+ await store.getEnterpriseInfo()
|
|
|
items.value = []; total.value = 0
|
|
|
loading.value = true
|
|
|
if (tab.value !== 3) {
|
|
@@ -147,9 +160,7 @@ const handleUploadBefore = () => {
|
|
|
otherBtnText: '去下载模板',
|
|
|
sureText: '继续上传',
|
|
|
}
|
|
|
- // debugger
|
|
|
Confirm(t('common.confirmTitle'), '如还未下载过批量上传的模板,请先下载,并且使用模板格式上传职位', option).then((obj) => {
|
|
|
- // debugger
|
|
|
if (obj?.otherClick) {
|
|
|
Snackbar.info('开始下载!')
|
|
|
handleDownloadTemplate()
|