| | |
| | | <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> |
| | |
| | | <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> |
| | | |
| | |
| | | </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> |
| | | |
| | |
| | | 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, |
| | |
| | | message: '请输入选择时间', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'location':{ |
| | | 'location': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入位置', |
| | |
| | | } |
| | | }, |
| | | showSelectDate: false, |
| | | applyTime:Number(new Date()) |
| | | applyTime: Number(new Date()) |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | |
| | | 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); |
| | | }, |
| | | |
| | |
| | | }, |
| | | |
| | | 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') { |
| | |
| | | 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() { |
| | |
| | | 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; |
| | | } |