viczhq il y a 3 semaines
Parent
commit
c7e94fd5e3

Fichier diff supprimé car celui-ci est trop grand
+ 0 - 74260
package-lock.json


+ 8 - 1
project.private.config.json

@@ -5,11 +5,18 @@
5 5
     "compileHotReLoad": false,
6 6
     "urlCheck": true
7 7
   },
8
-  "libVersion": "3.7.2",
8
+  "libVersion": "3.7.1",
9 9
   "condition": {
10 10
     "miniprogram": {
11 11
       "list": [
12 12
         {
13
+          "name": "pages/indexSub/productDetail/index",
14
+          "pathName": "pages/indexSub/productDetail/index",
15
+          "query": "id=2312&isHighCommission=false&isSeckill=false&shareUserId=",
16
+          "launchMode": "default",
17
+          "scene": null
18
+        },
19
+        {
13 20
           "name": "pages/memberSub/partnerDetail/index",
14 21
           "pathName": "pages/memberSub/partnerDetail/index",
15 22
           "query": "",

+ 13 - 5
src/components/index/ProductList/index.jsx

@@ -169,11 +169,19 @@ const ProductList = forwardRef((props, ref) => {
169 169
         <View key={product.id}>
170 170
           <View onClick={() => toDetail(product.id)} className="product-item">
171 171
             {isManagement && isManagementStatus && (
172
-              <AtCheckbox
173
-                options={[{ value: product.id.toString(), label: "" }]} // 确保每个复选框的 options 是独立的
174
-                selectedList={selectedProducts.map((id) => id.toString())}
175
-                onChange={(selectedList) => selectProduct(product.id)} // 传递当前 product.id
176
-              />
172
+              <View 
173
+                className="checkbox-wrapper" 
174
+                onClick={(e) => {
175
+                  e.stopPropagation();
176
+                  selectProduct(product.id);  // 直接调用 selectProduct
177
+                }}
178
+              >
179
+                <AtCheckbox
180
+                  options={[{ value: product.id.toString(), label: "" }]}
181
+                  selectedList={selectedProducts.map((id) => id.toString())}
182
+                  onChange={() => {}} // 移除这里的 onChange 处理
183
+                />
184
+              </View>
177 185
             )}
178 186
             <View className="right">
179 187
               <Image

+ 86 - 0
src/components/signModal/index.jsx

@@ -0,0 +1,86 @@
1
+import { View, RichText, Image } from "@tarojs/components";
2
+import { getSign, getUserAgreement } from "../../service";
3
+import { AtCheckbox } from "taro-ui";
4
+import "./index.less";
5
+import Taro from "@tarojs/taro";
6
+import sign from "../../images/productDetail/sign.png";
7
+import close from "../../images/productDetail/close.png";
8
+import { useState, useEffect } from "react";
9
+
10
+// 签约模态框组件
11
+export default function signModal(props) {
12
+  const { isOpened, onClose, isMine } = props;
13
+  const [agreement, setAgreement] = useState("");
14
+  const [isChecked, setIsChecked] = useState(false);
15
+  const checkboxOption = [
16
+    {
17
+      value: "agree",
18
+      label: "",
19
+    },
20
+  ];
21
+  // 获取协议
22
+  const getAgreement = async () => {
23
+    const res = await getUserAgreement({
24
+      type: 3,
25
+    });
26
+    setAgreement(res.content);
27
+  };
28
+  useEffect(() => {
29
+    getAgreement();
30
+  }, []);
31
+  // 同意协议
32
+  const handleCheckboxChange = (value) => {
33
+    setIsChecked(value.length > 0);
34
+  };
35
+  // 签约
36
+  const handleSign = async () => {
37
+    const res = await getSign({
38
+      type: 1,
39
+    });
40
+    // 签约后更新用户信息
41
+    Taro.setStorageSync("userInfo", res);
42
+    Taro.showToast({
43
+      title: '签约成功',
44
+      icon: "none",
45
+    });
46
+    onClose();
47
+  };
48
+  // 关闭弹窗
49
+  const closeModal = () => {
50
+    if (isChecked) {
51
+      Taro.setStorageSync("isShowSign", false);
52
+    }
53
+    onClose();
54
+  };
55
+  return (
56
+    <>
57
+      {isOpened && (
58
+        <View className="modal-container">
59
+          <View className="modal-mask" />
60
+          <View className="modal-content">
61
+            <Image onClick={closeModal} src={close} className="close-icon" />
62
+            <View className="content-box">
63
+              <Image src={sign} className="sign-icon" />
64
+              <View className="sign-title">
65
+                鱼市招募推广者!自购享折扣,省钱多多;分享有佣金,赚钱轻松。速来开启共赢之旅!
66
+              </View>
67
+              <View onClick={handleSign} className="btn">
68
+                签约
69
+              </View>
70
+              {!isMine && (
71
+                <View className="checkbox-container">
72
+                  <AtCheckbox
73
+                    options={checkboxOption}
74
+                    selectedList={isChecked ? ["agree"] : []}
75
+                    onChange={handleCheckboxChange}
76
+                  />
77
+                  <View className="checkbox-text">不再提示</View>
78
+                </View>
79
+              )}
80
+            </View>
81
+          </View>
82
+        </View>
83
+      )}
84
+    </>
85
+  );
86
+}

+ 165 - 0
src/components/signModal/index.less

@@ -0,0 +1,165 @@
1
+.modal-container {
2
+  position: fixed;
3
+  top: 0;
4
+  left: 0;
5
+  width: 100%;
6
+  height: 100%;
7
+  z-index: 1000;
8
+  display: flex;
9
+  align-items: center;
10
+  justify-content: center;
11
+}
12
+
13
+.modal-mask {
14
+  position: absolute;
15
+  top: 0;
16
+  left: 0;
17
+  width: 100%;
18
+  height: 100%;
19
+  background-color: rgba(0, 0, 0, 0.6);
20
+}
21
+
22
+.modal-content {
23
+  position: relative;
24
+  background-color: #fff;
25
+  border-radius: 16px;
26
+  width: 80%;
27
+  max-width: 600px;
28
+  z-index: 1001;
29
+  animation: modalFadeIn 0.3s ease;
30
+
31
+  .content-box {
32
+    padding: 0 32px;
33
+    padding-bottom: 30px;
34
+    display: flex;
35
+    flex-direction: column;
36
+    align-items: center;
37
+    justify-content: center;
38
+    position: relative;
39
+
40
+    // 签约图标
41
+    .sign-icon {
42
+      width: 310px;
43
+      height: 413px;
44
+    }
45
+
46
+    // 签约标题
47
+    .sign-title {
48
+      font-size: 28px;
49
+      color: #3D3D3D;
50
+      line-height: 41px;
51
+      margin-top: 38px;
52
+    }
53
+
54
+    // 按钮
55
+    .btn {
56
+      width: 100%;
57
+      height: 88px;
58
+      background: #ffe000;
59
+      font-weight: 700;
60
+      font-size: 30px;
61
+      color: #000000;
62
+      border-radius: 80px;
63
+      text-align: center;
64
+      margin-top: 50px;
65
+      line-height: 88px;
66
+    }
67
+  }
68
+
69
+  // 关闭图标
70
+  .close-icon {
71
+    position: absolute;
72
+    bottom: -90px;
73
+    left: 50%;
74
+    transform: translateX(-50%);
75
+    width: 50px;
76
+    height: 50px;
77
+    z-index: 1000;
78
+  }
79
+}
80
+
81
+@keyframes modalFadeIn {
82
+  from {
83
+    opacity: 0;
84
+    transform: scale(0.9);
85
+  }
86
+
87
+  to {
88
+    opacity: 1;
89
+    transform: scale(1);
90
+  }
91
+}
92
+
93
+// 不再提示
94
+.checkbox-container {
95
+  width: 100%;
96
+  display: flex;
97
+  margin-top: 30px;
98
+  justify-content: center;
99
+
100
+.checkbox-text {
101
+  font-size: 26px;
102
+  line-height: 38px;
103
+  color: #999999;
104
+}
105
+
106
+.at-checkbox {
107
+  padding: 0;
108
+  background-color: #f9f9f9;
109
+
110
+  .at-checkbox__option-wrap {
111
+    padding: 0;
112
+  }
113
+
114
+  &::before {
115
+    content: none;
116
+  }
117
+
118
+  &::after {
119
+    content: none;
120
+  }
121
+
122
+  .at-checkbox__option--selected .at-checkbox__icon-cnt {
123
+    background-color: #f6c71a;
124
+    border: none;
125
+    width: 20px;
126
+    height: 20px;
127
+  }
128
+
129
+  &__option {
130
+    padding: 0;
131
+    margin-bottom: 0;
132
+  }
133
+
134
+  &__option:active {
135
+    background-color: transparent;
136
+  }
137
+
138
+  .at-icon-check {
139
+    height: 18px;
140
+    width: 18px;
141
+    font-size: 18px;
142
+  }
143
+
144
+  .at-checkbox__icon-cnt {
145
+    height: 20px;
146
+    width: 20px;
147
+    min-width: 20px;
148
+    border: 1px solid #919191;
149
+    box-sizing: border-box;
150
+    margin-right: 16px;
151
+    margin-top: 8px;
152
+  }
153
+
154
+
155
+}
156
+
157
+.at-checkbox__icon--checked {
158
+  box-shadow: none;
159
+  transition: none;
160
+}
161
+}
162
+
163
+.modal-wrapper {
164
+  position: relative;
165
+}

BIN
src/images/mine/avatar.png


BIN
src/images/mine/levelFive.png


BIN
src/images/mine/levelFour.png


BIN
src/images/mine/levelOne.png


BIN
src/images/mine/levelThree.png


BIN
src/images/mine/levelTwo.png


BIN
src/images/mine/sign.png


BIN
src/images/productDetail/close.png


BIN
src/images/productDetail/sign.png


+ 13 - 8
src/pages/index/index.jsx

@@ -42,10 +42,10 @@ export default class Index extends Component {
42 42
   };
43 43
   // 轮播图点击
44 44
   handleBannerClick = (item) => {
45
-    if(item.type_jpath==1){
45
+    if (item.type_jpath == 1) {
46 46
       Taro.navigateTo({
47
-        url: `${item.jpath}?isBanner=true`
48
-      })
47
+        url: `${item.jpath}?isBanner=true`,
48
+      });
49 49
     }
50 50
   };
51 51
   // 修改 tab 切换处理函数
@@ -66,9 +66,9 @@ export default class Index extends Component {
66 66
               Taro.pageScrollTo({
67 67
                 scrollTop: top - 40,
68 68
                 duration: 300,
69
-                complete:()=>{
69
+                complete: () => {
70 70
                   this.getProductList(true);
71
-                }
71
+                },
72 72
               });
73 73
             } else {
74 74
               console.warn("未找到 .product-list-wrap 元素");
@@ -127,7 +127,7 @@ export default class Index extends Component {
127 127
       <View className="index">
128 128
         <View
129 129
           className="header"
130
-          style={{ paddingTop: Taro.navigationBarHeight + "px" }}
130
+          style={{ paddingTop: Taro.navigationBarHeight + 10 + "px" }}
131 131
         >
132 132
           <View className="header-content">
133 133
             <Image
@@ -165,12 +165,17 @@ export default class Index extends Component {
165 165
               circular
166 166
               autoplay
167 167
               indicatorDots
168
-              indicatorColor="#e8e8e8"banner
168
+              indicatorColor="#e8e8e8"
169
+              banner
169 170
               indicatorActiveColor="#ffffff"
170 171
             >
171 172
               {homeData.banner &&
172 173
                 homeData.banner.map((item) => (
173
-                  <SwiperItem onClick={() => this.handleBannerClick(item)} className="banner-item" key={item.id}>
174
+                  <SwiperItem
175
+                    onClick={() => this.handleBannerClick(item)}
176
+                    className="banner-item"
177
+                    key={item.id}
178
+                  >
174 179
                     <Image
175 180
                       className="banner-img"
176 181
                       src={item.img}

+ 0 - 1
src/pages/index/index.less

@@ -6,7 +6,6 @@
6 6
   .header {
7 7
     width: 100%;
8 8
     position: relative;
9
-
10 9
     &::before {
11 10
       content: '';
12 11
       position: absolute;

+ 16 - 1
src/pages/indexSub/productDetail/index.jsx

@@ -21,6 +21,7 @@ import share from "../../../images/productDetail/share.png";
21 21
 import ProductCard from "../../../components/ProductCard"; //产品卡片
22 22
 import Modal from "../../../components/Modal"; //弹窗
23 23
 import ShareModal from "../../../components/shareModal"; //分享弹窗
24
+import SignModal from "../../../components/signModal"; //签约弹窗
24 25
 export default class Index extends Component {
25 26
   state = {
26 27
     id: "", //商品id
@@ -69,6 +70,9 @@ export default class Index extends Component {
69 70
     });
70 71
     const { id, isShare, isHighCommission, isSeckill, shareJump, shareUserId } =
71 72
       Taro.getCurrentInstance().router.params;
73
+      let session_key = Taro.getStorageSync("session_key");
74
+      let userInfo = Taro.getStorageSync("userInfo");
75
+      let isShowSign = Taro.getStorageSync("isShowSign");
72 76
     this.setState(
73 77
       {
74 78
         id,
@@ -86,7 +90,6 @@ export default class Index extends Component {
86 90
           });
87 91
         this.fetchProductDetails(id); //获取产品详情
88 92
         this.getProductLikeList(); //获取猜你喜欢列表
89
-        let session_key = Taro.getStorageSync("session_key");
90 93
         if (session_key && shareJump) {
91 94
           this.bindShareJump(); //绑定分享跳转标识
92 95
         }
@@ -95,6 +98,12 @@ export default class Index extends Component {
95 98
         }
96 99
       }
97 100
     );
101
+    // 判断是否显示签约弹窗
102
+    if (session_key && isShowSign!==false && userInfo && userInfo.user_identity == 0) {
103
+      this.setState({
104
+        isOpened: "sign",
105
+      });
106
+    }
98 107
   }
99 108
   // 复制商品编号
100 109
   handleCopy = (text) => {
@@ -362,6 +371,12 @@ export default class Index extends Component {
362 371
             onShareTitleChange={this.handleShareTitleChange}
363 372
           />
364 373
         )}
374
+        {/* 签约弹窗 */}
375
+        <SignModal isOpened={this.state.isOpened == "sign"} onClose={() => {
376
+          this.setState({
377
+            isOpened: "",
378
+          });
379
+        }}/>
365 380
       </View>
366 381
     );
367 382
   }

+ 1 - 1
src/pages/login/index.jsx

@@ -115,7 +115,7 @@ export default class Index extends Component {
115 115
             您暂时未获取微信授权,将无法正常使用小程序的功能。请先阅读且同意《鱼市平台用户协议》后再授权登录。
116 116
           </View>
117 117
           {/* <Button open-type="getPhoneNumber" onGetPhoneNumber={this.handleGetPhoneNumber} className="login-button">授权登录</Button> */}
118
-          <View className="checkbox-container">
118
+          <View className="checkbox-login-container">
119 119
             <AtCheckbox
120 120
               options={checkboxOption}
121 121
               selectedList={this.state.isChecked ? ["agree"] : []}

+ 1 - 1
src/pages/login/index.less

@@ -54,7 +54,7 @@
54 54
     }
55 55
 }
56 56
 
57
-.checkbox-container {
57
+.checkbox-login-container {
58 58
     width: 100%;
59 59
     display: flex;
60 60
     margin-top: 21px;

+ 55 - 9
src/pages/mine/index.jsx

@@ -8,9 +8,17 @@ import loginOut from "../../images/mine/loginOut.png";
8 8
 import edit from "../../images/mine/edit.png";
9 9
 import norm from "../../images/mine/norm.png";
10 10
 import avatar from "../../images/mine/avatar.png";
11
+import sign from "../../images/mine/sign.png";
12
+import SignModal from "../../components/signModal";
13
+import levelOne from "../../images/mine/levelOne.png";
14
+import levelTwo from "../../images/mine/levelTwo.png";
15
+import levelThree from "../../images/mine/levelThree.png";
16
+import levelFour from "../../images/mine/levelFour.png";
17
+import levelFive from "../../images/mine/levelFive.png";
11 18
 export default class Index extends Component {
12 19
   state = {
13 20
     userInfo: {}, //用户信息
21
+    isOpened: false, //是否打开弹窗
14 22
   };
15 23
   // 退出登录
16 24
   handleLogout = () => {
@@ -31,10 +39,10 @@ export default class Index extends Component {
31 39
       },
32 40
     });
33 41
   };
34
-  componentDidShow(){
35
-    const session_key = Taro.getStorageSync('session_key')
36
-    if(session_key){
37
-      this.getUserInfo()
42
+  componentDidShow() {
43
+    const session_key = Taro.getStorageSync("session_key");
44
+    if (session_key) {
45
+      this.getUserInfo();
38 46
     }
39 47
   }
40 48
   // 获取用户信息
@@ -46,24 +54,49 @@ export default class Index extends Component {
46 54
     });
47 55
   };
48 56
   // 去登录
49
-  Login = () => {   
57
+  Login = () => {
50 58
     if (!Taro.getStorageSync("session_key")) {
51 59
       Taro.reLaunch({
52 60
         url: "/pages/login/index",
53 61
       });
54 62
     }
55 63
   };
64
+  // 合作签约
65
+  handleSign = () => {
66
+    let session_key = Taro.getStorageSync("session_key");
67
+    if (session_key && this.state.userInfo.user_identity === 0) {
68
+      this.setState({
69
+        isOpened: true,
70
+      });
71
+    } else {
72
+      Taro.showToast({
73
+        title: "您已签约",
74
+        icon: "none",
75
+      });
76
+    }
77
+  };
56 78
   render() {
57
-    const { userInfo } = this.state;
79
+    const { userInfo, isOpened } = this.state;
58 80
     return (
59 81
       <View className="index">
60 82
         {/* 个人信息 */}
61 83
         <View className="info">
62
-          <Image src={userInfo.icon?userInfo.icon:avatar} className="avatar" />
84
+          <Image
85
+            src={userInfo.icon ? userInfo.icon : avatar}
86
+            className="avatar"
87
+          />
63 88
           <View className="info-right">
64 89
             <View className="user-info">
65
-              <View onClick={this.Login} className="name">{userInfo.name?userInfo.name:'去登录'}</View>
66
-              <View className="account">{userInfo.id?userInfo.id:'XXXX'}</View>
90
+              <View onClick={this.Login} className="name">
91
+                {userInfo.name ? userInfo.name : "去登录"}
92
+                {userInfo.user_identity === 1 && (
93
+                  <View className="level-box">
94
+                    <Image src={levelOne} className="level-icon" />
95
+                    <Text className="level-text">Lv 1</Text>
96
+                  </View>
97
+                )}
98
+              </View>
99
+              <View className="account">{userInfo.id ? userInfo.id : ""}</View>
67 100
             </View>
68 101
             <Image
69 102
               onClick={() =>
@@ -79,6 +112,13 @@ export default class Index extends Component {
79 112
           <AtList hasBorder={false}>
80 113
             <AtListItem
81 114
               hasBorder={false}
115
+              onClick={this.handleSign}
116
+              title="合作签约"
117
+              arrow="right"
118
+              thumb={sign}
119
+            />
120
+            <AtListItem
121
+              hasBorder={false}
82 122
               onClick={() =>
83 123
                 Taro.navigateTo({
84 124
                   url: `/pages/mineSub/userSpecification/index`,
@@ -98,6 +138,12 @@ export default class Index extends Component {
98 138
             /> */}
99 139
           </AtList>
100 140
         </View>
141
+        {/* 签约弹窗 */}
142
+        <SignModal
143
+          isMine={true}
144
+          isOpened={isOpened}
145
+          onClose={() => this.setState({ isOpened: false })}
146
+        />
101 147
       </View>
102 148
     );
103 149
   }

+ 33 - 2
src/pages/mine/index.less

@@ -31,6 +31,34 @@
31 31
                 .name {
32 32
                     font-size: 34px;
33 33
                     line-height: 49px;
34
+                    display: flex;
35
+                    align-items: center;
36
+                    justify-content: center;
37
+
38
+                    .level-box {
39
+                        display: flex;
40
+                        align-items: center;
41
+                        justify-content: center;
42
+                        position: relative;
43
+                        margin-left: 11px;
44
+                        width: 42px;
45
+                        height: 49px;
46
+
47
+                        .level-text {
48
+                            font-weight: 700;
49
+                            font-size: 16px;
50
+                            color: #8AA6F1;
51
+                            z-index: 1;
52
+                        }
53
+
54
+                        .level-icon {
55
+                            width: 100%;
56
+                            height: 100%;
57
+                            position: absolute;
58
+                            top: 0;
59
+                            left: 0;
60
+                        }
61
+                    }
34 62
                 }
35 63
 
36 64
                 .account {
@@ -51,11 +79,13 @@
51 79
         border-radius: 20px;
52 80
         overflow: hidden;
53 81
         background-color: #ffffff;
54
-        .line{
82
+
83
+        .line {
55 84
             margin: 0 17px;
56 85
             height: 1px;
57 86
             background-color: #D8D8D8;
58 87
         }
88
+
59 89
         .at-list__item .item-extra__icon-arrow {
60 90
             font-size: 44px;
61 91
         }
@@ -69,7 +99,8 @@
69 99
             font-size: 28px;
70 100
             color: #000000;
71 101
         }
72
-        .at-list__item{
102
+
103
+        .at-list__item {
73 104
             padding: 31px 17px;
74 105
         }
75 106
     }

+ 25 - 18
src/service/index.js

@@ -57,6 +57,13 @@ export const getSearchProductList = data =>
57 57
     method: 'POST',
58 58
     data,
59 59
   })
60
+// 签约
61
+export const getSign = data =>
62
+  Request({
63
+    url: '/user/user_sign_contract',
64
+    method: 'POST',
65
+    data,
66
+  })
60 67
 // -------------------------------------------------------------用户
61 68
 // 获取用户详情
62 69
 export const getUserInfo = data =>
@@ -79,15 +86,15 @@ export const getUserAgreement = data =>
79 86
     method: 'POST',
80 87
     data,
81 88
   })
82
-  // 获取分享跳转标识
89
+// 获取分享跳转标识
83 90
 export const getShareJump = data =>
84 91
   Request({
85 92
     url: '/user/get_not_oneself_store_detail',
86 93
     method: 'POST',
87 94
     data,
88 95
   })
89
-  // 绑定分享跳转标识
90
-  export const bindShareJump = data =>
96
+// 绑定分享跳转标识
97
+export const bindShareJump = data =>
91 98
   Request({
92 99
     url: '/user/get_share_unique_value',
93 100
     method: 'POST',
@@ -115,14 +122,14 @@ export const getMyShopList = data =>
115 122
     method: 'POST',
116 123
     data,
117 124
   })
118
-  // 非店长获取店铺详情
125
+// 非店长获取店铺详情
119 126
 export const getShareShopDetail = data =>
120 127
   Request({
121 128
     url: '/vip/get_not_oneself_store_detail',
122 129
     method: 'POST',
123 130
     data,
124 131
   })
125
-  // 非店长获取店铺商品数据列表
132
+// 非店长获取店铺商品数据列表
126 133
 export const getShareShopProductList = data =>
127 134
   Request({
128 135
     url: '/vip/get_not_oneself_store_data_list',
@@ -157,36 +164,36 @@ export const updateProductSort = data =>
157 164
     method: 'POST',
158 165
     data,
159 166
   })
160
-  // 收益订单tab
161
-  export const getEarningsOrderTab = data =>
167
+// 收益订单tab
168
+export const getEarningsOrderTab = data =>
162 169
   Request({
163 170
     url: '/vip/get_income_order_tabs',
164 171
     method: 'POST',
165 172
     data,
166 173
   })
167
-  // 收益订单
168
-  export const getEarningsOrderList = data =>
174
+// 收益订单
175
+export const getEarningsOrderList = data =>
169 176
   Request({
170 177
     url: '/vip/get_income_order_data',
171 178
     method: 'POST',
172 179
     data,
173 180
   })
174
-  // 收益详情
175
-  export const getEarningsDetail = data =>
181
+// 收益详情
182
+export const getEarningsDetail = data =>
176 183
   Request({
177 184
     url: '/vip/get_income_order_detail',
178 185
     method: 'POST',
179 186
     data,
180 187
   })
181
-  // 获取我的伙伴信息列表
182
-  export const getMyPartnerList = data =>
188
+// 获取我的伙伴信息列表
189
+export const getMyPartnerList = data =>
183 190
   Request({
184 191
     url: '/vip/get_user_partner_list',
185 192
     method: 'POST',
186 193
     data,
187 194
   })
188
-  // 获取伙伴详情
189
-  export const getPartnerDetail = data =>
195
+// 获取伙伴详情
196
+export const getPartnerDetail = data =>
190 197
   Request({
191 198
     url: '/vip/get_user_partner_detail',
192 199
     method: 'POST',
@@ -200,9 +207,9 @@ export const login = data =>
200 207
     method: 'POST',
201 208
     data,
202 209
   })
203
-  // ---------------------------------------埋点
204
-  // 埋点
205
-  export const addLog = data =>
210
+// ---------------------------------------埋点
211
+// 埋点
212
+export const addLog = data =>
206 213
   Request({
207 214
     url: '/user/user_goods_statistics',
208 215
     method: 'POST',