Quellcode durchsuchen

Merge remote-tracking branch 'origin/master'

kk vor 3 Tagen
Ursprung
Commit
a309323e78

+ 5 - 1
jeecg-boot/jeecg-boot-module/jeecg-module-zjrs/src/main/java/org/jeecg/modules/zjrs/enterprise/mapper/xml/EnterpriseInfoMapper.xml

@@ -5,7 +5,11 @@
     <!-- 企业信息映射(含当前岗位数) -->
     <!-- 企业信息映射(含当前岗位数) -->
     <sql id="EnterpriseWithPostCountSql">
     <sql id="EnterpriseWithPostCountSql">
         SELECT e.*,
         SELECT e.*,
-               (SELECT COUNT(*) FROM post_info p WHERE p.enterprise_id = e.id) AS post_count
+               (SELECT COUNT(*) FROM post_info p WHERE p.enterprise_id = e.id) AS post_count,
+               (SELECT LISTAGG(t.tag_name, ', ') WITHIN GROUP (ORDER BY t.tag_name)
+                FROM enterprise_tag_relation tr
+                INNER JOIN enterprise_tag t ON t.id = tr.tag_id
+                WHERE tr.enterprise_id = e.id) AS tag_names
         FROM enterprise_info e
         FROM enterprise_info e
     </sql>
     </sql>
 
 

+ 3 - 3
jeecgboot-vue3/src/views/recruitment/enterprise/EnterpriseInfo.data.ts

@@ -60,8 +60,8 @@ export const columns: BasicColumn[] = [
   {
   {
     title: '单位标签',
     title: '单位标签',
     align: 'center',
     align: 'center',
-    dataIndex: 'companyTag',
-    width: 120,
+    dataIndex: 'tagNames',
+    width: 200,
   },
   },
   {
   {
     title: '经营状态',
     title: '经营状态',
@@ -105,7 +105,7 @@ export const superQuerySchema = {
   isKeyInstitution: { title: '是否为重点事业单位', order: 17, view: 'text', type: 'string' },
   isKeyInstitution: { title: '是否为重点事业单位', order: 17, view: 'text', type: 'string' },
   isStrategicIndustry: { title: '是否属于20个战略性产业集群', order: 18, view: 'text', type: 'string' },
   isStrategicIndustry: { title: '是否属于20个战略性产业集群', order: 18, view: 'text', type: 'string' },
   dataSource: { title: '数据来源', order: 19, view: 'text', type: 'string' },
   dataSource: { title: '数据来源', order: 19, view: 'text', type: 'string' },
-  companyTag: { title: '单位标签', order: 20, view: 'text', type: 'string' },
+  tagNames: { title: '单位标签', order: 20, view: 'text', type: 'string' },
   staffSize: { title: '人员规模', order: 21, view: 'text', type: 'string' },
   staffSize: { title: '人员规模', order: 21, view: 'text', type: 'string' },
   contactPerson: { title: '联系人', order: 22, view: 'text', type: 'string' },
   contactPerson: { title: '联系人', order: 22, view: 'text', type: 'string' },
   contactPhone: { title: '联系方式', order: 23, view: 'text', type: 'string' },
   contactPhone: { title: '联系方式', order: 23, view: 'text', type: 'string' },

+ 13 - 0
jeecgboot-vue3/src/views/recruitment/enterprise/EnterpriseInfoList.vue

@@ -94,6 +94,9 @@
         <template v-else-if="column.dataIndex === 'postCount'">
         <template v-else-if="column.dataIndex === 'postCount'">
           <a class="link-count" @click="handleViewPostList(record)">{{ text || 0 }}</a>
           <a class="link-count" @click="handleViewPostList(record)">{{ text || 0 }}</a>
         </template>
         </template>
+        <template v-else-if="column.dataIndex === 'isKeyEnterprise'">
+          {{ formatYesNo(text) }}
+        </template>
       </template>
       </template>
     </BasicTable>
     </BasicTable>
     <!-- 表单区域 -->
     <!-- 表单区域 -->
@@ -143,6 +146,16 @@
   const companyTypeOptions = computed(() => getDictOptions('CompanyType'));
   const companyTypeOptions = computed(() => getDictOptions('CompanyType'));
   const dataSourceOptions = computed(() => getDictOptions('DataSource'));
   const dataSourceOptions = computed(() => getDictOptions('DataSource'));
 
 
+  /**
+   * 格式化 是/否 字段显示
+   * @param value 1=是,0=否
+   */
+  function formatYesNo(value: string | number | undefined | null): string {
+    if (value === '1' || value === 1) return '是';
+    if (value === '0' || value === 0) return '否';
+    return '-';
+  }
+
   //注册table数据
   //注册table数据
   const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
   const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
     tableProps: {
     tableProps: {

+ 21 - 12
jeecgboot-vue3/src/views/recruitment/enterprise/components/EnterpriseInfoDetailModal.vue

@@ -17,7 +17,7 @@
           <a-descriptions-item label="经济类型" :span="1">{{ detailData.economyType }}</a-descriptions-item>
           <a-descriptions-item label="经济类型" :span="1">{{ detailData.economyType }}</a-descriptions-item>
 
 
           <a-descriptions-item label="所属行业" :span="1">{{ detailData.industry }}</a-descriptions-item>
           <a-descriptions-item label="所属行业" :span="1">{{ detailData.industry }}</a-descriptions-item>
-          <a-descriptions-item label="是否上市公司" :span="1">{{ detailData.isListedCompany }}</a-descriptions-item>
+          <a-descriptions-item label="是否上市公司" :span="1">{{ formatYesNo(detailData.isListedCompany) }}</a-descriptions-item>
           <a-descriptions-item label="行业领域" :span="1">{{ getDictText('IndustryField', detailData.industryField) }}</a-descriptions-item>
           <a-descriptions-item label="行业领域" :span="1">{{ getDictText('IndustryField', detailData.industryField) }}</a-descriptions-item>
 
 
           <a-descriptions-item label="行业主管部门" :span="1">{{ detailData.industryAdminDept }}</a-descriptions-item>
           <a-descriptions-item label="行业主管部门" :span="1">{{ detailData.industryAdminDept }}</a-descriptions-item>
@@ -28,37 +28,36 @@
           <a-descriptions-item label="单位属性" :span="1">{{ detailData.companyAttribute }}</a-descriptions-item>
           <a-descriptions-item label="单位属性" :span="1">{{ detailData.companyAttribute }}</a-descriptions-item>
           <a-descriptions-item label="是否为头部企业" :span="1">{{ detailData.isHeadEnterprise }}</a-descriptions-item>
           <a-descriptions-item label="是否为头部企业" :span="1">{{ detailData.isHeadEnterprise }}</a-descriptions-item>
 
 
-          <a-descriptions-item label="是否为重点企业" :span="1">{{ detailData.isKeyEnterprise }}</a-descriptions-item>
-          <a-descriptions-item label="是否为重点事业单位" :span="1">{{ detailData.isKeyInstitution }}</a-descriptions-item>
-          <a-descriptions-item label="是否属于20个战略性产业集群" :span="1">{{ detailData.isStrategicIndustry }}</a-descriptions-item>
+          <a-descriptions-item label="是否为重点企业" :span="1">{{ formatYesNo(detailData.isKeyEnterprise) }}</a-descriptions-item>
+          <a-descriptions-item label="是否为重点事业单位" :span="1">{{ formatYesNo(detailData.isKeyInstitution) }}</a-descriptions-item>
+          <a-descriptions-item label="是否属于20个战略性产业集群" :span="1">{{ formatYesNo(detailData.isStrategicIndustry) }}</a-descriptions-item>
 
 
-          <a-descriptions-item label="企业标签" :span="2">{{ detailData.tagNames || '-' }}</a-descriptions-item>
           <a-descriptions-item label="数据来源" :span="1">{{ getDictText('DataSource', detailData.dataSource) }}</a-descriptions-item>
           <a-descriptions-item label="数据来源" :span="1">{{ getDictText('DataSource', detailData.dataSource) }}</a-descriptions-item>
         </a-descriptions>
         </a-descriptions>
 
 
         <!-- 单位详细信息 -->
         <!-- 单位详细信息 -->
         <a-divider orientation="left" orientation-margin="0px">单位详细信息</a-divider>
         <a-divider orientation="left" orientation-margin="0px">单位详细信息</a-divider>
         <a-descriptions :column="3" bordered size="middle" style="margin-bottom: 24px">
         <a-descriptions :column="3" bordered size="middle" style="margin-bottom: 24px">
-          <a-descriptions-item label="单位标签" :span="1">{{ detailData.companyTag }}</a-descriptions-item>
+          <a-descriptions-item label="单位标签" :span="3">{{ detailData.tagNames || '-' }}</a-descriptions-item>
+          
           <a-descriptions-item label="人员规模" :span="1">{{ getDictText('CompanySize', detailData.staffSize) }}</a-descriptions-item>
           <a-descriptions-item label="人员规模" :span="1">{{ getDictText('CompanySize', detailData.staffSize) }}</a-descriptions-item>
           <a-descriptions-item label="电子邮箱" :span="1">{{ detailData.email }}</a-descriptions-item>
           <a-descriptions-item label="电子邮箱" :span="1">{{ detailData.email }}</a-descriptions-item>
-
           <a-descriptions-item label="邮政编码" :span="1">{{ detailData.postalCode }}</a-descriptions-item>
           <a-descriptions-item label="邮政编码" :span="1">{{ detailData.postalCode }}</a-descriptions-item>
+          
           <a-descriptions-item label="联系人" :span="1">{{ detailData.contactPerson }}</a-descriptions-item>
           <a-descriptions-item label="联系人" :span="1">{{ detailData.contactPerson }}</a-descriptions-item>
           <a-descriptions-item label="联系方式" :span="1">{{ detailData.contactPhone }}</a-descriptions-item>
           <a-descriptions-item label="联系方式" :span="1">{{ detailData.contactPhone }}</a-descriptions-item>
-
           <a-descriptions-item label="接收平台短信推送" :span="1">{{ detailData.acceptSmsPush }}</a-descriptions-item>
           <a-descriptions-item label="接收平台短信推送" :span="1">{{ detailData.acceptSmsPush }}</a-descriptions-item>
+          
           <a-descriptions-item label="面向求职者会员开放" :span="1">{{ detailData.openToJobSeeker }}</a-descriptions-item>
           <a-descriptions-item label="面向求职者会员开放" :span="1">{{ detailData.openToJobSeeker }}</a-descriptions-item>
-          <a-descriptions-item label="是否允许人社部门代报名" :span="1">{{ detailData.allowAgentSignup }}</a-descriptions-item>
-
+          <a-descriptions-item label="是否允许人社部门代报名" :span="1">{{ formatYesNo(detailData.allowAgentSignup) }}</a-descriptions-item>
           <a-descriptions-item label="单位网站" :span="1">{{ detailData.website }}</a-descriptions-item>
           <a-descriptions-item label="单位网站" :span="1">{{ detailData.website }}</a-descriptions-item>
+          
           <a-descriptions-item label="传真号码" :span="1">{{ detailData.faxNumber }}</a-descriptions-item>
           <a-descriptions-item label="传真号码" :span="1">{{ detailData.faxNumber }}</a-descriptions-item>
           <a-descriptions-item label="单位福利" :span="1">{{ detailData.companyBenefits }}</a-descriptions-item>
           <a-descriptions-item label="单位福利" :span="1">{{ detailData.companyBenefits }}</a-descriptions-item>
-
           <a-descriptions-item label="办公地址行政区划" :span="1">{{ detailData.officeAddrDistrict }}</a-descriptions-item>
           <a-descriptions-item label="办公地址行政区划" :span="1">{{ detailData.officeAddrDistrict }}</a-descriptions-item>
+          
           <a-descriptions-item label="办公地址" :span="1">{{ detailData.officeAddress }}</a-descriptions-item>
           <a-descriptions-item label="办公地址" :span="1">{{ detailData.officeAddress }}</a-descriptions-item>
           <a-descriptions-item label=" " :span="1"></a-descriptions-item>
           <a-descriptions-item label=" " :span="1"></a-descriptions-item>
-
           <a-descriptions-item label="单位简介" :span="3">{{ detailData.companyIntro }}</a-descriptions-item>
           <a-descriptions-item label="单位简介" :span="3">{{ detailData.companyIntro }}</a-descriptions-item>
         </a-descriptions>
         </a-descriptions>
 
 
@@ -137,6 +136,16 @@
     visible.value = false;
     visible.value = false;
   }
   }
 
 
+  /**
+   * 格式化 是/否 字段显示
+   * @param value 1=是,0=否
+   */
+  function formatYesNo(value: string | number | undefined | null): string {
+    if (value === '1' || value === 1) return '是';
+    if (value === '0' || value === 0) return '否';
+    return '-';
+  }
+
   defineExpose({
   defineExpose({
     open,
     open,
   });
   });

+ 24 - 23
jeecgboot-vue3/src/views/recruitment/enterprise/components/EnterpriseInfoForm.vue

@@ -82,7 +82,7 @@
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
               <a-form-item id="EnterpriseInfoForm-isListedCompany" label="是否上市公司" name="isListedCompany" v-bind="validateInfos.isListedCompany">
               <a-form-item id="EnterpriseInfoForm-isListedCompany" label="是否上市公司" name="isListedCompany" v-bind="validateInfos.isListedCompany">
-                <a-input v-model:value="formData.isListedCompany" allow-clear placeholder="请输入是否上市公司"></a-input>
+                <a-select v-model:value="formData.isListedCompany" :options="yesNoOptions" allow-clear placeholder="请选择是否上市公司" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -132,7 +132,7 @@
                 name="isHeadEnterprise"
                 name="isHeadEnterprise"
                 v-bind="validateInfos.isHeadEnterprise"
                 v-bind="validateInfos.isHeadEnterprise"
               >
               >
-                <a-input v-model:value="formData.isHeadEnterprise" allow-clear placeholder="请输入是否为头部企业"></a-input>
+                <a-select v-model:value="formData.isHeadEnterprise" :options="yesNoOptions" allow-clear placeholder="请选择是否为头部企业" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -142,7 +142,7 @@
                 name="isKeyEnterprise"
                 name="isKeyEnterprise"
                 v-bind="validateInfos.isKeyEnterprise"
                 v-bind="validateInfos.isKeyEnterprise"
               >
               >
-                <a-input v-model:value="formData.isKeyEnterprise" allow-clear placeholder="请输入是否为重点企业"></a-input>
+                <a-select v-model:value="formData.isKeyEnterprise" :options="yesNoOptions" allow-clear placeholder="请选择是否为重点企业" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -152,7 +152,7 @@
                 name="isKeyInstitution"
                 name="isKeyInstitution"
                 v-bind="validateInfos.isKeyInstitution"
                 v-bind="validateInfos.isKeyInstitution"
               >
               >
-                <a-input v-model:value="formData.isKeyInstitution" allow-clear placeholder="请输入是否为重点事业单位"></a-input>
+                <a-select v-model:value="formData.isKeyInstitution" :options="yesNoOptions" allow-clear placeholder="请选择是否为重点事业单位" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -162,12 +162,7 @@
                 name="isStrategicIndustry"
                 name="isStrategicIndustry"
                 v-bind="validateInfos.isStrategicIndustry"
                 v-bind="validateInfos.isStrategicIndustry"
               >
               >
-                <a-input v-model:value="formData.isStrategicIndustry" allow-clear placeholder="请输入是否属于20个战略性产业集群"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="8">
-              <a-form-item id="EnterpriseInfoForm-tagIds" label="企业标签" name="tagIds">
-                <a-select v-model:value="formData.tagIds" :options="enterpriseTagOptions" allow-clear mode="multiple" placeholder="请选择企业标签" />
+                <a-select v-model:value="formData.isStrategicIndustry" :options="yesNoOptions" allow-clear placeholder="请选择是否属于20个战略性产业集群" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -180,7 +175,7 @@
           <a-row>
           <a-row>
             <a-col :span="8">
             <a-col :span="8">
               <a-form-item id="EnterpriseInfoForm-companyTag" label="单位标签" name="companyTag" v-bind="validateInfos.companyTag">
               <a-form-item id="EnterpriseInfoForm-companyTag" label="单位标签" name="companyTag" v-bind="validateInfos.companyTag">
-                <a-input v-model:value="formData.companyTag" allow-clear placeholder="请输入单位标签"></a-input>
+                <a-select v-model:value="formData.tagIds" :options="enterpriseTagOptions" allow-clear mode="multiple" placeholder="请选择单位标签" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -230,7 +225,7 @@
                 name="allowAgentSignup"
                 name="allowAgentSignup"
                 v-bind="validateInfos.allowAgentSignup"
                 v-bind="validateInfos.allowAgentSignup"
               >
               >
-                <a-input v-model:value="formData.allowAgentSignup" allow-clear placeholder="请输入是否允许人社部门代报名"></a-input>
+                <a-select v-model:value="formData.allowAgentSignup" :options="yesNoOptions" allow-clear placeholder="请选择是否允许人社部门代报名" />
               </a-form-item>
               </a-form-item>
             </a-col>
             </a-col>
             <a-col :span="8">
             <a-col :span="8">
@@ -332,33 +327,33 @@
     unifiedCreditCode: '',
     unifiedCreditCode: '',
     orgCode: '',
     orgCode: '',
     establishDate: '',
     establishDate: '',
-    businessStatus: '',
+    businessStatus: undefined,
     registeredCapital: '',
     registeredCapital: '',
     regAddrDistrict: '',
     regAddrDistrict: '',
-    companyType: '',
+    companyType: undefined,
     economyType: '',
     economyType: '',
     industry: '',
     industry: '',
-    isListedCompany: '',
-    industryField: '',
+    isListedCompany: undefined,
+    industryField: undefined,
     industryAdminDept: '',
     industryAdminDept: '',
     industryTag: '',
     industryTag: '',
     companyPropertyTag: '',
     companyPropertyTag: '',
     provinceOrCity: '',
     provinceOrCity: '',
     companyAttribute: '',
     companyAttribute: '',
-    isHeadEnterprise: '',
-    isKeyEnterprise: '',
-    isKeyInstitution: '',
-    isStrategicIndustry: '',
+    isHeadEnterprise: undefined,
+    isKeyEnterprise: undefined,
+    isKeyInstitution: undefined,
+    isStrategicIndustry: undefined,
     dataSource: '2',
     dataSource: '2',
     companyTag: '',
     companyTag: '',
-    staffSize: '',
+    staffSize: undefined,
     email: '',
     email: '',
     postalCode: '',
     postalCode: '',
     contactPerson: '',
     contactPerson: '',
     contactPhone: '',
     contactPhone: '',
     acceptSmsPush: '',
     acceptSmsPush: '',
     openToJobSeeker: '',
     openToJobSeeker: '',
-    allowAgentSignup: '',
+    allowAgentSignup: undefined,
     website: '',
     website: '',
     faxNumber: '',
     faxNumber: '',
     companyBenefits: '',
     companyBenefits: '',
@@ -385,6 +380,12 @@
   const dataSourceOptions = computed(() => getDictOptions('DataSource'));
   const dataSourceOptions = computed(() => getDictOptions('DataSource'));
   const industryFieldOptions = computed(() => getDictOptions('IndustryField'));
   const industryFieldOptions = computed(() => getDictOptions('IndustryField'));
 
 
+  // 是否选项(1=是,0=否)
+  const yesNoOptions = computed(() => [
+    { value: '1', label: '是' },
+    { value: '0', label: '否' },
+  ]);
+
   // 企业标签选项列表(从后端加载)
   // 企业标签选项列表(从后端加载)
   const enterpriseTagOptions = ref<any[]>([]);
   const enterpriseTagOptions = ref<any[]>([]);
 
 
@@ -419,7 +420,7 @@
     contactPhone: [{ required: true, message: '请输入联系方式' }],
     contactPhone: [{ required: true, message: '请输入联系方式' }],
     acceptSmsPush: [{ required: true, message: '请输入接收平台短信推送' }],
     acceptSmsPush: [{ required: true, message: '请输入接收平台短信推送' }],
     openToJobSeeker: [{ required: true, message: '请输入面向求职者会员开放' }],
     openToJobSeeker: [{ required: true, message: '请输入面向求职者会员开放' }],
-    allowAgentSignup: [{ required: true, message: '请输入是否允许人社部门代报名' }],
+    allowAgentSignup: [{ required: true, message: '请选择是否允许人社部门代报名' }],
     companyIntro: [{ required: true, message: '请输入单位简介' }],
     companyIntro: [{ required: true, message: '请输入单位简介' }],
     officeAddrDistrict: [{ required: true, message: '请输入办公地址行政区划' }],
     officeAddrDistrict: [{ required: true, message: '请输入办公地址行政区划' }],
     officeAddress: [{ required: true, message: '请输入办公地址' }],
     officeAddress: [{ required: true, message: '请输入办公地址' }],

+ 12 - 2
jeecgboot-vue3/src/views/recruitment/personal/components/PersonalInfoDetailModal.vue

@@ -101,7 +101,7 @@
               {{ detailData.wechatId }}
               {{ detailData.wechatId }}
             </a-descriptions-item>
             </a-descriptions-item>
             <a-descriptions-item label="是否留学人才" :span="1">
             <a-descriptions-item label="是否留学人才" :span="1">
-              {{ detailData.isOverseasTalent }}
+              {{ formatYesNo(detailData.isOverseasTalent) }}
             </a-descriptions-item>
             </a-descriptions-item>
 
 
             <!-- 第九行 -->
             <!-- 第九行 -->
@@ -112,7 +112,7 @@
               {{ getDictText('JobSeekerStatus', detailData.jobSearchStatus) }}
               {{ getDictText('JobSeekerStatus', detailData.jobSearchStatus) }}
             </a-descriptions-item>
             </a-descriptions-item>
             <a-descriptions-item label="是否接受推荐职位" :span="1">
             <a-descriptions-item label="是否接受推荐职位" :span="1">
-              {{ detailData.acceptRecommend }}
+              {{ formatYesNo(detailData.acceptRecommend) }}
             </a-descriptions-item>
             </a-descriptions-item>
 
 
             <!-- 第十行 -->
             <!-- 第十行 -->
@@ -173,6 +173,16 @@
     visible.value = false;
     visible.value = false;
   }
   }
 
 
+  /**
+   * 格式化 是/否 字段显示
+   * @param value 1=是,0=否
+   */
+  function formatYesNo(value: string | number | undefined | null): string {
+    if (value === '1' || value === 1) return '是';
+    if (value === '0' || value === 0) return '否';
+    return '-';
+  }
+
   defineExpose({
   defineExpose({
     open,
     open,
   });
   });

+ 5 - 4
jeecgboot-vue3/src/views/recruitment/personal/components/ResumeInfoForm.vue

@@ -302,13 +302,14 @@
   const formRef = ref();
   const formRef = ref();
   const useForm = Form.useForm;
   const useForm = Form.useForm;
   const emit = defineEmits(['register', 'ok']);
   const emit = defineEmits(['register', 'ok']);
+  // 初始化表单数据:有效期默认为当前日期60天后,是否公开默认为是,是否默认简历默认为否
   const formData = reactive<Record<string, any>>({
   const formData = reactive<Record<string, any>>({
     id: '',
     id: '',
     personalId: '',
     personalId: '',
     resumeName: '',
     resumeName: '',
-    isPublic: '',
-    validDate: '',
-    isDefault: '',
+    isPublic: '1',
+    validDate: dayjs().add(60, 'day'),
+    isDefault: '0',
     personalAdvantage: '',
     personalAdvantage: '',
     otherCertificate: '',
     otherCertificate: '',
     expectedIndustry: '',
     expectedIndustry: '',
@@ -316,7 +317,7 @@
     positionName: '',
     positionName: '',
     expectedSalary: null,
     expectedSalary: null,
     workLocation: '',
     workLocation: '',
-    workNature: '',
+    workNature: undefined,
   });
   });
   const { createMessage } = useMessage();
   const { createMessage } = useMessage();
   const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 5 } });
   const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 5 } });

+ 8 - 8
jeecgboot-vue3/src/views/recruitment/post/components/PostInfoForm.vue

@@ -176,25 +176,25 @@
     enterpriseId: '',
     enterpriseId: '',
     occupation: '',
     occupation: '',
     postName: '',
     postName: '',
-    workNature: '',
-    salaryType: '',
+    workNature: undefined,
+    salaryType: undefined,
     salaryMin: undefined,
     salaryMin: undefined,
     salaryMax: undefined,
     salaryMax: undefined,
     recruitCount: undefined,
     recruitCount: undefined,
     postValidDate: undefined,
     postValidDate: undefined,
-    postTag: '',
+    postTag: undefined,
     otherBenefits: '',
     otherBenefits: '',
     postDesc: '',
     postDesc: '',
-    educationRequire: '',
-    workExperienceRequire: '',
-    skillLevelRequire: '',
+    educationRequire: undefined,
+    workExperienceRequire: undefined,
+    skillLevelRequire: undefined,
     foreignLanguage: '',
     foreignLanguage: '',
-    languageLevel: '',
+    languageLevel: undefined,
     contactPerson: '',
     contactPerson: '',
     contactPhone: '',
     contactPhone: '',
     workLocation: '',
     workLocation: '',
     detailedAddress: '',
     detailedAddress: '',
-    dataSource: '',
+    dataSource: undefined,
   });
   });
   const { createMessage } = useMessage();
   const { createMessage } = useMessage();
   const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 6 } });
   const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 6 } });