Procházet zdrojové kódy

fix: PC端求职人员编辑时关联所属驿站的县区,街道数据

zhangying před 10 měsíci
rodič
revize
37096b3bad

+ 5 - 0
doc/待更新脚本.txt

@@ -0,0 +1,5 @@
+-- 2024-6-11 修改求职人员表,补全未填写的所属区县与所属街道
+UPDATE pc_jobuser ju JOIN pc_site s ON ju.SiteID = s.SiteID SET ju.RegionCode = s.RegionCode
+WHERE ju.RegionCode IS NULL OR ju.RegionCode = '';
+UPDATE pc_jobuser ju JOIN pc_site s ON ju.SiteID = s.SiteID SET ju.StreetCode = s.StreetCode
+WHERE ju.StreetCode IS NULL OR ju.StreetCode = '';

+ 14 - 6
vue/src/views/jobUserManager/jobuser/edit.vue

@@ -66,6 +66,7 @@
               :options="siteList"
               :field-names="{ label: 'siteName', value: 'siteID' }"
               :allow-clear="true"
+              @change="siteChange"
             >
             </a-select>
           </a-form-item>
@@ -545,11 +546,12 @@ import BUploadFile from '@/components/file/uploadFile.vue';
 import {get} from "@/api/common";
 import {getSysDictionaryList} from '@/api/system/dictionary';
 import {getDataById, getEducationList, getExperienceList, save} from '@/api/jobUserManager/jobuser';
-import {getSiteList} from "@/api/baseSettings/siteInfo";
+import {getSiteByID, getSiteList} from "@/api/baseSettings/siteInfo";
 import {getInfo} from "@/api/account";
 import dayjs from "dayjs";
 import SelectLabel from "@/views/baseSettings/label/selectLabel.vue";
 import crtyptoHelp from '@/utils/crypto';
+import {getStreetCodeList} from "@/api/system/area/index";
 
 interface FormState {
   dataModel: any;
@@ -755,12 +757,9 @@ export default defineComponent(
         regionList.value = data;
       });
 
-      const changeCity = () => {
+      const changeCity = async function () {
         if (formState.dataModel.regionCode) {
-          get('system/area/getAreaList', {code: formState.dataModel.regionCode}).then(data => {
-            streetList.value = data;
-            // formState.dataModel.streetCode = "";
-          })
+          streetList.value = await getStreetCodeList(formState.dataModel.regionCode);
         }
       }
 
@@ -943,6 +942,14 @@ export default defineComponent(
         });
       };
 
+      // 所属驿站变更关联区县
+      const siteChange = async function () {
+        const curSiteData: any = await getSiteByID(formState.dataModel.siteID);
+        formState.dataModel.regionCode = curSiteData.regionCode;
+        await changeCity();
+        formState.dataModel.streetCode = curSiteData.streetCode;
+      }
+
       return {
         ...toRefs(formState),
         isEdit,
@@ -957,6 +964,7 @@ export default defineComponent(
         onIdentityNumberChange,
         onSelectModel,
         selectLabelChecks,
+        siteChange,
         refSelectModel,
         siteList,
         regionList,