Browse Source

feat: 企业所属行政区划数据变更

zhangying 11 months ago
parent
commit
b26b6d99c6

+ 12 - 4
h5app/src/views/pages/company/edit.vue

@@ -161,11 +161,16 @@
                          v-model="dataModel.registeredCapital" class="custom">
               </ion-input>
             </div>
-            <div class="form-input" >
+            <div class="form-select">
               <ion-label>企业注册地址行政区划</ion-label>
-              <ion-input placeholder="请输入企业注册地址行政区划" label-placement="stacked" :clear-input="true"
-                         v-model="dataModel.signInPoliticalArea" class="custom">
-              </ion-input>
+              <ion-select interface="action-sheet" placeholder="请选择" cancel-text="取消"
+                          id="signInPoliticalArea" v-model="dataModel.signInPoliticalArea"
+                          style="width: 100%;text-align: left;">
+                <ion-select-option v-for="(record,key) in regionList" :key="key"
+                                   v-model:value="record.code">
+                  {{ record.name }}
+                </ion-select-option>
+              </ion-select>
             </div>
             <div class="form-input" >
               <ion-label>企业邮箱</ion-label>
@@ -549,6 +554,9 @@ export default defineComponent({
           formState.dataModel.companyEmail = matchedFirmInfo.companyEmail;
           formState.dataModel.companyAddress = matchedFirmInfo.companyAddress;
           formState.dataModel.businScope = matchedFirmInfo.businScope;
+          formState.dataModel.industryID = matchedFirmInfo.industryID;
+          formState.dataModel.industryName = matchedFirmInfo.industryName;
+          formState.dataModel.signInPoliticalArea = matchedFirmInfo.signInPoliticalArea;
           await setInfoLoadingOpen(false);
           infoAlterData.title = "提示";
           infoAlterData.message = "同步成功!";

+ 1 - 4
h5app/src/views/pages/jobhunt/list.vue

@@ -28,7 +28,7 @@
                       <h2>{{ record.name }}</h2>
                     </div>
                     <p>联系电话:{{record.userMobile}}</p>
-                    <p>年龄:{{record.age}}</p>
+                    <p>年龄:{{ record.age }}</p>
                     <div class="multi-title">
                       <p>性别:{{record.genderName}}</p>
                       <p>求职岗位数量:{{ record.jobHuntCount }}</p>
@@ -136,9 +136,6 @@ export default defineComponent({
         dataList.value = dataList.value.concat(data.list);
         total.value = data.total;
         (dataList.value as any[]).map(item=>{
-          if(item.identityNumber){
-            item.age = calculateAge(item.identityNumber)+"岁";
-          }
           getJobHuntListByJobUserID({pageIndex:1,pageSize:10000,jobUserID:item.jobUserID}).then(data=>{
             item.jobHuntCount = data.total;
           });

+ 10 - 0
src/main/java/com/hz/employmentsite/services/impl/companyService/CompanyServiceImpl.java

@@ -426,6 +426,16 @@ public class CompanyServiceImpl implements CompanyService {
             companyVo.setIndustryID(pcIndustry.getIndustryId());
             companyVo.setIndustryName(pcIndustry.getIndustryName());
         }
+        if (pcFirm.getHomeRegion() != null && !pcFirm.getHomeRegion().isBlank()) {
+            // 匹配注册地所属县区
+            AreaCodeExample example = new AreaCodeExample();
+            AreaCodeExample.Criteria criteria = example.createCriteria();
+            criteria.andNameEqualTo(pcFirm.getHomeRegion());
+            List<AreaCode> areaCodes = areaCodeMapper.selectByExample(example);
+            if (!areaCodes.isEmpty()) {
+                companyVo.setSignInPoliticalArea(areaCodes.get(0).getCode());
+            }
+        }
 
         return companyVo;
     }

+ 1 - 0
src/main/java/com/hz/employmentsite/vo/companyService/CompanyVo.java

@@ -85,6 +85,7 @@ public class CompanyVo {
     public Date establishmentTime;
     public Double registeredCapital;
     public String signInPoliticalArea;
+    public String signInPoliticalAreaName;
 
     public String industryID;
     public String industryName;

+ 3 - 1
src/main/resources/mapping/cquery/CompanyCQuery.xml

@@ -2,7 +2,8 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.hz.employmentsite.mapper.cquery.CompanyCQuery">
     <select id="getList" resultType="com.hz.employmentsite.vo.companyService.CompanyVo">
-        select company.*,city.name as regionName,area.name as streetName,sys_cmodel.Name as companyModelType,
+        select company.*,city.name as regionName,area.name as streetName,sparea.name as
+        signInPoliticalAreaName,sys_cmodel.Name as companyModelType,
         (select count(*) from pc_post where CompanyID=company.CompanyID) as postCount,u.`Name` as createUserName
         ,inSites.InstitutionID as institutionID,site.SiteName,com_status.Name as recordStatusName,
         industry.industryName as industryName, com_estate.Name as estateCategoryName,com_type.Name as companyTypeName,
@@ -24,6 +25,7 @@
         left join pc_industry industry on company.IndustryID = industry.industryId
         left join area_code city on company.RegionCode = city.code
         left join area_code area on company.StreetCode = area.code
+        left join area_code sparea on company.SignInPoliticalArea = sparea.code
         left join pc_site site on company.siteID = site.siteID
         left join pc_site_institution inSites on site.SiteID = inSites.SiteID
         left join pc_institution institution on inSites.institutionID = institution.InstitutionID

+ 2 - 2
vue/src/views/companyService/company/detail.vue

@@ -16,7 +16,7 @@
         {{ companyInfo.establishmentTime ? dayjs(companyInfo.establishmentTime).format('YYYY-MM-DD') : '' }}
       </a-descriptions-item>
       <a-descriptions-item label="注册资本">{{ companyInfo.registeredCapital }}万元</a-descriptions-item>
-      <a-descriptions-item label="注册地行政区划">{{ companyInfo.signInPoliticalArea }}</a-descriptions-item>
+      <a-descriptions-item label="注册地行政区划">{{ companyInfo.signInPoliticalAreaName }}</a-descriptions-item>
       <a-descriptions-item label="所属行业">{{ companyInfo.industryName }}</a-descriptions-item>
       <a-descriptions-item label="所属产业分类">{{ companyInfo.estateCategoryName }}</a-descriptions-item>
       <a-descriptions-item label="企业标签">{{ companyInfo.tagName }}</a-descriptions-item>
@@ -89,7 +89,7 @@ const companyInfo = reactive({
   companyDesc: "",
   establishmentTime: "",
   registeredCapital: "",
-  signInPoliticalArea: "",
+  signInPoliticalAreaName: "",
   industryName: "",
   estateCategoryName: "",
   tagName: "",

+ 12 - 3
vue/src/views/companyService/company/edit.vue

@@ -151,7 +151,13 @@
             :label-col="{ span: 8 }"
             name="signInPoliticalArea"
           >
-            <a-input v-model:value="dataModel.signInPoliticalArea"></a-input>
+            <a-select
+              ref="select"
+              v-model:value="dataModel.signInPoliticalArea"
+              :options="regionList"
+              :field-names="{ label: 'name', value: 'code' }"
+            >
+            </a-select>
           </a-form-item>
         </a-col>
         <a-col :span="8">
@@ -655,10 +661,13 @@ export default defineComponent(
             formState.dataModel = result;
             // console.log("curDataModel",formState.dataModel);
             showPicker.value = formState.dataModel.validDate == '2099-12-31T00:00:00.000+08:00' ? '1' : '2';
-            if (showPicker.value === '1')
+            if (showPicker.value === '1') {
               showDateTime.value = dayjs(new Date().toLocaleDateString().replaceAll("/", "-"));
-            else
+            } else {
               showDateTime.value = formState.dataModel.validDate;
+            }
+            // 初始化街道数据
+            getStreetList()
           })
         });