Prechádzať zdrojové kódy

完善现居地和场所搜索

LuChongMei 1 rok pred
rodič
commit
e0af885d75

+ 2 - 2
src/views/activityMan/placeactivity/placeActivityView.vue

@@ -13,8 +13,8 @@
         <van-field v-model="placeActivity.siteName.name" readonly required :rules="[{ required: true }]" label="场所名称:"
           placeholder="请选择场所名称" input-align="right" right-icon="arrow-down" @click="showPlace = true" />
         <van-popup v-model:show="showPlace" round position="bottom">
-          <van-search placeholder="请输入场所名称" shape="round" input-align="center" v-model="interSearch" @search="onSearch"
-            @cancel="onCancel" />
+          <van-search placeholder="请输入场所名称" shape="round" input-align="center" v-model="interSearch" show-action
+            @search="onSearch" @cancel="onCancel" />
           <van-picker title="活动场所" :columns="places" :columns-field-names="customFieldName" @cancel="showPlace = false"
             @confirm="getPlace" />
         </van-popup>

+ 158 - 509
src/views/placeManage/placePerson/placePersonAdd.vue

@@ -1,253 +1,102 @@
 <template>
-  <van-nav-bar
-    fixed
-    title="人员信息录入"
-    left-arrow
-    @click-left="onClickLeft"
-    :style="{ 'background-color': selectColor }"
-  />
+  <van-nav-bar fixed title="人员信息录入" left-arrow @click-left="onClickLeft" :style="{ 'background-color': selectColor }" />
   <div class="main">
     <div class="formArea">
       <van-form @submit="submit" show-error :show-error-message="false">
         <van-cell-group>
-          <van-field
-            v-model="idTypeName"
-            readonly
-            required
-            label="证件类型:"
-            name="validator"
-            placeholder="请选择证件类型"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="showPicker = true"
-            :rules="[{ required: true }]"
-          />
+          <van-field v-model="idTypeName" readonly required label="证件类型:" name="validator" placeholder="请选择证件类型"
+            input-align="right" right-icon="arrow-down" @click="showPicker = true" :rules="[{ required: true }]" />
           <van-popup v-model:show="showPicker" round position="bottom">
-            <van-picker
-              title="证件类型"
-              :columns="$dictUtils.getDictList('hs_cert_type')"
-              :columns-field-names="{
-                text: 'label',
-                value: 'value',
-              }"
-              @cancel="showPicker = false"
-              @confirm="getPlace"
-            />
+            <van-picker title="证件类型" :columns="$dictUtils.getDictList('hs_cert_type')" :columns-field-names="{
+              text: 'label',
+              value: 'value',
+            }" @cancel="showPicker = false" @confirm="getPlace" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.idcard"
-            center
-            required
-            :rules="[{ required: true }]"
-            label="证件号码:"
-            placeholder="请填写证件号码"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.idcard" center required :rules="[{ required: true }]" label="证件号码:"
+            placeholder="请填写证件号码" input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.name"
-            center
-            required
-            :rules="[{ required: true }]"
-            label="姓名:"
-            placeholder="请填写姓名"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.name" center required :rules="[{ required: true }]" label="姓名:"
+            placeholder="请填写姓名" input-align="right" />
         </van-cell-group>
         <van-cell-group>
           <van-field name="uploader" label="个人照片:">
             <template #input>
-              <van-uploader
-                readonly
-                v-model="fileList"
-                :max-count="1"
-                accept=""
-                :preview-full-image="false"
-                :before-delete="deleteRead"
-                @click-upload="chooseImg"
-              >
+              <van-uploader readonly v-model="fileList" :max-count="1" accept="" :preview-full-image="false"
+                :before-delete="deleteRead" @click-upload="chooseImg">
               </van-uploader>
             </template>
           </van-field>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.beforeUsedName"
-            center
-            label="曾用名:"
-            placeholder="请填写曾用名"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.beforeUsedName" center label="曾用名:" placeholder="请填写曾用名" input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="nationName"
-            readonly
-            label="民族:"
-            placeholder="请选择民族"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_nation = true"
-          />
+          <van-field v-model="nationName" readonly label="民族:" placeholder="请选择民族" input-align="right"
+            right-icon="arrow-down" @click="hs_nation = true" />
           <van-popup v-model:show="hs_nation" round position="bottom">
-            <van-picker
-              title="民族类型"
-              :columns="$dictUtils.getDictList('hs_nation')"
-              :columns-field-names="{
-                text: 'label',
-                value: 'value',
-              }"
-              @cancel="hs_nation = false"
-              @confirm="getnation"
-            />
+            <van-picker title="民族类型" :columns="$dictUtils.getDictList('hs_nation')" :columns-field-names="{
+              text: 'label',
+              value: 'value',
+            }" @cancel="hs_nation = false" @confirm="getnation" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="sexName"
-            readonly
-            required
-            :rules="[{ required: true }]"
-            label="性别:"
-            placeholder="请选择性别"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_sex = true"
-          />
+          <van-field v-model="sexName" readonly required :rules="[{ required: true }]" label="性别:" placeholder="请选择性别"
+            input-align="right" right-icon="arrow-down" @click="hs_sex = true" />
           <van-popup v-model:show="hs_sex" round position="bottom">
-            <van-picker
-              title="性别"
-              :columns="$dictUtils.getDictList('sex')"
-              :columns-field-names="{
-                text: 'label',
-                value: 'value',
-              }"
-              @cancel="hs_sex = false"
-              @confirm="getsex"
-            />
+            <van-picker title="性别" :columns="$dictUtils.getDictList('sex')" :columns-field-names="{
+              text: 'label',
+              value: 'value',
+            }" @cancel="hs_sex = false" @confirm="getsex" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.phone"
-            center
-            label="手机号:"
-            placeholder="请填写手机号"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.phone" center label="手机号:" placeholder="请填写手机号" input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.nativePlace"
-            readonly
-            label="籍贯:"
-            placeholder="请选择籍贯地区"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_nativePlace = true"
-          />
+          <van-field v-model="inputForm.nativePlace" readonly label="籍贯:" placeholder="请选择籍贯地区" input-align="right"
+            right-icon="arrow-down" @click="hs_nativePlace = true" />
           <van-popup v-model:show="hs_nativePlace" round position="bottom">
-            <van-picker
-              title="籍贯"
-              :columns="nativePlace"
-              :columns-field-names="customFieldName"
-              @cancel="hs_nativePlace = false"
-              @confirm="getnativePlace"
-            />
+            <van-picker title="籍贯" :columns="nativePlace" :columns-field-names="customFieldName"
+              @cancel="hs_nativePlace = false" @confirm="getnativePlace" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="educationName"
-            readonly
-            label="教育程度"
-            placeholder="请选择教育程度"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_education = true"
-          />
+          <van-field v-model="educationName" readonly label="教育程度" placeholder="请选择教育程度" input-align="right"
+            right-icon="arrow-down" @click="hs_education = true" />
           <van-popup v-model:show="hs_education" round position="bottom">
-            <van-picker
-              title="教育程度"
-              :columns="education"
-              @cancel="hs_education = false"
-              @confirm="geteducation"
-            />
+            <van-picker title="教育程度" :columns="education" @cancel="hs_education = false" @confirm="geteducation" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.graduatedFrom"
-            center
-            label="毕业院校:"
-            placeholder="请填写毕业院校"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.graduatedFrom" center label="毕业院校:" placeholder="请填写毕业院校" input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="religiousName"
-            readonly
-            label="教别:"
-            name="validator"
-            placeholder="请选择教别"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_religious = true"
-          />
+          <van-field v-model="religiousName" readonly label="教别:" name="validator" placeholder="请选择教别" input-align="right"
+            right-icon="arrow-down" @click="hs_religious = true" />
           <van-popup v-model:show="hs_religious" round position="bottom">
-            <van-picker
-              title="教别"
-              :columns="religious"
-              @cancel="hs_religious = false"
-              @confirm="getreligious"
-            />
+            <van-picker title="教别" :columns="religious" @cancel="hs_religious = false" @confirm="getreligious" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.religiousAppellation"
-            center
-            label="宗教称谓:"
-            placeholder="请填写宗教称谓"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.religiousAppellation" center label="宗教称谓:" placeholder="请填写宗教称谓"
+            input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="locationName"
-            readonly
-            label="所属场所:"
-            placeholder="请选择所属场所"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_site = true"
-          >
+          <van-field v-model="locationName" readonly label="所属场所:" placeholder="请选择所属场所" input-align="right"
+            right-icon="arrow-down" @click="hs_site = true">
           </van-field>
-          <van-dialog
-            v-model:show="hs_site"
-            title="所属场所"
-            show-cancel-button
-          >
+          <van-dialog v-model:show="hs_site" title="所属场所" show-cancel-button>
             <div class="dialog">
-              <van-list
-                v-model:loading="loading"
-                :finished="finished"
-                finished-text="没有更多了"
-                @load="onLoad"
-              >
+              <van-list v-model:loading="loading" :finished="finished" finished-text="没有更多了" @load="onLoad">
+                <van-search placeholder="请输入场所名称" shape="round" input-align="center" v-model="interSearch" show-action
+                  @update:model-value="onSearch" @cancel="onCancel" />
                 <van-radio-group v-model="checked">
                   <van-cell-group inset>
-                    <van-cell
-                      v-for="item in sitelist"
-                      :key="item"
-                      :title="item.name"
-                      clickable
-                      @click="getsite(item)"
-                    >
+                    <van-cell v-for="item in sitelist" :key="item" :title="item.name" clickable @click="getsite(item)">
                       <template #right-icon>
                         <van-radio :name="item.id" @click="getsite(item)" />
                       </template>
@@ -259,99 +108,42 @@
           </van-dialog>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="typeOfEmployeesName"
-            readonly
-            label-width="7.2em"
-            label="场所任职情况:"
-            placeholder="请选择场所任职情况"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_typeOfEmployees = true"
-          />
+          <van-field v-model="typeOfEmployeesName" readonly label-width="7.2em" label="场所任职情况:" placeholder="请选择场所任职情况"
+            input-align="right" right-icon="arrow-down" @click="hs_typeOfEmployees = true" />
           <van-popup v-model:show="hs_typeOfEmployees" round position="bottom">
-            <van-picker
-              title="任职情况"
-              :columns="typeOfEmployees"
-              @cancel="hs_typeOfEmployees = false"
-              @confirm="gettypeOfEmployees"
-            />
+            <van-picker title="任职情况" :columns="typeOfEmployees" @cancel="hs_typeOfEmployees = false"
+              @confirm="gettypeOfEmployees" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.currentResidence"
-            center
-            required
-            readonly
-            :rules="[{ required: true }]"
-            label="现居地:"
-            placeholder="请填写现居地"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="showPlace1 = true"
-          />
+          <van-field v-model="inputForm.currentResidence" center required readonly :rules="[{ required: true }]"
+            label="现居地:" placeholder="请填写现居地" input-align="right" right-icon="arrow-down" @click="showPlace1 = true" />
           <van-popup v-model:show="showPlace1" round position="bottom">
-            <van-picker
-              title="现居地选择"
-              :columns="options"
-              :columns-field-names="customFieldName"
-              @cancel="showPlace1 = false"
-              @confirm="getPlace1"
-            />
+            <van-picker title="现居地选择" :columns="options" :columns-field-names="customFieldName"
+              @cancel="showPlace1 = false" @confirm="getPlace1" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.place"
-            center
-            label="详细地址:"
-            placeholder="请填写详细场所"
-            input-align="right"
-          >
+          <van-field v-model="inputForm.place" center label="详细地址:" placeholder="请填写详细场所" input-align="right">
             <template #right-icon>
               <van-icon name="location" @click="getLocation()" />
             </template>
           </van-field>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="personnalType"
-            readonly
-            required
-            :rules="[{ required: true }]"
-            label="人员类型:"
-            placeholder="请选择人员类型"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_persontype = true"
-          />
-          <van-dialog
-            v-model:show="hs_persontype"
-            title="人员类型"
-            show-cancel-button
-            @confirm="changperson"
-          >
+          <van-field v-model="personnalType" readonly required :rules="[{ required: true }]" label="人员类型:"
+            placeholder="请选择人员类型" input-align="right" right-icon="arrow-down" @click="hs_persontype = true" />
+          <van-dialog v-model:show="hs_persontype" title="人员类型" show-cancel-button @confirm="changperson">
             <div class="dialog">
               <van-list>
                 <van-checkbox-group v-model="checked2">
                   <van-cell-group inset>
-                    <van-cell
-                      v-for="(item, index) in $dictUtils.getDictList(
-                        'hs_people_type'
-                      )"
-                      clickable
-                      :key="item"
-                      :title="`${item.label}`"
-                      @click="toggle(index)"
-                    >
+                    <van-cell v-for="(item, index) in $dictUtils.getDictList(
+                      'hs_people_type'
+                    )" clickable :key="item" :title="`${item.label}`" @click="toggle(index)">
                       <template #right-icon>
-                        <van-checkbox
-                          :name="item.value"
-                          :ref="(el) => (checkboxRefs[index] = el)"
-                          @click.stop
-                          @click="toggle(index)"
-                        />
+                        <van-checkbox :name="item.value" :ref="(el) => (checkboxRefs[index] = el)" @click.stop
+                          @click="toggle(index)" />
                       </template>
                     </van-cell>
                   </van-cell-group>
@@ -361,37 +153,15 @@
           </van-dialog>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="tissueName"
-            readonly
-            label="宗教组织:"
-            placeholder="请选择宗教组织"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_tissue = true"
-          />
-          <van-dialog
-            v-model:show="hs_tissue"
-            title="宗教组织"
-            show-cancel-button
-            @confirm="tissue()"
-          >
+          <van-field v-model="tissueName" readonly label="宗教组织:" placeholder="请选择宗教组织" input-align="right"
+            right-icon="arrow-down" @click="hs_tissue = true" />
+          <van-dialog v-model:show="hs_tissue" title="宗教组织" show-cancel-button @confirm="tissue()">
             <div class="dialog">
-              <van-list
-                v-model:loading="loading1"
-                :finished="finished1"
-                finished-text="没有更多了"
-                @load="onLoad1"
-              >
+              <van-list v-model:loading="loading1" :finished="finished1" finished-text="没有更多了" @load="onLoad1">
                 <van-radio-group v-model="checked1">
                   <van-cell-group inset>
-                    <van-cell
-                      v-for="item in tissuelist"
-                      :key="item"
-                      :title="item.organizationName"
-                      clickable
-                      @click="gettissue(item)"
-                    >
+                    <van-cell v-for="item in tissuelist" :key="item" :title="item.organizationName" clickable
+                      @click="gettissue(item)">
                       <template #right-icon>
                         <van-radio :name="item.id" @click="gettissue(item)" />
                       </template>
@@ -403,206 +173,80 @@
           </van-dialog>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="inputForm.zjzzJob"
-            center
-            label-width="6.5em"
-            label="团体任职情况:"
-            placeholder="请填写团体任职情况"
-            input-align="right"
-          />
+          <van-field v-model="inputForm.zjzzJob" center label-width="6.5em" label="团体任职情况:" placeholder="请填写团体任职情况"
+            input-align="right" />
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="activitytext"
-            readonly
-            required
-            :rules="[{ required: true }]"
-            label-width="7em"
-            label="非法活动参加:"
-            placeholder="请选择是否参加非法活动"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_activity = true"
-          />
+          <van-field v-model="activitytext" readonly required :rules="[{ required: true }]" label-width="7em"
+            label="非法活动参加:" placeholder="请选择是否参加非法活动" input-align="right" right-icon="arrow-down"
+            @click="hs_activity = true" />
           <van-popup v-model:show="hs_activity" round position="bottom">
-            <van-picker
-              title="选择是否参加"
-              :columns="$dictUtils.getDictList('yes_no')"
-              :columns-field-names="{
-                text: 'label',
-                value: 'value',
-              }"
-              @cancel="hs_activity = false"
-              @confirm="getactivity"
-            />
+            <van-picker title="选择是否参加" :columns="$dictUtils.getDictList('yes_no')" :columns-field-names="{
+              text: 'label',
+              value: 'value',
+            }" @cancel="hs_activity = false" @confirm="getactivity" />
           </van-popup>
         </van-cell-group>
         <van-cell-group>
-          <van-field
-            v-model="Dead"
-            readonly
-            required
-            :rules="[{ required: true }]"
-            label="是否死亡:"
-            placeholder="请选择人员是否死亡"
-            input-align="right"
-            right-icon="arrow-down"
-            @click="hs_dead = true"
-          />
+          <van-field v-model="Dead" readonly required :rules="[{ required: true }]" label="是否死亡:" placeholder="请选择人员是否死亡"
+            input-align="right" right-icon="arrow-down" @click="hs_dead = true" />
           <van-popup v-model:show="hs_dead" round position="bottom">
-            <van-picker
-              title="是否死亡"
-              :columns="$dictUtils.getDictList('yes_no')"
-              :columns-field-names="{
-                text: 'label',
-                value: 'value',
-              }"
-              @cancel="hs_dead = false"
-              @confirm="getdead"
-            />
+            <van-picker title="是否死亡" :columns="$dictUtils.getDictList('yes_no')" :columns-field-names="{
+              text: 'label',
+              value: 'value',
+            }" @cancel="hs_dead = false" @confirm="getdead" />
           </van-popup>
         </van-cell-group>
         <p class="miniTitle">扩展信息</p>
-        <van-col
-          span="24"
-          v-for="(item, index) in inputForm.userManagenmetDetailsDTOList"
-          :key="index"
-        >
-          <van-cell-group
-            v-if="item.dataType === '1' && item.dataDictionary == ''"
-          >
-            <van-field
-              v-model="item.value"
-              center
-              placeholder="请填写内容"
-              :label="item.chineseName"
-              input-align="right"
-            />
+        <van-col span="24" v-for="(item, index) in inputForm.userManagenmetDetailsDTOList" :key="index">
+          <van-cell-group v-if="item.dataType === '1' && item.dataDictionary == ''">
+            <van-field v-model="item.value" center placeholder="请填写内容" :label="item.chineseName" input-align="right" />
           </van-cell-group>
-          <van-cell-group
-            v-else-if="item.dataType && item.dataDictionary != ''"
-          >
-            <van-field
-              v-model="item.value"
-              center
-              :label="item.chineseName"
-              placeholder="请选择"
-              input-align="right"
-              right-icon="arrow-down"
-              @click="hs_select[index + '_select'] = true"
-            />
-            <van-popup
-              v-model:show="hs_select[index + '_select']"
-              round
-              position="bottom"
-            >
-              <van-picker
-                :title="item.chineseName"
-                :columns="$dictUtils.getDictList(item.dataDictionary)"
+          <van-cell-group v-else-if="item.dataType && item.dataDictionary != ''">
+            <van-field v-model="item.value" center :label="item.chineseName" placeholder="请选择" input-align="right"
+              right-icon="arrow-down" @click="hs_select[index + '_select'] = true" />
+            <van-popup v-model:show="hs_select[index + '_select']" round position="bottom">
+              <van-picker :title="item.chineseName" :columns="$dictUtils.getDictList(item.dataDictionary)"
                 :columns-field-names="{
                   text: 'label',
                   value: 'value',
-                }"
-                @cancel="hs_select[index + '_select'] = false"
-                @confirm="getselect(index + '_select', $event)"
-              />
+                }" @cancel="hs_select[index + '_select'] = false" @confirm="getselect(index + '_select', $event)" />
             </van-popup>
           </van-cell-group>
           <van-cell-group v-else-if="item.dataType === '2'">
-            <van-field
-              v-model="item.value"
-              center
-              :label="item.chineseName"
-              input-align="right"
-            />
+            <van-field v-model="item.value" center :label="item.chineseName" input-align="right" />
           </van-cell-group>
           <van-cell-group v-else-if="item.dataType === '3'">
-            <van-field
-              :v-model="item.value"
-              center
-              :label="item.chineseName"
-              input-align="right"
-            />
+            <van-field :v-model="item.value" center :label="item.chineseName" input-align="right" />
           </van-cell-group>
           <van-cell-group v-else-if="item.dataType === '4'">
-            <van-field
-              name="uploader"
-              label-align="top"
-              :label="item.chineseName"
-            >
+            <van-field name="uploader" label-align="top" :label="item.chineseName">
               <template #input>
-                <van-uploader
-                  v-model="fileList"
-                  :after-read="afterRead1"
-                  :max-count="1"
-                  capture="camera"
-                  accept=""
-                  :before-delete="fjdelete"
-                >
+                <van-uploader v-model="fileList" :after-read="afterRead1" :max-count="1" capture="camera" accept=""
+                  :before-delete="fjdelete">
                 </van-uploader>
               </template>
             </van-field>
           </van-cell-group>
           <van-cell-group v-else-if="item.dataType === '5'">
-            <van-field
-              v-model="item.value"
-              center
-              required
-              readonly
-              :label="item.chineseName"
-              placeholder="请选择地点"
-              input-align="right"
-              right-icon="arrow-down"
-              @click="showPlace1 = true"
-            />
-            <van-popup v-model:show="showPlace1" round position="bottom">
-              <van-picker
-                title="地点选择"
-                :columns="options"
-                :columns-field-names="customFieldName"
-                @cancel="showPlace1 = false"
-                @confirm="getPlace1"
-              />
-            </van-popup>
+            <van-field v-model="item.value" center required :label="item.chineseName" placeholder="请选择地点"
+              input-align="right" />
           </van-cell-group>
           <van-cell-group v-else-if="item.dataType === '6'">
-            <van-field
-              v-model="item.value"
-              center
-              :label="item.chineseName"
-              label-width="6.5em"
-              placeholder="请选择日期时间"
-              input-align="right"
-              right-icon="arrow-down"
-              @click="hs_Date[index + '_Date'] = true"
-            />
-            <van-popup
-              v-model:show="hs_Date[index + '_Date']"
-              round
-              position="bottom"
-            >
-              <van-picker-group
-                title="选择时间"
-                :tabs="['选择日期', '选择时间']"
-                next-step-text="下一步"
-                @confirm="getDate(index + '_Date', $event)"
-                @cancel="hs_Date[index + '_Date'] = false"
-              >
+            <van-field v-model="item.value" center :label="item.chineseName" label-width="6.5em" placeholder="请选择日期时间"
+              input-align="right" right-icon="arrow-down" @click="hs_Date[index + '_Date'] = true" />
+            <van-popup v-model:show="hs_Date[index + '_Date']" round position="bottom">
+              <van-picker-group title="选择时间" :tabs="['选择日期', '选择时间']" next-step-text="下一步"
+                @confirm="getDate(index + '_Date', $event)" @cancel="hs_Date[index + '_Date'] = false">
                 <van-date-picker v-model="currentDate" />
-                <van-time-picker
-                  v-model="currentTime"
-                  :columns-type="columnsType"
-                />
+                <van-time-picker v-model="currentTime" :columns-type="columnsType" />
               </van-picker-group>
             </van-popup>
           </van-cell-group>
         </van-col>
         <div class="subbtn">
           <van-button type="primary" native-type="submit">提交</van-button>
-          <van-button @click="onClickLeft" type="default" hairline
-            >取消</van-button
-          >
+          <van-button @click="onClickLeft" type="default" hairline>取消</van-button>
         </div>
       </van-form>
     </div>
@@ -610,7 +254,7 @@
 </template>
 
 <script>
-import { onBeforeUpdate, onMounted, ref } from "vue";
+import { onBeforeUpdate, onMounted, ref, getCurrentInstance } from "vue";
 import placePerson from "@/api/placePerson/placePerson";
 import PlaceRegister from "@/api/placeRegister/placeRegister";
 import { useRouter } from "vue-router";
@@ -660,7 +304,7 @@ export default {
         id: "",
       },
       bkcheck: "0",
-      dead: "0",
+      dead: 0,
     });
     onMounted(() => {
       //籍贯接口
@@ -776,8 +420,7 @@ export default {
     const refreshing = ref(false);
     let index = 0;
     const onLoad = () => {
-      loading.value = true;
-      finished.value = false;
+
       // 异步更新数据
       new PlaceRegister()
         .religiousList({
@@ -785,7 +428,7 @@ export default {
           size: 10,
         })
         .then(({ records, pages }) => {
-          sitelist.value = sitelist.value.concat(records);
+          sitelist.value.push(...records);
           // 加载状态结束
           loading.value = false;
           if (index + 1 >= pages) {
@@ -794,6 +437,28 @@ export default {
           index++;
         });
     };
+    // 场所搜索
+    let interSearch = ref("");
+    const onCancel = () => {
+      interSearch.value = "";
+      sitelist.value = [];
+      index = 0;
+      loading.value = true;
+      finished.value = false;
+      onLoad();
+    };
+    const onSearch = () => {
+      sitelist.value = [];
+      new tools()
+        .placeList({
+          current: 1,
+          size: 10000,
+          name: interSearch.value
+        })
+        .then(({ records }) => {
+          sitelist.value.push(...records);
+        });
+    };
     // 场所任职情况
     const typeOfEmployeesName = ref("");
     const typeOfEmployees = [
@@ -879,7 +544,7 @@ export default {
           fileList.value.splice(index, 1);
           if (fileImg.value[index]) {
             let delurl = fileImg.value[index].url;
-            new tools().uploadFiledelete("", delurl).then(({ data }) => {});
+            new tools().uploadFiledelete("", delurl).then(({ data }) => { });
             fileImg.value.splice(index, 1);
           }
         }
@@ -901,19 +566,18 @@ export default {
     let showPlace1 = ref(false);
     const getPlace1 = ({ selectedOptions }) => {
       showPlace1.value = false;
-      let str1 = "";
-      let str2 = "";
-      selectedOptions.forEach((item) => {
-        if (inputForm.currentResidence) {
-          str1 = inputForm.currentResidence;
-          str2 = inputForm.currentResidenceId;
-        }
-        str1 += item.name + "/";
-        str2 += item.code + "/";
-      });
       const json = Object.assign(inputForm.value, {
-        currentResidence: str1,
-        currentResidenceId: str2,
+        currentResidence: selectedOptions
+          .map((option) => option.name)
+          .join("/"),
+        currentResidenceId: selectedOptions
+          .map((option) => option.code)
+          .join("/"),
+        currentResidenceLevel2: selectedOptions[1] ? selectedOptions[1].code : "",
+        currentResidenceLevel3: selectedOptions[2] ? selectedOptions[2].code : "",
+        currentResidenceLevel4: selectedOptions[3] ? selectedOptions[3].code : "",
+        currentResidenceLevel5: selectedOptions[4] ? selectedOptions[4].code : "",
+        currentResidenceLevel6: selectedOptions[5] ? selectedOptions[5].code : "",
       });
       inputForm.value = json;
     };
@@ -966,10 +630,10 @@ export default {
     let hs_persontype = ref(false);
     const toggle = (index) => {
       checkboxRefs.value[index].toggle();
-      personnalType.value = getValue(checked2.value).join();
-      showZW.value = checked2.value.join();
     };
     const changperson = () => {
+      personnalType.value = getValue(checked2.value).join();
+      showZW.value = checked2.value.join();
       const json = Object.assign(
         { ...inputForm.value },
         { personnelType: showZW.value }
@@ -1003,34 +667,11 @@ export default {
     onBeforeUpdate(() => {
       checkboxRefs.value = [];
     });
+    const current = getCurrentInstance()
     const getValue = (item) => {
-      const type = {
-        1: "宗教从业人员",
-        2: "民族场所从业人员",
-        3: "教职人员",
-        4: "固定信徒",
-        5: "场所居住人员",
-        6: "境外人员",
-        7: "非本市人员",
-        8: "非本教人员",
-        9: "临时人员",
-        10: "异常人员",
-        12: "邪教人员",
-        13: "管理人员",
-        14: "全能神离家人员",
-        15: "全能神骨干人员",
-        16: "网络运营人员",
-        17: "涉政有害活动人员",
-        18: "境内外记者",
-        19: "境外法轮功骨干人员",
-        20: "其他邪教骨干人员",
-        21: "心灵法门骨干人员",
-        22: "“精神控制”有害培训骨干人员",
-        23: "重点人员",
-      };
       let Array = [];
       item.forEach((chilr) => {
-        Array.push(type[chilr]);
+        Array.push(current.appContext.config.globalProperties.$dictUtils.getDictLabel('hs_people_type', chilr));
       });
       return Array;
     };
@@ -1172,6 +813,9 @@ export default {
       finished,
       onLoad,
       refreshing,
+      interSearch,
+      onSearch,
+      onCancel,
       //场所任职情况
       typeOfEmployeesName,
       hs_typeOfEmployees,
@@ -1243,23 +887,28 @@ export default {
   margin: 20px;
   text-align: center;
 }
+
 .subbtn .van-button {
   width: 40%;
   margin: 5px;
 }
+
 .van-uploader .van-button {
   border: none;
   color: #36a7f3;
   top: -4px;
 }
+
 .van-radio {
   margin-right: 10px;
 }
+
 .dialog {
   width: 100%;
   height: 400px;
   overflow: auto;
 }
+
 .bgList {
   background: #36a7f3;
 }