|
@@ -1,55 +1,58 @@
|
|
|
<template>
|
|
|
- <view class="OutermostLayer">
|
|
|
-
|
|
|
- <view class="wfgz">
|
|
|
+ <view class="contain">
|
|
|
+ <view class="main">
|
|
|
<!-- 注意,如果需要兼容微信小程序,最好通过setRules方法设置rules规则 -->
|
|
|
- <u--form labelPosition="left" :model="model1" :rules="rules" ref="form1">
|
|
|
+ <u--form labelPosition="left" :model="model1" :rules="rules" ref="form1">
|
|
|
<!-- <u-form-item labelWidth='180' label="任务名称:" prop="userInfo.contactPerson" borderBottom ref="item1">
|
|
|
<u--input v-model="model1.userInfo.contactPerson" border="none"></u--input>
|
|
|
</u-form-item> -->
|
|
|
|
|
|
- <u-form-item labelWidth='180' label="报修位置:" prop="userInfo.repairPositionName" borderBottom
|
|
|
+ <u-form-item labelWidth='180' label="报修位置:" prop="userInfo.repairPositionName" borderBottom
|
|
|
@click="showfloor = true;" ref="item1" :required=true>
|
|
|
|
|
|
- <u--input v-model="model1.userInfo.repairPositionName" disabled disabledColor="#ffffff"
|
|
|
+ <u--input v-model="model1.userInfo.repairPositionName" disabled disabledColor="#ffffff"
|
|
|
placeholder="请选择报修位置" border="none"></u--input>
|
|
|
- <u-icon slot="right" contactPerson="arrow-right"></u-icon>
|
|
|
+ <u-icon name="arrow-right" class="ml5"></u-icon>
|
|
|
</u-form-item>
|
|
|
<u-form-item labelWidth='180' label="报修区域:" prop="userInfo.repairRegionName" borderBottom
|
|
|
@click="showSex = true;" ref="item1" :required=true>
|
|
|
<u--input v-model="model1.userInfo.repairRegionName" disabled disabledColor="#ffffff"
|
|
|
placeholder="请选择报修区域" border="none"></u--input>
|
|
|
- <u-icon slot="right" contactPerson="arrow-right"></u-icon>
|
|
|
+ <u-icon name="arrow-right" class="ml5"></u-icon>
|
|
|
</u-form-item>
|
|
|
|
|
|
<u-form-item labelWidth='180' label="报修类型:" prop="userInfo.repairTypeName" borderBottom
|
|
|
@click="showtaskdegree = true;" ref="item1" :required=true>
|
|
|
<u--input v-model="model1.userInfo.repairTypeName" disabled disabledColor="#ffffff"
|
|
|
placeholder="请选择报修类型" border="none"></u--input>
|
|
|
- <u-icon slot="right" contactPerson="arrow-right"></u-icon>
|
|
|
+ <u-icon name="arrow-right" class="ml5"></u-icon>
|
|
|
</u-form-item>
|
|
|
<u-form-item labelWidth='180' label="联系人:" prop="userInfo.contactPerson" borderBottom ref="item1"
|
|
|
- :required=true>
|
|
|
- <u--input v-model="model1.userInfo.contactPerson" border="none"></u--input>
|
|
|
+ :required=true>
|
|
|
+ <u--input v-model="model1.userInfo.contactPerson" border="none" placeholder="请输入"></u--input>
|
|
|
+ </u-form-item>
|
|
|
+ <u-form-item labelWidth='180' label="联系电话:" prop="userInfo.contactPhone" borderBottom ref="item1"
|
|
|
+ :required=true>
|
|
|
+ <u--input v-model="model1.userInfo.contactPhone" border="none" placeholder="请输入"></u--input>
|
|
|
</u-form-item>
|
|
|
- <u-form-item labelWidth='180' label="联系电话:" prop="userInfo.contactPhone" borderBottom
|
|
|
- ref="item1" :required=true>
|
|
|
- <u--input v-model="model1.userInfo.contactPhone" border="none"></u--input>
|
|
|
+ <u-form-item labelWidth='180' label="故障描述:" prop="userInfo.faultDes" ref="item1" :required=true>
|
|
|
</u-form-item>
|
|
|
- <u-form-item labelWidth='180' label="故障描述:" prop="userInfo.faultDes" borderBottom ref="item1"
|
|
|
- :required=true>
|
|
|
- <u--input v-model="model1.userInfo.faultDes" border="none"></u--input>
|
|
|
+ <u-form-item labelWidth='180' borderBottom style="padding: 0;">
|
|
|
+ <u-textarea v-model="model1.userInfo.faultDes" border="none" placeholder="请输入" height="140"
|
|
|
+ style="padding: 0 20rpx;"></u-textarea>
|
|
|
</u-form-item>
|
|
|
- <u-form-item labelWidth='180' label="上传照片:" prop="userInfo.faultPics" borderBottom ref="item1">
|
|
|
+ <u-form-item labelWidth='180' label="上传照片:" prop="userInfo.faultPics" ref="item1" :required=true>
|
|
|
+ </u-form-item>
|
|
|
+ <u-form-item labelWidth='180' borderBottom>
|
|
|
<view class="uploadPart">
|
|
|
- <view class="allimg" v-for="img in fileList1">
|
|
|
- <image :src="img" mode="heightFix" class="newimg" >
|
|
|
-
|
|
|
- </image>
|
|
|
- <u-icon @click="deletePic(img)" class="mytrash" name="trash" color="red" size="38"></u-icon>
|
|
|
+ <view class="allimg" v-for="img in fileList1">
|
|
|
+ <image :src="img" mode="aspectFill" class="newimg"></image>
|
|
|
+ <u-icon @click="deletePic(img)" class="mytrash" name="close-circle" color="#999"
|
|
|
+ size="30"></u-icon>
|
|
|
</view>
|
|
|
|
|
|
- <span @click="uploadImg" class="uploadBox" v-if="fileList1.length<4"><u-icon name="plus"></u-icon></span>
|
|
|
+ <span @click="uploadImg" class="uploadBtn" v-if="fileList1.length<3"><u-icon color="#5c8fff"
|
|
|
+ size="30px" name="camera-fill"></u-icon></span>
|
|
|
</view>
|
|
|
</u-form-item>
|
|
|
|
|
@@ -57,30 +60,19 @@
|
|
|
</u--form>
|
|
|
|
|
|
|
|
|
- <view class="guidang">
|
|
|
- <view class="queding">
|
|
|
- <u-button type="primary" :plain="true" text="返回" @click="returndata"></u-button>
|
|
|
- </view>
|
|
|
- <view class="queding">
|
|
|
- <u-button type="primary" text="提交" @click="editdata"></u-button>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
-
|
|
|
|
|
|
+ </view>
|
|
|
+ <view class="tijiao">
|
|
|
+ <u-button type="primary" text="提交" @click="editdata"></u-button>
|
|
|
+ </view>
|
|
|
<u-picker @cancel='showtaskdegree = false' :itemHeight="80" @confirm='degreeconfirm' :show="showtaskdegree"
|
|
|
:columns="columnshowtaskdegree" keyName="label">
|
|
|
</u-picker>
|
|
|
-
|
|
|
- <u-picker @cancel='showSex = false' :itemHeight="80" @confirm='typeconfirm' :show="showSex" :columns="columnsquyu"
|
|
|
- keyName="label">
|
|
|
+ <u-picker @cancel='showSex = false' :itemHeight="80" @confirm='typeconfirm' :show="showSex"
|
|
|
+ :columns="columnsquyu" keyName="label">
|
|
|
</u-picker>
|
|
|
-
|
|
|
- <u-picker :show="showfloor" ref="uPicker" :itemHeight="80" :loading="loading" @confirm="confirmfloor" @cancel='cancelfloor'
|
|
|
- keyName="orgName" :columns="columns" @change="changeHandler"></u-picker>
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ <u-picker :show="showfloor" ref="uPicker" :itemHeight="80" :loading="loading" @confirm="confirmfloor"
|
|
|
+ @cancel='cancelfloor' keyName="orgName" :columns="columns" @change="changeHandler"></u-picker>
|
|
|
|
|
|
</view>
|
|
|
</template>
|
|
@@ -91,7 +83,7 @@
|
|
|
components: {},
|
|
|
data() {
|
|
|
return {
|
|
|
- uploadUrl:BaseApi.BaseApi + '/uploadFile',
|
|
|
+ uploadUrl: BaseApi.BaseApi + '/uploadFile',
|
|
|
loading: false,
|
|
|
fileList1: [],
|
|
|
xiangji: require('@/static/index/xj.png'),
|
|
@@ -221,19 +213,19 @@
|
|
|
methods: {
|
|
|
|
|
|
// 删除图片
|
|
|
- deletePic(event) {
|
|
|
- this.fileList1.splice(event.index, 1)
|
|
|
- },
|
|
|
+ deletePic(event) {
|
|
|
+ this.fileList1.splice(event.index, 1)
|
|
|
+ },
|
|
|
|
|
|
// 新增图片
|
|
|
uploadImg() {
|
|
|
uni.chooseImage({
|
|
|
- count:4,
|
|
|
+ count: 3,
|
|
|
success: (chooseImageRes) => {
|
|
|
const tempFilePaths = chooseImageRes.tempFilePaths;
|
|
|
- for(let i=0;i<tempFilePaths.length;i++) {
|
|
|
+ for (let i = 0; i < tempFilePaths.length; i++) {
|
|
|
uni.uploadFile({
|
|
|
- url: BaseApi.BaseApi + '/uploadFile',
|
|
|
+ url: BaseApi.BaseApi + '/uploadFile',
|
|
|
filePath: tempFilePaths[i],
|
|
|
name: 'file',
|
|
|
formData: {
|
|
@@ -243,7 +235,7 @@
|
|
|
//console.log(uploadFileRes);
|
|
|
this.fileList1.push(JSON.parse(uploadFileRes.data).data)
|
|
|
console.log(this.fileList1);
|
|
|
- this.model1.userInfo.faultPics=this.fileList1.join(',')
|
|
|
+ this.model1.userInfo.faultPics = this.fileList1.join(',')
|
|
|
}
|
|
|
});
|
|
|
}
|
|
@@ -262,7 +254,7 @@
|
|
|
indexs,
|
|
|
picker = this.$refs.uPicker
|
|
|
} = e
|
|
|
- // console.log('999999', columnIndex, index, indexs)
|
|
|
+ // console.log('999999', columnIndex, index, indexs)
|
|
|
if (columnIndex == 0) {
|
|
|
// this.loading = true
|
|
|
|
|
@@ -271,13 +263,13 @@
|
|
|
//console.log('66666', )
|
|
|
picker.setColumnValues(2, [])
|
|
|
} else {
|
|
|
- // console.log('00000000', )
|
|
|
+ // console.log('00000000', )
|
|
|
picker.setColumnValues(2, this.alldata[indexs[0]].childrenList[0].childrenList)
|
|
|
}
|
|
|
|
|
|
} else if (columnIndex == 1) {
|
|
|
// picker为选择器this实例,变化第三列对应的选项
|
|
|
- // console.log('2222222',this.alldata[indexs[0]].childrenList[indexs[1]])
|
|
|
+ // console.log('2222222',this.alldata[indexs[0]].childrenList[indexs[1]])
|
|
|
|
|
|
if (this.alldata[indexs[0]].childrenList[indexs[1]].childrenList == null) {
|
|
|
picker.setColumnValues(2, [])
|
|
@@ -290,15 +282,16 @@
|
|
|
|
|
|
},
|
|
|
confirmfloor(e) {
|
|
|
- if(e.value[2]==undefined){
|
|
|
- this.model1.userInfo.repairPositionName = e.value[0].orgName + '/' + e.value[1].orgName ;
|
|
|
+ if (e.value[2] == undefined) {
|
|
|
+ this.model1.userInfo.repairPositionName = e.value[0].orgName + '/' + e.value[1].orgName;
|
|
|
|
|
|
this.model1.userInfo.buildingId = e.value[0].orgId;
|
|
|
this.model1.userInfo.storeyId = e.value[1].orgId;
|
|
|
this.model1.userInfo.houseId = e.value[1].orgId;
|
|
|
- this.model1.userInfo.repairPosition =e.value[1].orgId;
|
|
|
- }else{
|
|
|
- this.model1.userInfo.repairPositionName = e.value[0].orgName + '/' + e.value[1].orgName + '/' + e.value[2].orgName;
|
|
|
+ this.model1.userInfo.repairPosition = e.value[1].orgId;
|
|
|
+ } else {
|
|
|
+ this.model1.userInfo.repairPositionName = e.value[0].orgName + '/' + e.value[1].orgName + '/' + e
|
|
|
+ .value[2].orgName;
|
|
|
this.model1.userInfo.buildingId = e.value[0].orgId;
|
|
|
this.model1.userInfo.storeyId = e.value[1].orgId;
|
|
|
this.model1.userInfo.houseId = e.value[2].orgId;
|
|
@@ -320,15 +313,21 @@
|
|
|
|
|
|
// this.model1.userInfo.myposition = res.data.data[0].orgcontactPerson;
|
|
|
this.alldata = res.data.data[0].childrenList;
|
|
|
- for(let pi=0;pi<this.alldata.length;pi++){
|
|
|
- for(let i=0;i<this.alldata[pi].childrenList.length;i++){
|
|
|
- if(!this.alldata[pi].childrenList[i].childrenList){
|
|
|
- this.alldata[pi].childrenList[i].childrenList=[{orgName:'公共区域',orgId:''}];
|
|
|
- }else{
|
|
|
- this.alldata[pi].childrenList[i].childrenList.unshift({orgName:'公共区域',orgId:''})
|
|
|
+ for (let pi = 0; pi < this.alldata.length; pi++) {
|
|
|
+ for (let i = 0; i < this.alldata[pi].childrenList.length; i++) {
|
|
|
+ if (!this.alldata[pi].childrenList[i].childrenList) {
|
|
|
+ this.alldata[pi].childrenList[i].childrenList = [{
|
|
|
+ orgName: '公共区域',
|
|
|
+ orgId: ''
|
|
|
+ }];
|
|
|
+ } else {
|
|
|
+ this.alldata[pi].childrenList[i].childrenList.unshift({
|
|
|
+ orgName: '公共区域',
|
|
|
+ orgId: ''
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
this.columns = [
|
|
|
this.alldata,
|
|
|
this.alldata[0].childrenList,
|
|
@@ -355,13 +354,13 @@
|
|
|
editdata() {
|
|
|
//console.log('111111111111111111', this.model1.userInfo)
|
|
|
this.$refs.form1.validate().then(res => {
|
|
|
- // uni.$u.toast('校验通过')
|
|
|
- this.$api.post('/repairorder',this.model1.userInfo)
|
|
|
- .then(res=>{
|
|
|
- uni.navigateBack({
|
|
|
- delta: 1
|
|
|
- });
|
|
|
- })
|
|
|
+ // uni.$u.toast('校验通过')
|
|
|
+ this.$api.post('/repairorder', this.model1.userInfo)
|
|
|
+ .then(res => {
|
|
|
+ uni.navigateBack({
|
|
|
+ delta: 1
|
|
|
+ });
|
|
|
+ })
|
|
|
|
|
|
|
|
|
}).catch(errors => {
|
|
@@ -372,23 +371,18 @@
|
|
|
},
|
|
|
|
|
|
typeconfirm(e) {
|
|
|
-
|
|
|
- // console.log('111111111111111111', e.value[0])
|
|
|
this.model1.userInfo.repairRegion = e.value[0].id;
|
|
|
this.model1.userInfo.repairRegionName = e.value[0].label;
|
|
|
|
|
|
this.showSex = false;
|
|
|
- // this.model1.userInfo.sex = e.contactPerson
|
|
|
this.$refs.form1.validateField('userInfo.repairRegionName')
|
|
|
},
|
|
|
|
|
|
degreeconfirm(e) {
|
|
|
- //console.log('111111111111111111', e.value[0].label)
|
|
|
this.model1.userInfo.repairType = e.value[0].id;
|
|
|
this.model1.userInfo.repairTypeName = e.value[0].label;
|
|
|
|
|
|
this.showtaskdegree = false;
|
|
|
- // this.model1.userInfo.sex = e.contactPerson
|
|
|
this.$refs.form1.validateField('userInfo.repairTypeName')
|
|
|
},
|
|
|
|
|
@@ -402,46 +396,36 @@
|
|
|
};
|
|
|
</script>
|
|
|
|
|
|
-<style>
|
|
|
- .guidang {
|
|
|
+<style lang="scss">
|
|
|
+ .uploadPart {
|
|
|
display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- align-items: center;
|
|
|
- margin-top: 40rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .queding {
|
|
|
- width: 40%;
|
|
|
- }
|
|
|
-
|
|
|
- .wfgz {
|
|
|
- margin: 20rpx;
|
|
|
- margin-top: 0px;
|
|
|
- }
|
|
|
-.uploadBox{
|
|
|
- width: 50px;
|
|
|
- height: 50px;
|
|
|
- line-height: 50px;
|
|
|
- text-align: center;
|
|
|
- border: 1px solid #ddd;
|
|
|
- display: flex;
|
|
|
- justify-content: center;
|
|
|
- align-items: center;
|
|
|
- border-radius: 3px;
|
|
|
-}
|
|
|
-.uploadPart{display: flex;
|
|
|
- align-items: center;
|
|
|
-}
|
|
|
- .newimg{
|
|
|
- width:120rpx;height:120rpx;margin-right: 10rpx;
|
|
|
- }
|
|
|
- .allimg{
|
|
|
- width:140rpx;height:140rpx;
|
|
|
- position: relative;
|
|
|
+ justify-content: center;
|
|
|
+ width: 100%;
|
|
|
+
|
|
|
+ .uploadBtn {
|
|
|
+ width: 160rpx;
|
|
|
+ height: 160rpx;
|
|
|
+ background-color: #ECF0FF;
|
|
|
+ text-align: center;
|
|
|
+ border-radius: 4rpx;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ }
|
|
|
+
|
|
|
+ .allimg {
|
|
|
+ position: relative;
|
|
|
+ }
|
|
|
+
|
|
|
+ .newimg {
|
|
|
+ width: 160rpx;
|
|
|
+ height: 160rpx;
|
|
|
+ margin-right: 10rpx;
|
|
|
+ }
|
|
|
+ .mytrash {
|
|
|
+ position: absolute;
|
|
|
+ top: 2px;
|
|
|
+ right: 10px;
|
|
|
+ }
|
|
|
}
|
|
|
-.mytrash{
|
|
|
- position: absolute;
|
|
|
- top: 2px;
|
|
|
- right: 10px;
|
|
|
-}
|
|
|
-</style>
|
|
|
+</style>
|