1002884655 пре 3 година
родитељ
комит
2527c09f51

+ 2
- 2
config/dev.js Прегледај датотеку

@@ -3,8 +3,8 @@ module.exports = {
3 3
     NODE_ENV: '"development"'
4 4
   },
5 5
   defineConstants: {
6
-    // HOST: '"https://xlk.njyz.tech"',
7
-    HOST: '"https://www.newhousehold.cn"',
6
+    HOST: '"https://xlk.njyz.tech"',
7
+    // HOST: '"https://www.newhousehold.cn"',
8 8
     // HOST: '"http://127.0.0.1:8567"',
9 9
     WSS_HOST: '"wss://xlk.njyz.tech"',
10 10
     OSS_PATH: '"https://xlk-assets.oss-cn-shanghai.aliyuncs.com/"',

+ 1
- 1
project.config.json Прегледај датотеку

@@ -2,7 +2,7 @@
2 2
 	"miniprogramRoot": "dist/",
3 3
 	"projectname": "miniapp",
4 4
 	"description": "",
5
-	"appid": "wxc96058d57e77f373",
5
+	"appid": "wxe44244d1a5ea3364",
6 6
 	"setting": {
7 7
 		"urlCheck": false,
8 8
 		"es6": false,

+ 1
- 0
src/constants/api.js Прегледај датотеку

@@ -74,6 +74,7 @@ export const API_UPLOAD_IMAGE = resolvePath('image')
74 74
 export const API_CHAT_READED = resolvePath('chat/message')
75 75
 export const API_CHAT_UNREADED = resolvePath('chat/unReaded')
76 76
 
77
+export const API_CONSULTANT = resolvePath('consultant')
77 78
 
78 79
 // card
79 80
 export const API_CARDS_LIST = resolvePath('cards')

+ 2
- 1
src/pages/index/activityDetail/index.jsx Прегледај датотеку

@@ -100,7 +100,8 @@ export default withLayout((props) => {
100 100
     {
101 101
       title: shareContent.shareContentTitle || detail?.title,
102 102
       path: `${router.path}?${paramsRef.current}`,
103
-      image: shareContent.shareContentImg || getImgURL(detail?.imgUrl),
103
+      // image: shareContent.shareContentImg || getImgURL(detail?.imgUrl),
104
+      image: '',
104 105
     },
105 106
     fullTrackData
106 107
   );

+ 3
- 1
src/pages/mine/addCustomer/components/BuildingPicker.jsx Прегледај датотеку

@@ -1,4 +1,5 @@
1 1
 import { useEffect, useState } from 'react'
2
+import { useSelector } from 'react-redux'
2 3
 import Picker from '@/components/Picker'
3 4
 import { fetch } from '@/utils/request'
4 5
 import { API_GET_AGENT_BUILDINGS, API_ITEMS_LIST } from '@/constants/api'
@@ -7,11 +8,12 @@ import { ROLE_CODE } from '@/constants/user'
7 8
 export default (props) => {
8 9
 
9 10
   const { type = '', change = () => {} } = props
11
+  const city = useSelector(state => state.city)
10 12
   const [dicts, setDicts] = useState([])
11 13
 
12 14
   useEffect(() => {
13 15
     if (type === ROLE_CODE.CUSTOMER) {
14
-      fetch({ url: API_ITEMS_LIST, payload: { pageNumber: 1, pageSize: 1000 } }).then((res) => {
16
+      fetch({ url: API_ITEMS_LIST, payload: { pageNumber: 1, pageSize: 1000, cityId: city.curCity.id } }).then((res) => {
15 17
         setDicts(res.records || [])
16 18
       })
17 19
     } else {

+ 4
- 0
src/pages/mine/feedBack/index.jsx Прегледај датотеку

@@ -30,6 +30,10 @@ export default withLayout(() => {
30 30
   }
31 31
 
32 32
   const Submit = () => {
33
+    if(FormData.message === '') {
34
+      Taro.showToast({ title: '请填写问题描述', icon: 'none'})
35
+      return false
36
+    }
33 37
     fetch({ url: API_FEEDBACK_SUBMIT, method: 'post', payload: FormData }).then(() => {
34 38
       Taro.showToast({
35 39
         title: '反馈成功', icon: 'none', complete: () => {

+ 2
- 0
src/pages/mine/index.jsx Прегледај датотеку

@@ -20,12 +20,14 @@ const copyRight = `技术支持: 云致科技 @ ${(new Date()).getFullYear()}`
20 20
 export default withLayout(() => {
21 21
 
22 22
   const user = useSelector(state => state.user)
23
+  const city = useSelector(state => state.city)
23 24
   const [UserRole, setUserRole] = useState(null) // 1-普通用户 2-经纪人 3-置业顾问 4-驻场管理
24 25
   const [MenuList, setMenuList] = useState([])
25 26
   const { dispatch } = store
26 27
 
27 28
   useEffect(() => {
28 29
     if (user?.userInfo?.person?.personId) {
30
+      console.log(city)
29 31
       const person = user.userInfo.person
30 32
       setUserRole(person.personType === ROLE_CODE.CHANNEL_AGENT ? 2 : person.personType === ROLE_CODE.CONSULTANT ? 3 : person.personType === ROLE_CODE.MARKETING ? 4 : 1)
31 33
     }

+ 1
- 1
src/pages/mine/myRecommendCode/index.jsx Прегледај датотеку

@@ -16,7 +16,7 @@ export default withLayout((props) => {
16 16
   useEffect(() => {
17 17
     const payload = {
18 18
       scene: `id=${person?.personId}&from=${page.type}_share&recommender=${person?.personId}`,
19
-      page: `pages/consultant/myHomepage/index`
19
+      page: `subpackages/pages/consultant/myHomepage/index`
20 20
     }
21 21
     fetch({ url: API_QRCODE, payload, method: 'post' }).then((res) => {
22 22
       setQrCodeUrl(res)

+ 1
- 1
src/routes.js Прегледај датотеку

@@ -384,7 +384,7 @@ const routes = [
384 384
     name: '个人主页',
385 385
     page: 'pages/consultant/myHomepage/index',
386 386
     pkg: 'subpackages',
387
-    type: 'mine',
387
+    type: 'card',
388 388
     // auth: ['phone'],
389 389
   },
390 390
   {

+ 24
- 10
src/subpackages/pages/consultant/myHomepage/index.jsx Прегледај датотеку

@@ -5,7 +5,7 @@ import { ScrollView, Image, Button } from '@tarojs/components'
5 5
 import ProjectListItem from '@/components/ProjectListItem/index'
6 6
 import { useSelector } from 'react-redux'
7 7
 import { fetch } from '@/utils/request'
8
-import { API_AGENT_CURRENT, API_ITEMS_DETAIL, API_CARDS_LIST } from '@/constants/api'
8
+import { API_CARDS_UV, API_ITEMS_DETAIL, API_CARDS_LIST } from '@/constants/api'
9 9
 import { getImgURL } from '@/utils/image'
10 10
 import useLike from "@/utils/hooks/useLike";
11 11
 import '@/assets/css/iconfont.css'
@@ -21,14 +21,28 @@ export default withLayout((props) => {
21 21
   const [PullTimer, setPullTimer] = useState(null)
22 22
   const [UserInfo, setUserInfo] = useState({})
23 23
   const [BuildingInfo, setBuildingInfo] = useState({})
24
+  const [LikeNum, setLikeNum] = useState(0)
24 25
 
25 26
   const user = useSelector(state => state.user)
26 27
   const [PersonId, setPersonId] = useState(null)
27 28
 
28
-  const [isSave, handleFavor] = useLike(BuildingInfo?.isSave, {
29
-    id,
29
+  const [isSave, handleFavor] = useLike(UserInfo?.liked, {
30
+    id: id || user.userInfo.person.personId,
30 31
     ...trackData,
31
-  });
32
+    eventType: 'consultant'
33
+  }, () => {
34
+    if(!isSave) {
35
+      AddHotNum()
36
+    }
37
+    const likeNum = isSave ? UserInfo.likeNum - 1 : UserInfo.likeNum + 1
38
+    setLikeNum(likeNum)
39
+  })
40
+
41
+  useEffect(() => {
42
+    if(UserInfo.id) {
43
+      setLikeNum(UserInfo.likeNum)
44
+    }
45
+  }, [UserInfo])
32 46
 
33 47
   useEffect(() => {
34 48
     if (PersonId !== user.userInfo.person.personId) {
@@ -52,14 +66,14 @@ export default withLayout((props) => {
52 66
   }, [PersonId])
53 67
 
54 68
   useEffect(() => {
55
-    if (UserInfo.buildingId) {
69
+    if (UserInfo.buildingId && !BuildingInfo.buildingId) {
56 70
       GetBuildingInfo()
57 71
     }
58 72
   }, [UserInfo])
59 73
 
60
-  const GetUserInfo = () => {
61
-    fetch({ url: API_AGENT_CURRENT, method: 'get' }).then((res) => {
62
-      setUserInfo(res)
74
+  const AddHotNum = () => {
75
+    fetch({ url: API_CARDS_UV + `/${id || PersonId}`, method: 'post' }).then(() => {
76
+      setUserInfo({...UserInfo, hotNum: (UserInfo.hotNum || 0) - 0 + 1})
63 77
     })
64 78
   }
65 79
 
@@ -99,7 +113,7 @@ export default withLayout((props) => {
99 113
                     <text>{UserInfo.name} {UserInfo.phone}</text>
100 114
                   </view>
101 115
                   <text onClick={handleFavor} className='iconfont icon-dianzan' style={isSave ? { color: 'red' } : undefined}></text>
102
-                  <text onClick={handleFavor}>{UserInfo.likeNum || 0}{isSave ? `已点赞` : '赞'}</text>
116
+                  <text onClick={handleFavor}>{LikeNum}{isSave ? `已点赞` : '赞'}</text>
103 117
                 </view>
104 118
                 <view className='Tag'>
105 119
                   <view>
@@ -134,7 +148,7 @@ export default withLayout((props) => {
134 148
                 }
135 149
               </view>
136 150
               <text className='iconfont icon-renqi'></text>
137
-              <text>人气值{UserInfo.hotNum || 999}</text>
151
+              <text>人气值{(UserInfo.hotNum || 0) + 999}</text>
138 152
             </view>
139 153
           </view>
140 154
 

+ 4
- 2
src/utils/hooks/useLike.js Прегледај датотеку

@@ -5,9 +5,9 @@ import { resolvePath } from '@/constants/api'
5 5
 import track from '@/utils/tracking/track'
6 6
 
7 7
 const addLike = (type, id) => fetch({ url: resolvePath(`${type}/like/${id}`),  method: 'POST' })
8
-const cancelLike = (type, id) => fetch({ url: resolvePath(`${type}/like/${id}`),  method: 'POST' })
8
+const cancelLike = (type, id) => fetch({ url: resolvePath(`${type}/like/${id}`),  method: 'DELETE' })
9 9
 
10
-export default function(liked, options = {}) {
10
+export default function(liked, options = {}, callback = () => {}) {
11 11
   const { id, eventType } = options
12 12
   const [isLiked, setIsLiked] = useState(liked)
13 13
 
@@ -21,6 +21,7 @@ export default function(liked, options = {}) {
21 21
           title: '已取消点赞',
22 22
           icon: 'none',
23 23
         })
24
+        callback()
24 25
       })
25 26
     } else {
26 27
       addLike(eventType, id).then(() => {
@@ -29,6 +30,7 @@ export default function(liked, options = {}) {
29 30
           title: '点赞成功',
30 31
           icon: 'none',
31 32
         })
33
+        callback()
32 34
       })
33 35
     }
34 36
     track({