zhongrj
2024-01-09 9ab5feb38bf6db6d02b9403dd61bee5ab49a79c9
subPackage/label/bail.vue
@@ -4,19 +4,19 @@
      <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="100"
         :labelStyle="{fontSize:'28rpx'}">
         <view class="content">
            <u-form-item label="姓名" prop="checkUserName" borderBottom  required>
               <u-input v-model="info.checkUserName"  border="none" placeholder="请输入" placeholderClass="f-28 c-99"
            <u-form-item label="姓名" prop="checkUserName" borderBottom required>
               <u-input v-model="info.checkUserName" border="none" placeholder="请输入" placeholderClass="f-28 c-99"
                  inputAlign="right"></u-input>
            </u-form-item>
            <u-form-item label="手机" prop="checkTelephone" borderBottom  required>
            <u-form-item label="手机" prop="checkTelephone" borderBottom required>
               <u-input v-model="info.checkTelephone" border="none" placeholder="请输入" placeholderClass="f-28 c-99"
                  inputAlign="right"></u-input>
            </u-form-item>
            <u-form-item label="申请事由" prop="applyName" borderBottom  required>
            <u-form-item label="申请事由" prop="applyName" borderBottom required>
               <u-input v-model="info.applyName" border="none" placeholder="请输入" placeholderClass="f-28 c-99"
                  inputAlign="right"></u-input>
            </u-form-item>
            <u-form-item label="申请时间" prop="applyTime" borderBottom  required @click="showSelectDate = true">
            <u-form-item label="申请时间" prop="applyTime" borderBottom required @click="showSelectDate = true">
               <u-input v-model="info.applyTime" disabled disabledColor="#ffffff" border="none" placeholder="请输入"
                  placeholderClass="f-28 c-99" inputAlign="right"></u-input>
               <u-icon slot="right" name="arrow-right"></u-icon>
@@ -32,14 +32,14 @@
                  <view class="address-content f-28" v-if="info.location">
                     {{info.location}}
                  </view>
                  <view class="address-content f-28"  style="color: #c0c4cc;"  v-if="!info.location">
                  <view class="address-content f-28" style="color: #c0c4cc;" v-if="!info.location">
                     请选择位置
                  </view>
                  <view class="location-btn c-main f-24"  @click="getLocation()">
                  <view class="location-btn c-main f-24" @click="getLocation()">
                     获取地址
                  </view>
               </view>
            </u-form-item>
         </view>
@@ -59,8 +59,8 @@
      </u-form>
      <button class="submit-btn" @click="sumitInfo">提交</button>
      <button class="list-btn mb-20" @click="navigatorPage">我上报的事件</button>
         <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="applyTime" mode="datetime"
            :formatter="formatter" @confirm="confirmDate"  @cancel="showSelectDate = false"></u-datetime-picker>
      <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="applyTime" mode="datetime"
         :formatter="formatter" @confirm="confirmDate" @cancel="showSelectDate = false"></u-datetime-picker>
   </view>
</template>
@@ -73,33 +73,44 @@
      mixins: [uploadMixin],
      data() {
         return {
            form:{
               images:[]
            form: {
               images: []
            },
            info: {
               checkUserName: "",
               checkTelephone: "",
               applyName:"",
               applyTime:'' ,
               location:"",
               houseCode:"",
               districtName:"",
               checkUserId:"",
               reportType:1
               applyName: "",
               applyTime: '',
               location: "",
               houseCode: "",
               districtName: "",
               checkUserId: "",
               reportType: 1
            },
            rules: {
               'checkName': {
               'checkUserName': {
                  type: 'string',
                  required: true,
                  message: '请输入姓名',
                  trigger: ['blur', 'change']
               },
               'checkPhone': {
                  type: 'number',
                  required: true,
                  message: '请输入手机',
                  trigger: ['blur', 'change']
               },
               'checkTelephone': [{
                     type: 'number',
                     required: true,
                     message: '请输入手机',
                     trigger: ['blur', 'change']
                  },
                  {
                     validator: (rule, value, callback) => {
                        return uni.$u.test.mobile(value);
                     },
                     message: '手机号码不正确',
                     trigger: ['change', 'blur']
                  }
               ],
               'applyName': {
                  type: 'string',
                  required: true,
@@ -112,7 +123,7 @@
                  message: '请输入选择时间',
                  trigger: ['blur', 'change']
               },
               'location':{
               'location': {
                  type: 'string',
                  required: true,
                  message: '请输入位置',
@@ -120,7 +131,7 @@
               }
            },
            showSelectDate: false,
            applyTime:Number(new Date())
            applyTime: Number(new Date())
         }
      },
      onLoad(option) {
@@ -128,8 +139,8 @@
         let userInfo = uni.getStorageSync("userInfo");
         this.$set(this.info, "houseCode", siteInfo.houseCode);
         this.$set(this.info, "districtName", siteInfo.name);
         this.$set(this.info,"checkUserName",userInfo.real_name);
         this.$set(this.info,"checkTelephone",userInfo.phone);
         this.$set(this.info, "checkUserName", userInfo.real_name);
         this.$set(this.info, "checkTelephone", userInfo.phone);
         this.$set(this.info, "checkUserId", userInfo.user_id);
      },
@@ -139,15 +150,15 @@
      },
      methods: {
         getLocation(){
         getLocation() {
            uni.chooseLocation({
               success:(res)=>{
                  this.$set(this.info,"location",res.address);
               success: (res) => {
                  this.$set(this.info, "location", res.address);
               }
            })
         },
         formatter(type, value) {
            if (type === 'year') {
@@ -166,19 +177,19 @@
            this.showSelectDate = false;
            this.info.applyTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss')
         },
         checkImages() {
            if (this.form.images.length) {
               this.$set(this.info,"locationImageUrls",this.setImages())
               this.$set(this.info, "locationImageUrls", this.setImages())
            }
         },
         setImages(){
         setImages() {
            let urls = [];
             for(let i of this.form.images){
            for (let i of this.form.images) {
               urls.push(i.name);
            }
             return urls.join(",")
            return urls.join(",")
         },
         sumitInfo() {
@@ -269,23 +280,26 @@
      color: #fff;
      margin-top: 50rpx;
   }
   .address-row{
      flex:1;
   .address-row {
      flex: 1;
      justify-content: flex-end;
      align-items:center;
      align-items: center;
   }
   .address-content{
      width:calc(100% - 116rpx - 20rpx);
      margin-right:20rpx;
   .address-content {
      width: calc(100% - 116rpx - 20rpx);
      margin-right: 20rpx;
      text-align: right;
   }
   .location-btn{
      width:116rpx;
      height:46rpx;
   .location-btn {
      width: 116rpx;
      height: 46rpx;
      line-height: 46rpx;
      border-radius: 4rpx;
      border:1px solid currentColor;
      padding:0;
      border: 1px solid currentColor;
      padding: 0;
      background-color: #fff;
      text-align: center;
   }