liuyg
2022-02-28 d9d6eb93b6964b3eb3015d959cb70b6c6aeb2e51
pages/registerUser/registerUser.vue
@@ -10,26 +10,32 @@
            <u-select v-model="show" mode="mutil-column-auto" :list="roleList" @confirm="radioGroupChange">
            </u-select>
         </u-form-item>
         <u-form-item v-show="form.role == '民警'" label=" " prop="warnNum" label-width="200" :required="true">
            <u-input v-model="form.warnNum" placeholder="请输入警号" />
         <u-form-item v-show="form.role == '民警'" label="警号" prop="signals" left-icon="edit-pen" label-width="200"
            :required="true">
            <u-input v-model="form.signals" placeholder="请输入警号" />
         </u-form-item>
         <u-form-item label="工作单位" left-icon="home-fill" label-width="200" :required="false">
         <u-form-item label="工作单位" left-icon="home-fill" label-width="200" :required="true">
            <u-radio-group v-model="jobValue">
               <u-radio v-for="(item, index) in jobList" :key="index" :name="item.name" :disabled="item.disabled">
                  {{item.name}}
               </u-radio>
            </u-radio-group>
         </u-form-item>
         <u-form-item v-show="jobValue == '有'" label=" " prop="obj" label-width="200" :required="false">
            <u-input v-model="form.obj" placeholder="请输入工作单位" />
         <u-form-item v-show="jobValue == '有'" label="单位名称" prop="jobUnit" label-width="200" left-icon="home"
            :required="true">
            <u-input v-model="form.jobUnit" placeholder="请输入单位名称" />
         </u-form-item>
         <u-form-item label="所在地区" prop="xq" left-icon="map-fill" label-width="200" :required="true">
            <u-input v-model="form.xq" type="select" placeholder="请选择所在地区" :border="true" @click="regionClick" />
            <u-select v-model="regionShow" mode="mutil-column-auto" :list="regionList" @confirm="regionSelect">
            </u-select>
         <u-form-item v-show="jobValue == '有'" label="工作地点" prop="xq" left-icon="map-fill" label-width="200"
            :required="true">
            <u-input v-model="form.xq" type="select" placeholder="请选择工作地点" :border="true"
               @click="regionClick()" />
         </u-form-item>
         <u-form-item label="居住地" prop="address" left-icon="map" label-width="200" :required="false">
            <u-input v-model="form.address" placeholder="居住地" />
         <u-form-item label="居住地" prop="address" left-icon="map" label-width="200" :required="true">
            <u-input v-model="form.address" type="select" placeholder="请选择居住地" :border="true"
               @click="placeClick()" />
         </u-form-item>
         <u-form-item label="性别" label-width="200" left-icon="man">
            <u-radio-group v-model="form.sex">
@@ -38,7 +44,7 @@
               </u-radio>
            </u-radio-group>
         </u-form-item>
         <u-form-item label="是否人脸登录" label-width="240" left-icon="server-man">
         <!-- <u-form-item label="是否人脸登录" label-width="240" left-icon="server-man">
            <u-radio-group v-model="radioValue">
               <u-radio v-for="(item, index) in radioList" :key="index" :name="item.name"
                  :disabled="item.disabled">
@@ -46,7 +52,7 @@
               </u-radio>
            </u-radio-group>
            (功能研发中)
         </u-form-item>
         </u-form-item> -->
      </u-form>
      <view class="agree">
@@ -57,23 +63,9 @@
            <text class="a" @click="agreement(1)">隐私政策</text>
         </u-checkbox>
      </view>
      <div class="login-map-bc" v-if="mapShow">
         <div @click="mapShow = false">
         </div>
         <div class="login-map-content">
            <u-icon class="login-map-close" name="close" @click="mapShow = false"></u-icon>
            <view style="width: 100%; height: 100%; position: absolute; ">
               <web-view :src="loginMapUrl"></web-view>
            </view>
         </div>
      </div>
      <u-button class="submit" @click="zc">
         注册</u-button>
      <!-- <u-button class="submit" @click="submit">提交</u-button> -->
   </view>
</template>
@@ -117,8 +109,6 @@
                  disabled: false
               }
            ],
            regionName: '',
            loginMapUrl: "",
            radioList: [{
                  name: '是',
                  disabled: false
@@ -129,28 +119,7 @@
               }
            ],
            radioValue: '否',
            mapShow: false,
            latitude: 28.68, //纬度
            longitude: 115.85, //经度
            scale: 12, //缩放级别
            polyline: [
               //    { //指定一系列坐标点,从数组第一项连线至最后一项
               //    points: [{
               //          latitude: 34.79977,
               //          longitude: 113.66072
               //       },
               //       {
               //          latitude: 34.795541,
               //          longitude: 113.681646
               //       },
               //    ],
               //    color: "#0000AA", //线的颜色
               //    width: 1, //线的宽度
               //    //     dottedLine:true,//是否虚线
               //    arrowLine: true, //带箭头的线 开发者工具暂不支持该属性
               // },
            ],
            marker: [],
            show: false,
            showxq: false,
            listbm: [],
@@ -219,13 +188,13 @@
               carId: '',
               phone: '',
               sex: '男',
               obj: '',
               objId: '',
               xq: '',
               xqobjId: '',
               jurisdiction: '',
               jsid: '',
               address: '',
               warnNum: '',
               jobUnit: '',
               signals: '',
               workjurisdiction: ''
            },
            rules: {
               user: [{
@@ -274,9 +243,9 @@
                  // 可以单个或者同时写两个触发验证方式 
                  trigger: ['change', 'blur'],
               }],
               obj: [{
                  required: false,
                  message: '请输入工作单位',
               jobUnit: [{
                  required: true,
                  message: '请输入单位名称',
                  // 可以单个或者同时写两个触发验证方式 
                  trigger: ['change', 'blur'],
               }],
@@ -292,7 +261,7 @@
                  // 可以单个或者同时写两个触发验证方式 
                  trigger: ['change', 'blur'],
               }],
               warnNum: [{
               signals: [{
                  required: true,
                  message: '请输入警号',
                  // 可以单个或者同时写两个触发验证方式 
@@ -348,56 +317,6 @@
                  value: "1495714378025480193"
               }
            ],
            regionList: [{
                  label: '东湖区',
                  value: '1415619841521414145'
               },
               {
                  label: '西湖区',
                  value: '1415619917295710209'
               },
               {
                  label: '青云谱区',
                  value: '1415619986417840129'
               },
               {
                  label: '湾里区',
                  value: '1415620058526314497'
               },
               {
                  label: '青山湖区',
                  value: '1415620118307729409'
               },
               {
                  label: '新建区',
                  value: '1415620188289691649'
               },
               {
                  label: '南昌县',
                  value: '1415620235718881282'
               },
               {
                  label: '安义县',
                  value: '1415620288487419906'
               },
               {
                  label: '进贤县',
                  value: '1415620344112279553'
               },
               {
                  label: '经济技术开发区区',
                  value: '1415620404103409666'
               },
               {
                  label: '红谷滩区',
                  value: '1415620472965492738'
               },
               {
                  label: '高新技术开发区',
                  value: '1415620707473223681'
               }
            ],
            regionShow: false
         };
      },
      methods: {
@@ -407,13 +326,36 @@
            });
         },
         regionClick() {
            this.regionShow = true;
         },
         regionSelect(e) {
            this.form.xq = e[0].label
            this.form.xqobjId = e[0].value
            let that = this;
            this.regionShow = false;
            //监听事件
            uni.$on('getLocation', (res) => {
               that.form.xq = res.mapLocationName
               this.form.workjurisdiction = res.regionID
               //清除监听,不清除会消耗资源
               uni.$off('getLocation');
            })
            uni.navigateTo({
               url: '/pages/registerUser/map'
            });
         },
         placeClick() {
            let that = this;
            //监听事件
            uni.$on('getLocation', (res) => {
               that.form.address = res.mapLocationName
               this.form.jurisdiction = res.regionID
               //清除监听,不清除会消耗资源
               uni.$off('getLocation');
            })
            uni.navigateTo({
               url: '/pages/registerUser/map'
            });
         },
         zc() {
            if (this.userConsent == false) {
@@ -422,7 +364,7 @@
                  icon: 'none',
                  duration: 2000
               });
               return
            }
            var that = this;
@@ -444,40 +386,8 @@
                     return
                  }
                  var d = that.form;
                  var url = that.$store.state.piAPI + '/zc/inster',
                     data = {
                        // deptid: ,
                        password: d.pass,
                        password2: d.passTwo,
                        phone: d.phone,
                        sex: d.sex == '男' ? 1 : 2,
                        sname: d.name,
                        username: d.user,
                        deptid: d.objId,
                        parentId: d.jsid,
                        jurisdiction: d.xqobjId,
                        cardid: d.carId,
                        address: d.address,
                        workunit: d.obj
                     }
                  uni.request({
                     url: url,
                     method: 'POST',
                     data: data,
                     success: (res) => {
                        uni.showToast({
                           title: '注册成功,请等待审核',
                           icon: 'none',
                           duration: 2000
                        });
                        setTimeout(function() {
                           uni.navigateTo({
                              url: '/pages/loging/loging'
                           })
                        }, 2000);
                     }
                  });
                  that.registerEvent()
                  // that.$refs.uForm.validate(valid => {
                  //    if (valid) {
@@ -494,6 +404,53 @@
            });
         },
         registerEvent() {
            var d = this.form;
            var url = this.$store.state.piAPI + '/zc/inster',
               data = {
                  // deptid: ,
                  password: d.pass,
                  password2: d.passTwo,
                  phone: d.phone,
                  sex: d.sex == '男' ? 1 : 2,
                  sname: d.name,
                  username: d.user,
                  parentId: d.jsid,
                  cardid: d.carId,
                  // 居住地址
                  address: d.address,
                  // 单位名称
                  jobUnit: d.jobUnit,
                  // 居住辖区
                  jurisdiction: d.jurisdiction,
                  // 工作地址
                  workaddress: d.xq,
                  // 工作辖区
                  workjurisdiction: d.workjurisdiction,
                  signals: d.signals
               }
            uni.request({
               url: url,
               method: 'POST',
               data: data,
               success: (result) => {
                  console.log(result, 456)
                  uni.showToast({
                     title: '注册成功,请等待审核',
                     icon: 'none',
                     duration: 2000
                  });
                  setTimeout(function() {
                     uni.navigateTo({
                        url: '/pages/loging/loging'
                     })
                  }, 2000);
               }
            });
         },
         depl() {
            this.show = true;
         },
@@ -533,40 +490,6 @@
</script>
<style lang="scss" scoped>
   .login-map-bc {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 111;
      background: rgba(0, 0, 0, .3);
   }
   .login-map-content {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 222;
      border-radius: 15px 15px 0 0;
      overflow: hidden;
      iframe {
         border: none;
      }
   }
   .login-map-close {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 20px;
      height: 20px;
      z-index: 11;
   }
   .warp {
      display: flex;
      align-items: center;