Browse Source

app-企业岗位信息收集bug处理2

liao-sea 10 months ago
parent
commit
1df1dc4b0d
2 changed files with 227 additions and 33 deletions
  1. 110 15
      h5app/src/views/pages/company/edit.vue
  2. 117 18
      h5app/src/views/pages/jobUserInfo/companyEdit.vue

+ 110 - 15
h5app/src/views/pages/company/edit.vue

@@ -132,7 +132,7 @@
                            @click="changeLongDate" style="height:30px;">至长期</ion-radio>
                 <ion-datetime-button datetime="validDate" style="position:relative;right:110px;"></ion-datetime-button>
                 <ion-modal :keep-contents-mounted="true" >
-                  <ion-datetime id="validDate" name="validDate" placeholder="营业执照有效期"
+                  <ion-datetime id="validDate" name="validDate"
                                 v-model="dataModel.validDate"  :prefer-wheel="true"  @ionChange="changeValidDate"
                                 dataformatas="YYYY-MM-DD" presentation="date" cancel-text="取消" done-text="确定"
                                 :show-default-buttons="true" >
@@ -140,6 +140,32 @@
                 </ion-modal>
               </div>
             </div>
+
+            <div class="form-input">
+              <ion-label>成立日期</ion-label>
+              <div>
+                <ion-datetime-button datetime="establishmentTime" style="position:relative;right:110px;"></ion-datetime-button>
+                <ion-modal :keep-contents-mounted="true" >
+                  <ion-datetime id="establishmentTime" name="establishmentTime"
+                                v-model="dataModel.establishmentTime"  :prefer-wheel="true"
+                                dataformatas="YYYY-MM-DD" presentation="date" cancel-text="取消" done-text="确定"
+                                :show-default-buttons="true" >
+                  </ion-datetime>
+                </ion-modal>
+              </div>
+            </div>
+            <div class="form-input" >
+              <ion-label>注册资本(万元)</ion-label>
+              <ion-input placeholder="请输入注册资本" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.registeredCapital" class="custom">
+              </ion-input>
+            </div>
+            <div class="form-input" >
+              <ion-label>企业注册地址行政区划</ion-label>
+              <ion-input placeholder="请输入企业注册地址行政区划" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.signInPoliticalArea" class="custom">
+              </ion-input>
+            </div>
             <div class="form-input" >
               <ion-label>企业邮箱</ion-label>
               <ion-input placeholder="请输入企业邮箱" label-placement="stacked" :clear-input="true"
@@ -147,8 +173,8 @@
               </ion-input>
             </div>
             <div class="form-select">
-            <ion-label>企业分类</ion-label>
-              <ion-select interface="action-sheet" placeholder="请选择企业分类" cancel-text="取消"
+            <ion-label>经济类型</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择经济类型" cancel-text="取消"
                           id="companyType" v-model="dataModel.companyType"  style="width: 100%;text-align: left;">
                 <ion-select-option v-for="(record,key) in companyTypeList" :key="key"
                                    v-model:value="record.value">
@@ -156,6 +182,48 @@
                 </ion-select-option>
               </ion-select>
             </div>
+            <div class="form-select">
+              <ion-label>所属行业</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择所属行业" cancel-text="取消"
+                          id="professionID" v-model="dataModel.professionID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in professionList" :key="key"
+                                   v-model:value="record.value">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-select">
+              <ion-label>所属产业分类</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择所属产业分类" cancel-text="取消"
+                          id="estateCategoryID" v-model="dataModel.estateCategoryID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in estateCategoryList" :key="key"
+                                   v-model:value="record.value">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-select">
+              <ion-label>企业标签</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择企业标签" cancel-text="取消"
+                          id="tagID" v-model="dataModel.tagID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in companyTagList" :key="key"
+                                   v-model:value="record.value" style="width:100%;text-align: left;">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-input">
+              <ion-label>企业网站</ion-label>
+              <ion-input type="number" placeholder="请输入企业网站" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.website" class="custom">
+              </ion-input>
+            </div>
+            <div class="form-input">
+              <ion-label>企业福利</ion-label>
+              <ion-textarea placeholder="请输入企业福利" :rows="3" label-placement="stacked" :clear-input="true"
+                            v-model="dataModel.bonus" class="custom" style="border-bottom: 1px solid #fff2e8;">
+              </ion-textarea>
+            </div>
             <div class="form-select">
             <ion-label>企业规模</ion-label>
               <ion-select interface="action-sheet" placeholder="请选择企业规模" cancel-text="取消"
@@ -190,12 +258,6 @@
                             v-model="dataModel.companyDesc" class="custom" style="border-bottom: 1px solid #fff2e8;">
               </ion-textarea>
             </div>
-            <div class="form-input">
-              <ion-label>企业福利</ion-label>
-              <ion-textarea placeholder="请输入企业福利" :rows="3" label-placement="stacked" :clear-input="true"
-                            v-model="dataModel.bonus" class="custom" style="border-bottom: 1px solid #fff2e8;">
-              </ion-textarea>
-            </div>
           </div>
         </div>
       </form>
@@ -252,8 +314,15 @@ export default defineComponent({
         isShortage: null,
         frName: null,
         validDate: dayjs().format("YYYY-MM-DD"),
+        establishmentTime: dayjs().format("YYYY-MM-DD"),
+        registeredCapital:null,
+        signInPoliticalArea:null,
         companyEmail: '',
         companyType: null,
+        professionID:null,
+        estateCategoryID:null,
+        tagID:null,
+        website:null,
         companyModel: null,
         regionCode: null,
         streetCode: null,
@@ -267,15 +336,16 @@ export default defineComponent({
         {title: '岗位信息', desc: '企业岗位信息', val: 2}
     ]);
 
-    const companyTypeList = ref<any>([]);
+    const professionList = ref<any>([]);
+    const companyStatusList = ref([]);
     const companyModelList = ref<any>([]);
+    const companyTypeList = ref<any>([]);
+    const companyTagList = ref<any>([]);
+    const estateCategoryList = ref<any>([]);
     const regionList = ref<any>([]);
     const streetList = ref<any>([]);
     const siteList = ref<any>([]);
-    const companyStatusList = [
-      {value: 1, name: '在营'},
-      {value: 0, name: '关闭'},
-    ];
+
     const shortAgeTypeList = [
       {value: 1, name: '是'},
       {value: 0, name: '否'},
@@ -325,11 +395,26 @@ export default defineComponent({
       companyModelList.value = companyModelResult;
     }
 
+    const getCompanyTagList = async function(){
+      const companyTagResult :any = await getSysDictionaryList("CompanyTag");
+      companyTagList.value = companyTagResult;
+    }
+
     const getCompanyTypeList = async function(){
       const companyTypeResult :any = await getSysDictionaryList("CompanyType");
       companyTypeList.value = companyTypeResult;
     }
 
+    const getCompanyStatusList = async function(){
+      const companyStatusResult :any = await getSysDictionaryList("CompanyStatus");
+      companyStatusList.value = companyStatusResult;
+    }
+
+    const getEstateCategoryList = async function(){
+      const estateCategoryResult :any = await getSysDictionaryList("CompanyEstateCategory");
+      estateCategoryList.value = estateCategoryResult;
+    }
+
     const rules = computed(() => {
       return {
         dataModel: {
@@ -390,7 +475,8 @@ export default defineComponent({
     }
     const inputDataValidate = () =>{
       const mobileReg = /^1[3|4|5|6|7|8|9]\d{9}$/;
-      if(!mobileReg.test(formState.dataModel.userMobile)){
+      const landlineReg = /[0-9-()()]{7,18}/;
+      if(!mobileReg.test(formState.dataModel.userMobile)&&!landlineReg.test(formState.dataModel.userMobile)){
         presentAlert("输入的联系电话有误!");
         isAllowCommit.value = false;
       }
@@ -496,16 +582,22 @@ export default defineComponent({
       curStepData,
       stepList,
       companyTypeList,
+      professionList,
       siteList,
       regionList,
       streetList,
       shortAgeTypeList,
       companyStatusList,
       companyModelList,
+      companyTagList,
+      estateCategoryList,
       onNext,
       onBack,
+      getCompanyStatusList,
       getCompanyModelList,
       getCompanyTypeList,
+      getCompanyTagList,
+      getEstateCategoryList,
       getRegionListData,
       getSiteListData,
       changeCity,
@@ -516,6 +608,9 @@ export default defineComponent({
   },mounted(){
     this.getCompanyModelList();
     this.getCompanyTypeList();
+    this.getCompanyTagList();
+    this.getCompanyStatusList();
+    this.getEstateCategoryList();
     this.getRegionListData();
     this.getSiteListData();
   }

+ 117 - 18
h5app/src/views/pages/jobUserInfo/companyEdit.vue

@@ -137,6 +137,32 @@
                 </ion-modal>
               </div>
             </div>
+
+            <div class="form-input">
+              <ion-label>成立日期</ion-label>
+              <div>
+                <ion-datetime-button datetime="establishmentTime" style="position:relative;right:110px;"></ion-datetime-button>
+                <ion-modal :keep-contents-mounted="true" >
+                  <ion-datetime id="establishmentTime" name="establishmentTime"
+                                v-model="dataModel.establishmentTime"  :prefer-wheel="true"
+                                dataformatas="YYYY-MM-DD" presentation="date" cancel-text="取消" done-text="确定"
+                                :show-default-buttons="true" >
+                  </ion-datetime>
+                </ion-modal>
+              </div>
+            </div>
+            <div class="form-input" >
+              <ion-label>注册资本(万元)</ion-label>
+              <ion-input placeholder="请输入注册资本" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.registeredCapital" class="custom">
+              </ion-input>
+            </div>
+            <div class="form-input" >
+              <ion-label>企业注册地址行政区划</ion-label>
+              <ion-input placeholder="请输入企业注册地址行政区划" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.signInPoliticalArea" class="custom">
+              </ion-input>
+            </div>
             <div class="form-input" >
               <ion-label>企业邮箱</ion-label>
               <ion-input placeholder="请输入企业邮箱" label-placement="stacked" :clear-input="true"
@@ -144,8 +170,8 @@
               </ion-input>
             </div>
             <div class="form-select">
-              <ion-label>企业分类</ion-label>
-              <ion-select interface="action-sheet" placeholder="请选择企业分类" cancel-text="取消"
+              <ion-label>经济类型</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择经济类型" cancel-text="取消"
                           id="companyType" v-model="dataModel.companyType"  style="width: 100%;text-align: left;">
                 <ion-select-option v-for="(record,key) in companyTypeList" :key="key"
                                    v-model:value="record.value">
@@ -153,6 +179,48 @@
                 </ion-select-option>
               </ion-select>
             </div>
+            <div class="form-select">
+              <ion-label>所属行业</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择所属行业" cancel-text="取消"
+                          id="professionID" v-model="dataModel.professionID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in professionList" :key="key"
+                                   v-model:value="record.value">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-select">
+              <ion-label>所属产业分类</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择所属产业分类" cancel-text="取消"
+                          id="estateCategoryID" v-model="dataModel.estateCategoryID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in estateCategoryList" :key="key"
+                                   v-model:value="record.value">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-select">
+              <ion-label>企业标签</ion-label>
+              <ion-select interface="action-sheet" placeholder="请选择企业标签" cancel-text="取消"
+                          id="tagID" v-model="dataModel.tagID"  style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in companyTagList" :key="key"
+                                   v-model:value="record.value" style="width:100%;text-align: left;">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
+            </div>
+            <div class="form-input">
+              <ion-label>企业网站</ion-label>
+              <ion-input type="number" placeholder="请输入企业网站" label-placement="stacked" :clear-input="true"
+                         v-model="dataModel.website" class="custom">
+              </ion-input>
+            </div>
+            <div class="form-input">
+              <ion-label>企业福利</ion-label>
+              <ion-textarea placeholder="请输入企业福利" :rows="3" label-placement="stacked" :clear-input="true"
+                            v-model="dataModel.bonus" class="custom" style="border-bottom: 1px solid #fff2e8;">
+              </ion-textarea>
+            </div>
             <div class="form-select">
               <ion-label>企业规模</ion-label>
               <ion-select interface="action-sheet" placeholder="请选择企业规模" cancel-text="取消"
@@ -187,12 +255,6 @@
                             v-model="dataModel.companyDesc" class="custom" style="border-bottom: 1px solid #fff2e8;">
               </ion-textarea>
             </div>
-            <div class="form-input">
-              <ion-label>企业福利</ion-label>
-              <ion-textarea placeholder="请输入企业福利" :rows="3" label-placement="stacked" :clear-input="true"
-                            v-model="dataModel.bonus" class="custom" style="border-bottom: 1px solid #fff2e8;">
-              </ion-textarea>
-            </div>
           </div>
         </div>
       </form>
@@ -247,8 +309,15 @@ export default defineComponent({
         isShortage: null,
         frName: null,
         validDate: dayjs().format("YYYY-MM-DD"),
+        establishmentTime: dayjs().format("YYYY-MM-DD"),
+        registeredCapital:null,
+        signInPoliticalArea:null,
         companyEmail: '',
         companyType: null,
+        professionID:null,
+        estateCategoryID:null,
+        tagID:null,
+        website:null,
         companyModel: null,
         regionCode: null,
         streetCode: null,
@@ -263,15 +332,16 @@ export default defineComponent({
       {title: '岗位信息', desc: '企业岗位信息', val: 2}
     ]);
 
-    const companyTypeList = ref<any>([]);
+    const professionList = ref<any>([]);
+    const companyStatusList = ref([]);
     const companyModelList = ref<any>([]);
+    const companyTypeList = ref<any>([]);
+    const companyTagList = ref<any>([]);
+    const estateCategoryList = ref<any>([]);
     const regionList = ref<any>([]);
     const streetList = ref<any>([]);
     const siteList = ref<any>([]);
-    const companyStatusList = [
-      {value: 1, name: '在营'},
-      {value: 0, name: '关闭'},
-    ];
+
     const shortAgeTypeList = [
       {value: 1, name: '是'},
       {value: 0, name: '否'},
@@ -282,11 +352,26 @@ export default defineComponent({
       companyModelList.value = companyModelResult;
     }
 
+    const getCompanyTagList = async function(){
+      const companyTagResult :any = await getSysDictionaryList("CompanyTag");
+      companyTagList.value = companyTagResult;
+    }
+
     const getCompanyTypeList = async function(){
       const companyTypeResult :any = await getSysDictionaryList("CompanyType");
       companyTypeList.value = companyTypeResult;
     }
 
+    const getCompanyStatusList = async function(){
+      const companyStatusResult :any = await getSysDictionaryList("CompanyStatus");
+      companyStatusList.value = companyStatusResult;
+    }
+
+    const getEstateCategoryList = async function(){
+      const estateCategoryResult :any = await getSysDictionaryList("CompanyEstateCategory");
+      estateCategoryList.value = estateCategoryResult;
+    }
+
     const rules = computed(() => {
       return {
         dataModel: {
@@ -348,7 +433,8 @@ export default defineComponent({
 
     const inputDataValidate = () =>{
       const mobileReg = /^1[3|4|5|6|7|8|9]\d{9}$/;
-      if(!mobileReg.test(formState.dataModel.userMobile)){
+      const landlineReg = /[0-9-()()]{7,18}/;
+      if(!mobileReg.test(formState.dataModel.userMobile)&&!landlineReg.test(formState.dataModel.userMobile)){
         presentAlert("输入的联系电话有误!");
         isAllowCommit.value = false;
       }
@@ -389,10 +475,6 @@ export default defineComponent({
       curStepData.value.statusVal = status;
       curStepData.value.loginUserID = userID;
       curStepData.value.openID = openId;
-      await getCompanyModelList();
-      await getCompanyTypeList();
-      await getRegionListData();
-      await getSiteListData();
       const reqData = await getCompanyById(companyID,userID);
       formState.dataModel = reqData;
       isLongDate.value = formState.dataModel.validDate == "2099-12-31T00:00:00.000+08:00";
@@ -464,13 +546,30 @@ export default defineComponent({
       shortAgeTypeList,
       companyStatusList,
       companyModelList,
+      companyTagList,
+      estateCategoryList,
       onNext,
       onBack,
+      getCompanyStatusList,
+      getCompanyModelList,
+      getCompanyTypeList,
+      getCompanyTagList,
+      getEstateCategoryList,
+      getRegionListData,
+      getSiteListData,
       changeCity,
       changeLongDate,
       changeValidDate,
       loadData,
     }
+  },mounted(){
+    this.getCompanyModelList();
+    this.getCompanyTypeList();
+    this.getCompanyTagList();
+    this.getCompanyStatusList();
+    this.getEstateCategoryList();
+    this.getRegionListData();
+    this.getSiteListData();
   }
 });
 </script>