Browse Source

Merge branch 'dev' of http://git.ycjcjy.com/shigongli/miniapp-v2 into dev

张延森 3 years ago
parent
commit
8d87d83972

+ 47
- 0
src/components/CollectList/AttractionsCollect/index.jsx View File

@@ -0,0 +1,47 @@
1
+import Taro from "@tarojs/taro";
2
+import { useState } from "react";
3
+import image from '@/assets/icons/ProCard/8kb.jpg'
4
+import Pay from '@/assets/icons/GuideCheck/Pay_logo.png'
5
+import SeeDetails from '@/assets/icons/GuideCheck/SeeDetails.png'
6
+
7
+import Attractions from '@/assets/icons/GuideCheck/Attractions.png'
8
+import food from '@/assets/icons/ProCard/food.png'
9
+import ProCard_hot from '@/assets/icons/ProCard/ProCard_hot.png'
10
+import position from '@/assets/icons/GuideCheck/position_logo.png'
11
+
12
+import starOn from '@/assets/icons/housemantj/onlove.png'
13
+import starOff from '@/assets/icons/housemantj/景点爆赞.png'
14
+import './style.less'
15
+
16
+
17
+export default (props) => {
18
+
19
+  return (
20
+    <view class='wrapper'>
21
+      <view class='left-complete-one' style='padding-top: 20px;'>
22
+        <view className='title-image'>
23
+          <image className='image-1' mode='scaleToFill' src={image}></image>
24
+          <image className='image-2' src={Attractions}></image>
25
+        </view>
26
+        <view className='title-content'>
27
+          <view className='Pro-title'>
28
+            <view className='title-text'>【橘里橘啊换行啊啊啊气咖啡店】新鲜出炉啦!</view>
29
+          </view>
30
+          <text className='title-money' >¥6990元<text className='title-money-2'>门市价78元</text></text>
31
+          <view className='title-position-on'>
32
+            <image className='title-position' src={position} />
33
+            <text className='title-position-image'>南京市/秦淮区</text>
34
+            <image className='title-on' src={starOn} />
35
+          </view>
36
+        </view>
37
+      </view>
38
+      <view class='right-complete-two'>
39
+        <view className='right-content'>
40
+          <image className='right-image' src={SeeDetails} />
41
+          <view className='right-title'>查看详情</view>
42
+        </view>
43
+      </view>
44
+    </view>
45
+  )
46
+}
47
+

+ 228
- 0
src/components/CollectList/AttractionsCollect/style.less View File

@@ -0,0 +1,228 @@
1
+@whiteColor: #fff;
2
+
3
+.wrapper-tourist {
4
+  margin-top: 40px;
5
+  display: flex;
6
+  position: relative;
7
+  // margin-top: 600px;
8
+  // margin: 30px auto;
9
+  width: 700px;
10
+
11
+  // box-shadow: 0px 8px 38px 0px rgba(0, 0, 0, 0.12);
12
+  // filter: drop-shadow(5px 8px 6px rgb(202, 202, 202));
13
+  filter: drop-shadow(0 0 0.9rem rgba(0, 0, 0, 0.12));
14
+  .card-box-star {
15
+    position: absolute;
16
+    width: auto;
17
+    height: 44.3px;
18
+    position: absolute;
19
+    left: 200px;
20
+    top: 28px;
21
+    font-size: 20px;
22
+    color: @whiteColor;
23
+    .card-star-image {
24
+      padding-left: 6px;
25
+      width: 21px;
26
+      height: 21px;
27
+    }
28
+    .card-star-text {
29
+      padding-left: 10px;
30
+      font-size: 20px;
31
+      color: #333;
32
+      font-weight: 700;
33
+    }
34
+  }
35
+
36
+  .left-complete-one {
37
+    padding-top: 85px;
38
+    padding-bottom: 43px;
39
+    position: relative;
40
+    display: flex;
41
+    background: @whiteColor;
42
+    background: radial-gradient(
43
+          circle at top right,
44
+          transparent 15px,
45
+          @whiteColor 0
46
+        )
47
+        top right,
48
+      radial-gradient(circle at bottom right, transparent 15px, @whiteColor 0)
49
+        bottom right;
50
+    background-size: 100% 60%;
51
+    background-repeat: no-repeat;
52
+
53
+    width: 573px;
54
+    border-radius: 15px 0px 0px 15px;
55
+    // border-radius: 12px;
56
+
57
+    align-items: center;
58
+    .left-image-1 {
59
+      width: 145px;
60
+      height: 44px;
61
+      position: absolute;
62
+      top: 22px;
63
+    }
64
+    .left-viewText {
65
+      // background-image: url(@Image-ProCard_hot);
66
+      // width: 287px;
67
+      width: auto;
68
+      height: 44.3px;
69
+      position: absolute;
70
+      left: 1px;
71
+      top: 28px;
72
+      font-size: 20px;
73
+      color: @whiteColor;
74
+    }
75
+    //图片
76
+    .title-image {
77
+      width: 145px;
78
+      margin-left: 20px;
79
+      border-radius: 24px;
80
+      overflow: hidden;
81
+      position: relative;
82
+      .image-1 {
83
+        width: 100%;
84
+        height: 145px;
85
+      }
86
+      .image-2 {
87
+        width: 89px;
88
+        height: 34px;
89
+        position: absolute;
90
+        left: 0;
91
+        top: 0;
92
+      }
93
+    }
94
+    // 商品标题
95
+    .title-content {
96
+      // padding: 84px 0 56px 20px;
97
+      padding-left: 18px;
98
+
99
+      .Pro-title {
100
+        .title-text {
101
+          width: 375px;
102
+          overflow: hidden;
103
+          text-overflow: ellipsis;
104
+          // display: -webkit-box; //必须要
105
+          -webkit-line-clamp: 1;
106
+          -webkit-box-orient: vertical;
107
+          // word-break: break-all; /* 多出文本省略号代替 */
108
+          text-align: left;
109
+          font-size: 24px;
110
+          // padding-bottom: 10px;
111
+        }
112
+      }
113
+      .title-money {
114
+        // padding-top: 34px;
115
+        font-size: 24px;
116
+        // color: red;
117
+        font-weight: 800;
118
+      }
119
+      .title-money-2 {
120
+        font-size: 18px;
121
+        color: #666;
122
+        padding-left: 10px;
123
+        text-decoration: line-through;
124
+      }
125
+
126
+      .title-time {
127
+        font-size: 24px;
128
+        // padding-top: 20px;
129
+        color: #c0c8d3;
130
+      }
131
+      .title-position-on {
132
+        display: flex;
133
+        font-size: 20px;
134
+        .title-position {
135
+          width: 18px;
136
+          height: 24px;
137
+          padding-right: 10px;
138
+          padding-top: 5px;
139
+        }
140
+        .title-position-image {
141
+          align-items: center;
142
+          font-size: 20px;
143
+          color: #333;
144
+        }
145
+        .title-on {
146
+          // margin-bottom: 10px;
147
+          padding-top: 5px;
148
+          padding-left: 40px;
149
+          width: 21px;
150
+          height: 21px;
151
+          padding-right: 10px;
152
+        }
153
+        .title-on-text {
154
+          align-items: center;
155
+
156
+          font-size: 20px;
157
+          color: #333;
158
+        }
159
+      }
160
+    }
161
+  }
162
+  // .left-complete-one:nth-child(2) {
163
+  //   background: rgb(182, 0, 0);
164
+  //   padding-top: 10px;
165
+  // }
166
+}
167
+
168
+.right-complete-two {
169
+  background: @whiteColor;
170
+  background: radial-gradient(
171
+        circle at top left,
172
+        transparent 15px,
173
+        @whiteColor 0
174
+      )
175
+      top left,
176
+    radial-gradient(circle at bottom left, transparent 15px, @whiteColor 0)
177
+      bottom left;
178
+  background-size: 100% 60%;
179
+  background-repeat: no-repeat;
180
+  width: 129px;
181
+  border-radius: 0 15px 15px 0;
182
+  position: relative;
183
+  //右面部分
184
+  .right-content {
185
+    // width: 100px;
186
+    height: 120px;
187
+    position: absolute;
188
+    top: 50%;
189
+    left: 50%;
190
+    transform: translate(-50%, -50%);
191
+    // border: 1px solid red;
192
+
193
+    .right-number {
194
+      // width: 32px;
195
+      // font-size: 20px;
196
+      // border-radius: 4px;
197
+      // border: 2px solid #999;
198
+      // margin: auto;
199
+      // text-align: center;
200
+    }
201
+    .right-image {
202
+      // float: convert();
203
+      width: 35px;
204
+      height: 34px;
205
+      margin: 0 auto;
206
+      align-items: center;
207
+      margin: auto;
208
+      padding-left: 8px;
209
+      // text-align: center;
210
+    }
211
+
212
+    .right-title {
213
+      font-weight: 700;
214
+      font-size: 24px;
215
+      padding-top: 15px;
216
+      text-align: center;
217
+    }
218
+  }
219
+}
220
+//线条
221
+.right-complete-two::after {
222
+  content: "";
223
+  position: absolute;
224
+  top: 15px;
225
+  margin: 26px auto;
226
+  height: 70%;
227
+  border-left: 1px dashed #595959;
228
+}

+ 147
- 0
src/components/CollectList/FoodCollect/index.jsx View File

@@ -0,0 +1,147 @@
1
+import Taro from '@tarojs/taro'
2
+import useSave from "@/utils/hooks/useSave"
3
+import useLike from "@/utils/hooks/useLike"
4
+
5
+import { getShopDetail, getShopcity } from '@/services/home'
6
+import { useState, useEffect } from 'react'
7
+import { View } from '@tarojs/components'
8
+
9
+import Star from '@/components/Star/Star.jsx'
10
+import position from '@/assets/icons/GuideCheck/position_logo.png'
11
+import SeeDetails from '@/assets/icons/GuideCheck/SeeDetails.png'
12
+import Attractions from '@/assets/icons/GuideCheck/Attractions.png'
13
+import baozan from '@/assets/icons/housemantj/爆赞.png'
14
+import weibaozan from '@/assets/icons/housemantj/未赞.png'
15
+import starOn from '@/assets/icons/housemantj/onlove.png'
16
+import starOff from '@/assets/icons/housemantj/景点爆赞.png'
17
+import food from '@/assets/icons/ProCard/food.png'
18
+import ProCard_hot from '@/assets/icons/ProCard/ProCard_hot.png'
19
+
20
+
21
+
22
+
23
+import './style.less'
24
+
25
+export default (props) => {
26
+  const { item, cardNavigateTo } = props
27
+  const shopId = props.item
28
+  const [isSaved, toggleSave] = useSave(item.isSaved, 'shop_package', item.targetId)
29
+  const [isLike, toggleLike] = useLike(item.isLike, 'shop', item.targetId)
30
+
31
+  const [city, setCity] = useState({})
32
+  const [detail, setDetail] = useState({})
33
+  const [hotStyle, setHotStyle] = useState('none')
34
+  const targetType = item.targetType
35
+  // item.targetType !== 'shop_package'
36
+
37
+
38
+  const goFood = () => {
39
+    // Taro.navigateTo({ url: `/pages/details/foodDetails/foodDetails?id=${shopId}` })
40
+  }
41
+
42
+  // useEffect(() => {
43
+  //   if (shopId) {
44
+  //     getShopDetail(item.shopId).then((res) => {
45
+  //       setDetail(res)
46
+  //       getShopcity(res.cityId).then((x) => {
47
+  //         setCity(x)
48
+  //       })
49
+  //     })
50
+  //   }
51
+
52
+  // }, [shopId, targetType])
53
+
54
+  // useEffect(() => {
55
+  //   if (item.targetType !== 'shop_package') {
56
+  //     console.log(item.targetType);
57
+  //   }
58
+
59
+  // }, [item.targetType])
60
+
61
+
62
+
63
+  const star = parseFloat(((item.sweetScore + item.environmentScore + item.serviceScore) / 3).toFixed(1));
64
+  return (
65
+    <View>
66
+      {
67
+        targetType === "shop_package" && (
68
+          <view class='wrapper'>
69
+            <view class='left-complete-one'   >
70
+              <image className='left-image-1' src={ProCard_hot} style={{ display: item.targetType === 'shop_package' ? '' : 'none' }} ></image>
71
+              <view className='left-viewText'  >
72
+                返现¥{item.cashback / 100}
73
+              </view>
74
+              {/* 评分 */}
75
+              <view className='card-box-star' style={{ display: item.targetType === 'shop_package' ? '' : 'none' }} >
76
+                <Star star={star} />
77
+                <text className='card-star-text' >{star}</text>
78
+              </view>
79
+              <view className='title-image' onClick={() => { goFood() }}>
80
+                <image className='image-1' mode='scaleToFill' src={item.poster}></image>
81
+                <image className='image-2' src={item.targetType === 'tourist' ? Attractions : food}></image>
82
+              </view>
83
+              <view className='title-content'>
84
+                <view className='Pro-title' onClick={() => { goFood() }} >
85
+                  <view className='title-text'>{(item.title).toString().length > 25 ? (item.title).substring(0, 25) + '...' : (item.title)}</view>
86
+                </view>
87
+                <text className='title-money' >¥{item.actualPrice / 100}元<text className='title-money-2'>门市价{item.standardPrice / 100}元</text></text>
88
+                <view className='title-position-on'>
89
+                  <image className='title-position' src={position} />
90
+                  <text className='title-position-image'>{item.areaPName}/{item.areaName}</text>
91
+                </view>
92
+              </view>
93
+            </view>
94
+            <view class='right-complete-two'>
95
+              <view className='right-content' onClick={() => { Taro.navigateTo({ url: `/pages/PayOrder/index?packageId=${item.packageId}` }); }}>
96
+                {/* <view className='right-number'>×1</view> */}
97
+                <image className='right-image' src={SeeDetails} />
98
+                <view className='right-title'>查看详情</view>
99
+              </view>
100
+            </view>
101
+          </view>
102
+        )
103
+      }
104
+      <View>
105
+        {
106
+          targetType !== "shop_package" && (
107
+            <view class='wrapper-tourist'>
108
+              <view class='left-complete-one'   >
109
+                <view className='title-image' onClick={() => { goFood() }}>
110
+                  <image className='image-1' mode='scaleToFill' src={item.poster}></image>
111
+                  <image className='image-2' src={item.targetType === 'tourist' ? Attractions : food}></image>
112
+                </view>
113
+                <view className='title-content'>
114
+                  <view className='Pro-title' onClick={() => { goFood() }} >
115
+                    <view className='title-text'>{(item.title).toString().length > 25 ? (item.title).substring(0, 25) + '...' : (item.title)}</view>
116
+                  </view>
117
+                  <text className='title-money' >¥{item.actualPrice / 100}元<text className='title-money-2'>门市价{item.standardPrice / 100}元</text></text>
118
+                  <view onClick={toggleSave}>
119
+                    <image className='title-on' src={isLike > 0 ? baozan : weibaozan} />
120
+                    <text onClick={toggleLike} className='title-on-text'>{isLike > 0 ? '已爆赞' : '爆赞'}</text>
121
+                  </view>
122
+                  <view className='title-position-on'>
123
+
124
+                    <image className='title-position' src={position} />
125
+
126
+                    <text className='title-position-image'>{item.areaPName}/{item.areaName}</text>
127
+
128
+                  </view>
129
+                </view>
130
+              </view>
131
+              <view class='right-complete-two'>
132
+                <view className='right-content' onClick={() => { Taro.navigateTo({ url: `/pages/PayOrder/index?packageId=${item.packageId}` }); }}>
133
+                  {/* <view className='right-number'>×1</view> */}
134
+                  <image className='right-image' src={SeeDetails} />
135
+                  <view className='right-title'>查看详情</view>
136
+                </view>
137
+              </view>
138
+            </view>
139
+          )
140
+        }
141
+      </View>
142
+
143
+    </View>
144
+
145
+
146
+  )
147
+}

+ 456
- 0
src/components/CollectList/FoodCollect/style.less View File

@@ -0,0 +1,456 @@
1
+@whiteColor: #fff;
2
+
3
+.wrapper {
4
+  margin-top: 40px;
5
+  display: flex;
6
+  position: relative;
7
+  // margin-top: 600px;
8
+  // margin: 30px auto;
9
+  width: 700px;
10
+
11
+  // box-shadow: 0px 8px 38px 0px rgba(0, 0, 0, 0.12);
12
+  // filter: drop-shadow(5px 8px 6px rgb(202, 202, 202));
13
+  filter: drop-shadow(0 0 0.9rem rgba(0, 0, 0, 0.12));
14
+  .card-box-star {
15
+    position: absolute;
16
+    width: auto;
17
+    height: 44.3px;
18
+    position: absolute;
19
+    left: 200px;
20
+    top: 28px;
21
+    font-size: 20px;
22
+    color: @whiteColor;
23
+    .card-star-image {
24
+      padding-left: 6px;
25
+      width: 21px;
26
+      height: 21px;
27
+    }
28
+    .card-star-text {
29
+      padding-left: 10px;
30
+      font-size: 20px;
31
+      color: #333;
32
+      font-weight: 700;
33
+    }
34
+  }
35
+
36
+  .left-complete-one {
37
+    padding-top: 85px;
38
+    padding-bottom: 43px;
39
+    position: relative;
40
+    display: flex;
41
+    background: @whiteColor;
42
+    background: radial-gradient(
43
+          circle at top right,
44
+          transparent 15px,
45
+          @whiteColor 0
46
+        )
47
+        top right,
48
+      radial-gradient(circle at bottom right, transparent 15px, @whiteColor 0)
49
+        bottom right;
50
+    background-size: 100% 60%;
51
+    background-repeat: no-repeat;
52
+
53
+    width: 573px;
54
+    border-radius: 15px 0px 0px 15px;
55
+    // border-radius: 12px;
56
+
57
+    align-items: center;
58
+    .left-image-1 {
59
+      width: 145px;
60
+      height: 44px;
61
+      position: absolute;
62
+      top: 22px;
63
+    }
64
+    .left-viewText {
65
+      // background-image: url(@Image-ProCard_hot);
66
+      // width: 287px;
67
+      width: auto;
68
+      height: 44.3px;
69
+      position: absolute;
70
+      left: 1px;
71
+      top: 28px;
72
+      font-size: 20px;
73
+      color: @whiteColor;
74
+    }
75
+    //图片
76
+    .title-image {
77
+      width: 145px;
78
+      margin-left: 20px;
79
+      border-radius: 24px;
80
+      overflow: hidden;
81
+      position: relative;
82
+      .image-1 {
83
+        width: 100%;
84
+        height: 145px;
85
+      }
86
+      .image-2 {
87
+        width: 89px;
88
+        height: 34px;
89
+        position: absolute;
90
+        left: 0;
91
+        top: 0;
92
+      }
93
+    }
94
+    // 商品标题
95
+    .title-content {
96
+      // padding: 84px 0 56px 20px;
97
+      padding-left: 18px;
98
+
99
+      .Pro-title {
100
+        .title-text {
101
+          width: 375px;
102
+          overflow: hidden;
103
+          text-overflow: ellipsis;
104
+          // display: -webkit-box; //必须要
105
+          -webkit-line-clamp: 1;
106
+          -webkit-box-orient: vertical;
107
+          // word-break: break-all; /* 多出文本省略号代替 */
108
+          text-align: left;
109
+          font-size: 24px;
110
+          // padding-bottom: 10px;
111
+        }
112
+      }
113
+      .title-money {
114
+        // padding-top: 34px;
115
+        font-size: 24px;
116
+        // color: red;
117
+        font-weight: 800;
118
+      }
119
+      .title-money-2 {
120
+        font-size: 18px;
121
+        color: #666;
122
+        padding-left: 10px;
123
+        text-decoration: line-through;
124
+      }
125
+
126
+      .title-time {
127
+        font-size: 24px;
128
+        // padding-top: 20px;
129
+        color: #c0c8d3;
130
+      }
131
+      .title-position-on {
132
+        display: flex;
133
+        font-size: 20px;
134
+        .title-position {
135
+          width: 18px;
136
+          height: 24px;
137
+          padding-right: 10px;
138
+          padding-top: 5px;
139
+        }
140
+        .title-position-image {
141
+          align-items: center;
142
+          font-size: 20px;
143
+          color: #333;
144
+        }
145
+        .title-on {
146
+          // margin-bottom: 10px;
147
+          padding-top: 5px;
148
+          padding-left: 40px;
149
+          width: 21px;
150
+          height: 21px;
151
+          padding-right: 10px;
152
+        }
153
+        .title-on-text {
154
+          align-items: center;
155
+
156
+          font-size: 20px;
157
+          color: #333;
158
+        }
159
+      }
160
+    }
161
+  }
162
+  // .left-complete-one:nth-child(2) {
163
+  //   background: rgb(182, 0, 0);
164
+  //   padding-top: 10px;
165
+  // }
166
+}
167
+
168
+.right-complete-two {
169
+  background: @whiteColor;
170
+  background: radial-gradient(
171
+        circle at top left,
172
+        transparent 15px,
173
+        @whiteColor 0
174
+      )
175
+      top left,
176
+    radial-gradient(circle at bottom left, transparent 15px, @whiteColor 0)
177
+      bottom left;
178
+  background-size: 100% 60%;
179
+  background-repeat: no-repeat;
180
+  width: 129px;
181
+  border-radius: 0 15px 15px 0;
182
+  position: relative;
183
+  //右面部分
184
+  .right-content {
185
+    // width: 100px;
186
+    height: 120px;
187
+    position: absolute;
188
+    top: 50%;
189
+    left: 50%;
190
+    transform: translate(-50%, -50%);
191
+    // border: 1px solid red;
192
+
193
+    .right-number {
194
+      // width: 32px;
195
+      // font-size: 20px;
196
+      // border-radius: 4px;
197
+      // border: 2px solid #999;
198
+      // margin: auto;
199
+      // text-align: center;
200
+    }
201
+    .right-image {
202
+      // float: convert();
203
+      width: 35px;
204
+      height: 34px;
205
+      margin: 0 auto;
206
+      align-items: center;
207
+      margin: auto;
208
+      padding-left: 8px;
209
+      // text-align: center;
210
+    }
211
+
212
+    .right-title {
213
+      font-weight: 700;
214
+      font-size: 24px;
215
+      padding-top: 15px;
216
+      text-align: center;
217
+    }
218
+  }
219
+}
220
+//线条
221
+.right-complete-two::after {
222
+  content: "";
223
+  position: absolute;
224
+  top: 15px;
225
+  margin: 26px auto;
226
+  height: 70%;
227
+  border-left: 1px dashed #595959;
228
+}
229
+
230
+
231
+.wrapper-tourist {
232
+  margin-top: 40px;
233
+  display: flex;
234
+  position: relative;
235
+  // margin-top: 600px;
236
+  // margin: 30px auto;
237
+  width: 700px;
238
+
239
+  // box-shadow: 0px 8px 38px 0px rgba(0, 0, 0, 0.12);
240
+  // filter: drop-shadow(5px 8px 6px rgb(202, 202, 202));
241
+  filter: drop-shadow(0 0 0.9rem rgba(0, 0, 0, 0.12));
242
+  .card-box-star {
243
+    position: absolute;
244
+    width: auto;
245
+    height: 44.3px;
246
+    position: absolute;
247
+    left: 200px;
248
+    top: 28px;
249
+    font-size: 20px;
250
+    color: @whiteColor;
251
+    .card-star-image {
252
+      padding-left: 6px;
253
+      width: 21px;
254
+      height: 21px;
255
+    }
256
+    .card-star-text {
257
+      padding-left: 10px;
258
+      font-size: 20px;
259
+      color: #333;
260
+      font-weight: 700;
261
+    }
262
+  }
263
+
264
+  .left-complete-one {
265
+    padding-top: 35px;
266
+    padding-bottom: 43px;
267
+    position: relative;
268
+    display: flex;
269
+    background: @whiteColor;
270
+    background: radial-gradient(
271
+          circle at top right,
272
+          transparent 15px,
273
+          @whiteColor 0
274
+        )
275
+        top right,
276
+      radial-gradient(circle at bottom right, transparent 15px, @whiteColor 0)
277
+        bottom right;
278
+    background-size: 100% 60%;
279
+    background-repeat: no-repeat;
280
+
281
+    width: 573px;
282
+    border-radius: 15px 0px 0px 15px;
283
+    // border-radius: 12px;
284
+
285
+    align-items: center;
286
+    .left-image-1 {
287
+      width: 145px;
288
+      height: 44px;
289
+      position: absolute;
290
+      top: 22px;
291
+    }
292
+    .left-viewText {
293
+      // background-image: url(@Image-ProCard_hot);
294
+      // width: 287px;
295
+      width: auto;
296
+      height: 44.3px;
297
+      position: absolute;
298
+      left: 1px;
299
+      top: 28px;
300
+      font-size: 20px;
301
+      color: @whiteColor;
302
+    }
303
+    //图片
304
+    .title-image {
305
+      width: 145px;
306
+      margin-left: 20px;
307
+      border-radius: 24px;
308
+      overflow: hidden;
309
+      position: relative;
310
+      .image-1 {
311
+        width: 100%;
312
+        height: 145px;
313
+      }
314
+      .image-2 {
315
+        width: 89px;
316
+        height: 34px;
317
+        position: absolute;
318
+        left: 0;
319
+        top: 0;
320
+      }
321
+    }
322
+    // 商品标题
323
+    .title-content {
324
+      // padding: 84px 0 56px 20px;
325
+      padding-left: 18px;
326
+
327
+      .Pro-title {
328
+        .title-text {
329
+          width: 375px;
330
+          overflow: hidden;
331
+          text-overflow: ellipsis;
332
+          // display: -webkit-box; //必须要
333
+          -webkit-line-clamp: 1;
334
+          -webkit-box-orient: vertical;
335
+          // word-break: break-all; /* 多出文本省略号代替 */
336
+          text-align: left;
337
+          font-size: 24px;
338
+          // padding-bottom: 10px;
339
+        }
340
+      }
341
+      .title-money {
342
+        // padding-top: 34px;
343
+        font-size: 24px;
344
+        // color: red;
345
+        font-weight: 800;
346
+      }
347
+      .title-money-2 {
348
+        font-size: 18px;
349
+        color: #666;
350
+        padding-left: 10px;
351
+        text-decoration: line-through;
352
+      }
353
+
354
+      .title-time {
355
+        font-size: 24px;
356
+        // padding-top: 20px;
357
+        color: #c0c8d3;
358
+      }
359
+      .title-position-on {
360
+        display: flex;
361
+        font-size: 20px;
362
+        .title-position {
363
+          width: 18px;
364
+          height: 24px;
365
+          padding-right: 10px;
366
+          padding-top: 5px;
367
+        }
368
+        .title-position-image {
369
+          align-items: center;
370
+          font-size: 20px;
371
+          color: #333;
372
+        }
373
+        .title-on {
374
+          // margin-bottom: 10px;
375
+          padding-top: 5px;
376
+          padding-left: 40px;
377
+          width: 21px;
378
+          height: 21px;
379
+          padding-right: 10px;
380
+        }
381
+   
382
+      }
383
+      .title-on-text {
384
+        align-items: center;
385
+        font-size: 20px;
386
+        color: #333;
387
+      }
388
+    }
389
+  }
390
+  // .left-complete-one:nth-child(2) {
391
+  //   background: rgb(182, 0, 0);
392
+  //   padding-top: 10px;
393
+  // }
394
+}
395
+
396
+.right-complete-two {
397
+  background: @whiteColor;
398
+  background: radial-gradient(
399
+        circle at top left,
400
+        transparent 15px,
401
+        @whiteColor 0
402
+      )
403
+      top left,
404
+    radial-gradient(circle at bottom left, transparent 15px, @whiteColor 0)
405
+      bottom left;
406
+  background-size: 100% 60%;
407
+  background-repeat: no-repeat;
408
+  width: 129px;
409
+  border-radius: 0 15px 15px 0;
410
+  position: relative;
411
+  //右面部分
412
+  .right-content {
413
+    // width: 100px;
414
+    height: 120px;
415
+    position: absolute;
416
+    top: 50%;
417
+    left: 50%;
418
+    transform: translate(-50%, -50%);
419
+    // border: 1px solid red;
420
+
421
+    .right-number {
422
+      // width: 32px;
423
+      // font-size: 20px;
424
+      // border-radius: 4px;
425
+      // border: 2px solid #999;
426
+      // margin: auto;
427
+      // text-align: center;
428
+    }
429
+    .right-image {
430
+      // float: convert();
431
+      width: 35px;
432
+      height: 34px;
433
+      margin: 0 auto;
434
+      align-items: center;
435
+      margin: auto;
436
+      padding-left: 8px;
437
+      // text-align: center;
438
+    }
439
+
440
+    .right-title {
441
+      font-weight: 700;
442
+      font-size: 24px;
443
+      padding-top: 15px;
444
+      text-align: center;
445
+    }
446
+  }
447
+}
448
+//线条
449
+.right-complete-two::after {
450
+  content: "";
451
+  position: absolute;
452
+  top: 15px;
453
+  margin: 26px auto;
454
+  height: 70%;
455
+  border-left: 1px dashed #595959;
456
+}

+ 17
- 17
src/components/ShopUsed/index.jsx View File

@@ -1,6 +1,6 @@
1 1
 import Taro from '@tarojs/taro'
2 2
 import { getShopList, getVerifiedOrder, setGetVerifiedOrder } from '@/services/shopBoss'
3
-
3
+import { View, Button, Text, Image } from '@tarojs/components'
4 4
 import { useState, useEffect } from 'react'
5 5
 import iconsearch from '@/assets/icons/housemantj/search.png'
6 6
 import ms from '@/assets/icons/housemantj/ms3.jpg'
@@ -34,22 +34,22 @@ export default (props) => {
34 34
   }, [])
35 35
 
36 36
   return (
37
-    <view className='orderCard'>
38
-      <view style={{ overflow: 'hidden' }}>
39
-        <view className='orderId'>订单编号:{item.orderId}</view>
40
-        <view className='orderTime'>下单日期:{formatTimes(item.orderDate, 'yyyy-MM-dd hh:ss')}</view>
41
-      </view>
42
-      <view className='order'>
43
-        <image className='orderImg' src={item.poster} mode='aspectFit' />
44
-        <view className='orderRight'>
45
-          <view className='foodName'>{item.description}</view>
46
-          <view className='price'>合计金额:¥<text style={{ fontSize: '24rpx' }}>{item.actualPrice / 100}</text>元 <text className='pnum'>数量:<text>1</text>张</text> </view>
47
-        </view>
48
-        <view className='line' />
49
-        <view className='phone'>客户手机:<text>{item.phone.replace(/^(\d{3})\d{4}(\d+)/, "$1****$2") || ''}</text>
50
-          <button className='button-OK' onClick={confirmOrder} style={{ display: buttonStyle }}  >确认核销</button> </view>
51
-      </view>
52
-    </view>
37
+    <View className='orderCard'>
38
+      <View style={{ overflow: 'hidden' }}>
39
+        <View className='orderId'>订单编号:{item.orderId}</View>
40
+        <View className='orderTime'>下单日期:{formatTimes(item.orderDate, 'yyyy-MM-dd hh:ss')}</View>
41
+      </View>
42
+      <View className='order'>
43
+        <Image className='orderImg' src={item.poster} mode='aspectFit' />
44
+        <View className='orderRight'>
45
+          <View className='foodName'>{item.description}</View>
46
+          <View className='price'>合计金额:¥<Text style={{ fontSize: '24rpx' }}>{item.actualPrice / 100}</Text>元 <Text className='pnum'>数量:<Text>1</Text>张</Text> </View>
47
+        </View>
48
+        <View className='line' />
49
+        <View className='phone'>客户手机:<Text>{item.phone.replace(/^(\d{3})\d{4}(\d+)/, "$1****$2") || ''}</Text>
50
+          <button className='Button-OK' onClick={confirmOrder} style={{ display: buttonStyle }}  >确认核销</button> </View>
51
+      </View>
52
+    </View>
53 53
   )
54 54
 }
55 55
 

+ 23
- 20
src/components/ShopUsed/style.less View File

@@ -69,20 +69,16 @@
69 69
       line-height: 44px;
70 70
       height: 23px;
71 71
       margin: 30px 0;
72
+      // .Button-OK{
73
+      //   font-size: 28px;   
74
+      //   color: #C0C8D3;
75
+      //   line-height: 34px;
76
+      //   text-align: center;
77
+      //   padding:40px 0 100px 0;
78
+      // }
79
+
72 80
     }
73
-    .button-OK{
74
-      width: 160px;
75
-    height: 40px;
76
-    background: #1A3B83;
77
-    /* margin: 0 auto; */
78
-    line-height: 40px;
79
-    border-radius: 12px;
80
-    font-size: 23px;
81
-    color: #ffffff;
82
-    position: relative;
83
-    right: -8em;
84
-    top: -2em;
85
-    }
81
+
86 82
     .tripTime{
87 83
       font-size: 24px;
88 84
       color: #666666;
@@ -90,12 +86,19 @@
90 86
       margin-bottom: 30px;
91 87
     }
92 88
   }
89
+
93 90
   
94 91
 }
95
-.botton{
96
-  font-size: 28px;   
97
-  color: #C0C8D3;
98
-  line-height: 34px;
99
-  text-align: center;
100
-  padding:40px 0 100px 0;
101
-}
92
+button{
93
+  width: 160px;
94
+height: 40px;
95
+background: #1A3B83;
96
+/* margin: 0 auto; */
97
+line-height: 40px;
98
+border-radius: 12px;
99
+font-size: 23px;
100
+color: #ffffff;
101
+position: relative;
102
+right: -8em;
103
+top: -2em;
104
+}

+ 35
- 123
src/pages/MineUserAll/Collect/index.jsx View File

@@ -1,156 +1,68 @@
1 1
 
2 2
 import CustomNav from '@/components/CustomNav'
3
-import { useState } from "react";
3
+import { useState, useEffect } from "react";
4 4
 import withLayout from '@/layouts'
5 5
 
6 6
 import Taro from '@tarojs/taro'
7 7
 import image from '@/assets/icons/ProCard/8kb.jpg'
8 8
 import Pay from '@/assets/icons/GuideCheck/Pay_logo.png'
9 9
 import SeeDetails from '@/assets/icons/GuideCheck/SeeDetails.png'
10
+import { getCollectList } from '@/services/home'
10 11
 
11 12
 import Attractions from '@/assets/icons/GuideCheck/Attractions.png'
12 13
 import food from '@/assets/icons/ProCard/food.png'
13 14
 import ProCard_hot from '@/assets/icons/ProCard/ProCard_hot.png'
14 15
 import position from '@/assets/icons/GuideCheck/position_logo.png'
15
-
16 16
 import starOn from '@/assets/icons/GuideCheck/starOn.png'
17 17
 import starOff from '@/assets/icons/GuideCheck/starOff.png'
18
+import AttractionsCollect from '@/components/CollectList/AttractionsCollect'
19
+import FoodCollect from '@/components/CollectList/FoodCollect'
20
+
18 21
 
19 22
 import './style.less'
20 23
 
21
-const scoreList = new Array(5).fill(0)
22
-const score = '3.9'
23 24
 
24 25
 export default withLayout((props) => {
25
-  const { router, person } = props
26
+  const { router, person, location } = props
27
+  console.log("🚀 ~ file: index.jsx ~ line 27 ~ withLayout ~ props", props)
28
+  const [collectContent, setCollectContent] = useState([])
29
+
26 30
 
27
-  const [value, setVaule] = useState('已收藏')
28
-  const [imageSrc, setImageSrc] = useState(starOn)
29 31
 
32
+  useEffect(() => {
33
+    getCollectList({
34
+      pageNum: 1,
35
+      pageSize: 99,
36
+      location: location,
37
+
38
+    }).then(val => {
39
+      setCollectContent(val.records)
40
+    })
41
+  }, [location])
30 42
 
31 43
 
32 44
 
33
-  const Ac = () => {
34
-    setImageSrc(starOff)
35
-    setVaule('加入收藏')
36
-    // console.log('------------', value);
37 45
 
38
-  }
39 46
   return (
40 47
     <view className='box-content'>
41 48
       <CustomNav title='我的收藏' />
42
-      <view class='wrapper'>
43
-        <view class='left-complete-one'>
44
-          <image className='left-image-1' src={ProCard_hot}></image>
45
-          <view className='left-viewText'>
46
-            返现¥16.00
47
-          </view>
48
-          {/* 评分 */}
49
-          <view className='card-box-star'>
50
-            {
51
-              scoreList.map((_, index) => {
52
-
53
-                const src = (index + '0.1') < score ? starOn : starOff
54
-                return (
55
-                  <image className='card-star-image' key={index} src={src} />
56
-                )
57
-              })
58
-            }
59
-            <text className='card-star-text' >{score}</text>
60
-          </view>
61
-          <view className='title-image'>
62
-            <image className='image-1' mode='scaleToFill' src={image}></image>
63
-            <image className='image-2' src={food}></image>
64
-          </view>
65
-          <view className='title-content'>
66
-            <view className='Pro-title'>
67
-              <view className='title-text'>【橘里橘啊换行啊啊啊气咖啡店】新鲜出炉啦!</view>
68
-            </view>
69
-            <text className='title-money' >¥6990元<text className='title-money-2'>门市价78元</text></text>
70
-            <view className='title-position-on'>
71
-              <image className='title-position' src={position} />
72
-              <text className='title-position-image'>南京市/秦淮区</text>
73
-              <image className='title-on' src={imageSrc} />
74
-              <text onClick={() => Ac()} className='title-on-text'>{value}</text>
75
-            </view>
76
-          </view>
77
-        </view>
78
-        <view class='right-complete-two'>
79
-          <view className='right-content'>
80
-            <image className='right-image' src={SeeDetails} />
81
-            <view className='right-title'>查看详情</view>
82
-          </view>
83
-        </view>
84
-      </view>
85
-      <view class='wrapper'>
86
-        <view class='left-complete-one'>
87
-          <image className='left-image-1' src={ProCard_hot}></image>
88
-          <view className='left-viewText'>
89
-            返现¥16.00
90
-          </view>
91
-          {/* 评分 */}
92
-          <view className='card-box-star'>
93
-            {
94
-              scoreList.map((_, index) => {
95
-
96
-                const src = (index + '0.1') < score ? starOn : starOff
97
-                return (
98
-                  <image className='card-star-image' key={index} src={src} />
99
-                )
100
-              })
101
-            }
102
-            <text className='card-star-text' >{score}</text>
103
-          </view>
104
-          <view className='title-image'>
105
-            <image className='image-1' mode='scaleToFill' src={image}></image>
106
-            <image className='image-2' src={food}></image>
107
-          </view>
108
-          <view className='title-content'>
109
-            <view className='Pro-title'>
110
-              <view className='title-text'>【橘里橘啊换行啊啊啊气咖啡店】新鲜出炉啦!</view>
111
-            </view>
112
-            <text className='title-money' >¥6990元<text className='title-money-2'>门市价78元</text></text>
113
-            <view className='title-position-on'>
114
-              <image className='title-position' src={position} />
115
-              <text className='title-position-image'>南京市/秦淮区</text>
116
-              <image className='title-on' src={imageSrc} />
117
-              <text onClick={() => Ac()} className='title-on-text'>{value}</text>
118
-            </view>
119
-          </view>
120
-        </view>
121
-        <view class='right-complete-two'>
122
-          <view className='right-content'>
123
-            <image className='right-image' src={SeeDetails} />
124
-            <view className='right-title'>查看详情</view>
125
-          </view>
126
-        </view>
127
-      </view>
128
-      <view class='wrapper'>
129
-        <view class='left-complete-one' style='padding-top: 20px;'>
130
-          <view className='title-image'>
131
-            <image className='image-1' mode='scaleToFill' src={image}></image>
132
-            <image className='image-2' src={Attractions}></image>
133
-          </view>
134
-          <view className='title-content'>
135
-            <view className='Pro-title'>
136
-              <view className='title-text'>【橘里橘啊换行啊啊啊气咖啡店】新鲜出炉啦!</view>
137
-            </view>
138
-            <text className='title-money' >¥6990元<text className='title-money-2'>门市价78元</text></text>
139
-            <view className='title-position-on'>
140
-              <image className='title-position' src={position} />
141
-              <text className='title-position-image'>南京市/秦淮区</text>
142
-              <image className='title-on' src={imageSrc} />
143
-              <text onClick={() => Ac()} className='title-on-text'>{value}</text>
144
-            </view>
145
-          </view>
146
-        </view>
147
-        <view class='right-complete-two'>
148
-          <view className='right-content'>
149
-            <image className='right-image' src={SeeDetails} />
150
-            <view className='right-title'>查看详情</view>
151
-          </view>
152
-        </view>
49
+
50
+      <view>
51
+        {
52
+          collectContent.map((item, index) => {
53
+            return <FoodCollect key={(index)} item={item} />
54
+          })
55
+
56
+        }
57
+
58
+
153 59
       </view>
60
+      {/* {
61
+        collectContent.map((item, index) => {
62
+          return <AttractionsCollect key={(index)} item={item} />
63
+        })
64
+
65
+      } */}
154 66
       <view className='foot'>
155 67
         已经到底了~
156 68
       </view>

+ 1
- 0
src/pages/RoomOrder/components/RoomForm/index.jsx View File

@@ -2,6 +2,7 @@ import { useState, useEffect } from 'react'
2 2
 import Taro from '@tarojs/taro'
3 3
 import { Text, Input } from '@tarojs/components'
4 4
 import './style.less'
5
+import { useShareTimeline } from '@tarojs/taro'
5 6
 
6 7
 
7 8
 

+ 22
- 22
src/pages/TobeShop/index.jsx View File

@@ -12,7 +12,7 @@ import image from "@/assets/icons/ProCard/8kb.jpg";
12 12
 import food from "@/assets/icons/ProCard/food.png";
13 13
 import ProCard_hot from "@/assets/icons/ProCard/ProCard_hot.png";
14 14
 import { Button, Icon, Text, Textarea } from "@tarojs/components";
15
-import { getVerifyTargetList,putVerifyTarget } from "@/services/payOrder";
15
+import { getVerifyTargetList, putVerifyTarget } from "@/services/payOrder";
16 16
 import formatTime from '@/utils/formatTime'
17 17
 import "./style.less";
18 18
 import Taro from "@tarojs/taro";
@@ -26,7 +26,7 @@ export default withLayout((props) => {
26 26
 
27 27
   const [checked, setChecked] = useState();
28 28
 
29
-  
29
+
30 30
 
31 31
   const [list, setList] = useState([]);
32 32
 
@@ -35,17 +35,17 @@ export default withLayout((props) => {
35 35
       shopId: id,
36 36
       isMine: true,
37 37
       isVerified: 0,
38
-      pageNum:1,
39
-      pageSize:50,
38
+      pageNum: 1,
39
+      pageSize: 50,
40 40
     }).then((res) => {
41
-      if(res){
41
+      if (res) {
42 42
         setList(res.records)
43
-        
44
-          setChecked(res?.records.filter(x=>x.subOrderId==subOrderId)[0].verifyNo)
45
-        
43
+
44
+        setChecked(res?.records.filter(x => x.subOrderId == subOrderId)[0]?.verifyNo)
45
+
46 46
         // if(item.verifyNo==checked)
47 47
       }
48
-      
48
+
49 49
     });
50 50
   };
51 51
 
@@ -60,18 +60,18 @@ export default withLayout((props) => {
60 60
     setShowDialog(false);
61 61
   };
62 62
   const ButtonOK = (e) => {
63
-    if(!checked) return
63
+    if (!checked) return
64 64
     // setShowDialog(false)
65 65
     if (showDialog === true) {
66 66
       Taro.showLoading({
67
-        title:'核销中'
67
+        title: '核销中'
68 68
       })
69
-    
70
-      putVerifyTarget(checked).then(res=>{
69
+
70
+      putVerifyTarget(checked).then(res => {
71 71
         Taro.hideLoading()
72 72
         setShowDialog(false);
73 73
         setConsumption(true);
74
-      }).catch(e=>{
74
+      }).catch(e => {
75 75
         Taro.hideLoading()
76 76
         setShowDialog(false);
77 77
         Taro.showToast({
@@ -85,10 +85,10 @@ export default withLayout((props) => {
85 85
 
86 86
   const PerfectionOK = () => {
87 87
     setConsumption(false);
88
-    if(list?.length>1){
88
+    if (list?.length > 1) {
89 89
       getList()
90
-    }else{
91
-      Taro.navigateBack({delta: 1})
90
+    } else {
91
+      Taro.navigateBack({ delta: 1 })
92 92
     }
93 93
   };
94 94
 
@@ -136,12 +136,12 @@ export default withLayout((props) => {
136 136
         </view>
137 137
         <view>
138 138
           {list?.map((item) => {
139
-            
139
+
140 140
             return (
141
-              <view class="wrapper" key={item.verifyNo} onClick={()=>setChecked(item.verifyNo)}>
141
+              <view class="wrapper" key={item.verifyNo} onClick={() => setChecked(item.verifyNo)}>
142 142
                 <view class="left-complete-one">
143 143
                   <view className="Check_OK-box">
144
-                    <image className="Check_OK-image" src={item.verifyNo==checked? Check_OK:Check_NO} />
144
+                    <image className="Check_OK-image" src={item.verifyNo == checked ? Check_OK : Check_NO} />
145 145
                   </view>
146 146
                   <image className="left-image-1" src={ProCard_hot}></image>
147 147
                   <view className="left-viewText">返现¥16.00</view>
@@ -161,11 +161,11 @@ export default withLayout((props) => {
161 161
                       </view>
162 162
                     </view>
163 163
                     <text className="title-money">
164
-                      ¥{item.actualPrice/100}元<text className="title-money-2">门市价{item.standPrice/100}元</text>
164
+                      ¥{item.actualPrice / 100}元<text className="title-money-2">门市价{item.standPrice / 100}元</text>
165 165
                     </text>
166 166
                     <view className="title-time">
167 167
                       有效期:{formatTime(item?.createDate, "yyyy/MM/dd")}-
168
-                        {formatTime(item?.expireDate, "yyyy/MM/dd")}
168
+                      {formatTime(item?.expireDate, "yyyy/MM/dd")}
169 169
                     </view>
170 170
                   </view>
171 171
                 </view>

+ 6
- 5
src/pages/details/foodDetails/foodDetails.jsx View File

@@ -23,18 +23,19 @@ import './foodDetails.less'
23 23
 
24 24
 export default withLayout((props) => {
25 25
   const { router, person } = props
26
-  const { id, subOrderId} = props.router.params
26
+  const { id, subOrderId } = props.router.params
27 27
   // console.log(id,subOrderId,'--333-----')
28
-  useEffect(()=>{
29
-    console.log(id,subOrderId,'-------')
30
-    if(id&&subOrderId){
28
+  useEffect(() => {
29
+    console.log(id, subOrderId, '-------')
30
+    if (id && subOrderId) {
31 31
       Taro.navigateTo({
32 32
         url: `/pages/TobeShop/index?id=${id}&subOrderId=${subOrderId}`,
33 33
       });
34 34
     }
35
-  },[id, subOrderId])
35
+  }, [id, subOrderId])
36 36
   //商铺基础信息
37 37
   const [detail, setDetail] = useState({})
38
+  console.log("🚀 ~ file: foodDetails.jsx ~ line 38 ~ withLayout ~ setDetail", setDetail)
38 39
   //商铺套餐
39 40
   const [spackage, setPackage] = useState([])
40 41
   //banner图集数组

+ 3
- 3
src/pages/index/tabs/GuideCss/style.less View File

@@ -66,7 +66,7 @@
66 66
       position: relative;
67 67
       text-align: center;
68 68
       display: inline-block;
69
-      left: 1.5em;
69
+      left: -0.5em;
70 70
       .MessageCard-image {
71 71
         width: 30px;
72 72
         height: 30px;
@@ -90,7 +90,7 @@
90 90
       position: relative;
91 91
       text-align: center;
92 92
       display: inline-block;
93
-      left: 1.5em;
93
+      left: -0.5em;
94 94
       .MessageCard-image {
95 95
         width: 30px;
96 96
         height: 30px;
@@ -115,7 +115,7 @@
115 115
       text-align: center;
116 116
       display: inline-block;
117 117
       bottom: 40px;
118
-      left: 1.5em;
118
+      left: -0.5em;
119 119
       .MessageCard-image {
120 120
         width: 30px;
121 121
         height: 30px;

+ 15
- 0
src/services/home.js View File

@@ -41,12 +41,27 @@ export const removeCollection = (targetType, targetId) => request(`/${targetType
41 41
  */
42 42
 export const getCollection = (targetType, targetId) => request(`/${targetType}/save/${targetId}`)
43 43
 
44
+
45
+
46
+/**
47
+ * 个人中心 --我的收藏
48
+ * @param {*} data 
49
+ * @returns 
50
+ */
51
+export const getCollectList = (params) => request(`/save`, { params })
52
+
53
+
54
+
55
+
44 56
 /**
45 57
  * 商铺详情
46 58
  * @param {*} id 
47 59
  * @returns 
48 60
  */
49 61
 export const getShopDetail = (id) => request(`/shop/${id}`)
62
+
63
+
64
+
50 65
 /**
51 66
 * 获取商铺套餐列表
52 67
 * @returns 

+ 2
- 2
src/shop/components/ShopKeeper/shopKeeper.jsx View File

@@ -29,7 +29,7 @@ export default (props) => {
29 29
   const { params } = useRouter()
30 30
   const { tabJump } = params || {}
31 31
 
32
-  const [isyear, setYear] = useState(false)
32
+  const [isyear, setYear] = useState(true)
33 33
   const [isMomth, setMonth] = useState(false)
34 34
   //小眼睛开关
35 35
   const handleYear = () => {
@@ -77,7 +77,7 @@ export default (props) => {
77 77
   }
78 78
 
79 79
 
80
-  const onSeacrh = (e) => {
80
+  const onSearch = (e) => {
81 81
     console.log('eeeeeeeeeeeeeeeeee', e.detail.value);
82 82
   }
83 83