import Taro, { Component } from '@tarojs/taro'
import { View, Map } from '@tarojs/components'
import { arrToObj } from '@utils'
import './pkDtl.scss'
class Index extends Component {
onShareAppMessage() {
const { pkArr } = this.state
let idArr = []
const nameArr = pkArr.map(item => {
idArr.push(item.id)
return item.estate_name
})
return {
title: `${nameArr.join('vs')}-楼盘对比`,
path: `/pagesHouse/pkDtl?id=${idArr.join(',')}`,
}
}
onShareTimeline () {
return {
title: '让买房,更省心!',
}
}
constructor (props) {
super(props)
this.state = {
pkArr: [],
}
}
config = {
navigationBarTitleText: '楼盘PK',
}
componentWillMount () {
const {id} = this.$router.params
if (id) {
const idArr = id.split(',') || []
let tempArr = []
idArr.forEach(cId => {
tempArr.push(
new Promise((resolve, reject) => {
Taro.api.house.admestatesimple({id: cId}).then(res => {
return resolve(res)
}).catch(err => {
return reject(err)
})
})
)
})
Promise.all(tempArr).then(res => {
if (res && res.length > 0 && !Taro.getStorageSync('APP_pkList')) Taro.setStorageSync('APP_pkList', res)
this.setState({
pkArr: res || []
})
})
} else {
this.getDtl()
}
}
renderTop () {
const bg = require('./img/pk/bg.jpg')
const { pkArr } = this.state
return (
{
pkArr.map((item, index) => {
return (
{item.estate_name}
)
})
}
)
}
getDtl = (data) => {
const { i } = this.$router.params
const iArr = i.split(',')
const pkList = data || Taro.getStorageSync('APP_pkList') || []
let pkArr = iArr.map(i => {
return pkList[i]
})
this.setState({
pkArr
})
}
componentDidShow () { }
componentDidHide () { }
previewImageHandle (cur, arr) {
const current = `${cur}_plus`
const urls = arr.map(item => {
return `${item.img_url}_plus`
})
Taro.previewImage({
current,
urls
})
}
previewQrcodeImageHandle (current, urls) {
Taro.previewImage({
current: 'http://icon.honglounews.com/miniqrcode.jpg',
urls: ['http://icon.honglounews.com/miniqrcode.jpg']
})
}
linkHome () {
Taro.reLaunch({
url: '/pages/index/index'
})
}
renderGoHome () {
const icon = require('@img/images/icon_go_home.png')
return (
)
}
render () {
const dictData = Taro.getStorageSync('dictData')
const saObj = arrToObj(dictData.school_attrib)
const mlObj = arrToObj(dictData.metro_line)
const mtObj = arrToObj(dictData.metro_type)
const { pkArr } = this.state
const pk0Obj = pkArr[0] || {}
const pk1Obj = pkArr[1] || {}
let metroLineStr0 = ''
if (pk0Obj.metro_line) {
const ml0Arr = pk0Obj.metro_line.split(',')
const ml0Str = ml0Arr.map(v => {
return mlObj[v]
})
metroLineStr0 = ml0Str.join(',')
}
let metroLineStr1 = ''
if (pk1Obj.metro_line) {
const ml1Arr = pk1Obj.metro_line.split(',')
const ml1Str = ml1Arr.map(v => {
return mlObj[v]
})
metroLineStr1 = ml1Str.join(',')
}
let metroTypeStr0 = ''
if (pk0Obj.metro_type) {
const mt0Arr = pk0Obj.metro_type.split(',')
const mt0Str = mt0Arr.map(v => {
return mtObj[v]
})
metroTypeStr0 = mt0Str.join(',')
}
let metroTypeStr1 = ''
if (pk1Obj.metro_type) {
const mt1Arr = pk1Obj.metro_type.split(',')
const mt1Str = mt1Arr.map(v => {
return mtObj[v]
})
metroTypeStr1 = mt1Str.join(',')
}
let pk0SchoolStr = ''
const school0list = pk0Obj.school_list || {duikou: [], guihua: []}
const sl0Arr = [...school0list.duikou, ...school0list.guihua]
if (sl0Arr && sl0Arr.length > 0) {
const schoolStr0 = sl0Arr.map(item => {
return `(${saObj[item.school_attrib]})${item.school_name}`
})
pk0SchoolStr = schoolStr0.join(';')
}
let pk1SchoolStr = ''
const school1list = pk1Obj.school_list || {duikou: [], guihua: []}
const slArr = [...school1list.duikou, ...school1list.guihua]
if (slArr && slArr.length > 0) {
const schoolStr1 = slArr.map(item => {
return `(${saObj[item.school_attrib]})${item.school_name}`
})
pk1SchoolStr = schoolStr1.join(';')
}
const product_type0 = pk0Obj.product_type || ''
const productTypeArr0 = product_type0.split(',').map(v => {
return arrToObj(dictData.product_type)[v]
})
const product_type1 = pk1Obj.product_type || ''
const productTypeArr1 = product_type1.split(',').map(v => {
return arrToObj(dictData.product_type)[v]
})
const iconShare = require('./img/pk/i2.png')
return (
{this.renderTop()}
基本信息
{arrToObj(dictData.estate_tag)[pk0Obj.estate_tag]}
楼盘状态
{arrToObj(dictData.estate_tag)[pk1Obj.estate_tag]}
{pk0Obj.price_range}/㎡
参考价格
{pk1Obj.price_range}/㎡
{arrToObj(dictData.area_type)[pk0Obj.area_type]}
所属区域
{arrToObj(dictData.area_type)[pk1Obj.area_type]}
{productTypeArr0.length > 0 ? `${productTypeArr0.join('/')}` : ''}
产品类型
{productTypeArr1.length > 0 ? `${productTypeArr1.join('/')}` : ''}
{pk0Obj.built_area}㎡
面积户型
{pk1Obj.built_area}㎡
{/*
{pk0Obj.stairs_rate}
梯户比
{pk1Obj.stairs_rate}
*/}
{pk0Obj.household}
总户数
{pk1Obj.household}
{pk0Obj.parking}
车位数
{pk1Obj.parking}
{pk0Obj.green_rate}%
绿化率
{pk1Obj.green_rate}%
{pk0Obj.plot_ratio}
容积率
{pk1Obj.plot_ratio}
{pk0Obj.deliver_time}
初次交付
{pk1Obj.deliver_time}
物业配套
{pk0Obj.property_fee || '0'}元
物业费
{pk1Obj.property_fee || '0'}元
{pk0Obj.property_type}
物业公司
{pk1Obj.property_type}
{pk0SchoolStr}
对口学校
{pk1SchoolStr}
{metroLineStr0}
地铁线
{metroLineStr1}
{metroTypeStr0}
地铁站
{metroTypeStr1}
查看更多
更多
查看更多
{this.renderGoHome()}
)
}
}
export default Index