Browse Source

Merge branch 'master' of http://git.ycjcjy.com/zhiyuxing/estateagents

魏熙美 5 years ago
parent
commit
0f284fc2b5
55 changed files with 1799 additions and 187 deletions
  1. 1
    1
      pom.xml
  2. 41
    7
      src/main/java/com/huiju/estateagents/common/CommConstant.java
  3. 15
    0
      src/main/java/com/huiju/estateagents/controller/MiniAppController.java
  4. 144
    0
      src/main/java/com/huiju/estateagents/controller/SysOrgParamsController.java
  5. 144
    0
      src/main/java/com/huiju/estateagents/controller/SysProjectParamsController.java
  6. 28
    2
      src/main/java/com/huiju/estateagents/controller/TaBuildingController.java
  7. 28
    5
      src/main/java/com/huiju/estateagents/controller/TaBuildingDynamicController.java
  8. 187
    0
      src/main/java/com/huiju/estateagents/controller/TaCustomerMessageController.java
  9. 33
    3
      src/main/java/com/huiju/estateagents/controller/TaNewsController.java
  10. 87
    3
      src/main/java/com/huiju/estateagents/controller/TaPersonController.java
  11. 2
    4
      src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java
  12. 46
    0
      src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java
  13. 14
    0
      src/main/java/com/huiju/estateagents/controller/TaShareController.java
  14. 69
    0
      src/main/java/com/huiju/estateagents/entity/SysOrgParams.java
  15. 74
    0
      src/main/java/com/huiju/estateagents/entity/SysProjectParams.java
  16. 2
    14
      src/main/java/com/huiju/estateagents/entity/TaActivityDynamicEnlist.java
  17. 74
    0
      src/main/java/com/huiju/estateagents/entity/TaCustomerMessage.java
  18. 6
    1
      src/main/java/com/huiju/estateagents/entity/TaGoods.java
  19. 4
    0
      src/main/java/com/huiju/estateagents/entity/TaPersonSign.java
  20. 6
    0
      src/main/java/com/huiju/estateagents/entity/TaRecommendCustomer.java
  21. 6
    1
      src/main/java/com/huiju/estateagents/entity/TaShare.java
  22. 43
    0
      src/main/java/com/huiju/estateagents/event/EventBus.java
  23. 62
    0
      src/main/java/com/huiju/estateagents/event/EventLisenter.java
  24. 1
    0
      src/main/java/com/huiju/estateagents/exception/ExceptionHandleAdice.java
  25. 19
    0
      src/main/java/com/huiju/estateagents/mapper/SysOrgParamsMapper.java
  26. 19
    0
      src/main/java/com/huiju/estateagents/mapper/SysProjectParamsMapper.java
  27. 18
    0
      src/main/java/com/huiju/estateagents/mapper/TaCustomerMessageMapper.java
  28. 2
    0
      src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java
  29. 4
    0
      src/main/java/com/huiju/estateagents/mapper/TaSaveMapper.java
  30. 17
    0
      src/main/java/com/huiju/estateagents/service/ISysOrgParamsService.java
  31. 17
    0
      src/main/java/com/huiju/estateagents/service/ISysProjectParamsService.java
  32. 3
    1
      src/main/java/com/huiju/estateagents/service/ITaBuildingService.java
  33. 16
    0
      src/main/java/com/huiju/estateagents/service/ITaCustomerMessageService.java
  34. 4
    0
      src/main/java/com/huiju/estateagents/service/ITaNewsService.java
  35. 4
    3
      src/main/java/com/huiju/estateagents/service/ITaPersonService.java
  36. 10
    1
      src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java
  37. 3
    0
      src/main/java/com/huiju/estateagents/service/ITaSaveService.java
  38. 2
    0
      src/main/java/com/huiju/estateagents/service/ITaShareService.java
  39. 20
    0
      src/main/java/com/huiju/estateagents/service/impl/SysOrgParamsServiceImpl.java
  40. 21
    0
      src/main/java/com/huiju/estateagents/service/impl/SysProjectParamsServiceImpl.java
  41. 26
    5
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java
  42. 6
    2
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java
  43. 20
    0
      src/main/java/com/huiju/estateagents/service/impl/TaCustomerMessageServiceImpl.java
  44. 3
    0
      src/main/java/com/huiju/estateagents/service/impl/TaGoodsServiceImpl.java
  45. 25
    12
      src/main/java/com/huiju/estateagents/service/impl/TaNewsServiceImpl.java
  46. 51
    85
      src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java
  47. 263
    1
      src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java
  48. 5
    0
      src/main/java/com/huiju/estateagents/service/impl/TaSaveServiceImpl.java
  49. 47
    35
      src/main/java/com/huiju/estateagents/service/impl/TaShareServiceImpl.java
  50. 5
    0
      src/main/resources/mapper/SysOrgParamsMapper.xml
  51. 5
    0
      src/main/resources/mapper/SysProjectParamsMapper.xml
  52. 5
    0
      src/main/resources/mapper/TaCustomerMessageMapper.xml
  53. 25
    0
      src/main/resources/mapper/TaPersonMapper.xml
  54. 4
    1
      src/main/resources/mapper/TaRecommendCustomerMapper.xml
  55. 13
    0
      src/main/resources/mapper/TaSaveMapper.xml

+ 1
- 1
pom.xml View File

10
 	</parent>
10
 	</parent>
11
 	<groupId>com.huiju</groupId>
11
 	<groupId>com.huiju</groupId>
12
 	<artifactId>estateagents</artifactId>
12
 	<artifactId>estateagents</artifactId>
13
-	<version>v0.1.0</version>
13
+	<version>v0.2.1</version>
14
 	<name>estateagents</name>
14
 	<name>estateagents</name>
15
 	<description>置业经纪人</description>
15
 	<description>置业经纪人</description>
16
 
16
 

+ 41
- 7
src/main/java/com/huiju/estateagents/common/CommConstant.java View File

67
     /**
67
     /**
68
      * 签到
68
      * 签到
69
      */
69
      */
70
-    public final static String POINTS_CHECKIN = "checkin";
70
+    public final static String POINTS_CHANGE_CHECKIN = "checkin";
71
     
71
     
72
     /**
72
     /**
73
      * 分享
73
      * 分享
74
      */
74
      */
75
-    public final static String POINTS_SHARE = "share";
75
+    public final static String POINTS_CHANGE_SHARE_POSTER = "share-poster";
76
     
76
     
77
     /**
77
     /**
78
-     * 授权
78
+     * 注册经纪人
79
      */
79
      */
80
-    public final static String POINTS_AUTHORIZE = "authorize";
80
+    public final static String POINTS_CHANGE_SIGNUP_AGENT = "signup-agent";
81
+
82
+    /**
83
+     * 推荐客户
84
+     */
85
+    public final static String POINTS_CHANGE_RECOMMEND_CUSTOMER = "recommend-customer";
81
 
86
 
82
 
87
 
83
     /**
88
     /**
103
     /**
108
     /**
104
      * 活动的当前状态1:进行中
109
      * 活动的当前状态1:进行中
105
      */
110
      */
106
-    public static final Integer ACTIVITY_CONDITION_ONE = 1;
111
+    public static final Integer ACTIVITY_CONDITION_PROCESSING = 1;
107
 
112
 
108
     /**
113
     /**
109
      * 活动的当前状态2:未开始
114
      * 活动的当前状态2:未开始
110
      */
115
      */
111
-    public static final Integer ACTIVITY_CONDITION_TWO = 2;
116
+    public static final Integer ACTIVITY_CONDITION_PREPARE = 2;
112
 
117
 
113
     /**
118
     /**
114
      * 活动的当前状态3:结束
119
      * 活动的当前状态3:结束
115
      */
120
      */
116
-    public static final Integer ACTIVITY_CONDITION_ONE_THREE = 3;
121
+    public static final Integer ACTIVITY_CONDITION_FINISH = 3;
117
 
122
 
118
     //=================  首屏广告 / 轮播图 start =======================
123
     //=================  首屏广告 / 轮播图 start =======================
119
 
124
 
205
     public static final String ENTRY_VERIFY = "verify";
210
     public static final String ENTRY_VERIFY = "verify";
206
     //=================  客户入口类型 end =======================
211
     //=================  客户入口类型 end =======================
207
 
212
 
213
+    /**
214
+     * 积分规则开启
215
+     */
216
+    public static final Integer POINTS_RULE_ON = 1;
217
+
218
+    /**
219
+     * 积分规则关闭
220
+     */
221
+    public static final Integer POINTS_RULE_OFF = 0;
222
+
223
+    /**
224
+     * 签到积分规则
225
+     */
226
+    public static final Integer POINTS_RULE_CHECKIN = 1;
227
+
228
+    /**
229
+     * 分享海报积分规则
230
+     */
231
+    public static final Integer POINTS_RULE_SHARE_POSTER = 2;
232
+
233
+    /**
234
+     * 推荐客户积分规则
235
+     */
236
+    public static final Integer POINTS_RULE_RECOMMENDER_CUSTOMER = 3;
237
+
238
+    /**
239
+     * 注册经纪人积分规则
240
+     */
241
+    public static final Integer POINTS_RULE_SIGNUP_AGENT = 4;
208
 }
242
 }

+ 15
- 0
src/main/java/com/huiju/estateagents/controller/MiniAppController.java View File

86
         }
86
         }
87
     }
87
     }
88
 
88
 
89
+    /**
90
+     * 登陆接口
91
+     */
92
+    @PostMapping("/logout")
93
+    public ResponseBean logout(HttpServletRequest request) {
94
+        String openid = JWTUtils.getSubject(request);
95
+        List<TaPerson> persons = taPersonService.getPersonsByOpenId(openid);
96
+        if (null == persons || persons.size() == 0) {
97
+            return ResponseBean.success("");
98
+        }
99
+
100
+        return ResponseBean.success("");
101
+    }
102
+
103
+
89
     /**
104
     /**
90
      * 获取用户信息, 并写入内部人员表
105
      * 获取用户信息, 并写入内部人员表
91
      */
106
      */

+ 144
- 0
src/main/java/com/huiju/estateagents/controller/SysOrgParamsController.java View File

1
+package com.huiju.estateagents.controller;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.huiju.estateagents.base.ResponseBean;
7
+import com.huiju.estateagents.entity.SysOrgParams;
8
+import com.huiju.estateagents.service.ISysOrgParamsService;
9
+import org.slf4j.Logger;
10
+import org.slf4j.LoggerFactory;
11
+import org.springframework.beans.factory.annotation.Autowired;
12
+import org.springframework.web.bind.annotation.PathVariable;
13
+import org.springframework.web.bind.annotation.RequestBody;
14
+import org.springframework.web.bind.annotation.RequestMapping;
15
+import org.springframework.web.bind.annotation.RequestMethod;
16
+import org.springframework.web.bind.annotation.RequestParam;
17
+import org.springframework.web.bind.annotation.ResponseBody;
18
+import org.springframework.web.bind.annotation.RestController;
19
+import com.huiju.estateagents.base.BaseController;
20
+
21
+/**
22
+ * <p>
23
+    * 组织参数配置表  前端控制器
24
+    * </p>
25
+ *
26
+ * @author jobob
27
+ * @since 2019-08-01
28
+ */
29
+@RestController
30
+@RequestMapping("/")
31
+public class SysOrgParamsController extends BaseController {
32
+
33
+    private final Logger logger = LoggerFactory.getLogger(SysOrgParamsController.class);
34
+
35
+    @Autowired
36
+    public ISysOrgParamsService iSysOrgParamsService;
37
+
38
+
39
+    /**
40
+     * 分页查询列表
41
+     * @param pageNum
42
+     * @param pageSize
43
+     * @return
44
+     */
45
+    @RequestMapping(value="/admin/sysOrgParams",method= RequestMethod.GET)
46
+    public ResponseBean sysOrgParamsList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
47
+                                         @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
48
+        ResponseBean responseBean = new ResponseBean();
49
+        try {
50
+            //使用分页插件
51
+		    IPage<SysOrgParams> pg = new Page<>(pageNum, pageSize);
52
+            QueryWrapper<SysOrgParams> queryWrapper = new QueryWrapper<>();
53
+            queryWrapper.orderByDesc("create_date");
54
+
55
+            IPage<SysOrgParams> result = iSysOrgParamsService.page(pg, queryWrapper);
56
+            responseBean.addSuccess(result);
57
+        }catch (Exception e){
58
+            logger.error("sysOrgParamsList -=- {}",e.toString());
59
+            responseBean.addError(e.getMessage());
60
+        }
61
+        return responseBean;
62
+    }
63
+
64
+    /**
65
+     * 保存对象
66
+     * @param sysOrgParams 实体对象
67
+     * @return
68
+     */
69
+    @RequestMapping(value="/admin/sysOrgParams",method= RequestMethod.POST)
70
+    public ResponseBean sysOrgParamsAdd(@RequestBody SysOrgParams sysOrgParams){
71
+        ResponseBean responseBean = new ResponseBean();
72
+        try {
73
+            if (iSysOrgParamsService.save(sysOrgParams)){
74
+                responseBean.addSuccess(sysOrgParams);
75
+            }else {
76
+                responseBean.addError("fail");
77
+            }
78
+        }catch (Exception e){
79
+            logger.error("sysOrgParamsAdd -=- {}",e.toString());
80
+            responseBean.addError(e.getMessage());
81
+        }
82
+        return responseBean;
83
+    }
84
+
85
+    /**
86
+     * 根据id删除对象
87
+     * @param id  实体ID
88
+     */
89
+    @ResponseBody
90
+    @RequestMapping(value="/admin/sysOrgParams/{id}", method= RequestMethod.DELETE)
91
+    public ResponseBean sysOrgParamsDelete(@PathVariable Integer id){
92
+        ResponseBean responseBean = new ResponseBean();
93
+        try {
94
+            if(iSysOrgParamsService.removeById(id)){
95
+                responseBean.addSuccess("success");
96
+            }else {
97
+                responseBean.addError("fail");
98
+            }
99
+        }catch (Exception e){
100
+            logger.error("sysOrgParamsDelete -=- {}",e.toString());
101
+            responseBean.addError(e.getMessage());
102
+        }
103
+        return responseBean;
104
+    }
105
+
106
+    /**
107
+     * 修改对象
108
+     * @param id  实体ID
109
+     * @param sysOrgParams 实体对象
110
+     * @return
111
+     */
112
+    @RequestMapping(value="/admin/sysOrgParams/{id}",method= RequestMethod.PUT)
113
+    public ResponseBean sysOrgParamsUpdate(@PathVariable Integer id,
114
+                                        @RequestBody SysOrgParams sysOrgParams){
115
+        ResponseBean responseBean = new ResponseBean();
116
+        try {
117
+            if (iSysOrgParamsService.updateById(sysOrgParams)){
118
+                responseBean.addSuccess(sysOrgParams);
119
+            }else {
120
+                responseBean.addError("fail");
121
+            }
122
+        }catch (Exception e){
123
+            logger.error("sysOrgParamsUpdate -=- {}",e.toString());
124
+            responseBean.addError(e.getMessage());
125
+        }
126
+        return responseBean;
127
+    }
128
+
129
+    /**
130
+     * 根据id查询对象
131
+     * @param id  实体ID
132
+     */
133
+    @RequestMapping(value="/admin/sysOrgParams/{id}",method= RequestMethod.GET)
134
+    public ResponseBean sysOrgParamsGet(@PathVariable Integer id){
135
+        ResponseBean responseBean = new ResponseBean();
136
+        try {
137
+            responseBean.addSuccess(iSysOrgParamsService.getById(id));
138
+        }catch (Exception e){
139
+            logger.error("sysOrgParamsDelete -=- {}",e.toString());
140
+            responseBean.addError(e.getMessage());
141
+        }
142
+        return responseBean;
143
+    }
144
+}

+ 144
- 0
src/main/java/com/huiju/estateagents/controller/SysProjectParamsController.java View File

1
+package com.huiju.estateagents.controller;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.huiju.estateagents.base.ResponseBean;
7
+import com.huiju.estateagents.entity.SysProjectParams;
8
+import com.huiju.estateagents.service.ISysProjectParamsService;
9
+import org.slf4j.Logger;
10
+import org.slf4j.LoggerFactory;
11
+import org.springframework.beans.factory.annotation.Autowired;
12
+import org.springframework.web.bind.annotation.PathVariable;
13
+import org.springframework.web.bind.annotation.RequestBody;
14
+import org.springframework.web.bind.annotation.RequestMapping;
15
+import org.springframework.web.bind.annotation.RequestMethod;
16
+import org.springframework.web.bind.annotation.RequestParam;
17
+import org.springframework.web.bind.annotation.ResponseBody;
18
+import org.springframework.web.bind.annotation.RestController;
19
+import com.huiju.estateagents.base.BaseController;
20
+
21
+/**
22
+ * <p>
23
+    * 项目参数配置表  前端控制器
24
+    * </p>
25
+ *
26
+ * @author jobob
27
+ * @since 2019-08-01
28
+ */
29
+@RestController
30
+@RequestMapping("/")
31
+public class SysProjectParamsController extends BaseController {
32
+
33
+    private final Logger logger = LoggerFactory.getLogger(SysProjectParamsController.class);
34
+
35
+    @Autowired
36
+    public ISysProjectParamsService iSysProjectParamsService;
37
+
38
+
39
+    /**
40
+     * 分页查询列表
41
+     * @param pageNum
42
+     * @param pageSize
43
+     * @return
44
+     */
45
+    @RequestMapping(value="/admin/sysProjectParams",method= RequestMethod.GET)
46
+    public ResponseBean sysProjectParamsList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
47
+									 @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
48
+        ResponseBean responseBean = new ResponseBean();
49
+        try {
50
+            //使用分页插件
51
+		    IPage<SysProjectParams> pg = new Page<>(pageNum, pageSize);
52
+            QueryWrapper<SysProjectParams> queryWrapper = new QueryWrapper<>();
53
+            queryWrapper.orderByDesc("create_date");
54
+
55
+            IPage<SysProjectParams> result = iSysProjectParamsService.page(pg, queryWrapper);
56
+            responseBean.addSuccess(result);
57
+        }catch (Exception e){
58
+            logger.error("sysProjectParamsList -=- {}",e.toString());
59
+            responseBean.addError(e.getMessage());
60
+        }
61
+        return responseBean;
62
+    }
63
+
64
+    /**
65
+     * 保存对象
66
+     * @param sysProjectParams 实体对象
67
+     * @return
68
+     */
69
+    @RequestMapping(value="/admin/sysProjectParams",method= RequestMethod.POST)
70
+    public ResponseBean sysProjectParamsAdd(@RequestBody SysProjectParams sysProjectParams){
71
+        ResponseBean responseBean = new ResponseBean();
72
+        try {
73
+            if (iSysProjectParamsService.save(sysProjectParams)){
74
+                responseBean.addSuccess(sysProjectParams);
75
+            }else {
76
+                responseBean.addError("fail");
77
+            }
78
+        }catch (Exception e){
79
+            logger.error("sysProjectParamsAdd -=- {}",e.toString());
80
+            responseBean.addError(e.getMessage());
81
+        }
82
+        return responseBean;
83
+    }
84
+
85
+    /**
86
+     * 根据id删除对象
87
+     * @param id  实体ID
88
+     */
89
+    @ResponseBody
90
+    @RequestMapping(value="/admin/sysProjectParams/{id}", method= RequestMethod.DELETE)
91
+    public ResponseBean sysProjectParamsDelete(@PathVariable Integer id){
92
+        ResponseBean responseBean = new ResponseBean();
93
+        try {
94
+            if(iSysProjectParamsService.removeById(id)){
95
+                responseBean.addSuccess("success");
96
+            }else {
97
+                responseBean.addError("fail");
98
+            }
99
+        }catch (Exception e){
100
+            logger.error("sysProjectParamsDelete -=- {}",e.toString());
101
+            responseBean.addError(e.getMessage());
102
+        }
103
+        return responseBean;
104
+    }
105
+
106
+    /**
107
+     * 修改对象
108
+     * @param id  实体ID
109
+     * @param sysProjectParams 实体对象
110
+     * @return
111
+     */
112
+    @RequestMapping(value="/admin/sysProjectParams/{id}",method= RequestMethod.PUT)
113
+    public ResponseBean sysProjectParamsUpdate(@PathVariable Integer id,
114
+                                        @RequestBody SysProjectParams sysProjectParams){
115
+        ResponseBean responseBean = new ResponseBean();
116
+        try {
117
+            if (iSysProjectParamsService.updateById(sysProjectParams)){
118
+                responseBean.addSuccess(sysProjectParams);
119
+            }else {
120
+                responseBean.addError("fail");
121
+            }
122
+        }catch (Exception e){
123
+            logger.error("sysProjectParamsUpdate -=- {}",e.toString());
124
+            responseBean.addError(e.getMessage());
125
+        }
126
+        return responseBean;
127
+    }
128
+
129
+    /**
130
+     * 根据id查询对象
131
+     * @param id  实体ID
132
+     */
133
+    @RequestMapping(value="/admin/sysProjectParams/{id}",method= RequestMethod.GET)
134
+    public ResponseBean sysProjectParamsGet(@PathVariable Integer id){
135
+        ResponseBean responseBean = new ResponseBean();
136
+        try {
137
+            responseBean.addSuccess(iSysProjectParamsService.getById(id));
138
+        }catch (Exception e){
139
+            logger.error("sysProjectParamsDelete -=- {}",e.toString());
140
+            responseBean.addError(e.getMessage());
141
+        }
142
+        return responseBean;
143
+    }
144
+}

+ 28
- 2
src/main/java/com/huiju/estateagents/controller/TaBuildingController.java View File

2
 
2
 
3
 
3
 
4
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.common.CommConstant;
6
+import com.huiju.estateagents.common.JWTUtils;
5
 import com.huiju.estateagents.entity.TaBuilding;
7
 import com.huiju.estateagents.entity.TaBuilding;
8
+import com.huiju.estateagents.entity.TaPerson;
6
 import com.huiju.estateagents.service.ITaBuildingService;
9
 import com.huiju.estateagents.service.ITaBuildingService;
10
+import com.huiju.estateagents.service.ITaPersonService;
11
+import com.huiju.estateagents.service.ITaSaveService;
7
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.beans.factory.annotation.Autowired;
8
 import org.springframework.web.bind.annotation.*;
13
 import org.springframework.web.bind.annotation.*;
9
 
14
 
10
 import com.huiju.estateagents.base.BaseController;
15
 import com.huiju.estateagents.base.BaseController;
11
 
16
 
17
+import javax.servlet.http.HttpServletRequest;
12
 import javax.servlet.http.HttpSession;
18
 import javax.servlet.http.HttpSession;
19
+import java.util.List;
13
 
20
 
14
 /**
21
 /**
15
  * <p>
22
  * <p>
26
     @Autowired
33
     @Autowired
27
     ITaBuildingService taBuildingService;
34
     ITaBuildingService taBuildingService;
28
 
35
 
36
+    @Autowired
37
+    ITaSaveService iTaSaveService;
38
+
39
+    @Autowired
40
+    ITaPersonService iTaPersonService;
41
+
29
     /**
42
     /**
30
      * 楼盘详情
43
      * 楼盘详情
31
      * @param id
44
      * @param id
142
     public ResponseBean getWxBuildingList(
155
     public ResponseBean getWxBuildingList(
143
             @RequestParam(defaultValue = "1") Integer pageNum,
156
             @RequestParam(defaultValue = "1") Integer pageNum,
144
             @RequestParam(defaultValue = "10")Integer pageSize,
157
             @RequestParam(defaultValue = "10")Integer pageSize,
145
-            String name
158
+            @RequestParam(defaultValue = "false") Boolean mine,
159
+            String name,
160
+            HttpServletRequest request
146
     ){
161
     ){
147
-        return taBuildingService.getWxBuildingList(pageNum, pageSize, name);
162
+        List<String> targets = null;
163
+        if (null != mine && mine) {
164
+            String openid = JWTUtils.getSubject(request);
165
+            List<TaPerson> persons = iTaPersonService.getPersonsByOpenId(openid);
166
+            if (null == persons || persons.size() == 0) {
167
+                return ResponseBean.error("当前账户信息异常, 清除缓存重试", ResponseBean.ERROR_UNAVAILABLE);
168
+            }
169
+
170
+            targets = iTaSaveService.getTargesOfPerson(persons.get(0).getPersonId(), CommConstant.FAVOR_PROJECT);
171
+        }
172
+
173
+        return taBuildingService.getWxBuildingList(pageNum, pageSize, name, targets);
148
     }
174
     }
149
 
175
 
150
     /**
176
     /**

+ 28
- 5
src/main/java/com/huiju/estateagents/controller/TaBuildingDynamicController.java View File

7
 import com.huiju.estateagents.base.BaseController;
7
 import com.huiju.estateagents.base.BaseController;
8
 import com.huiju.estateagents.base.ResponseBean;
8
 import com.huiju.estateagents.base.ResponseBean;
9
 import com.huiju.estateagents.common.JWTUtils;
9
 import com.huiju.estateagents.common.JWTUtils;
10
+import com.huiju.estateagents.common.StringUtils;
10
 import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
11
 import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
11
 import com.huiju.estateagents.entity.TaBuilding;
12
 import com.huiju.estateagents.entity.TaBuilding;
12
 import com.huiju.estateagents.entity.TaBuildingDynamic;
13
 import com.huiju.estateagents.entity.TaBuildingDynamic;
14
+import com.huiju.estateagents.entity.TaPerson;
13
 import com.huiju.estateagents.mapper.TaActivityDynamicEnlistMapper;
15
 import com.huiju.estateagents.mapper.TaActivityDynamicEnlistMapper;
14
 import com.huiju.estateagents.mapper.TaBuildingMapper;
16
 import com.huiju.estateagents.mapper.TaBuildingMapper;
15
 import com.huiju.estateagents.service.ITaBuildingDynamicService;
17
 import com.huiju.estateagents.service.ITaBuildingDynamicService;
18
+import com.huiju.estateagents.service.ITaPersonService;
16
 import org.springframework.beans.factory.annotation.Autowired;
19
 import org.springframework.beans.factory.annotation.Autowired;
17
 import org.springframework.beans.propertyeditors.CustomDateEditor;
20
 import org.springframework.beans.propertyeditors.CustomDateEditor;
18
 import org.springframework.web.bind.ServletRequestDataBinder;
21
 import org.springframework.web.bind.ServletRequestDataBinder;
26
 import java.time.LocalDateTime;
29
 import java.time.LocalDateTime;
27
 import java.util.Date;
30
 import java.util.Date;
28
 import java.util.HashMap;
31
 import java.util.HashMap;
32
+import java.util.List;
29
 
33
 
30
 /**
34
 /**
31
  * <p>
35
  * <p>
45
     @Autowired
49
     @Autowired
46
     private TaBuildingMapper taBuildingMapper;
50
     private TaBuildingMapper taBuildingMapper;
47
 
51
 
52
+    @Autowired
53
+    private ITaPersonService taPersonService;
54
+
48
     @InitBinder
55
     @InitBinder
49
     protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
56
     protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
50
         DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
57
         DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
76
      * @return
83
      * @return
77
      */
84
      */
78
     @RequestMapping(value = "/wx/buildingDynamiceList", method = RequestMethod.GET)
85
     @RequestMapping(value = "/wx/buildingDynamiceList", method = RequestMethod.GET)
79
-    public ResponseBean wxBuildingDynamiceList(@RequestParam(value = "buildingId")String buildingId,
86
+    public ResponseBean wxBuildingDynamiceList(@RequestParam(value = "buildingId", required = false)String buildingId,
80
                                                @RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum,
87
                                                @RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum,
81
                                                @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
88
                                                @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
89
+                                               @RequestParam(defaultValue = "false" )boolean mine,
82
                                                HttpServletRequest request){
90
                                                HttpServletRequest request){
83
         String openid = JWTUtils.getSubject(request);
91
         String openid = JWTUtils.getSubject(request);
84
-        ResponseBean  responseBean = iBuildingDynamicService.getWxBuildingDynamiceList(pageNum,pageSize,buildingId,openid);
92
+        ResponseBean  responseBean = new ResponseBean();
93
+        if(mine){
94
+            List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
95
+            if (null == taPersons || taPersons.size() != 1) {
96
+                return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
97
+            }
98
+            TaPerson person = taPersons.get(0);
99
+            responseBean.addSuccess(taPersonService.getJoinedActivity(pageNum,pageSize,person.getPhone(),""));
100
+        }else {
101
+            responseBean = iBuildingDynamicService.getWxBuildingDynamiceList(pageNum,pageSize,buildingId,openid);
102
+        }
103
+
85
         return responseBean;
104
         return responseBean;
86
     }
105
     }
87
 
106
 
88
     /**
107
     /**
89
      * 活动详情
108
      * 活动详情
90
      * @param dynamicId
109
      * @param dynamicId
91
-     * @param buildingId
92
      * @return
110
      * @return
93
      */
111
      */
94
     @RequestMapping(value = "/wx/buildingDynamiceInfo/{dynamicId}", method = RequestMethod.GET)
112
     @RequestMapping(value = "/wx/buildingDynamiceInfo/{dynamicId}", method = RequestMethod.GET)
95
     public ResponseBean iBuildingDynamicInfo(@PathVariable(value = "dynamicId") String dynamicId,
113
     public ResponseBean iBuildingDynamicInfo(@PathVariable(value = "dynamicId") String dynamicId,
96
-                                             @RequestParam("buildingId")String buildingId,
114
+
97
                                              HttpServletRequest request){
115
                                              HttpServletRequest request){
98
         String openid = JWTUtils.getSubject(request);
116
         String openid = JWTUtils.getSubject(request);
117
+        String buildingId = "";
99
         ResponseBean  responseBean = iBuildingDynamicService.getWxBuildingDynamiceInfo(dynamicId,buildingId,openid);
118
         ResponseBean  responseBean = iBuildingDynamicService.getWxBuildingDynamiceInfo(dynamicId,buildingId,openid);
100
         return responseBean;
119
         return responseBean;
101
     }
120
     }
173
         dynamicQueryWrapper.eq("dynamic_id", dynamicId);
192
         dynamicQueryWrapper.eq("dynamic_id", dynamicId);
174
         TaBuildingDynamic dynamic = iBuildingDynamicService.getOne(dynamicQueryWrapper);
193
         TaBuildingDynamic dynamic = iBuildingDynamicService.getOne(dynamicQueryWrapper);
175
         TaBuilding building= taBuildingMapper.selectBuilding(dynamic.getBuildingId());
194
         TaBuilding building= taBuildingMapper.selectBuilding(dynamic.getBuildingId());
176
-        dynamic.setBuildingName(building.getBuildingName());
195
+
196
+        if (null != building) {
197
+            dynamic.setBuildingName(building.getBuildingName());
198
+        }
199
+
177
         responseBean.addSuccess(dynamic);
200
         responseBean.addSuccess(dynamic);
178
         return responseBean;
201
         return responseBean;
179
     }
202
     }

+ 187
- 0
src/main/java/com/huiju/estateagents/controller/TaCustomerMessageController.java View File

1
+package com.huiju.estateagents.controller;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.huiju.estateagents.base.BaseController;
7
+import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.common.CommConstant;
9
+import com.huiju.estateagents.common.JWTUtils;
10
+import com.huiju.estateagents.entity.TaCustomerMessage;
11
+import com.huiju.estateagents.entity.TaPerson;
12
+import com.huiju.estateagents.service.ITaCustomerMessageService;
13
+import com.huiju.estateagents.service.ITaPersonService;
14
+import org.slf4j.Logger;
15
+import org.slf4j.LoggerFactory;
16
+import org.springframework.beans.factory.annotation.Autowired;
17
+import org.springframework.web.bind.annotation.PathVariable;
18
+import org.springframework.web.bind.annotation.RequestBody;
19
+import org.springframework.web.bind.annotation.RequestMapping;
20
+import org.springframework.web.bind.annotation.RequestMethod;
21
+import org.springframework.web.bind.annotation.RequestParam;
22
+import org.springframework.web.bind.annotation.ResponseBody;
23
+import org.springframework.web.bind.annotation.RestController;
24
+
25
+import javax.servlet.http.HttpServletRequest;
26
+import java.time.LocalDateTime;
27
+import java.util.List;
28
+
29
+/**
30
+ * <p>
31
+    * 用户留言表  前端控制器
32
+    * </p>
33
+ *
34
+ * @author jobob
35
+ * @since 2019-07-30
36
+ */
37
+@RestController
38
+@RequestMapping("/api")
39
+public class TaCustomerMessageController extends BaseController {
40
+
41
+    private final Logger logger = LoggerFactory.getLogger(TaCustomerMessageController.class);
42
+
43
+    @Autowired
44
+    public ITaCustomerMessageService iTaCustomerMessageService;
45
+
46
+    @Autowired
47
+    private ITaPersonService taPersonService;
48
+
49
+    /**
50
+     * 分页查询列表
51
+     * @param pageNum
52
+     * @param pageSize
53
+     * @return
54
+     */
55
+    @RequestMapping(value="/admin/taCustomerMessage",method= RequestMethod.GET)
56
+    public ResponseBean taCustomerMessageList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
57
+                                              @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
58
+        ResponseBean responseBean = new ResponseBean();
59
+        try {
60
+            //使用分页插件
61
+		    IPage<TaCustomerMessage> pg = new Page<>(pageNum, pageSize);
62
+            QueryWrapper<TaCustomerMessage> queryWrapper = new QueryWrapper<>();
63
+            queryWrapper.orderByDesc("create_date");
64
+
65
+            IPage<TaCustomerMessage> result = iTaCustomerMessageService.page(pg, queryWrapper);
66
+            responseBean.addSuccess(result);
67
+        }catch (Exception e){
68
+            e.printStackTrace();
69
+            logger.error("taCustomerMessageList -=- {}",e.toString());
70
+            responseBean.addError(e.getMessage());
71
+        }
72
+        return responseBean;
73
+    }
74
+
75
+    /**
76
+     * 保存对象
77
+     * @param taCustomerMessage 实体对象
78
+     * @return
79
+     */
80
+    @RequestMapping(value="/taCustomerMessage",method= RequestMethod.POST)
81
+    public ResponseBean taCustomerMessageAdd(@RequestBody TaCustomerMessage taCustomerMessage){
82
+        ResponseBean responseBean = new ResponseBean();
83
+        try {
84
+            if (iTaCustomerMessageService.save(taCustomerMessage)){
85
+                responseBean.addSuccess(taCustomerMessage);
86
+            }else {
87
+                responseBean.addError("fail");
88
+            }
89
+        }catch (Exception e){
90
+            e.printStackTrace();
91
+            logger.error("taCustomerMessageAdd -=- {}",e.toString());
92
+            responseBean.addError(e.getMessage());
93
+        }
94
+        return responseBean;
95
+    }
96
+
97
+    /**
98
+     * 根据id删除对象
99
+     * @param id  实体ID
100
+     */
101
+    @ResponseBody
102
+    @RequestMapping(value="/taCustomerMessage/{id}", method= RequestMethod.DELETE)
103
+    public ResponseBean taCustomerMessageDelete(@PathVariable Integer id){
104
+        ResponseBean responseBean = new ResponseBean();
105
+        try {
106
+            if(iTaCustomerMessageService.removeById(id)){
107
+                responseBean.addSuccess("success");
108
+            }else {
109
+                responseBean.addError("fail");
110
+            }
111
+        }catch (Exception e){
112
+            e.printStackTrace();
113
+            logger.error("taCustomerMessageDelete -=- {}",e.toString());
114
+            responseBean.addError(e.getMessage());
115
+        }
116
+        return responseBean;
117
+    }
118
+
119
+    /**
120
+     * 修改对象
121
+     * @param id  实体ID
122
+     * @param taCustomerMessage 实体对象
123
+     * @return
124
+     */
125
+    @RequestMapping(value="/taCustomerMessage/{id}",method= RequestMethod.PUT)
126
+    public ResponseBean taCustomerMessageUpdate(@PathVariable Integer id,
127
+                                        @RequestBody TaCustomerMessage taCustomerMessage){
128
+        ResponseBean responseBean = new ResponseBean();
129
+        try {
130
+            if (iTaCustomerMessageService.updateById(taCustomerMessage)){
131
+                responseBean.addSuccess(taCustomerMessage);
132
+            }else {
133
+                responseBean.addError("fail");
134
+            }
135
+        }catch (Exception e){
136
+            e.printStackTrace();
137
+            logger.error("taCustomerMessageUpdate -=- {}",e.toString());
138
+            responseBean.addError(e.getMessage());
139
+        }
140
+        return responseBean;
141
+    }
142
+
143
+    /**
144
+     * 根据id查询对象
145
+     * @param id  实体ID
146
+     */
147
+    @RequestMapping(value="/taCustomerMessage/{id}",method= RequestMethod.GET)
148
+    public ResponseBean taCustomerMessageGet(@PathVariable Integer id){
149
+        ResponseBean responseBean = new ResponseBean();
150
+        try {
151
+            responseBean.addSuccess(iTaCustomerMessageService.getById(id));
152
+        }catch (Exception e){
153
+            e.printStackTrace();
154
+            logger.error("taCustomerMessageDelete -=- {}",e.toString());
155
+            responseBean.addError(e.getMessage());
156
+        }
157
+        return responseBean;
158
+    }
159
+    
160
+    /**
161
+     * 保存对象
162
+     * @param taCustomerMessage 实体对象
163
+     * @return
164
+     */
165
+    @RequestMapping(value="/wx/taCustomerMessage",method= RequestMethod.POST)
166
+    public ResponseBean wxCustomerMessageAdd(@RequestBody TaCustomerMessage taCustomerMessage, HttpServletRequest request){
167
+        ResponseBean responseBean = new ResponseBean();
168
+        try {
169
+            String openid = JWTUtils.getSubject(request);
170
+            TaPerson taPersons = taPersonService.getPersonsByOpenId(openid).get(0);
171
+            taCustomerMessage.setStatus(CommConstant.STATUS_UNACCALIMED);
172
+            taCustomerMessage.setCreateDate(LocalDateTime.now());
173
+            taCustomerMessage.setPersonId(taPersons.getPersonId());
174
+            taCustomerMessage.setNickname(taPersons.getNickname());
175
+            if (iTaCustomerMessageService.save(taCustomerMessage)){
176
+                responseBean.addSuccess(taCustomerMessage);
177
+            }else {
178
+                responseBean.addError("fail");
179
+            }
180
+        }catch (Exception e){
181
+            e.printStackTrace();
182
+            logger.error("taCustomerMessageAdd -=- {}",e.toString());
183
+            responseBean.addError(e.getMessage());
184
+        }
185
+        return responseBean;
186
+    }
187
+}

+ 33
- 3
src/main/java/com/huiju/estateagents/controller/TaNewsController.java View File

5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.huiju.estateagents.base.BaseController;
6
 import com.huiju.estateagents.base.BaseController;
7
 import com.huiju.estateagents.base.ResponseBean;
7
 import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.common.CommConstant;
9
+import com.huiju.estateagents.common.JWTUtils;
8
 import com.huiju.estateagents.entity.TaNews;
10
 import com.huiju.estateagents.entity.TaNews;
11
+import com.huiju.estateagents.entity.TaPerson;
9
 import com.huiju.estateagents.service.ITaNewsService;
12
 import com.huiju.estateagents.service.ITaNewsService;
13
+import com.huiju.estateagents.service.ITaPersonService;
14
+import com.huiju.estateagents.service.ITaSaveService;
15
+import org.checkerframework.checker.units.qual.A;
10
 import org.slf4j.Logger;
16
 import org.slf4j.Logger;
11
 import org.slf4j.LoggerFactory;
17
 import org.slf4j.LoggerFactory;
12
 import org.springframework.beans.factory.annotation.Autowired;
18
 import org.springframework.beans.factory.annotation.Autowired;
18
 import org.springframework.web.bind.annotation.ResponseBody;
24
 import org.springframework.web.bind.annotation.ResponseBody;
19
 import org.springframework.web.bind.annotation.RestController;
25
 import org.springframework.web.bind.annotation.RestController;
20
 
26
 
27
+import javax.servlet.http.HttpServletRequest;
28
+import java.util.List;
29
+
21
 /**
30
 /**
22
  * <p>
31
  * <p>
23
     * 资讯表  前端控制器
32
     * 资讯表  前端控制器
35
     @Autowired
44
     @Autowired
36
     public ITaNewsService iTaNewsService;
45
     public ITaNewsService iTaNewsService;
37
 
46
 
47
+    @Autowired
48
+    public ITaPersonService iTaPersonService;
49
+
50
+    @Autowired
51
+    public ITaSaveService iTaSaveService;
52
+
38
 
53
 
39
     /**
54
     /**
40
      * 分页查询列表
55
      * 分页查询列表
61
      */
76
      */
62
     @RequestMapping(value="/wx/taNews",method= RequestMethod.GET)
77
     @RequestMapping(value="/wx/taNews",method= RequestMethod.GET)
63
     public ResponseBean wxTaNewsList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
78
     public ResponseBean wxTaNewsList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
64
-                                   @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
65
-        ResponseBean responseBean = iTaNewsService.getList(pageNum, pageSize, null, null, null, null);
66
-        return responseBean;
79
+                                     @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
80
+                                     @RequestParam(required = false) String buildingId,
81
+                                     @RequestParam(defaultValue = "false") Boolean mine,
82
+                                     HttpServletRequest request
83
+    ){
84
+        List<String> targets = null;
85
+        if (null != mine && mine) {
86
+            String openid = JWTUtils.getSubject(request);
87
+            List<TaPerson> persons = iTaPersonService.getPersonsByOpenId(openid);
88
+            if (null == persons || persons.size() == 0) {
89
+                return ResponseBean.error("当前账户信息异常, 清除缓存重试", ResponseBean.ERROR_UNAVAILABLE);
90
+            }
91
+
92
+            targets = iTaSaveService.getTargesOfPerson(persons.get(0).getPersonId(), CommConstant.FAVOR_NEWS);
93
+        }
94
+
95
+        IPage<TaNews> results = iTaNewsService.getWxList(pageNum, pageSize, buildingId, targets);
96
+        return ResponseBean.success(results);
67
     }
97
     }
68
 
98
 
69
     /**
99
     /**

+ 87
- 3
src/main/java/com/huiju/estateagents/controller/TaPersonController.java View File

6
 import com.huiju.estateagents.base.ResponseBean;
6
 import com.huiju.estateagents.base.ResponseBean;
7
 import com.huiju.estateagents.common.CommConstant;
7
 import com.huiju.estateagents.common.CommConstant;
8
 import com.huiju.estateagents.common.JWTUtils;
8
 import com.huiju.estateagents.common.JWTUtils;
9
+import com.huiju.estateagents.entity.TaBuildingDynamic;
9
 import com.huiju.estateagents.entity.TaPerson;
10
 import com.huiju.estateagents.entity.TaPerson;
11
+import com.huiju.estateagents.entity.TaPersonBuilding;
10
 import com.huiju.estateagents.service.ITaPersonService;
12
 import com.huiju.estateagents.service.ITaPersonService;
11
 import org.springframework.beans.factory.annotation.Autowired;
13
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.web.bind.annotation.*;
14
 import org.springframework.web.bind.annotation.*;
14
 import com.huiju.estateagents.base.BaseController;
16
 import com.huiju.estateagents.base.BaseController;
15
 
17
 
16
 import javax.servlet.http.HttpServletRequest;
18
 import javax.servlet.http.HttpServletRequest;
19
+import java.util.ArrayList;
17
 import java.util.HashMap;
20
 import java.util.HashMap;
21
+import java.util.List;
18
 import java.util.Map;
22
 import java.util.Map;
19
 
23
 
20
 /**
24
 /**
47
     @GetMapping("/wx/cards")
51
     @GetMapping("/wx/cards")
48
     public ResponseBean getCardList(@RequestParam(defaultValue = "1") int pageNumber,
52
     public ResponseBean getCardList(@RequestParam(defaultValue = "1") int pageNumber,
49
                                     @RequestParam(defaultValue = "10") int pageSize,
53
                                     @RequestParam(defaultValue = "10") int pageSize,
50
-                                    @RequestParam(defaultValue = "false") boolean mine) {
54
+                                    @RequestParam(defaultValue = "false") boolean mine,HttpServletRequest request) {
51
         if (pageNumber < 0 || pageSize < 0) {
55
         if (pageNumber < 0 || pageSize < 0) {
52
             return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
56
             return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
53
         }
57
         }
58
+        if (mine){
59
+            String openid = JWTUtils.getSubject(request);
60
+            List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
61
+            if (null == taPersons || taPersons.size() != 1) {
62
+                return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
63
+            }
64
+            TaPerson person = taPersons.get(0);
65
+            IPage<Map<String, Object>>  result = taPersonService.getSavedConsaultants(pageNumber,pageSize,person.getPersonId());
66
+            return ResponseBean.success(result);
67
+        }else {
68
+            IPage<Map<String, Object>> result = taPersonService.getCardList(pageNumber, pageSize);
69
+            return ResponseBean.success(result);
70
+        }
71
+
54
 
72
 
55
-        IPage<Map<String, Object>> result = taPersonService.getCardList(pageNumber, pageSize);
56
-        return ResponseBean.success(result);
57
     }
73
     }
58
 
74
 
59
     /**
75
     /**
277
     @GetMapping("/admin/consultant/{id}")
293
     @GetMapping("/admin/consultant/{id}")
278
     public ResponseBean getConsultant(@PathVariable String id) {
294
     public ResponseBean getConsultant(@PathVariable String id) {
279
         TaPerson taPerson = taPersonService.getById(id);
295
         TaPerson taPerson = taPersonService.getById(id);
296
+
297
+        List<TaPersonBuilding> buildings = taPersonService.getPersonBuildings(id);
298
+        if (null != buildings && buildings.size() > 0) {
299
+            List<String> projects = new ArrayList<>();
300
+            for (TaPersonBuilding b : buildings) {
301
+                projects.add(b.getBuildingId());
302
+            }
303
+            taPerson.setProjects(projects);
304
+        }
305
+
280
         return ResponseBean.success(taPerson);
306
         return ResponseBean.success(taPerson);
281
     }
307
     }
282
 
308
 
293
     boolean isEmpty(String str) {
319
     boolean isEmpty(String str) {
294
         return null == str || "".equals(str.trim());
320
         return null == str || "".equals(str.trim());
295
     }
321
     }
322
+
323
+    /**
324
+//     * 获取收藏置业顾问列表
325
+//     * @param pageNumber
326
+//     * @param pageSize
327
+//     * @return
328
+//     */
329
+//    @GetMapping("/wx/savedPerson")
330
+//    public ResponseBean getSavedConsaultants(@RequestParam(defaultValue = "1") int pageNumber,
331
+//                                    @RequestParam(defaultValue = "10") int pageSize,HttpServletRequest request) {
332
+//        String openid = JWTUtils.getSubject(request);
333
+//        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
334
+//        if (null == taPersons || taPersons.size() != 1) {
335
+//            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
336
+//        }
337
+//        TaPerson person = taPersons.get(0);
338
+//        if (pageNumber < 0 || pageSize < 0) {
339
+//            return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
340
+//        }
341
+//        try {
342
+//            IPage<TaPerson> result = taPersonService.getSavedConsaultants(pageNumber,pageSize,person.getPersonId());
343
+//            return ResponseBean.success(result);
344
+//        }catch (Exception e){
345
+//            e.printStackTrace();
346
+//            return ResponseBean.error("查询失败", ResponseBean.ERROR_UNAVAILABLE);
347
+//        }
348
+//
349
+//    }
350
+    /**
351
+     * 获取我参加过的活动列表
352
+     * @param pageNumber
353
+     * @param pageSize
354
+     * @return
355
+     */
356
+    @GetMapping("/wx/joinedActivity/")
357
+    public ResponseBean getJoinedActivity(@RequestParam(defaultValue = "1") int pageNumber,
358
+                                             @RequestParam(defaultValue = "10") int pageSize,HttpServletRequest request){
359
+        String openid = JWTUtils.getSubject(request);
360
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
361
+        if (null == taPersons || taPersons.size() != 1) {
362
+            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
363
+        }
364
+        TaPerson person = taPersons.get(0);
365
+
366
+        if (pageNumber < 0 || pageSize < 0) {
367
+            return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
368
+        }
369
+        try {
370
+            IPage<TaBuildingDynamic> result = taPersonService.getJoinedActivity(pageNumber,pageSize,person.getPhone(),"");
371
+            return ResponseBean.success(result);
372
+        }catch (Exception e){
373
+            e.printStackTrace();
374
+            return ResponseBean.error("查询失败", ResponseBean.ERROR_UNAVAILABLE);
375
+        }
376
+
377
+    }
378
+
379
+
296
 }
380
 }

+ 2
- 4
src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java View File

113
     /**
113
     /**
114
      * 修改对象
114
      * 修改对象
115
      * @param id  实体ID
115
      * @param id  实体ID
116
-     * @param taPersonVisitRecord 实体对象
117
      * @return
116
      * @return
118
      */
117
      */
119
     @RequestMapping(value="/wx/taPersonVisitRecord/{id}",method= RequestMethod.PUT)
118
     @RequestMapping(value="/wx/taPersonVisitRecord/{id}",method= RequestMethod.PUT)
120
-    public ResponseBean taPersonVisitRecordUpdate(@PathVariable Integer id,
121
-                                        @RequestBody TaPersonVisitRecord taPersonVisitRecord){
122
-        ResponseBean responseBean = new ResponseBean();
119
+    public ResponseBean taPersonVisitRecordUpdate(@PathVariable Integer id){
120
+        TaPersonVisitRecord taPersonVisitRecord = iTaPersonVisitRecordService.getById(id);
123
         taPersonVisitRecord.setLeaveTime(LocalDateTime.now());
121
         taPersonVisitRecord.setLeaveTime(LocalDateTime.now());
124
         taPersonVisitRecord.setRecordId(id);
122
         taPersonVisitRecord.setRecordId(id);
125
         Long duation = taPersonVisitRecord.getLeaveTime().atZone(ZoneOffset.UTC).toEpochSecond()-taPersonVisitRecord.getVisitTime().atZone(ZoneOffset.UTC).toEpochSecond();
123
         Long duation = taPersonVisitRecord.getLeaveTime().atZone(ZoneOffset.UTC).toEpochSecond()-taPersonVisitRecord.getVisitTime().atZone(ZoneOffset.UTC).toEpochSecond();

+ 46
- 0
src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java View File

2
 
2
 
3
 
3
 
4
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.common.CommConstant;
5
 import com.huiju.estateagents.common.JWTUtils;
6
 import com.huiju.estateagents.common.JWTUtils;
6
 import com.huiju.estateagents.entity.TaPerson;
7
 import com.huiju.estateagents.entity.TaPerson;
7
 import com.huiju.estateagents.entity.TaRecommendCustomer;
8
 import com.huiju.estateagents.entity.TaRecommendCustomer;
9
+import com.huiju.estateagents.event.EventBus;
8
 import com.huiju.estateagents.service.ITaPersonService;
10
 import com.huiju.estateagents.service.ITaPersonService;
9
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
11
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
10
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.context.ApplicationContext;
11
 import org.springframework.web.bind.annotation.*;
14
 import org.springframework.web.bind.annotation.*;
12
 
15
 
13
 import com.huiju.estateagents.base.BaseController;
16
 import com.huiju.estateagents.base.BaseController;
14
 
17
 
18
+import javax.annotation.Resource;
15
 import javax.servlet.http.HttpServletRequest;
19
 import javax.servlet.http.HttpServletRequest;
16
 import java.util.List;
20
 import java.util.List;
17
 
21
 
29
 
33
 
30
     @Autowired
34
     @Autowired
31
     ITaRecommendCustomerService taRecommendCustomerService;
35
     ITaRecommendCustomerService taRecommendCustomerService;
36
+
32
     @Autowired
37
     @Autowired
33
     ITaPersonService taPersonService;
38
     ITaPersonService taPersonService;
34
 
39
 
40
+    @Resource
41
+    private ApplicationContext applicationContext;
42
+
35
     /**
43
     /**
36
      * 我的客户列表
44
      * 我的客户列表
37
      * @param pageNumber
45
      * @param pageNumber
229
         }
237
         }
230
     }
238
     }
231
 
239
 
240
+    /**
241
+     * 修改对象
242
+     * @return
243
+     */
244
+    @RequestMapping(value="/admin/customer/recommend/verify/{id}",method= RequestMethod.PUT)
245
+    public ResponseBean taRecommendCustomerVerify(@PathVariable String id,@RequestParam Integer verifyStatus, @RequestParam String verifyRemark){
246
+        if (null == verifyStatus) {
247
+            return ResponseBean.error("审核结果非法", ResponseBean.ERROR_ILLEGAL_PARAMS);
248
+        }
249
+
250
+        ResponseBean responseBean = new ResponseBean();
251
+        try {
252
+            TaRecommendCustomer taRecommendCustomer = taRecommendCustomerService.getById(id);
253
+            if(taRecommendCustomer.getVerifyStatus() != CommConstant.VERIFY_READY){
254
+                taRecommendCustomer.setVerifyStatus(verifyStatus);
255
+                taRecommendCustomer.setVerifyRemark(verifyRemark);
256
+                if (taRecommendCustomerService.updateById(taRecommendCustomer)){
257
+
258
+                    // 审核通过增加积分
259
+                    if (CommConstant.VERIFY_AGREE == verifyStatus) {
260
+                        applicationContext.publishEvent(new EventBus(taRecommendCustomer, EventBus.EventType.RecommendCustomer));
261
+                    }
262
+
263
+                    responseBean.addSuccess(taRecommendCustomer);
264
+                }else {
265
+                    responseBean.addError("fail");
266
+                }
267
+            } else {
268
+                responseBean.addSuccess("客户已审核");
269
+            }
270
+
271
+        }catch (Exception e){
272
+            e.printStackTrace();
273
+            responseBean.addError(e.getMessage());
274
+        }
275
+        return responseBean;
276
+    }
277
+
232
 }
278
 }

+ 14
- 0
src/main/java/com/huiju/estateagents/controller/TaShareController.java View File

38
 
38
 
39
         return taShareService.getListOf(id, typeOf, pageNumber, pageSize);
39
         return taShareService.getListOf(id, typeOf, pageNumber, pageSize);
40
     }
40
     }
41
+
42
+    /**
43
+     * 确认分享, 送积分
44
+     * @param typeOf
45
+     * @param id
46
+     * @param request
47
+     * @return
48
+     */
49
+    @PutMapping("/wx/{typeOf}/share/{id}")
50
+    public ResponseBean makeSure(@PathVariable String typeOf, @PathVariable String id, HttpServletRequest request) {
51
+        String openid = JWTUtils.getSubject(request);
52
+        taShareService.makeSure(openid, typeOf, id);
53
+        return ResponseBean.success("");
54
+    }
41
 }
55
 }

+ 69
- 0
src/main/java/com/huiju/estateagents/entity/SysOrgParams.java View File

1
+package com.huiju.estateagents.entity;
2
+
3
+import java.time.LocalDateTime;
4
+import java.io.Serializable;
5
+
6
+import com.baomidou.mybatisplus.annotation.IdType;
7
+import com.baomidou.mybatisplus.annotation.TableId;
8
+import lombok.Data;
9
+import lombok.EqualsAndHashCode;
10
+import lombok.experimental.Accessors;
11
+
12
+/**
13
+ * <p>
14
+ * 组织参数配置表 
15
+ * </p>
16
+ *
17
+ * @author jobob
18
+ * @since 2019-08-01
19
+ */
20
+@Data
21
+@EqualsAndHashCode(callSuper = false)
22
+@Accessors(chain = true)
23
+public class SysOrgParams implements Serializable {
24
+
25
+    private static final long serialVersionUID = 1L;
26
+
27
+    /**
28
+     * 参数ID
29
+     */
30
+    @TableId(value = "param_id", type = IdType.AUTO)
31
+    private Integer paramId;
32
+
33
+    /**
34
+     * 参数名称
35
+     */
36
+    private String paramName;
37
+
38
+    /**
39
+     * 参数编码
40
+     */
41
+    private String paramCode;
42
+
43
+    /**
44
+     * 参数描述
45
+     */
46
+    private String paramDesc;
47
+
48
+    /**
49
+     * 参数值
50
+     */
51
+    private String paramValue;
52
+
53
+    /**
54
+     * 状态
55
+     */
56
+    private Integer status;
57
+
58
+    /**
59
+     * 创建时间
60
+     */
61
+    private LocalDateTime createDate;
62
+
63
+    /**
64
+     * 公司id
65
+     */
66
+    private Integer orgId;
67
+
68
+
69
+}

+ 74
- 0
src/main/java/com/huiju/estateagents/entity/SysProjectParams.java View File

1
+package com.huiju.estateagents.entity;
2
+
3
+import java.time.LocalDateTime;
4
+import java.io.Serializable;
5
+
6
+import com.baomidou.mybatisplus.annotation.IdType;
7
+import com.baomidou.mybatisplus.annotation.TableId;
8
+import lombok.Data;
9
+import lombok.EqualsAndHashCode;
10
+import lombok.experimental.Accessors;
11
+
12
+/**
13
+ * <p>
14
+ * 项目参数配置表 
15
+ * </p>
16
+ *
17
+ * @author jobob
18
+ * @since 2019-08-01
19
+ */
20
+@Data
21
+@EqualsAndHashCode(callSuper = false)
22
+@Accessors(chain = true)
23
+public class SysProjectParams implements Serializable {
24
+
25
+    private static final long serialVersionUID = 1L;
26
+
27
+    /**
28
+     * 参数ID
29
+     */
30
+    @TableId(value = "param_id", type = IdType.AUTO)
31
+    private Integer paramId;
32
+
33
+    /**
34
+     * 参数名称
35
+     */
36
+    private String paramName;
37
+
38
+    /**
39
+     * 参数编码
40
+     */
41
+    private String paramCode;
42
+
43
+    /**
44
+     * 参数描述
45
+     */
46
+    private String paramDesc;
47
+
48
+    /**
49
+     * 参数值
50
+     */
51
+    private String paramValue;
52
+
53
+    /**
54
+     * 状态
55
+     */
56
+    private Integer status;
57
+
58
+    /**
59
+     * 创建时间
60
+     */
61
+    private LocalDateTime createDate;
62
+
63
+    /**
64
+     * 公司id
65
+     */
66
+    private Integer orgId;
67
+
68
+    /**
69
+     * 楼盘id
70
+     */
71
+    private String buildingId;
72
+
73
+
74
+}

+ 2
- 14
src/main/java/com/huiju/estateagents/entity/TaActivityDynamicEnlist.java View File

2
 
2
 
3
 import com.baomidou.mybatisplus.annotation.IdType;
3
 import com.baomidou.mybatisplus.annotation.IdType;
4
 import com.baomidou.mybatisplus.annotation.TableId;
4
 import com.baomidou.mybatisplus.annotation.TableId;
5
+import com.baomidou.mybatisplus.annotation.TableName;
5
 import lombok.Data;
6
 import lombok.Data;
6
 import lombok.EqualsAndHashCode;
7
 import lombok.EqualsAndHashCode;
7
 import lombok.experimental.Accessors;
8
 import lombok.experimental.Accessors;
8
 
9
 
9
 import java.io.Serializable;
10
 import java.io.Serializable;
10
 import java.time.LocalDateTime;
11
 import java.time.LocalDateTime;
11
-
12
-/**
13
- * <p>
14
- * 点赞表
15
- * </p>
16
- *
17
- * @author jobob
18
- * @since 2019-05-10
19
- */
20
 @Data
12
 @Data
21
 @EqualsAndHashCode(callSuper = false)
13
 @EqualsAndHashCode(callSuper = false)
22
 @Accessors(chain = true)
14
 @Accessors(chain = true)
15
+@TableName("ta_activity_dynamic_enlist")
23
 public class TaActivityDynamicEnlist implements Serializable {
16
 public class TaActivityDynamicEnlist implements Serializable {
24
 
17
 
25
     private static final long serialVersionUID = 1L;
18
     private static final long serialVersionUID = 1L;
55
      */
48
      */
56
     private String phone;
49
     private String phone;
57
 
50
 
58
-    /**
59
-     * favor_num
60
-     */
61
-
62
-
63
 }
51
 }

+ 74
- 0
src/main/java/com/huiju/estateagents/entity/TaCustomerMessage.java View File

1
+package com.huiju.estateagents.entity;
2
+
3
+import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableId;
5
+import lombok.Data;
6
+import lombok.EqualsAndHashCode;
7
+import lombok.experimental.Accessors;
8
+
9
+import java.io.Serializable;
10
+import java.time.LocalDateTime;
11
+
12
+/**
13
+ * <p>
14
+ * 用户留言表 
15
+ * </p>
16
+ *
17
+ * @author jobob
18
+ * @since 2019-07-30
19
+ */
20
+@Data
21
+@EqualsAndHashCode(callSuper = false)
22
+@Accessors(chain = true)
23
+public class TaCustomerMessage implements Serializable {
24
+
25
+    private static final long serialVersionUID = 1L;
26
+
27
+    /**
28
+     * 留言ID
29
+     */
30
+    @TableId(value = "message_id", type = IdType.AUTO)
31
+    private Integer messageId;
32
+
33
+    /**
34
+     * 创建时间
35
+     */
36
+    private LocalDateTime createDate;
37
+
38
+    /**
39
+     * 公司id
40
+     */
41
+    private Integer orgId;
42
+
43
+    /**
44
+     * 楼盘id
45
+     */
46
+    private String buildingId;
47
+
48
+    /**
49
+     * 用户ID
50
+     */
51
+    private String personId;
52
+
53
+    /**
54
+     * 用户名
55
+     */
56
+    private String nickname;
57
+
58
+    /**
59
+     * 手机号
60
+     */
61
+    private String phone;
62
+
63
+    /**
64
+     * 留言内容
65
+     */
66
+    private String message;
67
+
68
+    /**
69
+     * 状态
70
+     */
71
+    private Integer status;
72
+
73
+
74
+}

+ 6
- 1
src/main/java/com/huiju/estateagents/entity/TaGoods.java View File

1
 package com.huiju.estateagents.entity;
1
 package com.huiju.estateagents.entity;
2
 
2
 
3
 import com.baomidou.mybatisplus.annotation.IdType;
3
 import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
4
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import lombok.Data;
6
 import lombok.Data;
6
 import lombok.EqualsAndHashCode;
7
 import lombok.EqualsAndHashCode;
106
      */
107
      */
107
     private String address;
108
     private String address;
108
 
109
 
109
-
110
+    /**
111
+     * 兑换人
112
+     */
113
+    @TableField(exist = false)
114
+    private TaPerson exchanger;
110
 }
115
 }

+ 4
- 0
src/main/java/com/huiju/estateagents/entity/TaPersonSign.java View File

1
 package com.huiju.estateagents.entity;
1
 package com.huiju.estateagents.entity;
2
 
2
 
3
 import com.baomidou.mybatisplus.annotation.IdType;
3
 import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
4
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import java.time.LocalDateTime;
6
 import java.time.LocalDateTime;
6
 import java.io.Serializable;
7
 import java.io.Serializable;
44
      */
45
      */
45
     private Integer durationDays;
46
     private Integer durationDays;
46
 
47
 
48
+    @TableField(exist = false)
49
+    private TaPerson person;
50
+
47
 }
51
 }

+ 6
- 0
src/main/java/com/huiju/estateagents/entity/TaRecommendCustomer.java View File

158
 
158
 
159
     @TableField(exist = false)
159
     @TableField(exist = false)
160
     private TaPerson consultant;
160
     private TaPerson consultant;
161
+
162
+    @TableField(exist = false)
163
+    private String recommendName;
164
+
165
+    @TableField(exist = false)
166
+    private String recommendTel;
161
 }
167
 }

+ 6
- 1
src/main/java/com/huiju/estateagents/entity/TaShare.java View File

1
 package com.huiju.estateagents.entity;
1
 package com.huiju.estateagents.entity;
2
 
2
 
3
 import com.baomidou.mybatisplus.annotation.IdType;
3
 import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
4
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import com.baomidou.mybatisplus.annotation.TableId;
5
 import lombok.Data;
6
 import lombok.Data;
6
 import lombok.EqualsAndHashCode;
7
 import lombok.EqualsAndHashCode;
60
      */
61
      */
61
     private LocalDateTime createDate;
62
     private LocalDateTime createDate;
62
 
63
 
63
-
64
+    /**
65
+     * 分享打开人
66
+     */
67
+    @TableField(exist = false)
68
+    private TaPerson openUser;
64
 }
69
 }

+ 43
- 0
src/main/java/com/huiju/estateagents/event/EventBus.java View File

1
+package com.huiju.estateagents.event;
2
+
3
+import lombok.Data;
4
+import org.springframework.context.ApplicationEvent;
5
+
6
+/**
7
+ * 积分自定义积分事件
8
+ * @author FXF
9
+ * @date 2019-07-30
10
+ */
11
+@Data
12
+public class EventBus extends ApplicationEvent {
13
+	EventType type;
14
+	
15
+	public EventBus(Object source, EventType type) {
16
+		super(source);
17
+		this.type = type;
18
+	}
19
+
20
+	public enum EventType {
21
+		// 分享海报
22
+		SharePoster(1),
23
+
24
+		// 签到
25
+		DailyCheckin(2),
26
+
27
+		// 推荐客户
28
+		RecommendCustomer(3),
29
+
30
+		// 注册经纪人
31
+		SignUpAgent(4);
32
+
33
+		private Integer type;
34
+
35
+		EventType(Integer type) {
36
+			this.type = type;
37
+		}
38
+
39
+		public Integer toInt() {
40
+			return type;
41
+		}
42
+	}
43
+}

+ 62
- 0
src/main/java/com/huiju/estateagents/event/EventLisenter.java View File

1
+package com.huiju.estateagents.event;
2
+
3
+import com.huiju.estateagents.entity.TaPerson;
4
+import com.huiju.estateagents.entity.TaPersonSign;
5
+import com.huiju.estateagents.entity.TaRecommendCustomer;
6
+import com.huiju.estateagents.entity.TaShare;
7
+import com.huiju.estateagents.service.ITaPointsRecordsService;
8
+import lombok.extern.slf4j.Slf4j;
9
+import org.springframework.beans.factory.annotation.Autowired;
10
+import org.springframework.context.event.EventListener;
11
+import org.springframework.stereotype.Component;
12
+
13
+/**
14
+ * @author FXF
15
+ * @date 2019-07-30
16
+ */
17
+
18
+@Component
19
+@Slf4j
20
+public class EventLisenter {
21
+	
22
+	@Autowired
23
+	private ITaPointsRecordsService taPointsRecordsService;
24
+
25
+	/**
26
+	 * 获取积分
27
+	 * @param event
28
+	 */
29
+	@EventListener
30
+	public void handler(EventBus event) {
31
+		switch (event.getType()) {
32
+			case SharePoster:
33
+				getSharePoints((TaShare) event.getSource());
34
+				break;
35
+			case DailyCheckin:
36
+				getCheckinPoints((TaPersonSign) event.getSource());
37
+				break;
38
+			case RecommendCustomer:
39
+				getRecommendCustPoints((TaRecommendCustomer) event.getSource());
40
+				break;
41
+			case SignUpAgent:
42
+				getSignUpPoints((TaPerson) event.getSource());
43
+				break;
44
+			default:
45
+				break;
46
+		}
47
+	}
48
+
49
+	// 分享赚积分
50
+	private void getSharePoints(TaShare taShare) {
51
+		taPointsRecordsService.sharePoints(taShare);
52
+	}
53
+
54
+	// 签到赚积分
55
+	private void getCheckinPoints(TaPersonSign taPersonSign) { taPointsRecordsService.checkinPoints(taPersonSign); }
56
+
57
+	// 注册送积分
58
+	private void getSignUpPoints(TaPerson taPerson) { taPointsRecordsService.signUpPoints(taPerson);}
59
+
60
+	// 推荐客户送积分
61
+	private void getRecommendCustPoints(TaRecommendCustomer taRecommendCustomer) { taPointsRecordsService.recommendCustPoints(taRecommendCustomer); }
62
+}

+ 1
- 0
src/main/java/com/huiju/estateagents/exception/ExceptionHandleAdice.java View File

22
 
22
 
23
     @ExceptionHandler(Exception.class)
23
     @ExceptionHandler(Exception.class)
24
     public ResponseBean handleException(Exception e){
24
     public ResponseBean handleException(Exception e){
25
+        e.printStackTrace();
25
         log.error(e.getMessage(),e);
26
         log.error(e.getMessage(),e);
26
         ResponseBean response = new ResponseBean();
27
         ResponseBean response = new ResponseBean();
27
         response.addError("系统异常,请稍后重试!");
28
         response.addError("系统异常,请稍后重试!");

+ 19
- 0
src/main/java/com/huiju/estateagents/mapper/SysOrgParamsMapper.java View File

1
+package com.huiju.estateagents.mapper;
2
+
3
+
4
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5
+import com.huiju.estateagents.entity.SysOrgParams;
6
+import org.apache.ibatis.annotations.Mapper;
7
+
8
+/**
9
+ * <p>
10
+ * 组织参数配置表  Mapper 接口
11
+ * </p>
12
+ *
13
+ * @author jobob
14
+ * @since 2019-08-01
15
+ */
16
+@Mapper
17
+public interface SysOrgParamsMapper extends BaseMapper<SysOrgParams> {
18
+
19
+}

+ 19
- 0
src/main/java/com/huiju/estateagents/mapper/SysProjectParamsMapper.java View File

1
+package com.huiju.estateagents.mapper;
2
+
3
+
4
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5
+import com.huiju.estateagents.entity.SysProjectParams;
6
+import org.apache.ibatis.annotations.Mapper;
7
+
8
+/**
9
+ * <p>
10
+ * 项目参数配置表  Mapper 接口
11
+ * </p>
12
+ *
13
+ * @author jobob
14
+ * @since 2019-08-01
15
+ */
16
+@Mapper
17
+public interface SysProjectParamsMapper extends BaseMapper<SysProjectParams> {
18
+
19
+}

+ 18
- 0
src/main/java/com/huiju/estateagents/mapper/TaCustomerMessageMapper.java View File

1
+package com.huiju.estateagents.mapper;
2
+
3
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.huiju.estateagents.entity.TaCustomerMessage;
5
+import org.apache.ibatis.annotations.Mapper;
6
+
7
+/**
8
+ * <p>
9
+ * 用户留言表  Mapper 接口
10
+ * </p>
11
+ *
12
+ * @author jobob
13
+ * @since 2019-07-30
14
+ */
15
+@Mapper
16
+public interface TaCustomerMessageMapper extends BaseMapper<TaCustomerMessage> {
17
+
18
+}

+ 2
- 0
src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java View File

43
 
43
 
44
     String getConsultantByTel(@Param("tel")String tel);
44
     String getConsultantByTel(@Param("tel")String tel);
45
 
45
 
46
+    List<Map<String,Object>> selectCardListofMine(IPage<Map<String,Object>> page, @Param("personType") String personType, @Param("status") int status,@Param("personIds")List<String> personIds);
47
+
46
 }
48
 }

+ 4
- 0
src/main/java/com/huiju/estateagents/mapper/TaSaveMapper.java View File

3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.huiju.estateagents.entity.TaSave;
4
 import com.huiju.estateagents.entity.TaSave;
5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
7
+
8
+import java.util.List;
6
 
9
 
7
 /**
10
 /**
8
  * <p>
11
  * <p>
15
 @Mapper
18
 @Mapper
16
 public interface TaSaveMapper extends BaseMapper<TaSave> {
19
 public interface TaSaveMapper extends BaseMapper<TaSave> {
17
 
20
 
21
+    List<String> getTargesOfPerson(@Param("personId") String personId, @Param("tagertType") String tagertType);
18
 }
22
 }

+ 17
- 0
src/main/java/com/huiju/estateagents/service/ISysOrgParamsService.java View File

1
+package com.huiju.estateagents.service;
2
+
3
+
4
+import com.baomidou.mybatisplus.extension.service.IService;
5
+import com.huiju.estateagents.entity.SysOrgParams;
6
+
7
+/**
8
+ * <p>
9
+ * 组织参数配置表  服务类
10
+ * </p>
11
+ *
12
+ * @author jobob
13
+ * @since 2019-08-01
14
+ */
15
+public interface ISysOrgParamsService extends IService<SysOrgParams> {
16
+
17
+}

+ 17
- 0
src/main/java/com/huiju/estateagents/service/ISysProjectParamsService.java View File

1
+package com.huiju.estateagents.service;
2
+
3
+
4
+import com.baomidou.mybatisplus.extension.service.IService;
5
+import com.huiju.estateagents.entity.SysProjectParams;
6
+
7
+/**
8
+ * <p>
9
+ * 项目参数配置表  服务类
10
+ * </p>
11
+ *
12
+ * @author jobob
13
+ * @since 2019-08-01
14
+ */
15
+public interface ISysProjectParamsService extends IService<SysProjectParams> {
16
+
17
+}

+ 3
- 1
src/main/java/com/huiju/estateagents/service/ITaBuildingService.java View File

4
 import com.huiju.estateagents.entity.TaBuilding;
4
 import com.huiju.estateagents.entity.TaBuilding;
5
 import com.baomidou.mybatisplus.extension.service.IService;
5
 import com.baomidou.mybatisplus.extension.service.IService;
6
 
6
 
7
+import java.util.List;
8
+
7
 /**
9
 /**
8
  * <p>
10
  * <p>
9
  * 项目表 服务类
11
  * 项目表 服务类
105
      * @param pageSize
107
      * @param pageSize
106
      * @param name
108
      * @param name
107
      */
109
      */
108
-    ResponseBean getWxBuildingList(Integer pageNum, Integer pageSize, String name);
110
+    ResponseBean getWxBuildingList(Integer pageNum, Integer pageSize, String name, List<String> targets);
109
 
111
 
110
     /**
112
     /**
111
      * 微信小程序 楼盘列表
113
      * 微信小程序 楼盘列表

+ 16
- 0
src/main/java/com/huiju/estateagents/service/ITaCustomerMessageService.java View File

1
+package com.huiju.estateagents.service;
2
+
3
+import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.huiju.estateagents.entity.TaCustomerMessage;
5
+
6
+/**
7
+ * <p>
8
+ * 用户留言表  服务类
9
+ * </p>
10
+ *
11
+ * @author jobob
12
+ * @since 2019-07-30
13
+ */
14
+public interface ITaCustomerMessageService extends IService<TaCustomerMessage> {
15
+
16
+}

+ 4
- 0
src/main/java/com/huiju/estateagents/service/ITaNewsService.java View File

5
 import com.huiju.estateagents.base.ResponseBean;
5
 import com.huiju.estateagents.base.ResponseBean;
6
 import com.huiju.estateagents.entity.TaNews;
6
 import com.huiju.estateagents.entity.TaNews;
7
 
7
 
8
+import java.util.List;
9
+
8
 /**
10
 /**
9
  * <p>
11
  * <p>
10
  * 资讯表  服务类
12
  * 资讯表  服务类
67
      * @return
69
      * @return
68
      */
70
      */
69
     ResponseBean wxTaPvNum(Integer id);
71
     ResponseBean wxTaPvNum(Integer id);
72
+
73
+    IPage<TaNews> getWxList(Integer pageNum, Integer pageSize, String buildingId, List<String> targets);
70
 }
74
 }

+ 4
- 3
src/main/java/com/huiju/estateagents/service/ITaPersonService.java View File

6
 import com.huiju.estateagents.entity.TaBuildingDynamic;
6
 import com.huiju.estateagents.entity.TaBuildingDynamic;
7
 import com.huiju.estateagents.entity.TaPerson;
7
 import com.huiju.estateagents.entity.TaPerson;
8
 import com.baomidou.mybatisplus.extension.service.IService;
8
 import com.baomidou.mybatisplus.extension.service.IService;
9
+import com.huiju.estateagents.entity.TaPersonBuilding;
9
 
10
 
10
 import java.util.List;
11
 import java.util.List;
11
 import java.util.Map;
12
 import java.util.Map;
57
 
58
 
58
     String getPersonIdByCustomerId(String customerId);
59
     String getPersonIdByCustomerId(String customerId);
59
 
60
 
60
-    IPage<TaPerson> getSavedConsaultants(int pageNumber, int pageSize,String personId);
61
-
62
-//    IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building);
61
+    IPage<Map<String,Object>> getSavedConsaultants(int pageNumber, int pageSize,String personId);
63
 
62
 
63
+    IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building);
64
 
64
 
65
+    List<TaPersonBuilding> getPersonBuildings(String personId);
65
 }
66
 }

+ 10
- 1
src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java View File

1
 package com.huiju.estateagents.service;
1
 package com.huiju.estateagents.service;
2
 
2
 
3
 import com.baomidou.mybatisplus.extension.service.IService;
3
 import com.baomidou.mybatisplus.extension.service.IService;
4
-import com.huiju.estateagents.entity.TaPointsRecords;
4
+import com.huiju.estateagents.entity.*;
5
 
5
 
6
 /**
6
 /**
7
  * <p>
7
  * <p>
13
  */
13
  */
14
 public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
14
 public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
15
 
15
 
16
+	void sharePoints(TaShare taShare);
17
+
18
+	void checkinPoints(TaPersonSign taPersonSign);
19
+
20
+	void signUpPoints(TaPerson taPerson);
21
+
22
+	void recommendCustPoints(TaRecommendCustomer taRecommendCustomer);
23
+
24
+	void consumeGoodsPoints(TaGoods taGoods);
16
 }
25
 }

+ 3
- 0
src/main/java/com/huiju/estateagents/service/ITaSaveService.java View File

4
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.base.ResponseBean;
5
 import com.huiju.estateagents.entity.TaSave;
5
 import com.huiju.estateagents.entity.TaSave;
6
 
6
 
7
+import java.util.List;
8
+
7
 /**
9
 /**
8
  * <p>
10
  * <p>
9
  * 收藏表  服务类
11
  * 收藏表  服务类
19
 
21
 
20
     ResponseBean cancelLike(String openid, String typeOf, String like);
22
     ResponseBean cancelLike(String openid, String typeOf, String like);
21
 
23
 
24
+    List<String> getTargesOfPerson(String personId, String tagertType);
22
 }
25
 }

+ 2
- 0
src/main/java/com/huiju/estateagents/service/ITaShareService.java View File

17
     ResponseBean saveData(String openid, String typeOf, String id);
17
     ResponseBean saveData(String openid, String typeOf, String id);
18
 
18
 
19
     ResponseBean getListOf(String id, String typeOf, Integer pageNumber, Integer pageSize);
19
     ResponseBean getListOf(String id, String typeOf, Integer pageNumber, Integer pageSize);
20
+
21
+    void makeSure(String openid, String typeOf, String id);
20
 }
22
 }

+ 20
- 0
src/main/java/com/huiju/estateagents/service/impl/SysOrgParamsServiceImpl.java View File

1
+package com.huiju.estateagents.service.impl;
2
+
3
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
+import com.huiju.estateagents.entity.SysOrgParams;
5
+import com.huiju.estateagents.mapper.SysOrgParamsMapper;
6
+import com.huiju.estateagents.service.ISysOrgParamsService;
7
+import org.springframework.stereotype.Service;
8
+
9
+/**
10
+ * <p>
11
+ * 组织参数配置表  服务实现类
12
+ * </p>
13
+ *
14
+ * @author jobob
15
+ * @since 2019-08-01
16
+ */
17
+@Service
18
+public class SysOrgParamsServiceImpl extends ServiceImpl<SysOrgParamsMapper, SysOrgParams> implements ISysOrgParamsService {
19
+
20
+}

+ 21
- 0
src/main/java/com/huiju/estateagents/service/impl/SysProjectParamsServiceImpl.java View File

1
+package com.huiju.estateagents.service.impl;
2
+
3
+
4
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
+import com.huiju.estateagents.entity.SysProjectParams;
6
+import com.huiju.estateagents.mapper.SysProjectParamsMapper;
7
+import com.huiju.estateagents.service.ISysProjectParamsService;
8
+import org.springframework.stereotype.Service;
9
+
10
+/**
11
+ * <p>
12
+ * 项目参数配置表  服务实现类
13
+ * </p>
14
+ *
15
+ * @author jobob
16
+ * @since 2019-08-01
17
+ */
18
+@Service
19
+public class SysProjectParamsServiceImpl extends ServiceImpl<SysProjectParamsMapper, SysProjectParams> implements ISysProjectParamsService {
20
+
21
+}

+ 26
- 5
src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java View File

7
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
8
 import com.huiju.estateagents.base.ResponseBean;
8
 import com.huiju.estateagents.base.ResponseBean;
9
 import com.huiju.estateagents.common.CommConstant;
9
 import com.huiju.estateagents.common.CommConstant;
10
+import com.huiju.estateagents.common.StringUtils;
10
 import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
11
 import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
11
 import com.huiju.estateagents.entity.TaBuilding;
12
 import com.huiju.estateagents.entity.TaBuilding;
12
 import com.huiju.estateagents.entity.TaBuildingDynamic;
13
 import com.huiju.estateagents.entity.TaBuildingDynamic;
98
         page.setCurrent(pageNum);
99
         page.setCurrent(pageNum);
99
         page.setSize(pageSize);
100
         page.setSize(pageSize);
100
         QueryWrapper<TaBuildingDynamic> buildingDynamicQueryWrapper = new QueryWrapper<>();
101
         QueryWrapper<TaBuildingDynamic> buildingDynamicQueryWrapper = new QueryWrapper<>();
101
-        buildingDynamicQueryWrapper.eq("building_id", buildingId);
102
+        buildingDynamicQueryWrapper.eq(!StringUtils.isEmpty(buildingId),"building_id", buildingId);
102
         buildingDynamicQueryWrapper.eq("status", "1");
103
         buildingDynamicQueryWrapper.eq("status", "1");
103
         buildingDynamicQueryWrapper.orderByDesc("create_date");
104
         buildingDynamicQueryWrapper.orderByDesc("create_date");
104
         IPage<TaBuildingDynamic> buildingDynamicIPage = buildingDynamicMapper.selectPage(page, buildingDynamicQueryWrapper);
105
         IPage<TaBuildingDynamic> buildingDynamicIPage = buildingDynamicMapper.selectPage(page, buildingDynamicQueryWrapper);
218
 
219
 
219
     @Override
220
     @Override
220
     public ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist) {
221
     public ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist) {
222
+        ResponseBean responseBean= new ResponseBean<>();
221
         // 查询当前活动属于哪个楼盘
223
         // 查询当前活动属于哪个楼盘
222
-        TaBuildingDynamic taBuildingDynamic= buildingDynamicMapper.iBuildingDynamicSelectId(taActivityDynamicEnlist.getDynamicId());
224
+        TaBuildingDynamic taBuildingDynamic= buildingDynamicMapper.selectById(taActivityDynamicEnlist.getDynamicId());
225
+        // 判断当前活动是否满
226
+        QueryWrapper<TaActivityDynamicEnlist> taBuildingDynamicQuery=  new QueryWrapper<>();
227
+        taBuildingDynamicQuery.eq("dynamic_id",taBuildingDynamic.getDynamicId());
228
+        int contActivity = taActivityDynamicEnlistMapper.selectCount(taBuildingDynamicQuery);
229
+        int personNum= Integer.parseInt(null == taBuildingDynamic.getPersonNum()?"0": taBuildingDynamic.getPersonNum());
230
+        // 当报名人数已满时,活动为已结束
231
+        if (contActivity >= personNum){
232
+            taBuildingDynamic.setIsEnlist("2");
233
+            buildingDynamicMapper.updateById(taBuildingDynamic);
234
+            responseBean.addError("当前报名人数已满");
235
+            return responseBean;
236
+        }
237
+        // 判断是否报名根据电话号码校验
238
+        taBuildingDynamicQuery.eq("phone",taActivityDynamicEnlist.getPhone());
239
+        TaActivityDynamicEnlist activityDynamicEnlist = taActivityDynamicEnlistMapper.selectOne(taBuildingDynamicQuery);
240
+        if (null !=activityDynamicEnlist){
241
+            responseBean.addError("此号码已报名活动");
242
+            return responseBean;
243
+        }
223
         taActivityDynamicEnlist.setCreateDate(LocalDateTime.now())
244
         taActivityDynamicEnlist.setCreateDate(LocalDateTime.now())
224
                                .setBuildingId(taBuildingDynamic.getDynamicId());
245
                                .setBuildingId(taBuildingDynamic.getDynamicId());
225
         int state = taActivityDynamicEnlistMapper.insert(taActivityDynamicEnlist);
246
         int state = taActivityDynamicEnlistMapper.insert(taActivityDynamicEnlist);
246
         Long enlistStart = taBuildingDynamic.getEnlistStart().toInstant(ZoneOffset.of("+8")).toEpochMilli();
267
         Long enlistStart = taBuildingDynamic.getEnlistStart().toInstant(ZoneOffset.of("+8")).toEpochMilli();
247
         // (1:进行中)当前时间小于报名截止时间,并且报名状态为1
268
         // (1:进行中)当前时间小于报名截止时间,并且报名状态为1
248
         if ("1".equals(taBuildingDynamic.getIsEnlist()) && currentTime <= enlistEnd ) {
269
         if ("1".equals(taBuildingDynamic.getIsEnlist()) && currentTime <= enlistEnd ) {
249
-            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_ONE);
270
+            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_PROCESSING);
250
         }
271
         }
251
         //(2:未开始)当前时间是否小于报名时间,并且报名状态为1
272
         //(2:未开始)当前时间是否小于报名时间,并且报名状态为1
252
         if (!"1".equals(taBuildingDynamic.getIsEnlist()) && currentTime <= enlistStart){
273
         if (!"1".equals(taBuildingDynamic.getIsEnlist()) && currentTime <= enlistStart){
253
-            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_TWO);
274
+            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_PREPARE);
254
         }
275
         }
255
         //(3:结束)当前时间大于报名结束时间,并且报名状态为1
276
         //(3:结束)当前时间大于报名结束时间,并且报名状态为1
256
         if ("1".equals(taBuildingDynamic.getIsEnlist()) && currentTime >= enlistEnd){
277
         if ("1".equals(taBuildingDynamic.getIsEnlist()) && currentTime >= enlistEnd){
257
-            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_ONE_THREE);
278
+            taBuildingDynamic.setActivityCondition(CommConstant.ACTIVITY_CONDITION_FINISH);
258
         }
279
         }
259
         return taBuildingDynamic;
280
         return taBuildingDynamic;
260
     }
281
     }

+ 6
- 2
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java View File

45
     @Autowired
45
     @Autowired
46
     TaBuildingApartmentMapper taBuildingApartmentMapper;
46
     TaBuildingApartmentMapper taBuildingApartmentMapper;
47
 
47
 
48
+    @Autowired
49
+    TaSaveMapper taSaveMapper;
50
+
48
     @Autowired
51
     @Autowired
49
     TaUvMapper taUvMapper;
52
     TaUvMapper taUvMapper;
50
 
53
 
308
     }
311
     }
309
 
312
 
310
     @Override
313
     @Override
311
-    public ResponseBean getWxBuildingList(Integer pageNum, Integer pageSize, String name) {
314
+    public ResponseBean getWxBuildingList(Integer pageNum, Integer pageSize, String name, List<String> targets) {
312
         IPage<TaBuilding> page = new Page<>(pageNum, pageSize);
315
         IPage<TaBuilding> page = new Page<>(pageNum, pageSize);
313
 
316
 
314
         QueryWrapper<TaBuilding> buildingQueryWrapper = new QueryWrapper<>();
317
         QueryWrapper<TaBuilding> buildingQueryWrapper = new QueryWrapper<>();
315
         buildingQueryWrapper.nested(null != name && !"".equals(name.trim()), i -> i.like("name", name).or().like("building_name", name));
318
         buildingQueryWrapper.nested(null != name && !"".equals(name.trim()), i -> i.like("name", name).or().like("building_name", name));
316
         buildingQueryWrapper.eq("status", 1);
319
         buildingQueryWrapper.eq("status", 1);
317
-        buildingQueryWrapper.like(null != name && !"".equals(name.trim()), "name", name);
320
+        buildingQueryWrapper.in(null != targets && targets.size() > 0, "building_id", targets);
321
+//        buildingQueryWrapper.like(null != name && !"".equals(name.trim()), "name", name);
318
         buildingQueryWrapper.orderByAsc("order_no");
322
         buildingQueryWrapper.orderByAsc("order_no");
319
 
323
 
320
         IPage<TaBuilding> result = taBuildingMapper.selectPage(page, buildingQueryWrapper);
324
         IPage<TaBuilding> result = taBuildingMapper.selectPage(page, buildingQueryWrapper);

+ 20
- 0
src/main/java/com/huiju/estateagents/service/impl/TaCustomerMessageServiceImpl.java View File

1
+package com.huiju.estateagents.service.impl;
2
+
3
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
+import com.huiju.estateagents.entity.TaCustomerMessage;
5
+import com.huiju.estateagents.mapper.TaCustomerMessageMapper;
6
+import com.huiju.estateagents.service.ITaCustomerMessageService;
7
+import org.springframework.stereotype.Service;
8
+
9
+/**
10
+ * <p>
11
+ * 用户留言表  服务实现类
12
+ * </p>
13
+ *
14
+ * @author jobob
15
+ * @since 2019-07-30
16
+ */
17
+@Service
18
+public class TaCustomerMessageServiceImpl extends ServiceImpl<TaCustomerMessageMapper, TaCustomerMessage> implements ITaCustomerMessageService {
19
+
20
+}

+ 3
- 0
src/main/java/com/huiju/estateagents/service/impl/TaGoodsServiceImpl.java View File

71
 		if (taGoods.getTotalNum() < 1){
71
 		if (taGoods.getTotalNum() < 1){
72
 			return "此商品无库存";
72
 			return "此商品无库存";
73
 		}
73
 		}
74
+
75
+		taGoods.setExchanger(taPerson);
76
+
74
 		//插入积分消费流水表
77
 		//插入积分消费流水表
75
 		insertTaPointRecords(taPerson,taGoods);
78
 		insertTaPointRecords(taPerson,taGoods);
76
 		//插入积分兑换记录
79
 		//插入积分兑换记录

+ 25
- 12
src/main/java/com/huiju/estateagents/service/impl/TaNewsServiceImpl.java View File

6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
 import com.huiju.estateagents.base.ResponseBean;
7
 import com.huiju.estateagents.base.ResponseBean;
8
 import com.huiju.estateagents.common.BeanTools;
8
 import com.huiju.estateagents.common.BeanTools;
9
-import com.huiju.estateagents.common.CommConstant;
9
+import com.huiju.estateagents.common.StringUtils;
10
 import com.huiju.estateagents.entity.TaBuilding;
10
 import com.huiju.estateagents.entity.TaBuilding;
11
-import com.huiju.estateagents.entity.TaFavor;
12
 import com.huiju.estateagents.entity.TaNews;
11
 import com.huiju.estateagents.entity.TaNews;
13
 import com.huiju.estateagents.entity.TaNewsType;
12
 import com.huiju.estateagents.entity.TaNewsType;
14
 import com.huiju.estateagents.exception.EstaException;
13
 import com.huiju.estateagents.exception.EstaException;
15
 import com.huiju.estateagents.mapper.TaFavorMapper;
14
 import com.huiju.estateagents.mapper.TaFavorMapper;
16
 import com.huiju.estateagents.mapper.TaNewsMapper;
15
 import com.huiju.estateagents.mapper.TaNewsMapper;
17
 import com.huiju.estateagents.service.ITaBuildingService;
16
 import com.huiju.estateagents.service.ITaBuildingService;
18
-import com.huiju.estateagents.service.ITaFavorService;
19
 import com.huiju.estateagents.service.ITaNewsService;
17
 import com.huiju.estateagents.service.ITaNewsService;
20
 import com.huiju.estateagents.service.ITaNewsTypeService;
18
 import com.huiju.estateagents.service.ITaNewsTypeService;
21
-import org.apache.commons.lang3.StringUtils;
22
-import org.springframework.beans.BeanUtils;
23
 import org.springframework.beans.factory.annotation.Autowired;
19
 import org.springframework.beans.factory.annotation.Autowired;
24
 import org.springframework.stereotype.Service;
20
 import org.springframework.stereotype.Service;
25
 
21
 
26
 import java.time.LocalDateTime;
22
 import java.time.LocalDateTime;
27
-import java.util.HashMap;
28
 import java.util.List;
23
 import java.util.List;
29
-import java.util.Map;
30
 
24
 
31
 /**
25
 /**
32
  * <p>
26
  * <p>
61
         page.setSize(pageSize);
55
         page.setSize(pageSize);
62
 
56
 
63
         QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
57
         QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
64
-        taNewsQueryWrapper.eq(StringUtils.isNotBlank(buildingId),"building_id", buildingId);
58
+        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId),"building_id", buildingId);
65
         taNewsQueryWrapper.eq(orgId != null,"org_id", orgId);
59
         taNewsQueryWrapper.eq(orgId != null,"org_id", orgId);
66
         taNewsQueryWrapper.eq(newsTypeId != null,"news_type_id", newsTypeId);
60
         taNewsQueryWrapper.eq(newsTypeId != null,"news_type_id", newsTypeId);
67
         taNewsQueryWrapper.eq(newsStatus != null, "news_status", newsStatus);
61
         taNewsQueryWrapper.eq(newsStatus != null, "news_status", newsStatus);
69
         taNewsQueryWrapper.orderByDesc("create_date");
63
         taNewsQueryWrapper.orderByDesc("create_date");
70
         IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
64
         IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
71
 
65
 
72
-        List<TaNews> records = taNewsIPage.getRecords();
66
+        injectType(taNewsIPage.getRecords());
67
+
68
+        responseBean.addSuccess(taNewsIPage);
69
+        return responseBean;
70
+    }
71
+
72
+    private void injectType(List<TaNews> records) {
73
         records.forEach(e -> {
73
         records.forEach(e -> {
74
             TaNewsType newsType = iTaNewsTypeService.getById(e.getNewsTypeId());
74
             TaNewsType newsType = iTaNewsTypeService.getById(e.getNewsTypeId());
75
             e.setNewsType(newsType);
75
             e.setNewsType(newsType);
76
         });
76
         });
77
-
78
-        responseBean.addSuccess(taNewsIPage);
79
-        return responseBean;
80
     }
77
     }
81
 
78
 
82
     @Override
79
     @Override
183
         responseBean.addSuccess((Object)"");
180
         responseBean.addSuccess((Object)"");
184
         return responseBean;
181
         return responseBean;
185
     }
182
     }
183
+
184
+    @Override
185
+    public IPage<TaNews> getWxList(Integer pageNum, Integer pageSize, String buildingId, List<String> targets) {
186
+        IPage<TaNews> page = new Page<>(pageNum, pageSize);
187
+
188
+        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
189
+        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId), "building_id", buildingId);
190
+        taNewsQueryWrapper.in(null != targets && targets.size() > 0, "news_id", targets);
191
+        taNewsQueryWrapper.eq("status", 1);
192
+        taNewsQueryWrapper.orderByDesc("create_date");
193
+        IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
194
+
195
+        injectType(taNewsIPage.getRecords());
196
+
197
+        return page;
198
+    }
186
 }
199
 }

+ 51
- 85
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java View File

12
 import com.huiju.estateagents.common.MD5Utils;
12
 import com.huiju.estateagents.common.MD5Utils;
13
 import com.huiju.estateagents.common.StringUtils;
13
 import com.huiju.estateagents.common.StringUtils;
14
 import com.huiju.estateagents.entity.*;
14
 import com.huiju.estateagents.entity.*;
15
+import com.huiju.estateagents.event.EventBus;
15
 import com.huiju.estateagents.mapper.*;
16
 import com.huiju.estateagents.mapper.*;
16
 import com.huiju.estateagents.service.ITaPersonService;
17
 import com.huiju.estateagents.service.ITaPersonService;
17
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
18
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
18
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
19
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
19
 import org.springframework.beans.factory.annotation.Autowired;
20
 import org.springframework.beans.factory.annotation.Autowired;
21
+import org.springframework.context.ApplicationContext;
20
 import org.springframework.stereotype.Service;
22
 import org.springframework.stereotype.Service;
21
 
23
 
24
+import javax.annotation.Resource;
22
 import java.time.LocalDateTime;
25
 import java.time.LocalDateTime;
23
 import java.util.ArrayList;
26
 import java.util.ArrayList;
24
 import java.util.HashMap;
27
 import java.util.HashMap;
56
 
59
 
57
     @Autowired
60
     @Autowired
58
     TaChatMapper taChatMapper;
61
     TaChatMapper taChatMapper;
59
-    
60
-    @Autowired
61
-    private TdPointsRulesMapper tdPointsRulesMapper;
62
-    
63
-    @Autowired
64
-    private TaPointsRecordsMapper taPointsRecordsMapper;
65
 
62
 
66
     @Autowired
63
     @Autowired
67
     private ITaRecommendCustomerService iTaRecommendCustomerService;
64
     private ITaRecommendCustomerService iTaRecommendCustomerService;
69
     @Autowired
66
     @Autowired
70
     private TaSaveMapper taSaveMapper;
67
     private TaSaveMapper taSaveMapper;
71
 
68
 
69
+    @Autowired
70
+    private TaActivityDynamicEnlistMapper taActivityDynamicEnlistMapper;
71
+
72
+    @Autowired
73
+    private TaBuildingDynamicMapper taBuildingDynamicMapper;
74
+    
75
+    @Resource
76
+    private ApplicationContext applicationContext;
77
+
72
     @Override
78
     @Override
73
     public TaPerson mergePersonWxInfo(WxMaUserInfo userInfo) {
79
     public TaPerson mergePersonWxInfo(WxMaUserInfo userInfo) {
74
         // 先查询是否存在用户
80
         // 先查询是否存在用户
139
         }
145
         }
140
 
146
 
141
         iTaRecommendCustomerService.newByPerson(person);
147
         iTaRecommendCustomerService.newByPerson(person);
142
-
143
-        //查看是否领取过授权积分
144
-        QueryWrapper<TaPointsRecords> taPointsRecordsQueryWrapper = new QueryWrapper<>();
145
-        taPointsRecordsQueryWrapper.eq("person_id", person.getPersonId());
146
-        taPointsRecordsQueryWrapper.eq("change_type",CommConstant.POINTS_AUTHORIZE);
147
-
148
-        List<TaPointsRecords> taPointsRecordsList = taPointsRecordsMapper.selectList(taPointsRecordsQueryWrapper);
149
-        if (taPointsRecordsList.size() < 0){
150
-            //发放积分
151
-            QueryWrapper<TdPointsRules> queryWrapper = new QueryWrapper<>();
152
-            queryWrapper.eq("rule_id",2);
153
-            queryWrapper.eq("status",CommConstant.STATUS_NORMAL);
154
-            TdPointsRules tdPointsRules = tdPointsRulesMapper.selectOne(queryWrapper);
155
-            if (null != tdPointsRules) {
156
-                //插入积分消费流水表
157
-                TaPointsRecords taPointsRecords = new TaPointsRecords();
158
-                taPointsRecords.setPersonId(person.getPersonId());
159
-                taPointsRecords.setPersonName(com.huiju.estateagents.common.StringUtils.ifNull(person.getName(),person.getNickname()));
160
-                taPointsRecords.setPersonType(person.getPersonType());
161
-                taPointsRecords.setPointsAmount(tdPointsRules.getPointsAmount());
162
-                taPointsRecords.setChangeType(CommConstant.POINTS_AUTHORIZE);
163
-                JSONObject jsonObject = new JSONObject();
164
-                jsonObject.put("person_id",person.getPersonId());
165
-                taPointsRecords.setChangeParams(jsonObject.toJSONString());
166
-                taPointsRecords.setCreateDate(LocalDateTime.now());
167
-                taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
168
-                taPointsRecordsMapper.insert(taPointsRecords);
169
-                //添加积分
170
-                UpdateWrapper<TaPerson> taPersonwrapper = new UpdateWrapper<>();
171
-                wrapper.eq("person_id", person.getPersonId());
172
-                wrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(tdPointsRules.getPointsAmount()));
173
-                taPersonMapper.update(new TaPerson(), taPersonwrapper);
174
-            }
175
-        }
176
-
148
+        
149
+        // 发放积分
150
+        applicationContext.publishEvent(new EventBus(person, EventBus.EventType.SignUpAgent));
151
+        
177
         return person;
152
         return person;
178
     }
153
     }
179
 
154
 
368
             return ResponseBean.error("签到失败", ResponseBean.ERROR_UNAVAILABLE);
343
             return ResponseBean.error("签到失败", ResponseBean.ERROR_UNAVAILABLE);
369
         }
344
         }
370
 
345
 
371
-        // 增加积分
372
-        // 1-7 天积分 1-7, 超过7天按 7 个积分算
373
-        int points = durationDays >= 7 ? 7 : durationDays;
374
-        //签到获取积分
375
-        //TdPointsRules tdPointsRules = tdPointsRulesMapper.selectById(1);
376
-        //int points = tdPointsRules.getPointsAmount();
377
-        UpdateWrapper<TaPerson> wrapper = new UpdateWrapper<>();
378
-        wrapper.eq("person_id", taPerson.getPersonId());
379
-        wrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(points));
380
-//        wrapper.set("points", "points + " + String.valueOf(points));
381
-        taPersonMapper.update(new TaPerson(), wrapper);
382
-        
383
-        //插入积分消费流水表
384
-        TaPointsRecords taPointsRecords = new TaPointsRecords();
385
-        taPointsRecords.setPersonId(taPerson.getPersonId());
386
-        taPointsRecords.setPersonName(StringUtils.ifNull(taPerson.getName(),taPerson.getNickname()));
387
-        taPointsRecords.setPersonType(taPerson.getPersonType());
388
-        taPointsRecords.setPointsAmount(points);
389
-        taPointsRecords.setChangeType(CommConstant.POINTS_CHECKIN);
390
-        JSONObject jsonObject = new JSONObject();
391
-        jsonObject.put("person_id",taPerson.getPersonId());
392
-        taPointsRecords.setChangeParams(jsonObject.toJSONString());
393
-        taPointsRecords.setCreateDate(LocalDateTime.now());
394
-        taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
395
-        taPointsRecordsMapper.insert(taPointsRecords);
396
-
397
-        Map<String, Object> result = new HashMap<>();
398
-
399
-        Integer oldPoints = taPerson.getPoints();
400
-        if (null == oldPoints) oldPoints = 0;
346
+        sign.setPerson(taPerson);
347
+        applicationContext.publishEvent(new EventBus(sign, EventBus.EventType.DailyCheckin));
401
 
348
 
402
-        result.put("integral", oldPoints + points);
403
-        return ResponseBean.success(result, "签到成功");
349
+        return ResponseBean.success("success");
404
     }
350
     }
405
 
351
 
406
     @Override
352
     @Override
562
     public void addConsultantBuildings(String personId, String paramStr) {
508
     public void addConsultantBuildings(String personId, String paramStr) {
563
         JSONObject params = JSONObject.parseObject(paramStr);
509
         JSONObject params = JSONObject.parseObject(paramStr);
564
         String building = params.getString("buildings");
510
         String building = params.getString("buildings");
511
+        if (StringUtils.isEmpty(building)) {
512
+            return;
513
+        }
514
+
565
 //        JSONArray buildings = params.getJSONArray("buildings");
515
 //        JSONArray buildings = params.getJSONArray("buildings");
566
 
516
 
567
 //        if (null != buildings && !buildings.isEmpty()) {
517
 //        if (null != buildings && !buildings.isEmpty()) {
626
         return taPersonMapper.getPersonByOpenId(openid);
576
         return taPersonMapper.getPersonByOpenId(openid);
627
     }
577
     }
628
 
578
 
629
-    List<TaPersonBuilding> getPersonBuildings(String personId) {
579
+    public List<TaPersonBuilding> getPersonBuildings(String personId) {
630
         QueryWrapper<TaPersonBuilding> queryWrapper = new QueryWrapper<>();
580
         QueryWrapper<TaPersonBuilding> queryWrapper = new QueryWrapper<>();
631
         queryWrapper.eq("person_id", personId);
581
         queryWrapper.eq("person_id", personId);
632
         return taPersonBuildingMapper.selectList(queryWrapper);
582
         return taPersonBuildingMapper.selectList(queryWrapper);
649
     }
599
     }
650
 
600
 
651
     @Override
601
     @Override
652
-    public IPage<TaPerson> getSavedConsaultants(int pageNumber,int pageSize,String personId){
602
+    public IPage<Map<String,Object>> getSavedConsaultants(int pageNumber,int pageSize,String personId){
653
         QueryWrapper<TaSave> savePerson = new QueryWrapper<>();
603
         QueryWrapper<TaSave> savePerson = new QueryWrapper<>();
654
         savePerson.eq("person_id",personId);
604
         savePerson.eq("person_id",personId);
655
-        savePerson.eq("target_type",CommConstant.FAVOR_CONSULTANT);
605
+        savePerson.eq("tagert_type",CommConstant.FAVOR_CONSULTANT);
656
         List<TaSave> savedPerson = taSaveMapper.selectList(savePerson);
606
         List<TaSave> savedPerson = taSaveMapper.selectList(savePerson);
657
         List<String> personIds = new ArrayList<>();
607
         List<String> personIds = new ArrayList<>();
658
         for(int i =0;i<savedPerson.size();i++){
608
         for(int i =0;i<savedPerson.size();i++){
659
             personIds.add(savedPerson.get(i).getSavedTarget());
609
             personIds.add(savedPerson.get(i).getSavedTarget());
660
         }
610
         }
661
-        IPage<TaPerson> page = new Page<>(pageNumber, pageSize);
662
-        QueryWrapper<TaPerson> persons = new QueryWrapper<>();
663
-        persons.in("personId",personIds);
664
-        return taPersonMapper.selectPage(page,persons);
611
+        Page<Map<String, Object>> page = new Page<>();
612
+        page.setSize(pageSize);
613
+        page.setPages(pageNumber);
614
+        page.setCurrent(pageNumber);
615
+        page.setRecords(taPersonMapper.selectCardListofMine(page,CommConstant.PERSON_REALTY_CONSULTANT,CommConstant.STATUS_NORMAL,personIds));
616
+        return page;
665
 
617
 
666
     }
618
     }
667
 
619
 
668
-//    @Override
669
-//    public IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building){
670
-//        QueryWrapper<TaActivityDynamicEnlist> activityDynamicEnlistQueryWrapper = new QueryWrapper<>();
671
-//
672
-//    }
620
+    @Override
621
+    public IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building){
622
+        QueryWrapper<TaActivityDynamicEnlist> activityDynamicEnlistQueryWrapper = new QueryWrapper<>();
623
+        activityDynamicEnlistQueryWrapper.eq("phone",phone);
624
+        if(!StringUtils.isEmpty(building)){
625
+            activityDynamicEnlistQueryWrapper.eq("building_id",building);
626
+        }
627
+        List<TaActivityDynamicEnlist> activityDynamicEnlists = taActivityDynamicEnlistMapper.selectList(activityDynamicEnlistQueryWrapper);
628
+        List<String>activityIds = new ArrayList<>();
629
+        for (int i=0;i<activityDynamicEnlists.size();i++){
630
+            activityIds.add(activityDynamicEnlists.get(i).getDynamicId());
631
+        }
632
+        IPage<TaBuildingDynamic> page = new Page<>(pageNumber, pageSize);
633
+        QueryWrapper<TaBuildingDynamic> empty = new QueryWrapper<>();
634
+        empty.orderBy(true,false,"start_date");
635
+        return taBuildingDynamicMapper.selectPage(page,empty);
636
+
637
+
638
+    }
673
 }
639
 }

+ 263
- 1
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java View File

1
 package com.huiju.estateagents.service.impl;
1
 package com.huiju.estateagents.service.impl;
2
 
2
 
3
+import com.alibaba.fastjson.JSONObject;
4
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
3
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
-import com.huiju.estateagents.entity.TaPointsRecords;
7
+import com.huiju.estateagents.common.CommConstant;
8
+import com.huiju.estateagents.common.DateUtils;
9
+import com.huiju.estateagents.common.StringUtils;
10
+import com.huiju.estateagents.entity.*;
11
+import com.huiju.estateagents.mapper.TaPersonMapper;
5
 import com.huiju.estateagents.mapper.TaPointsRecordsMapper;
12
 import com.huiju.estateagents.mapper.TaPointsRecordsMapper;
13
+import com.huiju.estateagents.mapper.TdPointsRulesMapper;
6
 import com.huiju.estateagents.service.ITaPointsRecordsService;
14
 import com.huiju.estateagents.service.ITaPointsRecordsService;
15
+import org.springframework.beans.factory.annotation.Autowired;
7
 import org.springframework.stereotype.Service;
16
 import org.springframework.stereotype.Service;
8
 
17
 
18
+import java.time.LocalDateTime;
19
+import java.util.ArrayList;
20
+import java.util.HashMap;
21
+import java.util.List;
22
+import java.util.Map;
23
+
9
 /**
24
 /**
10
  * <p>
25
  * <p>
11
  * 积分消费流水表  服务实现类
26
  * 积分消费流水表  服务实现类
16
  */
31
  */
17
 @Service
32
 @Service
18
 public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMapper, TaPointsRecords> implements ITaPointsRecordsService {
33
 public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMapper, TaPointsRecords> implements ITaPointsRecordsService {
34
+	@Autowired
35
+	TaPersonMapper taPersonMapper;
36
+	
37
+	@Autowired
38
+	private TdPointsRulesMapper tdPointsRulesMapper;
39
+	
40
+	@Autowired
41
+	private TaPointsRecordsMapper taPointsRecordsMapper;
42
+
43
+	/**
44
+	 * 获取规则积分, 0 代表未启用
45
+	 * @param ruleId
46
+	 * @return
47
+	 */
48
+	private Integer getRulePoints(Integer ruleId) {
49
+		TdPointsRules rule = tdPointsRulesMapper.selectById(ruleId);
50
+		if (null == rule) {
51
+			return 0;
52
+		}
53
+
54
+		Integer status = rule.getStatus();
55
+		return null != status && status.equals(CommConstant.POINTS_RULE_ON) ? rule.getPointsAmount() : 0;
56
+	}
57
+
58
+	private boolean isPointsRecordsExist(String personId, String changeType, String changeParams) {
59
+		QueryWrapper<TaPointsRecords> query = new QueryWrapper<>();
60
+		query.eq("person_id", personId)
61
+			.eq("change_type", changeType)
62
+			.like(!StringUtils.isEmpty(changeParams), "change_params", changeParams)
63
+			.eq("status", CommConstant.STATUS_NORMAL);
64
+
65
+		Integer count = taPointsRecordsMapper.selectCount(query);
66
+		return null != count && count > 0;
67
+	}
68
+
69
+	@Override
70
+	public void sharePoints(TaShare taShare) {
71
+		// 是否开启积分规则
72
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_SHARE_POSTER);
73
+		if (pointsAmount == 0) {
74
+			return;
75
+		}
76
+
77
+		//
78
+		String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
79
+
80
+		// 已经领取过的不会再次领取
81
+		String[] params = {
82
+				"shareId="+String.valueOf(taShare.getShareId()),
83
+				"openUser="+taShare.getOpenUser().getPersonId()
84
+		};
85
+		String changeParams = String.join("&", params);
86
+		boolean hasJoined = isPointsRecordsExist(taShare.getPersonId(), changeType, changeParams);
87
+		if (hasJoined) {
88
+			return;
89
+		}
90
+
91
+		// 发放积分
92
+		TaPerson person = taPersonMapper.selectById(taShare.getPersonId());
93
+		if (savePoints(person, changeType, changeParams, pointsAmount)) {
94
+			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
95
+		}
96
+	}
97
+
98
+	@Override
99
+	public void checkinPoints(TaPersonSign taPersonSign) {
100
+		// 是否开启积分规则
101
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_CHECKIN);
102
+		if (pointsAmount == 0) {
103
+			return;
104
+		}
105
+
106
+		//
107
+		String changeType = CommConstant.POINTS_CHANGE_CHECKIN;
108
+
109
+		// 已经领取过的不会再次领取
110
+		List<String> params = new ArrayList<String>() {{
111
+			add("date="+DateUtils.today());
112
+			add("user="+taPersonSign.getPerson().getPersonId());
113
+		}};
114
+		String changeParams = String.join("&", params);
115
+		boolean hasJoined = isPointsRecordsExist(taPersonSign.getPerson().getPersonId(), changeType, changeParams);
116
+		if (hasJoined) {
117
+			return;
118
+		}
119
+
120
+		// 添加参数
121
+		params.add("recId="+taPersonSign.getRecId());
122
+		changeParams = String.join("&", params);
123
+
124
+
125
+		// 增加积分
126
+		// 1-7 天积分 1-7, 超过7天按 7 个积分算
127
+//		Integer durationDays = taPersonSign.getDurationDays();
128
+//		int points = durationDays >= 7 ? 7 : durationDays;
129
+
130
+		// 发放积分
131
+		TaPerson person = taPersonMapper.selectById(taPersonSign.getPersonId());
132
+		if (savePoints(person, changeType, changeParams, pointsAmount)) {
133
+			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
134
+		}
135
+	}
136
+
137
+	@Override
138
+	public void signUpPoints(TaPerson taPerson) {
139
+		// 是否开启积分规则
140
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_SIGNUP_AGENT);
141
+		if (pointsAmount == 0) {
142
+			return;
143
+		}
144
+
145
+		//
146
+		String changeType = CommConstant.POINTS_CHANGE_SIGNUP_AGENT;
147
+
148
+		// 已经领取过的不会再次领取
149
+		List<String> params = new ArrayList<String>() {{
150
+			add("user="+taPerson.getPersonId());
151
+		}};
152
+		String changeParams = String.join("&", params);
153
+		boolean hasJoined = isPointsRecordsExist(taPerson.getPersonId(), changeType, changeParams);
154
+		if (hasJoined) {
155
+			return;
156
+		}
157
+
158
+		// 发放积分
159
+		if (savePoints(taPerson, changeType, changeParams, pointsAmount)) {
160
+			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
161
+		}
162
+	}
163
+
164
+	@Override
165
+	public void recommendCustPoints(TaRecommendCustomer taRecommendCustomer) {
166
+		// 是否开启积分规则
167
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_RECOMMENDER_CUSTOMER);
168
+		if (pointsAmount == 0) {
169
+			return;
170
+		}
171
+
172
+		//
173
+		String changeType = CommConstant.POINTS_CHANGE_RECOMMEND_CUSTOMER;
174
+
175
+		// 已经领取过的不会再次领取
176
+		List<String> params = new ArrayList<String>() {{
177
+			// 推荐人
178
+			add("person="+taRecommendCustomer.getPersonId());
179
+			// 推荐客户手机
180
+			add("phone="+taRecommendCustomer.getPhone());
181
+		}};
182
+		String changeParams = String.join("&", params);
183
+		boolean hasJoined = isPointsRecordsExist(taRecommendCustomer.getPersonId(), changeType, changeParams);
184
+		if (hasJoined) {
185
+			return;
186
+		}
187
+
188
+		// 发放积分
189
+		TaPerson taPerson = taPersonMapper.getById(taRecommendCustomer.getPersonId());
190
+		if (savePoints(taPerson, changeType, changeParams, pointsAmount)) {
191
+			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
192
+		}
193
+	}
194
+
195
+	@Override
196
+	public void consumeGoodsPoints(TaGoods taGoods) {
197
+		Integer minusPoints = taGoods.getPointPrice();
198
+		if (null == minusPoints || minusPoints <= 0) {
199
+			return;
200
+		}
201
+
202
+		TaPerson taPerson = taGoods.getExchanger();
203
+		Integer origPoints = taPerson.getPoints();
204
+		if (null == origPoints) {
205
+			origPoints = 0;
206
+		}
207
+
208
+		// 积分不足
209
+		if (minusPoints > origPoints) {
210
+			return;
211
+		}
212
+
213
+		String[] params = {
214
+				"person="+taPerson.getPersonId(),
215
+				"goods="+String.valueOf(taGoods.getGoodsId()),
216
+				"points="+String.valueOf(minusPoints)
217
+		};
218
+		String changeParams = String.join("&", params);
219
+
220
+		// 发放积分
221
+		Integer pointsAmount = 0 - minusPoints;
222
+		if (savePoints(taPerson, CommConstant.POINTS_CHANGE_GOODS, changeParams, pointsAmount)) {
223
+			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
224
+		}
225
+	}
226
+
227
+	private boolean savePoints(TaPerson person, String changeType, String changeParams, Integer pointsAmount) {
228
+		TaPointsRecords taPointsRecords = new TaPointsRecords();
229
+		taPointsRecords.setPersonId(person.getPersonId());
230
+		taPointsRecords.setPersonName(StringUtils.ifNull(person.getName(),person.getNickname()));
231
+		taPointsRecords.setPersonType(person.getPersonType());
232
+		taPointsRecords.setPointsAmount(pointsAmount);
233
+		taPointsRecords.setChangeType(changeType);
234
+		taPointsRecords.setChangeParams(changeParams);
235
+		taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
236
+		taPointsRecords.setCreateDate(LocalDateTime.now());
237
+
238
+		return taPointsRecordsMapper.insert(taPointsRecords) > 0;
239
+	}
19
 
240
 
241
+//	@Override
242
+//	public void authPoints(String personId) {
243
+//		//查看是否领取过授权积分
244
+//		QueryWrapper<TaPointsRecords> taPointsRecordsQueryWrapper = new QueryWrapper<>();
245
+//		taPointsRecordsQueryWrapper.eq("person_id", personId);
246
+//		taPointsRecordsQueryWrapper.eq("change_type",CommConstant.POINTS_AUTHORIZE);
247
+//
248
+//		List<TaPointsRecords> taPointsRecordsList = taPointsRecordsMapper.selectList(taPointsRecordsQueryWrapper);
249
+//		if (taPointsRecordsList.size() < 1){
250
+//			TaPerson person = taPersonMapper.selectById(personId);
251
+//			sendPoints(person,4,CommConstant.POINTS_AUTHORIZE);
252
+//		}
253
+//	}
254
+	
255
+	private void sendPoints(TaPerson person,Integer rulesId,String shareType) {
256
+		//发放积分
257
+		QueryWrapper<TdPointsRules> queryWrapper = new QueryWrapper<>();
258
+		queryWrapper.eq("rule_id",rulesId);
259
+		queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
260
+		TdPointsRules tdPointsRules = tdPointsRulesMapper.selectOne(queryWrapper);
261
+		if (null != tdPointsRules) {
262
+			//插入积分消费流水表
263
+			TaPointsRecords taPointsRecords = new TaPointsRecords();
264
+			taPointsRecords.setPersonId(person.getPersonId());
265
+			taPointsRecords.setPersonName(com.huiju.estateagents.common.StringUtils.ifNull(person.getName(),person.getNickname()));
266
+			taPointsRecords.setPersonType(person.getPersonType());
267
+			taPointsRecords.setPointsAmount(tdPointsRules.getPointsAmount());
268
+			taPointsRecords.setChangeType(shareType);
269
+			JSONObject jsonObject = new JSONObject();
270
+			jsonObject.put("person_id",person.getPersonId());
271
+			taPointsRecords.setChangeParams(jsonObject.toJSONString());
272
+			taPointsRecords.setCreateDate(LocalDateTime.now());
273
+			taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
274
+			taPointsRecordsMapper.insert(taPointsRecords);
275
+			//添加积分
276
+			UpdateWrapper<TaPerson> taPersonwrapper = new UpdateWrapper<>();
277
+			taPersonwrapper.eq("person_id", person.getPersonId());
278
+			taPersonwrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(tdPointsRules.getPointsAmount()));
279
+			taPersonMapper.update(new TaPerson(), taPersonwrapper);
280
+		}
281
+	}
20
 }
282
 }

+ 5
- 0
src/main/java/com/huiju/estateagents/service/impl/TaSaveServiceImpl.java View File

134
         return ResponseBean.success("");
134
         return ResponseBean.success("");
135
     }
135
     }
136
 
136
 
137
+    @Override
138
+    public List<String> getTargesOfPerson(String personId, String tagertType) {
139
+        return taSaveMapper.getTargesOfPerson(personId, tagertType);
140
+    }
141
+
137
     List<TaPerson> getPersonsByOpenId(String openid) {
142
     List<TaPerson> getPersonsByOpenId(String openid) {
138
         return taPersonMapper.getPersonByOpenId(openid);
143
         return taPersonMapper.getPersonByOpenId(openid);
139
     }
144
     }

+ 47
- 35
src/main/java/com/huiju/estateagents/service/impl/TaShareServiceImpl.java View File

1
 package com.huiju.estateagents.service.impl;
1
 package com.huiju.estateagents.service.impl;
2
 
2
 
3
-import com.alibaba.fastjson.JSONObject;
4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
6
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
7
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
8
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
10
 import com.huiju.estateagents.common.CommConstant;
8
 import com.huiju.estateagents.common.CommConstant;
11
 import com.huiju.estateagents.common.StringUtils;
9
 import com.huiju.estateagents.common.StringUtils;
12
 import com.huiju.estateagents.entity.*;
10
 import com.huiju.estateagents.entity.*;
11
+import com.huiju.estateagents.event.EventBus;
13
 import com.huiju.estateagents.mapper.*;
12
 import com.huiju.estateagents.mapper.*;
14
 import com.huiju.estateagents.service.ITaShareService;
13
 import com.huiju.estateagents.service.ITaShareService;
15
 import org.springframework.beans.factory.annotation.Autowired;
14
 import org.springframework.beans.factory.annotation.Autowired;
15
+import org.springframework.context.ApplicationContext;
16
 import org.springframework.stereotype.Service;
16
 import org.springframework.stereotype.Service;
17
 
17
 
18
+import javax.annotation.Resource;
18
 import java.time.LocalDateTime;
19
 import java.time.LocalDateTime;
19
 import java.util.List;
20
 import java.util.List;
20
 
21
 
33
 
34
 
34
     @Autowired
35
     @Autowired
35
     TaShareMapper taShareMapper;
36
     TaShareMapper taShareMapper;
36
-    
37
-    @Autowired
38
-    private TdPointsRulesMapper tdPointsRulesMapper;
39
-    
40
-    @Autowired
41
-    private TaPointsRecordsMapper taPointsRecordsMapper;
42
 
37
 
43
     @Autowired
38
     @Autowired
44
     private TaBuildingMapper taBuildingMapper;
39
     private TaBuildingMapper taBuildingMapper;
45
 
40
 
46
     @Autowired
41
     @Autowired
47
     private TaBuildingDynamicMapper taBuildingDynamicMapper;
42
     private TaBuildingDynamicMapper taBuildingDynamicMapper;
43
+    
44
+    @Resource
45
+    private ApplicationContext applicationContext;
48
 
46
 
49
     @Override
47
     @Override
50
     public ResponseBean saveData(String openid, String typeOf, String id) {
48
     public ResponseBean saveData(String openid, String typeOf, String id) {
94
             taBuildingMapper.setFieldNum(id, "share_num", 1);
92
             taBuildingMapper.setFieldNum(id, "share_num", 1);
95
         }
93
         }
96
 
94
 
97
-        //发放分享积分
98
-        if (typeOf.equals(CommConstant.FAVOR_PROJECT)){
99
-            QueryWrapper<TdPointsRules> tdPointsRulesQueryWrapper = new QueryWrapper<>();
100
-            queryWrapper.eq("rule_id",2);
101
-            queryWrapper.eq("status",CommConstant.STATUS_NORMAL);
102
-            TdPointsRules tdPointsRules = tdPointsRulesMapper.selectOne(tdPointsRulesQueryWrapper);
103
-            if (null != tdPointsRules){
104
-                //插入积分消费流水表
105
-                TaPointsRecords taPointsRecords = new TaPointsRecords();
106
-                taPointsRecords.setPersonId(taPerson.getPersonId());
107
-                taPointsRecords.setPersonName(StringUtils.ifNull(taPerson.getName(),taPerson.getNickname()));
108
-                taPointsRecords.setPersonType(taPerson.getPersonType());
109
-                taPointsRecords.setPointsAmount(tdPointsRules.getPointsAmount());
110
-                taPointsRecords.setChangeType(CommConstant.POINTS_SHARE);
111
-                JSONObject jsonObject = new JSONObject();
112
-                jsonObject.put("person_id",taPerson.getPersonId());
113
-                taPointsRecords.setChangeParams(jsonObject.toJSONString());
114
-                taPointsRecords.setCreateDate(LocalDateTime.now());
115
-                taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
116
-                taPointsRecordsMapper.insert(taPointsRecords);
117
-                //添加积分
118
-                UpdateWrapper<TaPerson> wrapper = new UpdateWrapper<>();
119
-                wrapper.eq("person_id", taPerson.getPersonId());
120
-                wrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(tdPointsRules.getPointsAmount()));
121
-                taPersonMapper.update(new TaPerson(), wrapper);
122
-            }
123
-        }
124
         return ResponseBean.success("");
95
         return ResponseBean.success("");
125
     }
96
     }
126
 
97
 
136
         return ResponseBean.success(result);
107
         return ResponseBean.success(result);
137
     }
108
     }
138
 
109
 
110
+    @Override
111
+    public void makeSure(String openid, String typeOf, String id) {
112
+        // 查找分享记录
113
+        TaShare taShare = taShareMapper.selectById(id);
114
+        if (null == taShare) {
115
+            return;
116
+        }
117
+
118
+        // 记录分享人
119
+        TaPerson shareUsr = taPersonMapper.getById(taShare.getPersonId());
120
+        if (null == shareUsr) {
121
+            return;
122
+        }
123
+
124
+        // 如果分享人没有授权手机号
125
+        if (StringUtils.isEmpty(shareUsr.getPhone()) && StringUtils.isEmpty(shareUsr.getTel())) {
126
+            return;
127
+        }
128
+
129
+        // 查找打开人
130
+        List<TaPerson> persons = taPersonMapper.getPersonByOpenId(openid);
131
+        if (null == persons || persons.size() == 0) {
132
+            return;
133
+        }
134
+        TaPerson openUsr = persons.get(0);
135
+
136
+        // 如果打开人员与分享人员是同一个人
137
+        // 此处通过 personId 来判断,其实并不准确
138
+        // todo
139
+        if (openUsr.getPersonId().equals(shareUsr.getPersonId())) {
140
+            return;
141
+        }
142
+
143
+        taShare.setOpenUser(openUsr);
144
+
145
+        // 赠送积分
146
+        // 发放分享积分
147
+        if (typeOf.equals(CommConstant.FAVOR_PROJECT)){
148
+            applicationContext.publishEvent(new EventBus(taShare, EventBus.EventType.SharePoster));
149
+        }
150
+    }
139
 
151
 
140
     List<TaPerson> getPersonsByOpenId(String openid) {
152
     List<TaPerson> getPersonsByOpenId(String openid) {
141
         return taPersonMapper.getPersonByOpenId(openid);
153
         return taPersonMapper.getPersonByOpenId(openid);

+ 5
- 0
src/main/resources/mapper/SysOrgParamsMapper.xml View File

1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.mapper.SysOrgParamsMapper">
4
+
5
+</mapper>

+ 5
- 0
src/main/resources/mapper/SysProjectParamsMapper.xml View File

1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.mapper.SysProjectParamsMapper">
4
+
5
+</mapper>

+ 5
- 0
src/main/resources/mapper/TaCustomerMessageMapper.xml View File

1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.mapper.TaCustomerMessageMapper">
4
+
5
+</mapper>

+ 25
- 0
src/main/resources/mapper/TaPersonMapper.xml View File

113
     <select id="getConsultantByTel" resultType="java.lang.String">
113
     <select id="getConsultantByTel" resultType="java.lang.String">
114
         select person_id from ta_person where tel = #{tel}
114
         select person_id from ta_person where tel = #{tel}
115
     </select>
115
     </select>
116
+
117
+    <select id="selectCardListofMine" resultType="java.util.HashMap">
118
+        SELECT
119
+        t.person_id AS id,
120
+        t.name,
121
+        t.company,
122
+        t.department,
123
+        t.post,
124
+        t.tel AS phone,
125
+        t.avatarurl AS avatar,
126
+        t.photo
127
+        FROM
128
+        ta_person t
129
+        WHERE
130
+        t.person_type = #{personType}
131
+        AND t.status = #{status}
132
+        <if test="personIds != null">
133
+            and t.person_id in
134
+            <foreach collection="personIds" item="personIds" index="index" open="(" close=")" separator=",">
135
+                #{ordersId}
136
+            </foreach>
137
+        </if>
138
+        ORDER BY
139
+        t.create_date DESC
140
+    </select>
116
 </mapper>
141
 </mapper>

+ 4
- 1
src/main/resources/mapper/TaRecommendCustomerMapper.xml View File

35
         SELECT
35
         SELECT
36
 	a.*,
36
 	a.*,
37
 	b.name as consultantName,
37
 	b.name as consultantName,
38
-    b.tel as consultTel
38
+    b.tel as consultTel,
39
+    c.nickname as recommendName,
40
+    c.tel as recommendTel
39
 FROM
41
 FROM
40
 	ta_recommend_customer a
42
 	ta_recommend_customer a
41
 	LEFT JOIN ta_person b ON a.realty_consultant = b.person_id
43
 	LEFT JOIN ta_person b ON a.realty_consultant = b.person_id
44
+    LEFT JOIN ta_person c on a.person_id = c.person_id
42
 	<where>
45
 	<where>
43
         a.status > 0
46
         a.status > 0
44
         <if test="building != null and building !=''">
47
         <if test="building != null and building !=''">

+ 13
- 0
src/main/resources/mapper/TaSaveMapper.xml View File

1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.mapper.TaSaveMapper">
4
+    <select id="getTargesOfPerson" resultType="string">
5
+        SELECT
6
+            t.saved_target
7
+        FROM
8
+            ta_save t
9
+        WHERE
10
+            t.person_id = #{personId}
11
+        AND t.tagert_type = #{tagertType}
12
+    </select>
13
+</mapper>