|
|
@ -20,18 +20,50 @@ |
|
|
|
></uv-cell> |
|
|
|
|
|
|
|
<uv-cell |
|
|
|
title="所属工种" |
|
|
|
title="朝向" |
|
|
|
rightIconStyle="fontSize: 30rpx;" |
|
|
|
value="请选择所属工种" |
|
|
|
value="请选择朝向" |
|
|
|
isLink |
|
|
|
></uv-cell> |
|
|
|
|
|
|
|
<uv-cell |
|
|
|
title="装修" |
|
|
|
rightIconStyle="fontSize: 30rpx;" |
|
|
|
value="请选择装修" |
|
|
|
isLink |
|
|
|
></uv-cell> |
|
|
|
|
|
|
|
<uv-cell |
|
|
|
title="楼层" |
|
|
|
rightIconStyle="fontSize: 30rpx;" |
|
|
|
value="请选择楼层" |
|
|
|
isLink |
|
|
|
></uv-cell> |
|
|
|
|
|
|
|
<view class="form-sheet-cell"> |
|
|
|
<view class="label"> |
|
|
|
户型 |
|
|
|
</view> |
|
|
|
<view class="price"> |
|
|
|
<input placeholder="请输入户型(三室一厅)" v-model="form.home" /> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="form-sheet-cell"> |
|
|
|
<view class="label"> |
|
|
|
价格/月 |
|
|
|
付款方式 |
|
|
|
</view> |
|
|
|
<view class="price"> |
|
|
|
<input placeholder="请输入价格" v-model="form.price" /> |
|
|
|
<input placeholder="请输入付款方式(押一付三)" v-model="form.price" /> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="form-sheet-cell"> |
|
|
|
<view class="label"> |
|
|
|
租金/月 |
|
|
|
</view> |
|
|
|
<view class="price"> |
|
|
|
<input placeholder="请输入租金" type="number" v-model="form.money" /> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
@ -40,44 +72,61 @@ |
|
|
|
面积 |
|
|
|
</view> |
|
|
|
<view class="price"> |
|
|
|
<input placeholder="请输入面积" v-model="form.price" /> |
|
|
|
<input placeholder="请输入面积(米平方)" type="number" v-model="form.crm" /> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
<view class="form-sheet-cell"> |
|
|
|
<view class="label"> |
|
|
|
结算方式 |
|
|
|
看房 |
|
|
|
</view> |
|
|
|
<uv-radio-group v-model="radiovalue"> |
|
|
|
<view class="price"> |
|
|
|
<uv-radio |
|
|
|
:customStyle="{margin: '8px'}" |
|
|
|
v-for="(item, index) in priceType" |
|
|
|
:key="index" |
|
|
|
iconSize="30rpx" |
|
|
|
size="40rpx" |
|
|
|
labelSize="26rpx" |
|
|
|
:label="item.name" |
|
|
|
:name="item.name"> |
|
|
|
label="随时可看" |
|
|
|
name="随时可看"> |
|
|
|
</uv-radio> |
|
|
|
|
|
|
|
<uv-radio |
|
|
|
:customStyle="{margin: '8px'}" |
|
|
|
iconSize="30rpx" |
|
|
|
size="40rpx" |
|
|
|
labelSize="26rpx" |
|
|
|
label="电话预约" |
|
|
|
name="电话预约"> |
|
|
|
</uv-radio> |
|
|
|
|
|
|
|
</view> |
|
|
|
</uv-radio-group> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="form-sheet-cell"> |
|
|
|
<view class="label"> |
|
|
|
看房 |
|
|
|
租房类型 |
|
|
|
</view> |
|
|
|
<uv-radio-group v-model="radiovalue"> |
|
|
|
<uv-radio-group v-model="form.type"> |
|
|
|
<view class="price"> |
|
|
|
<uv-radio |
|
|
|
:customStyle="{margin: '8px'}" |
|
|
|
iconSize="30rpx" |
|
|
|
size="40rpx" |
|
|
|
labelSize="26rpx" |
|
|
|
label="随时可看" |
|
|
|
name="0"> |
|
|
|
label="整租" |
|
|
|
name="整租"> |
|
|
|
</uv-radio> |
|
|
|
|
|
|
|
<uv-radio |
|
|
|
:customStyle="{margin: '8px'}" |
|
|
|
iconSize="30rpx" |
|
|
|
size="40rpx" |
|
|
|
labelSize="26rpx" |
|
|
|
label="合租" |
|
|
|
name="合租"> |
|
|
|
</uv-radio> |
|
|
|
</view> |
|
|
|
</uv-radio-group> |
|
|
@ -89,14 +138,49 @@ |
|
|
|
</view> |
|
|
|
<input placeholder="请输入联系电话" v-model="form.phone" /> |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
|
|
|
|
<view class="images box"> |
|
|
|
<view class=""> |
|
|
|
精选照片 |
|
|
|
</view> |
|
|
|
<uv-upload |
|
|
|
:fileList="fileList" |
|
|
|
:maxCount="imageMax" |
|
|
|
multiple |
|
|
|
width="150rpx" |
|
|
|
height="150rpx" |
|
|
|
@delete="deleteImage" |
|
|
|
@afterRead="afterRead" |
|
|
|
:previewFullImage="true"></uv-upload> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="category"> |
|
|
|
<view class="title"> |
|
|
|
选择地区 |
|
|
|
</view> |
|
|
|
<view class="tagList"> |
|
|
|
<view |
|
|
|
:class="{act : t.id == form.addId}" |
|
|
|
@click="form.addId = t.id" |
|
|
|
v-for="(t, i) in cityList" |
|
|
|
:key="i"> |
|
|
|
{{ t.name }} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- <view class=""> |
|
|
|
<uv-textarea |
|
|
|
v-model="form.content" |
|
|
|
count |
|
|
|
:maxlength="300" |
|
|
|
autoHeight |
|
|
|
placeholder="请输入详细介绍"></uv-textarea> |
|
|
|
</view> |
|
|
|
</view> --> |
|
|
|
|
|
|
|
<uv-picker ref="picker" |
|
|
|
:columns="columns" |
|
|
|
@confirm="pickerConfirm"></uv-picker> |
|
|
|
|
|
|
|
<view class="uni-color-btn"> |
|
|
|
发布 |
|
|
@ -106,11 +190,14 @@ |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { mapState } from 'vuex' |
|
|
|
export default { |
|
|
|
data() { |
|
|
|
return { |
|
|
|
form : { |
|
|
|
|
|
|
|
addId : '',//地区id |
|
|
|
address : '',//地址 |
|
|
|
crm : '',//面积 |
|
|
|
}, |
|
|
|
radiovalue : '', |
|
|
|
priceType : [ |
|
|
@ -132,10 +219,100 @@ |
|
|
|
name : '月结', |
|
|
|
}, |
|
|
|
], |
|
|
|
fileList : [], |
|
|
|
imageMax : 9, |
|
|
|
picker : { |
|
|
|
workYear : [ |
|
|
|
'不限', |
|
|
|
], |
|
|
|
school : [ |
|
|
|
'不限', |
|
|
|
'初中', |
|
|
|
'高中', |
|
|
|
'专科', |
|
|
|
'本科', |
|
|
|
'研究生', |
|
|
|
'博士', |
|
|
|
], |
|
|
|
}, |
|
|
|
} |
|
|
|
}, |
|
|
|
onLoad() { |
|
|
|
for (var i = 0; i < 30; i++) { |
|
|
|
this.picker.workYear.push((i + 1) + '年') |
|
|
|
} |
|
|
|
this.form.addId = this.cityList[0].id |
|
|
|
}, |
|
|
|
computed : { |
|
|
|
columns(){ |
|
|
|
return [this.picker[this.pickerKey]] |
|
|
|
}, |
|
|
|
...mapState(['cityList', 'category']), |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
|
|
|
|
openPicker(key){ |
|
|
|
this.pickerKey = key |
|
|
|
this.$refs.picker.open() |
|
|
|
}, |
|
|
|
pickerConfirm(e){ |
|
|
|
this.form[this.pickerKey] = e.value[0] |
|
|
|
}, |
|
|
|
deleteImage(e){ |
|
|
|
this.fileList.splice(e.index, 1) |
|
|
|
}, |
|
|
|
afterRead(e){ |
|
|
|
let self = this |
|
|
|
e.file.forEach(file => { |
|
|
|
self.$Oss.ossUpload(file.url).then(url => { |
|
|
|
self.fileList.push({ |
|
|
|
url |
|
|
|
}) |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
//地图上选择地址 |
|
|
|
selectAddr() { |
|
|
|
Position.selectAddress(res => { |
|
|
|
//经纬度信息 |
|
|
|
this.form.latitude = res.latitude |
|
|
|
this.form.longitude = res.longitude |
|
|
|
if (res.name) { |
|
|
|
return this.form.address = res.name |
|
|
|
} |
|
|
|
this.form.address = '' |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 提交 |
|
|
|
submit(){ |
|
|
|
|
|
|
|
if(this.fileList.length == 0){ |
|
|
|
return uni.showToast({ |
|
|
|
title: '请上传精选照片', |
|
|
|
icon : 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
if (this.$utils.verificationAll(this.form, { |
|
|
|
title: '请输入标题', |
|
|
|
address : '请选择租房地点', |
|
|
|
money : '请输入租金', |
|
|
|
phone: '请输入联系电话', |
|
|
|
titleSub : '请输入备注', |
|
|
|
})) { |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
this.$api('publishJob', this.form, res => { |
|
|
|
if(res.code == 200){ |
|
|
|
uni.showToast({ |
|
|
|
title: '发布成功!', |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
|
|
|
|
setTimeout(uni.navigateBack, 1000, -1) |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
@ -184,6 +361,37 @@ |
|
|
|
margin-left: auto; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.images{ |
|
|
|
padding: 30rpx; |
|
|
|
view{ |
|
|
|
padding-bottom: 20rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.category{ |
|
|
|
padding: 20rpx; |
|
|
|
.title{ |
|
|
|
// font-weight: 900; |
|
|
|
// font-size: 30rpx; |
|
|
|
} |
|
|
|
.tagList{ |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
padding: 10rpx 0; |
|
|
|
view{ |
|
|
|
background: rgba($uni-color, 0.1); |
|
|
|
padding: 10rpx 20rpx; |
|
|
|
margin: 10rpx; |
|
|
|
border-radius: 10rpx; |
|
|
|
font-size: 26rpx; |
|
|
|
} |
|
|
|
.act{ |
|
|
|
color: #fff; |
|
|
|
background: $uni-color; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |