소스 검색

Merge branch 'dev' of http://git.ycjcjy.com/zhiyuxing/miniapp-v3 into dev

张延森 5 년 전
부모
커밋
ec0d8c34a1

+ 4
- 4
config/dev.js 파일 보기

@@ -5,14 +5,14 @@ module.exports = {
5 5
   defineConstants: {
6 6
     // HOST: '"http://47.101.36.130:8085"',//测试
7 7
     // WSS_HOST: '"wss://47.101.36.130:8085"',
8
-    // HOST: '"https://dev.pawoma.cn"',//测试
9
-    // WSS_HOST: '"wss://dev.pawoma.cn"',
8
+    HOST: '"https://dev.pawoma.cn"',//测试
9
+    WSS_HOST: '"wss://dev.pawoma.cn"',
10 10
     // HOST: '"https://dev.jinchengjiaye.com"',//测试
11 11
     // WSS_HOST: '"wss://dev.jinchengjiaye.com"',
12 12
     // HOST: '"https://lt.pawoma.cn"',
13 13
     // WSS_HOST: '"wss://lt.pawoma.cn"',
14
-    HOST: '"http://127.0.0.1:8080"',
15
-    WSS_HOST: '"ws://127.0.0.1:8080"',
14
+    // HOST: '"http://127.0.0.1:8080"',
15
+    // WSS_HOST: '"ws://127.0.0.1:8080"',
16 16
     OSS_PATH: 'https://njcj.oss-cn-shanghai.aliyuncs.com/',
17 17
     OSS_FAST_PATH: 'https://njcj.oss-accelerate.aliyuncs.com/',
18 18
     Version: 'V3.5.12'

+ 5
- 5
src/app.scss 파일 보기

@@ -23,12 +23,12 @@
23 23
   border-radius: 0;
24 24
   border:none;
25 25
 }
26
-.at-tabs-pane--active{
27
-  height: 100vh!important;
28
-  overflow: scroll;
29
-  padding-bottom: 100px;
26
+// .at-tabs-pane--active{
27
+//   height: 100vh!important;
28
+//   overflow: scroll;
29
+//   padding-bottom: 100px;
30 30
 
31
-}
31
+// }
32 32
 @keyframes fadeBottomIn {
33 33
   0% {
34 34
     transform: translateY(10%);

+ 6
- 5
src/onlineSelling/components/RaiseCard/index.js 파일 보기

@@ -23,6 +23,7 @@ export default function RaiseCard(props) {
23 23
     payStatus,
24 24
     houseId,
25 25
     taHousingResourcesList = [],
26
+    taRaise = {},
26 27
     buildingImgList = [],
27 28
   } = props.summary || {}
28 29
 
@@ -48,22 +49,22 @@ export default function RaiseCard(props) {
48 49
   }
49 50
   return (
50 51
     <View className="housecard" style={props.style} >
51
-      <View className="head" onClick={props.handleCard}>
52
+      <View className="head" onClick={() => (props.handleCard && props.handleCard())}>
52 53
         {thumb ? <Image className="thumb" src={transferImage((buildingImgList)[0].url)} mode="aspectFit" /> :
53 54
           <Text style="font-size:26rpx;color:#666">暂无户型图</Text>
54 55
         }
55 56
       </View>
56 57
       <View className="body">
57
-        {props.type == 'raiseMoney' && <Image src={closeImg} onClick={handleCancel} className="close-img"></Image>}
58
-        <View onClick={props.handleCard}>
58
+        {props.type == 'raiseMoney' && !props.disableCancel && <Image src={closeImg} onClick={handleCancel} className="close-img"></Image>}
59
+        <View onClick={() => (props.handleCard && props.handleCard())}>
59 60
           {!props.type && <View className={payStatus == 'paid' ? 'raised badge' : payStatus == 'unpaid' ? 'unraise badge' : 'badge'}>{payStatus == 'paid' ? '已缴费' : payStatus == 'unpaid' ? '未缴费' : '已退费'}</View>}
60 61
           {(props.type == 'raiseProfile' || props.type == 'houseResource') && <View style="color:#FF3C3C" className='badge'>{mineLocked ? '已锁给我' : ' '}</View>}
61 62
           {(props.type == 'raiseProfile' || props.type == 'raiseMoney') && <View style={props.type == 'raiseMoney' ? 'color:#BB9C79;font-size:30rpx' : 'color:#BB9C79;font-size:30rpx;margin-top:-20rpx'}>{apartmentName || ''}</View>}
62
-          {props.type == 'raiseMoney' && <View className="red-price">现价{Number(price) + 0}万</View>}
63
+          {props.type == 'raiseMoney' && taRaise.displayHousePrice && <View className="red-price">现价{Number(price) + 0}万</View>}
63 64
           {props.type == 'houseResource' && <View style="color:#BB9C79;font-size:28rpx;margin:-40rpx 0 12rpx 0">{houseLockingStatus == 'locked' ? '已锁定' : '未锁定'}</View>}
64 65
           <View className="title">{title}</View>
65 66
           {!props.type && <View className="meta">{showDT}</View>}
66
-          {props.type == 'raiseProfile' && <View className="price">现价<Text className="red">{Number(price) + 0}</Text>万</View>}
67
+          {props.type == 'raiseProfile' && taRaise.displayHousePrice && <View className="price">现价<Text className="red">{Number(price) + 0}</Text>万</View>}
67 68
           {(props.type == 'raiseProfile' || props.type == 'raiseMoney') &&
68 69
             <Block>
69 70
               {buildingArea ? <View className="area">建筑面积约 <Text className="red">{buildingArea}m²</Text>

+ 1
- 1
src/onlineSelling/components/RaiseCard/index.scss 파일 보기

@@ -1,6 +1,6 @@
1 1
 .housecard {
2 2
   width: 690px;
3
-  height: 250px;
3
+  min-height: 250px;
4 4
   background:#fff;
5 5
   display: flex;
6 6
   font-weight: 400;

+ 0
- 1
src/onlineSelling/components/ScrollMessage/index.js 파일 보기

@@ -54,7 +54,6 @@ export default class ScrollMessage extends Component {
54 54
       <View className="scrollmessage">
55 55
         <View className="head">
56 56
           <Image style="width:44rpx;height:44rpx;margin-top: 10rpx;" src={require('../../assets/notice.png')}></Image>
57
-          {/* <NamedIcon name="notice" size={44} /> */}
58 57
         </View>
59 58
         <View className="body">
60 59
           <Swiper vertical autoplay>

+ 0
- 1
src/onlineSelling/components/ShareButtons/ShareBtn.js 파일 보기

@@ -9,7 +9,6 @@ export default function ShareBtn(props) {
9 9
   return (
10 10
     <Button className="sharebtn" onClick={handleClick} openType={props.openType}>
11 11
       <View>
12
-        {/* <NamedIcon name={props.name} size={props.size || 56} /> */}
13 12
         {props.name=='share-friends'&&<Image style="width:56rpx;height:56rpx" src={require('../../assets/share-friends.png')}></Image>}
14 13
         {props.name=='sharing-circleoffriends'&&<Image style="width:56rpx;height:56rpx" src={require('../../assets/sharing-circleoffriends.png')}></Image>}
15 14
       </View>

+ 4
- 4
src/onlineSelling/pages/detail/index.js 파일 보기

@@ -97,7 +97,6 @@ export default class Index extends Component {
97 97
   }
98 98
 
99 99
   handlePanoramaClick(panoramaLink) {
100
-    console.log(panoramaLink, "panoramapanoramapanoramapanoramapanoramapanoramapanoramapanoramapanorama")
101 100
 
102 101
     if (!panoramaLink) return;
103 102
 
@@ -191,9 +190,10 @@ export default class Index extends Component {
191 190
               <View style="padding: 0 30rpx;">
192 191
                 <View className="name">{houseDetail.apartmentName || ''}</View>
193 192
                 <View className="btn" onClick={() => this.handleChat(houseDetail.buildingId)}>询问优惠</View>
194
-                <View className="price">
195
-                  现价:{houseDetail.price}万
196
-              </View>
193
+                {
194
+                  taRaise.displayHousePrice && <View className="price"> 现价:{houseDetail.price}万</View>
195
+                }
196
+
197 197
                 {houseDetail.apartmentName &&
198 198
                   <View className="area">
199 199
                     {houseDetail.buildingArea ? <Text>建筑面积约<Text style="color:#FE1C1C">{houseDetail.buildingArea}</Text>m² </Text> : '建筑面积待定'}

+ 2
- 1
src/onlineSelling/pages/houseCart/index.scss 파일 보기

@@ -68,13 +68,14 @@
68 68
 
69 69
   .shoping-cart {
70 70
     position: absolute;
71
-    bottom: 135px;
71
+    bottom: 125px;
72 72
     font-size: 28px;
73 73
     line-height: 30px;
74 74
     color: #333;
75 75
     width: calc(100% - 70px);
76 76
     box-shadow:0px 4px 12px 0px rgba(0, 0, 0, 0.08);
77 77
     border-radius:44px 44px 0px 0px;
78
+    background-color: #fff;
78 79
 
79 80
     .title {
80 81
       text-align: center;

+ 15
- 12
src/onlineSelling/pages/houseList/index.js 파일 보기

@@ -23,8 +23,9 @@ import { getCardDetail } from '@/services/card'
23 23
 import Consultant from '@/components/consultant'
24 24
 import './index.scss'
25 25
 import { Loading } from '@/components/Loading'
26
+import * as houseActions from '@/actions/house'
26 27
 
27
-@connect(s => s.user)
28
+@connect(s => s.user, { ...houseActions })
28 29
 @withDetail({
29 30
   track: {
30 31
     event: 'house_list',
@@ -70,6 +71,9 @@ export default class HouseList extends Component {
70 71
       this.setState({ showShareMenu: false })
71 72
       this.initPageData()
72 73
     })
74
+
75
+    // 清空认筹选择
76
+    this.props.dispatchFlush2Cart([])
73 77
   }
74 78
 
75 79
 
@@ -382,12 +386,10 @@ export default class HouseList extends Component {
382 386
         </View>
383 387
         <View className="action">
384 388
           <View onClick={this.handleExplainClick}>
385
-            {/* <NamedIcon name="explain" size={50} /> */}
386 389
             <Image style="width:50rpx;height:50rpx" src={transferImage(require('../../assets/explain.png'))}></Image>
387 390
           </View>
388 391
           <View onClick={this.handleSearchClick}>
389 392
             <Image style="width:50rpx;height:50rpx" src={transferImage(require('../../assets/screen.png'))}></Image>
390
-            {/* <NamedIcon name="screen" size={50} /> */}
391 393
           </View>
392 394
         </View>
393 395
       </View>
@@ -395,7 +397,7 @@ export default class HouseList extends Component {
395 397
   }
396 398
 
397 399
   renderHouses() {
398
-    const { houseList,dataType } = this.state
400
+    const { houseList, dataType } = this.state
399 401
 
400 402
     return (
401 403
       <ScrollView className="container" scrollY scrollWithAnimation>
@@ -418,12 +420,10 @@ export default class HouseList extends Component {
418 420
     return (
419 421
       <View className="bottombar">
420 422
         <Button className="btn record" onClick={this.handleRecordBtn}>
421
-          {/* <NamedIcon name="record" size="42" /> */}
422 423
           <Image style="width:42rpx;height:42rpx" src={transferImage(require('../../assets/record.png'))}></Image>
423 424
           <Text className="txt">选房记录</Text>
424 425
         </Button>
425 426
         <Button className="btn share" onClick={this.handleShareBtn}>
426
-          {/* <NamedIcon name="share" size="42" /> */}
427 427
           <Image style="width:42rpx;height:42rpx" src={transferImage(require('../../assets/share.png'))}></Image>
428 428
           <Text className="txt">分享</Text>
429 429
         </Button>
@@ -432,7 +432,8 @@ export default class HouseList extends Component {
432 432
   }
433 433
 
434 434
   handleCondition(value) {
435
-    if (value == 2) {
435
+    const { salesBatchDetail: { displayHousePrice } } = this.state
436
+    if ((!displayHousePrice && value == 1) || value == 2) {
436 437
       this.setState({
437 438
         apartmentId: '',
438 439
         startPrice: '',
@@ -563,27 +564,29 @@ export default class HouseList extends Component {
563 564
             </View>
564 565
           ))}
565 566
         </View>
566
-          : <Blank tips="暂无户型图,请按价格筛选"></Blank>
567
+          : <Blank tips="暂无户型"></Blank>
567 568
         }
568 569
       </Block>
569 570
     )
570 571
   }
571 572
 
572 573
   renderCondition() {
573
-    const { current } = this.state
574
+    const { current, salesBatchDetail: { displayHousePrice } } = this.state
574 575
     const condition = [{ title: '按户型', value: 0 }, { title: '按价格', value: 1 }, { title: '不限条件', value: 2 }]
576
+    const condition2 = [{ title: '按户型', value: 0 }, { title: '不限条件', value: 2 }]
577
+    const conditionList = displayHousePrice ? condition : condition2
575 578
     return (
576 579
       <View className="screen-page">
577 580
         <View className="screen-top">
578 581
           筛选房源
579
-            {condition.map(item => (
582
+            {conditionList.map(item => (
580 583
             <View key={item.value} onClick={() => this.handleCondition(item.value)} className={current == item.value ? 'top-item active' : 'top-item'}>
581 584
               {item.title}
582 585
             </View>
583 586
           ))}
584 587
         </View>
585 588
         {current == 0 && this.renderApartment()}
586
-        {current == 1 && this.renderPrice()}
589
+        {current == 1 && displayHousePrice && this.renderPrice()}
587 590
 
588 591
 
589 592
       </View>
@@ -652,7 +655,7 @@ export default class HouseList extends Component {
652 655
                     </View>
653 656
                   ))}
654 657
                 </View>
655
-                
658
+
656 659
                 {houseList.length ? this.renderHouses() : this.renderBlank()}
657 660
                 {this.renderBottom()}
658 661
               </View>

+ 1
- 0
src/onlineSelling/pages/raiseMoney/NextStep/index.scss 파일 보기

@@ -9,5 +9,6 @@
9 9
 
10 10
   &.disable {
11 11
     background: #000;
12
+    opacity:0.6;
12 13
   }
13 14
 }

+ 32
- 0
src/onlineSelling/pages/raiseMoney/RadioList/index.js 파일 보기

@@ -0,0 +1,32 @@
1
+import Taro, { Component } from '@tarojs/taro'
2
+import { View, Label, Radio } from "@tarojs/components";
3
+import './index.scss'
4
+
5
+export default class extends Component {
6
+
7
+  render() {
8
+    const { value, color, size, dataset = [], onChange } = this.props
9
+
10
+    return (
11
+      <RadioGroup onChange={onChange}>
12
+        {
13
+          dataset.map((item) => {
14
+            const checked = item.value === value
15
+            const checkedColor = color && checked ? `border-color: ${color}` : ''
16
+            const btnSize = size ? `width: ${size}; height: ${size}` : ''
17
+            const btnStyle = `${checkedColor};${btnSize}`
18
+
19
+            return (
20
+              <Label key={item.value} className="radio-btn">
21
+                <Radio hidden value={item.value} checked={checked}></Radio>
22
+                <View className={`icon ${checked ? 'checked' : ''}`} style={btnStyle}></View>
23
+                <View className="label">{item.label}</View>
24
+              </Label>
25
+            )
26
+          })
27
+        }
28
+      </RadioGroup>
29
+    )
30
+  }
31
+
32
+}

+ 28
- 0
src/onlineSelling/pages/raiseMoney/RadioList/index.scss 파일 보기

@@ -0,0 +1,28 @@
1
+.radio-btn {
2
+  display: inline-block;
3
+
4
+  .icon {
5
+    width: 20px;
6
+    height: 20px;
7
+    display: inline-block;
8
+    border:2px solid #999;
9
+    border-radius:50%;
10
+    position: relative;
11
+    margin-right: 10px;
12
+    vertical-align: middle;
13
+
14
+    &.checked {
15
+      border-width: 6px;
16
+      border-style: solid;
17
+      border-color: #f00;
18
+    }
19
+  }
20
+
21
+  .label {
22
+    display: inline-block;
23
+  }
24
+
25
+  & + .radio-btn {
26
+    margin-left: 40px;
27
+  }
28
+}

+ 122
- 25
src/onlineSelling/pages/raiseMoney/index.js 파일 보기

@@ -10,10 +10,11 @@ import * as houseActions from '@/actions/house'
10 10
 import NextStep from './NextStep'
11 11
 import { fetch, apis } from '@/utils/request'
12 12
 import Captcha from './Captcha'
13
-import { raiseOrder, cancelOrder } from '@/services/project'
13
+import { raiseOrder, cancelOrder, queryPreselectionRecord } from '@/services/project'
14 14
 import { getCodeMessage } from '@/services/getCode'
15 15
 import { checkIDCard, isEmpty } from '@/utils/tools'
16 16
 import ContactConsultant from '../../components/ContactConsultant'
17
+import RadioList from './RadioList'
17 18
 
18 19
 const getRaiseProfile = ({ salesBatchId, raiseRecordId, personId }) => {
19 20
   const queryString = [
@@ -46,11 +47,17 @@ export default class raiseMoney extends Component {
46 47
   state = {
47 48
     current: 0,
48 49
     inputName: '',
49
-    raiseProfile: undefined,
50
-    record: {},
51
-    protocolCountdown: 10, // 单位 s
52
-    captchaCountdown: 60, // 单位 s
53
-    raiseIdRecord:'',
50
+    raiseProfile: undefined,  // 认筹主记录
51
+    record: {},               // 认筹单
52
+    preselectList: [],        // 我的预选 - 当前批次
53
+    protocolCountdown: 10,    // 单位 s
54
+    captchaCountdown: 60,     // 单位 s
55
+    payType: '',              // 缴费方式
56
+    failInfo: undefined,      // 操作失败 - 对象 { title, desc }
57
+    payTypeList: [
58
+      { label: '线上缴费', value: 'onLine' },
59
+      { label: '线下缴费', value: 'offLine' },
60
+    ],
54 61
   }
55 62
 
56 63
   captchaLock = false
@@ -87,7 +94,13 @@ export default class raiseMoney extends Component {
87 94
 
88 95
     // 请求认筹信息
89 96
     getRaiseProfile({ salesBatchId, raiseRecordId, personId }).then(res => {
90
-      this.setState({ raiseProfile: res, record: res.record || defaultRecord })
97
+      let payType = ''
98
+      const payTypeSettings = (res.payType || '').split(',')
99
+      if (payTypeSettings.length === 1) {
100
+        payType = payTypeSettings[0]
101
+      }
102
+
103
+      this.setState({ raiseProfile: res, payType, record: res.record || defaultRecord })
91 104
 
92 105
       // 请求置业顾问列表
93 106
       if (!house.consultantList || !house.consultantList.length) {
@@ -97,6 +110,31 @@ export default class raiseMoney extends Component {
97 110
           pageNumber: 1,
98 111
         })
99 112
       }
113
+
114
+      this.getMyPreselection({
115
+        personId,
116
+        pageNumber: 1,
117
+        pageSize: 999,
118
+        salesBatchId: res.salesBatchId,
119
+      }).then((res2) => {
120
+        // 如果认筹必须预选
121
+        if (res.needPreselection && res2.length < 1) {
122
+          this.setState({ current: 4, failInfo: { title: '认筹失败', desc: '请先预选房源' } })  
123
+        }
124
+      })
125
+    })
126
+  }
127
+
128
+  // 我的预选
129
+  getMyPreselection = (params) => {
130
+    return new Promise((resolve, reject) => {
131
+      queryPreselectionRecord(params).then((res) => {
132
+        this.setState({ preselectList: res.records })
133
+        resolve(res.records)        
134
+      }).catch(() => {
135
+        resolve([])
136
+        // reject()
137
+      })
100 138
     })
101 139
   }
102 140
 
@@ -160,17 +198,27 @@ export default class raiseMoney extends Component {
160 198
   }
161 199
   renderHouse() {
162 200
     const { house: { raiseCart } } = this.props
201
+    const { raiseProfile = {} } = this.state
202
+    const disabled = raiseProfile.houseLockingType === 'auto'
203
+
163 204
     return (
164 205
       <ScrollView scrollY className="container">
165 206
         {
166 207
           raiseCart.map(item => (
167 208
             <View key={item.houseId} >
168
-              <RaiseCard type="raiseMoney" summary={item} onCancel={this.handleCancel} />
209
+              <RaiseCard type="raiseMoney" style="height:auto" summary={item} onCancel={this.handleCancel} disableCancel={disabled} />
169 210
             </View>
170 211
           ))
171 212
         }
172
-        <View className="addhouse">从 <Text style="color:#F3B82E" onClick={this.gotoHouseSelect.bind(this, 'all')}>房源列表</Text> 中添加其他房源</View>
173
-        <View className="addhouse">从 <Text style="color:#BB9C79" onClick={this.gotoHouseSelect.bind(this, 'select')}>预选记录</Text> 中添加其他房源</View>
213
+        {
214
+          !disabled &&
215
+          (
216
+            <Block>
217
+              <View className="addhouse">从 <Text style="color:#F3B82E" onClick={this.gotoHouseSelect.bind(this, 'all')}>房源列表</Text> 中添加其他房源</View>
218
+              <View className="addhouse">从 <Text style="color:#BB9C79" onClick={this.gotoHouseSelect.bind(this, 'select')}>预选记录</Text> 中添加其他房源</View>
219
+            </Block>
220
+          )
221
+        }
174 222
         <Statement style="margin-top:80rpx" />
175 223
       </ScrollView>
176 224
     )
@@ -344,10 +392,19 @@ export default class raiseMoney extends Component {
344 392
     num = num.replace(reg, '$1');
345 393
     num = this.toDecimal2(num)
346 394
     return num
347
-  };
348
-  renderMoney() {
349
-    const { raiseProfile = {} } = this.state
395
+  }
350 396
 
397
+  handleChangeType = (e) => {
398
+    console.log('----------------->', e)
399
+    this.setState({ payType: e.detail.value })
400
+  }
401
+
402
+  renderMoney() {
403
+    const { raiseProfile = {}, payTypeList, payType } = this.state
404
+    const payTypeSettings = (raiseProfile.payType || '').split(',')
405
+    const showTypes = payTypeList.filter(x => (payTypeSettings.indexOf(x.value) > -1))
406
+    const showProtocal = payType === 'onLine' ? raiseProfile.payDescriptionOnline : raiseProfile.payDescriptionOffline
407
+    const payTip = payType === 'onLine' ? '线上缴费说明' : '线下缴费说明'
351 408
 
352 409
     return (
353 410
       <ScrollView scrollY className="container2" style="padding:0 30rpx">
@@ -355,8 +412,19 @@ export default class raiseMoney extends Component {
355 412
           <View className="title">认筹金额</View>
356 413
           <View className="price">{this.regFenToYuan(raiseProfile.raisePrice)}元</View>
357 414
         </View>
358
-        <View className="center-title">线上缴费说明</View>
359
-        <RichText nodes={raiseProfile.payDescriptionOnline || ''} />
415
+        {
416
+          (payTypeSettings.length > 1) &&
417
+          (
418
+            <View className="pay-type">
419
+              <View className="head">请选择缴费方式:</View>
420
+              <View className="body">
421
+                <RadioList dataset={showTypes} value={payType} onChange={this.handleChangeType} />
422
+              </View>
423
+            </View>
424
+          )
425
+        }
426
+        <View className="center-title">{payTip}</View>
427
+        <RichText nodes={showProtocal || ''} />
360 428
       </ScrollView >
361 429
     )
362 430
   }
@@ -417,8 +485,10 @@ export default class raiseMoney extends Component {
417 485
       return Promise.reject()
418 486
     }
419 487
 
488
+    debugger
489
+
420 490
     // 校验手机号
421
-    if (isEmpty(record.tel) || record.tel < 11) {
491
+    if (isEmpty(record.tel) || record.tel.length < 11) {
422 492
       Taro.showToast({
423 493
         title: '手机号格式不正确',
424 494
         icon: 'none',
@@ -458,8 +528,21 @@ export default class raiseMoney extends Component {
458 528
   }
459 529
 
460 530
   makePay = () => {
531
+    const { payType, record = {} } = this.state
532
+    if (!payType) {
533
+      Taro.showToast({
534
+        title: '请确定支付方式',
535
+        icon: 'none'
536
+      })
537
+      return Promise.reject()
538
+    }
539
+
540
+    if (payType === 'offLine') {
541
+      return Promise.resolve()
542
+    }
543
+
461 544
     const params = {
462
-      targetId: this.$router.params.raiseRecordId || this.state.raiseIdRecord,
545
+      targetId: this.$router.params.raiseRecordId || record.raiseRecordId,
463 546
       targetType: 'house'
464 547
     }
465 548
 
@@ -497,15 +580,31 @@ export default class raiseMoney extends Component {
497 580
     })
498 581
   }
499 582
   renderResult() {
500
-    const { raiseProfile = {} } = this.state
583
+    const { raiseProfile = {}, failInfo } = this.state
584
+    const isOk = !failInfo
585
+    const showIcon = isOk ? require('../../assets/success2.png') : require('../../assets/fail2.png')
586
+    const showTitle = isOk ? '提交成功' : failInfo.title
587
+
501 588
     return (
502 589
       <View className="result">
503
-        <Image className="result-img" src={require('../../assets/success2.png')}></Image>
590
+        <Image className="result-img" src={showIcon}></Image>
504 591
 
505
-        <View className="status">提交成功</View>
592
+        <View className="status">{showTitle}</View>
593
+
594
+        {
595
+          isOk &&
596
+          (
597
+            <Block>
598
+              <View className="tip" style="margin-bottom:10rpx">详情请查看认筹单</View>
599
+              <View className="tip">支付结果请留意微信支付通知</View>
600
+            </Block>
601
+          )
602
+        }
603
+
604
+        {
605
+          !isOk && (<View className="tip">{(failInfo || {}).desc}</View>)
606
+        }
506 607
 
507
-        <View className="tip" style="margin-bottom:10rpx">详情请查看认筹单</View>
508
-        <View className="tip">支付结果请留意微信支付通知</View>
509 608
         <ContactConsultant buildingId={raiseProfile.buildingId} style=" position: absolute;bottom: 11vh;" />
510 609
 
511 610
         <View className="look-btn" onClick={() => this.toRaiseProfile(raiseProfile.raiseId)}>查看认筹单</View>
@@ -530,9 +629,7 @@ export default class raiseMoney extends Component {
530 629
         this.makeRaiseRecord().then((res) => {
531 630
           console.log(res, "res")
532 631
           this.setState({
533
-            current: current + 1,
534
-            raiseIdRecord: res.raiseRecordId
535
-
632
+            current: current + 1
536 633
           })
537 634
         })
538 635
         return;

+ 20
- 0
src/onlineSelling/pages/raiseMoney/index.scss 파일 보기

@@ -44,6 +44,26 @@
44 44
   }
45 45
   .container2 {
46 46
     height: calc(100vh - 382px);
47
+
48
+    .pay-type {
49
+      display: flex;
50
+      margin: 30px 0 40px;
51
+      font-size:28px;
52
+      color: #333;
53
+
54
+      .head {
55
+        width: 240px;
56
+        flex: none;
57
+      }
58
+
59
+      .body {
60
+        flex: auto;
61
+
62
+        .item {
63
+          display: inline-block;
64
+        }
65
+      }
66
+    }
47 67
   }
48 68
   .container3 {
49 69
     height: calc(100vh - 452px);

+ 1
- 1
src/onlineSelling/pages/raiseProfile/Cell.js 파일 보기

@@ -15,7 +15,7 @@ export default function (props) {
15 15
             <View className="body">{props.body}</View>
16 16
             <View className="action" onClick={props.onActionClick}>
17 17
               {
18
-                props.action && (<NamedIcon name="copy" size={34} />)
18
+                props.action && (<Image src={require('../../assets/copy.png')} style="width:34rpx;height:34rpx"></Image>)
19 19
               }
20 20
             </View>
21 21
           </View>

+ 21
- 5
src/onlineSelling/pages/raiseProfile/index.js 파일 보기

@@ -87,7 +87,7 @@ export default class Raise extends Component {
87 87
       <Block>
88 88
         <View className="cancelReason flexSpace">
89 89
           <View className="flexSpace-fixed">
90
-            <NamedIcon name="void" size={120} />
90
+            <Image src={require('../../assets/void.png')} style="width:120rpx;height:120rpx"></Image>
91 91
           </View>
92 92
           <View className="flexSpace-item" style="margin-left: 20px">
93 93
             <View>认筹单作废原因:</View>
@@ -100,10 +100,26 @@ export default class Raise extends Component {
100 100
   }
101 101
   // 跳转去交费
102 102
   toPay = () => {
103
-    const { raiseDeatil: { raiseRecordId } } = this.state
104
-    Taro.navigateTo({
105
-      url: `/onlineSelling/pages/raiseMoney/index?type=pay&raiseRecordId=${raiseRecordId}`
103
+    console.log(this.props, "this.propsthis.propsthis.props")
104
+    const { user: { userInfo: { miniApp: { tpls } } } } = this.props
105
+    const tplId = (tpls.filter(x => x.tplType == noticeType.TPL_NOTICE && x.isSubscribe == true)[0] || {}).tplId
106
+
107
+    wx.requestSubscribeMessage({
108
+      tmplIds: [tplId],
109
+      success(res) {
110
+      },
111
+      fail(res) {
112
+
113
+      },
114
+      complete() {
115
+        const { raiseDeatil: { raiseRecordId } } = this.state
116
+
117
+        Taro.navigateTo({
118
+          url: `/onlineSelling/pages/raiseMoney/index?type=pay&raiseRecordId=${raiseRecordId}`
119
+        })
120
+      }
106 121
     })
122
+
107 123
   }
108 124
   // 未交费提示
109 125
   renderUnpayNotice() {
@@ -112,7 +128,7 @@ export default class Raise extends Component {
112 128
       <Block>
113 129
         <View className="unpayNotice flexSpace" onClick={this.toPay}>
114 130
           <View className="flexSpace-fixed">
115
-            <NamedIcon name="pay" size={64} />
131
+            <Image src={require('../../assets/pay.png')} style="width:64rpx;height:64rpx"></Image>
116 132
             <View className="a-line txt">未缴费?点我缴费</View>
117 133
           </View>
118 134
           <View className="flexSpace-fixed">

+ 2
- 0
src/onlineSelling/pages/raiseProfile/index.scss 파일 보기

@@ -71,6 +71,7 @@
71 71
 .flexSpace {
72 72
   display: flex;
73 73
   justify-content: space-between;
74
+  align-items: center;
74 75
 
75 76
   &-fixed {
76 77
     flex: none;
@@ -129,6 +130,7 @@
129 130
   }
130 131
 }
131 132
 .raise-flex{
133
+  margin-top: 40px;
132 134
   display: flex;
133 135
   align-items: center;
134 136
   justify-content: space-between;

+ 24
- 5
src/onlineSelling/pages/records/index.js 파일 보기

@@ -12,8 +12,9 @@ import { transferImage } from '@/utils/tools'
12 12
 import PickerComponent from '../../components/Picker'
13 13
 import './index.scss'
14 14
 import * as houseActions from '@/actions/house'
15
+import * as noticeType from '@/constants/common.js'
15 16
 
16
-function noop(){}
17
+function noop() { }
17 18
 
18 19
 @connect(
19 20
   ({ user, city, house }) => ({ ...user, ...city, house }),
@@ -57,7 +58,7 @@ export default class Records extends Component {
57 58
   componentDidShow() {
58 59
     ready.queue(() => {
59 60
 
60
-      const { id: salesBatchId } = this.$router.params
61
+      const { id: salesBatchId = '' } = this.$router.params
61 62
       const { userInfo: { person: { personId } }, house } = this.props
62 63
       const params = {
63 64
         personId,
@@ -80,6 +81,9 @@ export default class Records extends Component {
80 81
       }
81 82
 
82 83
       this.setState({ salesBatchId })
84
+
85
+      // 清空认筹选择
86
+      this.props.dispatchFlush2Cart([])
83 87
     })
84 88
   }
85 89
   getPreselection(params) {
@@ -182,9 +186,24 @@ export default class Records extends Component {
182 186
     )
183 187
   }
184 188
   toRaiseProfile(id) {
185
-    Taro.navigateTo({
186
-      url: `/onlineSelling/pages/raiseProfile/index?raiseRecordId=${id}`
189
+    const { userInfo: { miniApp: { tpls } } } = this.props
190
+    const tplId = (tpls.filter(x => x.tplType == noticeType.TPL_NOTICE && x.isSubscribe == true)[0] || {}).tplId
191
+
192
+    wx.requestSubscribeMessage({
193
+      tmplIds: [tplId],
194
+      success(res) {
195
+      },
196
+      fail(res) {
197
+
198
+      },
199
+      complete() {
200
+        Taro.navigateTo({
201
+          url: `/onlineSelling/pages/raiseProfile/index?raiseRecordId=${id}`
202
+        })
203
+      }
187 204
     })
205
+
206
+
188 207
   }
189 208
   renderRaise() {
190 209
     const { raiseList, noRaiseRecord } = this.state
@@ -197,7 +216,7 @@ export default class Records extends Component {
197 216
               {
198 217
                 raiseList.map(item => (
199 218
                   <View key={item.raiseRecordId} >
200
-                    <RaiseCard handleCard={()=>this.toRaiseProfile(item.raiseRecordId)} summary={item} />
219
+                    <RaiseCard handleCard={() => this.toRaiseProfile(item.raiseRecordId)} summary={item} />
201 220
                   </View>
202 221
                 )
203 222
                 )

+ 1
- 0
src/pages/activity/index.js 파일 보기

@@ -134,6 +134,7 @@ export default class Index extends Component {
134 134
     return (
135 135
       <ListView
136 136
         className="wrap"
137
+        style="height: calc(100vh - 118rpx);"
137 138
         needInit
138 139
         isEmpty={isEmpty}
139 140
         emptyText="暂无活动~"

+ 6
- 0
src/pages/activity/index.scss 파일 보기

@@ -31,3 +31,9 @@
31 31
   }
32 32
 
33 33
 }
34
+.at-tabs-pane--active{
35
+  height: 100vh!important;
36
+  overflow: scroll;
37
+  padding-bottom: 100px;
38
+
39
+}

+ 1
- 0
src/pages/news/index.js 파일 보기

@@ -115,6 +115,7 @@ export default class Index extends Component {
115 115
     return (
116 116
       <ListView
117 117
         className="wrap"
118
+        style="height: calc(100vh - 118rpx);"
118 119
         needInit
119 120
         isEmpty={isEmpty}
120 121
         emptyText="暂无资讯~"

+ 1
- 1
src/pages/person/spread/index.js 파일 보기

@@ -78,7 +78,7 @@ export default class Index extends Component {
78 78
       <Block>
79 79
         {/* 生成海报 */}
80 80
         {makePosterStatus && (<Poster data={posterData} toggle={this.toggleVisiblePoster}></Poster>)}
81
-        <View className='page'>
81
+        <View className='spread-page'>
82 82
           <View className='spread-code'>
83 83
             <View className='spread-code-head'>
84 84
               <Image src={avatarurl} className='spread-code-head_img'></Image>

+ 2
- 2
src/pages/person/spread/index.scss 파일 보기

@@ -1,8 +1,8 @@
1 1
 @import "@/styles/theme.scss";
2
-.page {
2
+.spread-page {
3 3
   position: relative;
4 4
   width: 100%;
5
-  height: 100%;
5
+  height: 100vh;
6 6
   background: #f0f0f0;
7 7
 }
8 8
 .spread-code {

+ 5
- 0
src/pages/shop/index.scss 파일 보기

@@ -156,7 +156,12 @@
156 156
     font-weight: bold;
157 157
   }
158 158
 }
159
+.at-tabs-pane--active{
160
+  height: 100vh!important;
161
+  overflow: scroll;
162
+  padding-bottom: 100px;
159 163
 
164
+}
160 165
 .list__wrap {
161 166
   margin-top: 20px;
162 167
   overflow: hidden;

+ 1
- 0
src/useless/pages/person/customerAnalysis/followUpCustomer/index.js 파일 보기

@@ -284,6 +284,7 @@ export default class followUpCustomer extends Taro.Component {
284 284
         <View style="padding:0 10px 10px 10px">
285 285
           <ListView
286 286
             className="wrap"
287
+            style="height: calc(100vh - 234rpx)"
287 288
             needInit
288 289
             isEmpty={isEmpty}
289 290
             emptyText="暂无跟进客户~"

+ 4
- 1
src/useless/pages/person/customerAnalysis/index.scss 파일 보기

@@ -3,7 +3,7 @@
3 3
 .wrap {
4 4
   background: white;
5 5
   position: relative;
6
-  height:100vh;
6
+  // height:100vh;
7 7
 }
8 8
 .my-customer{
9 9
   flex: 0 0 50%;
@@ -55,6 +55,9 @@
55 55
   
56 56
   }
57 57
 }
58
+.at-tabs{
59
+  height: 100vh;
60
+}
58 61
 .tab-box{
59 62
   .at-tabs__header{
60 63
     width: 86%;

+ 1
- 0
src/useless/pages/person/customerAnalysis/transactionCustomer/index.js 파일 보기

@@ -115,6 +115,7 @@ export default class transactionCustomer extends Taro.Component {
115 115
       <View style="padding:0 10px 10px 10px">
116 116
         <ListView
117 117
           className="wrap"
118
+          style="height: calc(100vh - 78rpx)"
118 119
           needInit
119 120
           isEmpty={isEmpty}
120 121
           emptyText="暂无成交客户~"