许静 5 年前
父节点
当前提交
e5505bf600

+ 2
- 2
config/dev.js 查看文件

9
     // WSS_HOST: '"wss://dev.jinchengjiaye.com"',
9
     // WSS_HOST: '"wss://dev.jinchengjiaye.com"',
10
     // HOST: '"https://lt.pawoma.cn"',
10
     // HOST: '"https://lt.pawoma.cn"',
11
     // WSS_HOST: '"wss://lt.pawoma.cn"',
11
     // WSS_HOST: '"wss://lt.pawoma.cn"',
12
-    HOST: '"http://192.168.0.170:8080"',
13
-    WSS_HOST: '"ws://192.168.0.170:8080"',
12
+    HOST: '"http://192.168.0.84:8080"',
13
+    WSS_HOST: '"ws://192.168.0.84:8080"',
14
   },
14
   },
15
   weapp: {},
15
   weapp: {},
16
   h5: {}
16
   h5: {}

+ 2
- 2
src/pages/person/customerAnalysis/followUpCustomer/index.js 查看文件

49
       pageSize: 10
49
       pageSize: 10
50
     }
50
     }
51
     queryCustomerList(payload.type, payload).then(res => {
51
     queryCustomerList(payload.type, payload).then(res => {
52
-      const {records, list, total, current, pages} = res || {}
52
+      const { records, list, total, current, pages } = res || {}
53
       const _list = records || list || []
53
       const _list = records || list || []
54
-      const newList = current <= 1 ? _list: this.state.customerList.concat(_list)
54
+      const newList = current <= 1 ? _list : this.state.customerList.concat(_list)
55
       this.setState({
55
       this.setState({
56
         customerList: newList,
56
         customerList: newList,
57
         isEmpty: total == 0,
57
         isEmpty: total == 0,

+ 8
- 6
src/pages/person/customerAnalysis/myCustomer.js 查看文件

464
           </View>
464
           </View>
465
           <View onClick={this.handleTelClick.bind(this, customerDetail)} className='user__left__phone'>{customerDetail.phone}<View style={`background-image: url(${iconImg});background-size: 100%;background-position: 0rpx -88rpx;width: 44rpx;height: 44rpx;margin-left:10rpx`}></View></View>
465
           <View onClick={this.handleTelClick.bind(this, customerDetail)} className='user__left__phone'>{customerDetail.phone}<View style={`background-image: url(${iconImg});background-size: 100%;background-position: 0rpx -88rpx;width: 44rpx;height: 44rpx;margin-left:10rpx`}></View></View>
466
         </View>
466
         </View>
467
-        <AtTabs height="400px" className="my-tab" current={this.state.current} tabList={tabList} onClick={this.handleClick.bind(this)}>
467
+        <AtTabs height="calc(100vh - 400rpx)" className="my-tab" current={this.state.current} tabList={tabList} onClick={this.handleClick.bind(this)}>
468
           <AtTabsPane current={this.state.current} index={0} >
468
           <AtTabsPane current={this.state.current} index={0} >
469
             <View className="tab-pane1 pane">
469
             <View className="tab-pane1 pane">
470
               <View className="status">{customerDetail.status == 1 ? '报备' : customerDetail.status == 2 ? '到访' : customerDetail.status == 3 ? '认筹' : '签约'}</View>
470
               <View className="status">{customerDetail.status == 1 ? '报备' : customerDetail.status == 2 ? '到访' : customerDetail.status == 3 ? '认筹' : '签约'}</View>
480
             <View className="tab-pane2 pane">
480
             <View className="tab-pane2 pane">
481
               <ListView
481
               <ListView
482
                 className="wrap"
482
                 className="wrap"
483
+                style="height:calc(100vh - 400rpx)"
483
                 needInit
484
                 needInit
484
                 isEmpty={isEmpty}
485
                 isEmpty={isEmpty}
485
                 emptyText="暂无访问记录~"
486
                 emptyText="暂无访问记录~"
488
                 onScrollToLower={fn => this.onScrollToLower(fn)}
489
                 onScrollToLower={fn => this.onScrollToLower(fn)}
489
               >
490
               >
490
                 <View className="list">
491
                 <View className="list">
491
-                  {visitRecord.length && visitRecord.map(item => (
492
-                    <View className="record-item">
492
+                  {visitRecord.length && visitRecord.map((item, index) => (
493
+                    <View className="record-item" key={index + 'follow'}>
493
                       <View className="title" >{item.activity}</View>
494
                       <View className="title" >{item.activity}</View>
494
                       <View className="time">{dayjs(item.visitTime).format('YYYY年MM月DD日 HH:mm:ss') || ' '}</View>
495
                       <View className="time">{dayjs(item.visitTime).format('YYYY年MM月DD日 HH:mm:ss') || ' '}</View>
495
                     </View>
496
                     </View>
509
             <View className="tab-pane3 pane">
510
             <View className="tab-pane3 pane">
510
               <ListView
511
               <ListView
511
                 className="wrap"
512
                 className="wrap"
513
+                style="height:calc(100vh - 400rpx)"
512
                 needInit
514
                 needInit
513
                 isEmpty={isEmpty2}
515
                 isEmpty={isEmpty2}
514
                 emptyText="暂无活动信息~"
516
                 emptyText="暂无活动信息~"
527
                     activityList.map(item => (
529
                     activityList.map(item => (
528
                       <ActivityItem
530
                       <ActivityItem
529
                         data={item}
531
                         data={item}
530
-                        key={item.id}
532
+                        key={item.id + 'activity'}
531
                         onClick={this.handleItemClick}>
533
                         onClick={this.handleItemClick}>
532
                       </ActivityItem>
534
                       </ActivityItem>
533
                     ))
535
                     ))
541
               <ListView
543
               <ListView
542
                 className="wrap"
544
                 className="wrap"
543
                 needInit
545
                 needInit
544
-                style="height:300px"
546
+                style="height:calc(100vh - 600rpx)"
545
                 isEmpty={isEmpty3}
547
                 isEmpty={isEmpty3}
546
                 emptyText="暂无跟进记录~"
548
                 emptyText="暂无跟进记录~"
547
                 hasMore={hasMore3}
549
                 hasMore={hasMore3}
549
                 onScrollToLower={fn => this.onScrollToLower3(fn)} >
551
                 onScrollToLower={fn => this.onScrollToLower3(fn)} >
550
                 <View className="list">
552
                 <View className="list">
551
                   {followRecord.length && followRecord.map(item => (
553
                   {followRecord.length && followRecord.map(item => (
552
-                    <View>
554
+                    <View key={item.followUpRecordId + 'follow'}>
553
                       <View style=" display:flex;justify-content: space-between;align-items: center;color: #333;font-size: 16px; margin-bottom:20rpx;">
555
                       <View style=" display:flex;justify-content: space-between;align-items: center;color: #333;font-size: 16px; margin-bottom:20rpx;">
554
                         <View style=" display: flex;align-items: center;"><View style="width:8px;height:8px;margin-right:20rpx;display:inline-block;background:rgba(246,182,29,1);border-radius: 50%;"></View>{item.recordType}</View>
556
                         <View style=" display: flex;align-items: center;"><View style="width:8px;height:8px;margin-right:20rpx;display:inline-block;background:rgba(246,182,29,1);border-radius: 50%;"></View>{item.recordType}</View>
555
                         <View classNam="time" style=" font-size: 26rpx;color: #999;">{dayjs(item.createDate).format('YYYY年MM月DD日 HH:mm:ss') || ' '}</View>
557
                         <View classNam="time" style=" font-size: 26rpx;color: #999;">{dayjs(item.createDate).format('YYYY年MM月DD日 HH:mm:ss') || ' '}</View>

+ 4
- 4
src/pages/person/customerAnalysis/transactionCustomer/index.js 查看文件

39
       pageSize: 9999
39
       pageSize: 9999
40
     }
40
     }
41
     queryCustomerList(payload.type, payload).then(res => {
41
     queryCustomerList(payload.type, payload).then(res => {
42
-      const {records, list, total, current, pages} = res || {}
42
+      const { records, list, total, current, pages } = res || {}
43
       const _list = records || list || []
43
       const _list = records || list || []
44
-      const newList = current <= 1 ? _list: this.state.customerList.concat(_list)
44
+      const newList = current <= 1 ? _list : this.state.customerList.concat(_list)
45
       this.setState({
45
       this.setState({
46
         customerList: newList,
46
         customerList: newList,
47
         isEmpty: total == 0,
47
         isEmpty: total == 0,
87
             }
87
             }
88
             {
88
             {
89
               customerList.length &&
89
               customerList.length &&
90
-              customerList.map(item => (
91
-                <View class="item">
90
+              customerList.map((item, index) => (
91
+                <View class="item" key={index + 'transaction'}>
92
                   <Image src={item.picture || require('@assets/default-avatar.png')} className='img'></Image>
92
                   <Image src={item.picture || require('@assets/default-avatar.png')} className='img'></Image>
93
                   <View className="name">
93
                   <View className="name">
94
                     {item.name}
94
                     {item.name}

+ 67
- 62
src/pages/project/detail/index.js 查看文件

57
     albumCurrent: 0,
57
     albumCurrent: 0,
58
   }
58
   }
59
 
59
 
60
-  componentWillMount () {
60
+  componentWillMount() {
61
     // const { id = '78c3dd489791dc1d29472fa344b08c45' } = this.$router.params
61
     // const { id = '78c3dd489791dc1d29472fa344b08c45' } = this.$router.params
62
     ready.queue(() => {
62
     ready.queue(() => {
63
       const router = Taro.getStorageSync('router')
63
       const router = Taro.getStorageSync('router')
90
     })
90
     })
91
   }
91
   }
92
 
92
 
93
-  componentWillUnmount () {
93
+  componentWillUnmount() {
94
     const { recordId } = this.state
94
     const { recordId } = this.state
95
     recordId && updatePoint(recordId)
95
     recordId && updatePoint(recordId)
96
   }
96
   }
97
 
97
 
98
-  loadHelpGroupList () {
98
+  loadHelpGroupList() {
99
     const { buildingId } = this.state
99
     const { buildingId } = this.state
100
     queryHelpGroup({ buildingId: buildingId }).then(res => {
100
     queryHelpGroup({ buildingId: buildingId }).then(res => {
101
       console.log(res, "buildingId")
101
       console.log(res, "buildingId")
116
     )
116
     )
117
   }
117
   }
118
 
118
 
119
-  loadDetail () {
119
+  loadDetail() {
120
     const { buildingId } = this.state
120
     const { buildingId } = this.state
121
     const { dispatchProjectDetail } = this.props
121
     const { dispatchProjectDetail } = this.props
122
     this.setState({
122
     this.setState({
144
     })
144
     })
145
   }
145
   }
146
 
146
 
147
-  loadActivityData () {
147
+  loadActivityData() {
148
     const { buildingId } = this.state
148
     const { buildingId } = this.state
149
     const payload = { pageSize: 999, pageNumber: 1, buildingId }
149
     const payload = { pageSize: 999, pageNumber: 1, buildingId }
150
     queryActivityList(payload).then(res => {
150
     queryActivityList(payload).then(res => {
154
     })
154
     })
155
   }
155
   }
156
 
156
 
157
-  loadNewsData () {
157
+  loadNewsData() {
158
     const { buildingId } = this.state
158
     const { buildingId } = this.state
159
     const payload = { pageSize: 2, pageNumber: 1, buildingId }
159
     const payload = { pageSize: 2, pageNumber: 1, buildingId }
160
     queryNewsList(payload).then(res => {
160
     queryNewsList(payload).then(res => {
164
     })
164
     })
165
   }
165
   }
166
 
166
 
167
-  navigateTo (url) {
167
+  navigateTo(url) {
168
     Taro.navigateTo({ url: url })
168
     Taro.navigateTo({ url: url })
169
   }
169
   }
170
   // 海报预览图
170
   // 海报预览图
171
-  previewImage (arr) {
171
+  previewImage(arr) {
172
     // console.log('arr:' + arr)
172
     // console.log('arr:' + arr)
173
     if (arr[0].length > 1) {
173
     if (arr[0].length > 1) {
174
       Taro.previewImage({
174
       Taro.previewImage({
195
     })
195
     })
196
   }
196
   }
197
 
197
 
198
-  openMap () {
198
+  openMap() {
199
     const {
199
     const {
200
       buildingName,
200
       buildingName,
201
       address,
201
       address,
222
     })
222
     })
223
   }
223
   }
224
 
224
 
225
-  toViewAlbum () {
225
+  toViewAlbum() {
226
     const { buildingId } = this.state
226
     const { buildingId } = this.state
227
     this.navigateTo(`/pages/project/album/index?id=${buildingId}`)
227
     this.navigateTo(`/pages/project/album/index?id=${buildingId}`)
228
   }
228
   }
229
 
229
 
230
-  onViewFans () {
230
+  onViewFans() {
231
     const { buildingId } = this.state
231
     const { buildingId } = this.state
232
     this.navigateTo('/pages/card/fans/index?type=item&id=' + buildingId)
232
     this.navigateTo('/pages/card/fans/index?type=item&id=' + buildingId)
233
   }
233
   }
256
     }
256
     }
257
   }
257
   }
258
 
258
 
259
-  getPhoneNumber (e, item) {
259
+  getPhoneNumber(e, item) {
260
     getUserPhone(e, (phoneNumber) => {
260
     getUserPhone(e, (phoneNumber) => {
261
       const { userInfo: { person: { personId, nickname, name } } } = this.props
261
       const { userInfo: { person: { personId, nickname, name } } } = this.props
262
       Taro.navigateTo({
262
       Taro.navigateTo({
265
     })
265
     })
266
   }
266
   }
267
 
267
 
268
-  getPosterData () {
268
+  getPosterData() {
269
     return new Promise(resolve => {
269
     return new Promise(resolve => {
270
       const { posterData } = this.state
270
       const { posterData } = this.state
271
       if (posterData.qrcode) {
271
       if (posterData.qrcode) {
336
     })
336
     })
337
   }
337
   }
338
 
338
 
339
-  handleTelClick (item, e) {
339
+  handleTelClick(item, e) {
340
     e.stopPropagation()
340
     e.stopPropagation()
341
     Taro.makePhoneCall({
341
     Taro.makePhoneCall({
342
       phoneNumber: item.phone
342
       phoneNumber: item.phone
343
     })
343
     })
344
   }
344
   }
345
 
345
 
346
-  handleChatClick (item, e) {
346
+  handleChatClick(item, e) {
347
     e.stopPropagation()
347
     e.stopPropagation()
348
     const { userInfo: { person: { personId, nickname, name } } } = this.props
348
     const { userInfo: { person: { personId, nickname, name } } } = this.props
349
     Taro.navigateTo({
349
     Taro.navigateTo({
351
     })
351
     })
352
   }
352
   }
353
 
353
 
354
-  handleConsuItemClick (item) {
354
+  handleConsuItemClick(item) {
355
     Taro.navigateTo({
355
     Taro.navigateTo({
356
       url: `/pages/card/index?id=${item.id}`
356
       url: `/pages/card/index?id=${item.id}`
357
     })
357
     })
358
   }
358
   }
359
 
359
 
360
-  handleMoreClick () {
360
+  handleMoreClick() {
361
     // App.zhuge.track('查看置业顾问列表')
361
     // App.zhuge.track('查看置业顾问列表')
362
     Taro.navigateTo({
362
     Taro.navigateTo({
363
       url: `/pages/card/list/index?buildingId=${this.state.buildingId}`
363
       url: `/pages/card/list/index?buildingId=${this.state.buildingId}`
364
     })
364
     })
365
   }
365
   }
366
 
366
 
367
-  handleStopPropagation (e) {
367
+  handleStopPropagation(e) {
368
     e.stopPropagation()
368
     e.stopPropagation()
369
   }
369
   }
370
 
370
 
371
-  toRecomonedPage () {
371
+  toRecomonedPage() {
372
     const {
372
     const {
373
       userInfo: { person: { personType } }
373
       userInfo: { person: { personType } }
374
     } = this.props
374
     } = this.props
384
     }
384
     }
385
   }
385
   }
386
 
386
 
387
-  toHome () {
387
+  toHome() {
388
     Taro.switchTab({
388
     Taro.switchTab({
389
       url: `/pages/project/index`
389
       url: `/pages/project/index`
390
     })
390
     })
391
   }
391
   }
392
 
392
 
393
-  HandleCircumTabClick (id) {
393
+  HandleCircumTabClick(id) {
394
     this.setState({
394
     this.setState({
395
       curTab: id
395
       curTab: id
396
     })
396
     })
397
   }
397
   }
398
 
398
 
399
-  handleNewsMoreClick () {
399
+  handleNewsMoreClick() {
400
     Taro.navigateTo({
400
     Taro.navigateTo({
401
       url: `/pages/news/index?buildingId=` + this.state.buildingId
401
       url: `/pages/news/index?buildingId=` + this.state.buildingId
402
     })
402
     })
403
   }
403
   }
404
 
404
 
405
-  handNewsItemClick (id) {
405
+  handNewsItemClick(id) {
406
     Taro.navigateTo({
406
     Taro.navigateTo({
407
       url: '/pages/news/detail/index?id=' + id
407
       url: '/pages/news/detail/index?id=' + id
408
     })
408
     })
409
   }
409
   }
410
 
410
 
411
-  handleActivityMoreClick () {
411
+  handleActivityMoreClick() {
412
     Taro.navigateTo({
412
     Taro.navigateTo({
413
       url: `/pages/activity/index?buildingId=` + this.state.buildingId
413
       url: `/pages/activity/index?buildingId=` + this.state.buildingId
414
     })
414
     })
415
   }
415
   }
416
 
416
 
417
-  handActivityItemClick (id) {
417
+  handActivityItemClick(id) {
418
     Taro.navigateTo({
418
     Taro.navigateTo({
419
       url: '/pages/activity/detail/index?id=' + id
419
       url: '/pages/activity/detail/index?id=' + id
420
     })
420
     })
421
   }
421
   }
422
 
422
 
423
-  handlePreviewHxImage (current, urls) {
423
+  handlePreviewHxImage(current, urls) {
424
     Taro.previewImage({
424
     Taro.previewImage({
425
       current,
425
       current,
426
       urls
426
       urls
427
     })
427
     })
428
   }
428
   }
429
 
429
 
430
-  handleFavor () {
430
+  handleFavor() {
431
     const { buildingId, isSaved } = this.state
431
     const { buildingId, isSaved } = this.state
432
     if (isSaved) {
432
     if (isSaved) {
433
       cancelFavorProject(buildingId).then(res => {
433
       cancelFavorProject(buildingId).then(res => {
457
       console.log('活动项目收藏')
457
       console.log('活动项目收藏')
458
     })
458
     })
459
   }
459
   }
460
-  handleToolsClick () {
460
+  handleToolsClick() {
461
     Taro.navigateTo({
461
     Taro.navigateTo({
462
       url: `/pages/toolKit/index`
462
       url: `/pages/toolKit/index`
463
     })
463
     })
464
   }
464
   }
465
-  moreFloor () {
465
+  moreFloor() {
466
     Taro.navigateTo({
466
     Taro.navigateTo({
467
       url: `/pages/project/floor/index`
467
       url: `/pages/project/floor/index`
468
     })
468
     })
469
   }
469
   }
470
 
470
 
471
-  renderBottomMenu () {
471
+  renderBottomMenu() {
472
     const { userInfo: { person: { personType } } } = this.props
472
     const { userInfo: { person: { personType } } } = this.props
473
     const { posterShow } = this.state
473
     const { posterShow } = this.state
474
     return (
474
     return (
503
     )
503
     )
504
   }
504
   }
505
 
505
 
506
-  previewHouseImage (current, urls) {
506
+  previewHouseImage(current, urls) {
507
     Taro.previewImage({
507
     Taro.previewImage({
508
       current,
508
       current,
509
       urls
509
       urls
510
     })
510
     })
511
   }
511
   }
512
 
512
 
513
-  renderBuildingProjectTypeList () {
513
+  renderBuildingProjectTypeList() {
514
     const { statusOpts } = this.state
514
     const { statusOpts } = this.state
515
     const { projectDetail: { buildingProjectType = [], status, marketStatus } } = this.props
515
     const { projectDetail: { buildingProjectType = [], status, marketStatus } } = this.props
516
     return (
516
     return (
535
                         {/* <Icon className="iconfont icon-jinrongxianxingge-" onClick={this.handleToolsClick}></Icon> */}
535
                         {/* <Icon className="iconfont icon-jinrongxianxingge-" onClick={this.handleToolsClick}></Icon> */}
536
                         <View className='row' style="margin-top:0">
536
                         <View className='row' style="margin-top:0">
537
                           <Text className='row-label'>项目类型:</Text>
537
                           <Text className='row-label'>项目类型:</Text>
538
-                          <Text className='row-txt black'>{item.buildingTypeName}</Text>
538
+                          <Text className='row-txt black'>{item.buildingTypeName || ' '}</Text>
539
                         </View>
539
                         </View>
540
                         <View className='row'>
540
                         <View className='row'>
541
                           <Text className='row-label'>项目参考价格:</Text>
541
                           <Text className='row-label'>项目参考价格:</Text>
545
                         </View>
545
                         </View>
546
                         <View className='row'>
546
                         <View className='row'>
547
                           <Text className='row-label'>产权:</Text>
547
                           <Text className='row-label'>产权:</Text>
548
-                          <Text className='row-txt'>{item.rightsYear}年</Text>
548
+                          {item.rightsYear ?
549
+                            <Text className='row-txt'>{item.rightsYear}年</Text>
550
+                            :
551
+                            <Text className='row-txt'>暂无</Text>
552
+                          }
553
+
549
                           <View className='row-right'>
554
                           <View className='row-right'>
550
                             <Text className='row-label'>装修:</Text>
555
                             <Text className='row-label'>装修:</Text>
551
-                            <Text className='row-txt'>{item.decoration}</Text>
556
+                            <Text className='row-txt'>{item.decoration || '暂无'}</Text>
552
                           </View>
557
                           </View>
553
                         </View>
558
                         </View>
554
                       </View>
559
                       </View>
564
   }
569
   }
565
 
570
 
566
 
571
 
567
-  renderPhotoAlbum () {
572
+  renderPhotoAlbum() {
568
     const { projectDetail: { buildingApartment } } = this.props
573
     const { projectDetail: { buildingApartment } } = this.props
569
     const list = buildingApartment.filter(item => item.apartmentType === 'photo')
574
     const list = buildingApartment.filter(item => item.apartmentType === 'photo')
570
     const imgList = list.reduce((prev, cur) => {
575
     const imgList = list.reduce((prev, cur) => {
574
 
579
 
575
     const { albumCurrent } = this.state
580
     const { albumCurrent } = this.state
576
 
581
 
577
-  
578
-  
582
+
583
+
579
     return (
584
     return (
580
 
585
 
581
-   
586
+
582
       <Block>
587
       <Block>
583
-        { list.length > 0 &&
588
+        {list.length > 0 &&
584
           (
589
           (
585
             <View className='photos__type'>
590
             <View className='photos__type'>
586
               <View className='photos__type__title'>相册</View>
591
               <View className='photos__type__title'>相册</View>
587
               <ScrollView scrollX>
592
               <ScrollView scrollX>
588
                 <View className='photos__type__content' onClick={this.toViewAlbum}>
593
                 <View className='photos__type__content' onClick={this.toViewAlbum}>
589
-          
594
+
590
                   <View className="around-tab">
595
                   <View className="around-tab">
591
                     {list.map((item, index) => {
596
                     {list.map((item, index) => {
592
-                      const { apartmentName} = item || {}
593
-                      const  buildingImgList = item.buildingImgList
594
-                     
595
-                    
597
+                      const { apartmentName } = item || {}
598
+                      const buildingImgList = item.buildingImgList
599
+
600
+
596
                       return (
601
                       return (
597
                         <View
602
                         <View
598
-                          style={{ marginRight: '8px' }}                  
603
+                          style={{ marginRight: '8px' }}
599
                         >
604
                         >
600
                           {/* {`${label}(${num})`} */}
605
                           {/* {`${label}(${num})`} */}
601
                           <View>
606
                           <View>
614
       </Block>
619
       </Block>
615
     )
620
     )
616
   }
621
   }
617
-  rendercircum () {
622
+  rendercircum() {
618
     const building = {
623
     const building = {
619
       ...this.props.projectDetail
624
       ...this.props.projectDetail
620
     }
625
     }
631
     )
636
     )
632
   }
637
   }
633
 
638
 
634
-  renderConsuler () {
639
+  renderConsuler() {
635
     const { userInfo: { person: { phone } } } = this.props
640
     const { userInfo: { person: { phone } } } = this.props
636
     const { projectDetail: { consultants = [] } } = this.props
641
     const { projectDetail: { consultants = [] } } = this.props
637
     return (
642
     return (
685
     )
690
     )
686
   }
691
   }
687
 
692
 
688
-  renderStatement () {
693
+  renderStatement() {
689
     return (
694
     return (
690
       <View className='statement'>
695
       <View className='statement'>
691
         免责条款:以上价格仅供参考,具体一房一价的信息以售楼处展示为准。本网显示房屋位置、交通、医疗、教育、商业等配套信息,来源于第三方网络数据,不作为要约,仅供参考,双方具体权利义务应以法律规定及买卖合同约定为准。<br></br>本平台对项目周边文化教育的介绍旨在提供相关信息,并不意味着信息发布方对就学安排作出承诺。相关教育资源就学信息存在调整的可能,应以政府教育主管部门及办学颁布的政策规定为准。
696
         免责条款:以上价格仅供参考,具体一房一价的信息以售楼处展示为准。本网显示房屋位置、交通、医疗、教育、商业等配套信息,来源于第三方网络数据,不作为要约,仅供参考,双方具体权利义务应以法律规定及买卖合同约定为准。<br></br>本平台对项目周边文化教育的介绍旨在提供相关信息,并不意味着信息发布方对就学安排作出承诺。相关教育资源就学信息存在调整的可能,应以政府教育主管部门及办学颁布的政策规定为准。
694
   }
699
   }
695
 
700
 
696
 
701
 
697
-  renderHelp () {
702
+  renderHelp() {
698
     const { helpList } = this.state
703
     const { helpList } = this.state
699
     return (
704
     return (
700
       <Block>
705
       <Block>
715
     )
720
     )
716
   }
721
   }
717
 
722
 
718
-  handleHelpClick (item) {
723
+  handleHelpClick(item) {
719
     Taro.navigateTo({
724
     Taro.navigateTo({
720
       url: '/pages/activity/detail/assistance?id=' + item.activityId
725
       url: '/pages/activity/detail/assistance?id=' + item.activityId
721
     })
726
     })
722
   }
727
   }
723
-  handleGroupClick (item) {
728
+  handleGroupClick(item) {
724
     Taro.navigateTo({
729
     Taro.navigateTo({
725
       url: '/pages/activity/detail/assemble?id=' + item.activityId
730
       url: '/pages/activity/detail/assemble?id=' + item.activityId
726
     })
731
     })
727
   }
732
   }
728
-  renderGroup () {
733
+  renderGroup() {
729
     const { groupList } = this.state
734
     const { groupList } = this.state
730
     return (
735
     return (
731
       <Block>
736
       <Block>
747
     )
752
     )
748
   }
753
   }
749
 
754
 
750
-  renderHouseTypeList () {
755
+  renderHouseTypeList() {
751
     const { statusOpts } = this.state
756
     const { statusOpts } = this.state
752
     const { projectDetail: { buildingApartment } } = this.props
757
     const { projectDetail: { buildingApartment } } = this.props
753
     const list = buildingApartment.filter(item => item.apartmentType === 'apart')
758
     const list = buildingApartment.filter(item => item.apartmentType === 'apart')
795
 
800
 
796
     )
801
     )
797
   }
802
   }
798
-  renderActivities () {
803
+  renderActivities() {
799
     const { activityList } = this.state
804
     const { activityList } = this.state
800
     return (
805
     return (
801
       <Block>
806
       <Block>
826
       </Block>
831
       </Block>
827
     )
832
     )
828
   }
833
   }
829
-  renderNews () {
834
+  renderNews() {
830
     const { newsList } = this.state
835
     const { newsList } = this.state
831
     return (
836
     return (
832
       <Block>
837
       <Block>
858
     )
863
     )
859
   }
864
   }
860
 
865
 
861
-  renderVideo () {
866
+  renderVideo() {
862
     const { projectDetail } = this.props
867
     const { projectDetail } = this.props
863
     return (
868
     return (
864
       <View
869
       <View
876
           }}
881
           }}
877
           controls={true}
882
           controls={true}
878
           autoplay={false}
883
           autoplay={false}
879
-        
884
+
880
           initialTime='0'
885
           initialTime='0'
881
           id='video'
886
           id='video'
882
           loop={false}
887
           loop={false}
887
     )
892
     )
888
   }
893
   }
889
 
894
 
890
-  changeCurrent (current) {
895
+  changeCurrent(current) {
891
     this.setState({
896
     this.setState({
892
       current: current + 1
897
       current: current + 1
893
     })
898
     })
895
 
900
 
896
 
901
 
897
 
902
 
898
-  render () {
903
+  render() {
899
     const { posterStatus, posterData, loaded, btnstate } = this.state
904
     const { posterStatus, posterData, loaded, btnstate } = this.state
900
     const { projectDetail } = this.props
905
     const { projectDetail } = this.props
901
     const { uvList = {} } = projectDetail
906
     const { uvList = {} } = projectDetail
928
 
933
 
929
               {btnstate === 1 && projectDetail.videoUrl != null && this.renderVideo()}
934
               {btnstate === 1 && projectDetail.videoUrl != null && this.renderVideo()}
930
 
935
 
931
-        
936
+
932
               {btnstate === 1 && projectDetail.videoUrl != null && (<View className='media-btn'>
937
               {btnstate === 1 && projectDetail.videoUrl != null && (<View className='media-btn'>
933
                 <View className='video-btn' style={{ background: ' rgba(187, 156, 121, 1)', color: 'rgba(255, 255, 255, 1)' }} >视频</View>
938
                 <View className='video-btn' style={{ background: ' rgba(187, 156, 121, 1)', color: 'rgba(255, 255, 255, 1)' }} >视频</View>
934
                 <View className='img-btn' onClick={() => this.setState({ btnstate: 0 })}>图片</View>
939
                 <View className='img-btn' onClick={() => this.setState({ btnstate: 0 })}>图片</View>
967
                       <View className='row project__addr'>
972
                       <View className='row project__addr'>
968
                         <Text className="label">楼盘地址:</Text>
973
                         <Text className="label">楼盘地址:</Text>
969
                         <View className='address'>
974
                         <View className='address'>
970
-                          <Text className="address__text">{projectDetail.address}</Text>
975
+                          <Text className="address__text">{projectDetail.address || '暂无'}</Text>
971
                           {/* <Text className='iconfont icon-jingzhundaohang-copy' onClick={this.openMap.bind(this)}></Text> */}
976
                           {/* <Text className='iconfont icon-jingzhundaohang-copy' onClick={this.openMap.bind(this)}></Text> */}
972
                         </View>
977
                         </View>
973
                       </View>
978
                       </View>