|
@@ -5,14 +5,21 @@
|
|
|
<a-row justify="start">
|
|
|
<a-col flex="800px">
|
|
|
<a-form-item label="企业名称" :label-col="{ span: 3}"
|
|
|
- name="companyID" :rules="[{ required: true, message: '请选择关联企业!' }]" >
|
|
|
- <a-select :disabled="isEdit" ref="select" show-search optionFilterProp="label"
|
|
|
- v-model:value="dataModel.companyID" @change="companyChange">
|
|
|
- <a-select-option v-for="item in companyList" :label="item.companyName" :value="item.companyID"
|
|
|
- :key="item.companyID">
|
|
|
- <span>{{ item.companyName }}</span>
|
|
|
- </a-select-option>
|
|
|
- </a-select>
|
|
|
+ name="companyID" :rules="[{ required: true, message: '请选择关联企业!' }]">
|
|
|
+ <a-auto-complete
|
|
|
+ :disabled="isEdit"
|
|
|
+ v-model:value="dataModel.companyName"
|
|
|
+ :options="companyList"
|
|
|
+ @search="selectCompanyList"
|
|
|
+ @change="companyChange"
|
|
|
+ :field-names="{
|
|
|
+ value:'companyName',
|
|
|
+ }"
|
|
|
+ >
|
|
|
+ <template #option="item">
|
|
|
+ <span v-html="formatStr(item.companyName,false)"></span>
|
|
|
+ </template>
|
|
|
+ </a-auto-complete>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col flex="530px">
|
|
@@ -29,7 +36,7 @@
|
|
|
}"
|
|
|
>
|
|
|
<template #option="item">
|
|
|
- <span v-html="formatStr(item.professionName)"></span>({{ item.parentProfessionName }})
|
|
|
+ <span v-html="formatStr(item.professionName, true)"></span>({{ item.parentProfessionName }})
|
|
|
</template>
|
|
|
</a-auto-complete>
|
|
|
</a-form-item>
|
|
@@ -307,8 +314,7 @@ import {message} from "ant-design-vue";
|
|
|
import {useTabsViewStore} from '@/store/modules/tabsView';
|
|
|
import BUploadFile from '@/components/file/uploadFile.vue';
|
|
|
import {get} from '@/api/common';
|
|
|
-import {getInfo} from "@/api/account";
|
|
|
-import {getCompanyById} from "@/api/companyService/company";
|
|
|
+import {getList} from "@/api/companyService/company";
|
|
|
import SelectLabel from "@/views/baseSettings/label/selectLabel.vue";
|
|
|
import dayjs from "dayjs";
|
|
|
import {getProfessionLikeList} from "@/api/jobUserManager/recommendMgt";
|
|
@@ -335,7 +341,7 @@ export default defineComponent(
|
|
|
const cultureLevelList = ref<SelectProps['options']>();
|
|
|
const workYearTypeList = ref<SelectProps['options']>();
|
|
|
const jobHuntList = ref<SelectProps['options']>();
|
|
|
- const companyList = ref<SelectProps['options']>();
|
|
|
+ const companyList = ref<Array<any>>([]);
|
|
|
const postStatusList = [{name: '启用', value: 1}, {name: '停用', value: 0}];
|
|
|
const trialStatusList = [{name: '是', value: true}, {name: '否', value: false}];
|
|
|
const firstProfessionList = ref<CascaderProps['options']>([]);
|
|
@@ -469,10 +475,6 @@ export default defineComponent(
|
|
|
jobHuntList.value = data;
|
|
|
}
|
|
|
|
|
|
- get('companyService/company/getList', {pageIndex: 1, pageSize: 9999}).then(result => {
|
|
|
- companyList.value = result.list;
|
|
|
- })
|
|
|
-
|
|
|
const onClose = () => {
|
|
|
tabsViewStore.closeCurrentTabByPath('/companyService/post/add');
|
|
|
tabsViewStore.closeCurrentTabByPath('/companyService/post/edit');
|
|
@@ -568,12 +570,31 @@ export default defineComponent(
|
|
|
|
|
|
// 企业名称选择变更事件
|
|
|
function companyChange(value: any) {
|
|
|
- getInfo().then((loginUserInfo: any) => {
|
|
|
- getCompanyById(value, loginUserInfo.userID,true).then(result => {
|
|
|
- console.log(result);
|
|
|
- postCompany.dataModel.welfare = result.bonus;
|
|
|
+ postCompany.dataModel.companyName = value;
|
|
|
+ setCompanyId(value);
|
|
|
+ }
|
|
|
+
|
|
|
+ const selectCompanyList = (companyName: string) => {
|
|
|
+ console.log(companyName)
|
|
|
+ if (companyName) {
|
|
|
+ getList({
|
|
|
+ pageIndex: 1,
|
|
|
+ pageSize: 30,
|
|
|
+ companyName,
|
|
|
+ }).then((result: any) => {
|
|
|
+ companyList.value = result.list;
|
|
|
+ setCompanyId(companyName);
|
|
|
})
|
|
|
- });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ function setCompanyId(value: any) {
|
|
|
+ const company = companyList.value.find(x => x.companyName === value);
|
|
|
+ if (company) {
|
|
|
+ postCompany.dataModel.companyID = company.companyID;
|
|
|
+ } else {
|
|
|
+ postCompany.dataModel.companyID = null;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 月薪变更
|
|
@@ -635,12 +656,14 @@ export default defineComponent(
|
|
|
}
|
|
|
|
|
|
// 名称搜索关键字高亮
|
|
|
- const formatStr = (str: any) => {
|
|
|
+ const formatStr = (str: any, isPostName) => {
|
|
|
if (!str) {
|
|
|
return "";
|
|
|
}
|
|
|
-
|
|
|
- return str.replace(postCompany.dataModel.professionName, '<span style="color: coral">' + postCompany.dataModel.professionName + '</span>');
|
|
|
+ if (isPostName) {
|
|
|
+ return str.replace(postCompany.dataModel.professionName, '<span style="color: coral">' + postCompany.dataModel.professionName + '</span>');
|
|
|
+ }
|
|
|
+ return str.replace(postCompany.dataModel.companyName, '<span style="color: coral">' + postCompany.dataModel.companyName + '</span>');
|
|
|
}
|
|
|
|
|
|
return {
|
|
@@ -674,7 +697,8 @@ export default defineComponent(
|
|
|
recruitCountChange,
|
|
|
professionList,
|
|
|
selectProfessionList,
|
|
|
- formatStr
|
|
|
+ formatStr,
|
|
|
+ selectCompanyList
|
|
|
}
|
|
|
},
|
|
|
created() {
|