ソースを参照

Merge branch 'dev'

傅行帆 5 年 前
コミット
9fd74e3e4a
共有64 個のファイルを変更した1092 個の追加567 個の削除を含む
  1. 1
    1
      pom.xml
  2. 1
    1
      src/main/java/com/huiju/estateagents/bo/request/HousingRaiseRequestBO.java
  3. 6
    1
      src/main/java/com/huiju/estateagents/bo/request/RaiseRecordRequestBO.java
  4. 6
    3
      src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java
  5. 1
    1
      src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserMapper.java
  6. 1
    1
      src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserService.java
  7. 3
    3
      src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserServiceImpl.java
  8. 5
    0
      src/main/java/com/huiju/estateagents/common/DateUtils.java
  9. 106
    0
      src/main/java/com/huiju/estateagents/common/wxpay/WXPayRefundReason.java
  10. 15
    10
      src/main/java/com/huiju/estateagents/controller/MiniAppController.java
  11. 1
    2
      src/main/java/com/huiju/estateagents/controller/StatisticalController.java
  12. 1
    1
      src/main/java/com/huiju/estateagents/controller/TaBuildingController.java
  13. 26
    15
      src/main/java/com/huiju/estateagents/controller/TaHousingResourcesController.java
  14. 1
    1
      src/main/java/com/huiju/estateagents/controller/TaLiveActivityController.java
  15. 8
    7
      src/main/java/com/huiju/estateagents/controller/TaPersonController.java
  16. 1
    4
      src/main/java/com/huiju/estateagents/controller/TaPointsRecordsController.java
  17. 6
    1
      src/main/java/com/huiju/estateagents/controller/TaPreselectionRecordController.java
  18. 16
    1
      src/main/java/com/huiju/estateagents/controller/TaRaiseController.java
  19. 148
    15
      src/main/java/com/huiju/estateagents/controller/TaRaiseRecordController.java
  20. 10
    5
      src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java
  21. 25
    7
      src/main/java/com/huiju/estateagents/controller/TaSalesBatchController.java
  22. 28
    0
      src/main/java/com/huiju/estateagents/controller/TaSharePersonFromController.java
  23. 5
    0
      src/main/java/com/huiju/estateagents/entity/TaBuildingApartment.java
  24. 1
    1
      src/main/java/com/huiju/estateagents/entity/TaPreselectionRecord.java
  25. 8
    0
      src/main/java/com/huiju/estateagents/entity/TdLiveDict.java
  26. 1
    1
      src/main/java/com/huiju/estateagents/job/JudglActivityTimeJob.java
  27. 11
    1
      src/main/java/com/huiju/estateagents/mapper/TaHousingResourcesMapper.java
  28. 1
    1
      src/main/java/com/huiju/estateagents/mapper/TaLiveActivityMapper.java
  29. 3
    1
      src/main/java/com/huiju/estateagents/mapper/TaPersonIntentionRecordMapper.java
  30. 3
    1
      src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java
  31. 1
    1
      src/main/java/com/huiju/estateagents/mapper/TaPointsRecordsMapper.java
  32. 5
    4
      src/main/java/com/huiju/estateagents/mapper/TaRecommendCustomerMapper.java
  33. 3
    1
      src/main/java/com/huiju/estateagents/service/IStatisticalService.java
  34. 1
    1
      src/main/java/com/huiju/estateagents/service/ITaBuildingService.java
  35. 4
    3
      src/main/java/com/huiju/estateagents/service/ITaHousingResourcesService.java
  36. 2
    0
      src/main/java/com/huiju/estateagents/service/ITaLiveActivityService.java
  37. 1
    2
      src/main/java/com/huiju/estateagents/service/ITaPersonService.java
  38. 2
    0
      src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java
  39. 16
    1
      src/main/java/com/huiju/estateagents/service/ITaRaiseRecordService.java
  40. 2
    1
      src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java
  41. 3
    2
      src/main/java/com/huiju/estateagents/service/impl/StatisticalServiceImpl.java
  42. 19
    1
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java
  43. 54
    54
      src/main/java/com/huiju/estateagents/service/impl/TaHousingResourcesServiceImpl.java
  44. 7
    0
      src/main/java/com/huiju/estateagents/service/impl/TaLiveActivityServiceImpl.java
  45. 15
    2
      src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java
  46. 2
    2
      src/main/java/com/huiju/estateagents/service/impl/TaPersonVisitRecordServiceImpl.java
  47. 386
    379
      src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java
  48. 2
    1
      src/main/java/com/huiju/estateagents/service/impl/TaPreselectionRecordServiceImpl.java
  49. 8
    0
      src/main/java/com/huiju/estateagents/service/impl/TaRaiseRecordServiceImpl.java
  50. 7
    5
      src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java
  51. 7
    4
      src/main/java/com/huiju/estateagents/service/impl/WxPayServiceImpl.java
  52. 1
    1
      src/main/resources/application-prod-blue.yml
  53. 1
    1
      src/main/resources/application-prod-green.yml
  54. 29
    5
      src/main/resources/mapper/TaHousingResourcesMapper.xml
  55. 5
    0
      src/main/resources/mapper/TaLiveActivityMapper.xml
  56. 5
    2
      src/main/resources/mapper/TaPersonIntentionRecordMapper.xml
  57. 8
    1
      src/main/resources/mapper/TaPersonMapper.xml
  58. 3
    0
      src/main/resources/mapper/TaPointsRecordsMapper.xml
  59. 1
    1
      src/main/resources/mapper/TaPreselectionRecordMapper.xml
  60. 1
    1
      src/main/resources/mapper/TaRaiseMapper.xml
  61. 9
    3
      src/main/resources/mapper/TaRaiseRecordMapper.xml
  62. 25
    1
      src/main/resources/mapper/TaRecommendCustomerMapper.xml
  63. 2
    1
      src/main/resources/mapper/TaSalesBatchMapper.xml
  64. 6
    0
      src/main/resources/mapper/TaUserMapper.xml

+ 1
- 1
pom.xml ファイルの表示

@@ -10,7 +10,7 @@
10 10
 	</parent>
11 11
 	<groupId>com.huiju</groupId>
12 12
 	<artifactId>estateagents</artifactId>
13
-	<version>v3.5.13</version>
13
+	<version>v3.5.14</version>
14 14
 	<name>estateages</name>
15 15
 	<description>置业经纪人</description>
16 16
 

+ 1
- 1
src/main/java/com/huiju/estateagents/bo/request/HousingRaiseRequestBO.java ファイルの表示

@@ -61,5 +61,5 @@ public class HousingRaiseRequestBO {
61 61
     /**
62 62
      * 房源锁定状态
63 63
      */
64
-    private Integer lockingStatus;
64
+    private String lockingStatus;
65 65
 }

+ 6
- 1
src/main/java/com/huiju/estateagents/bo/request/RaiseRecordRequestBO.java ファイルの表示

@@ -61,7 +61,7 @@ public class RaiseRecordRequestBO {
61 61
     /**
62 62
      * 房源锁定状态
63 63
      */
64
-    private Integer lockingStatus;
64
+    private String lockingStatus;
65 65
 
66 66
     /**
67 67
      * 认筹手机号
@@ -92,4 +92,9 @@ public class RaiseRecordRequestBO {
92 92
      * 结束时间
93 93
      */
94 94
     private String endTime;
95
+
96
+    /**
97
+     * 用户姓名
98
+     */
99
+    private String personName;
95 100
 }

+ 6
- 3
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java ファイルの表示

@@ -96,13 +96,14 @@ public class TaUserController extends BaseController {
96 96
      */
97 97
     @RequestMapping(value="/center/taUser",method= RequestMethod.GET)
98 98
     public ResponseBean taUserList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
99
-									 @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize, HttpServletRequest request){
99
+									 @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
100
+                                     @RequestParam(value = "miniAppName", required = false) String miniAppName, HttpServletRequest request){
100 101
         ResponseBean responseBean = new ResponseBean();
101 102
 
102 103
         try {
103 104
             //使用分页插件
104 105
 		    IPage pg = new Page<>(pageNum, pageSize);
105
-            IPage<Map<String,Object>> result = iTaUserService.getPageList(pg, getChannelId(request));
106
+            IPage<Map<String,Object>> result = iTaUserService.getPageList(pg, getChannelId(request), miniAppName);
106 107
             responseBean.addSuccess(result);
107 108
         }catch (Exception e){
108 109
             e.printStackTrace();
@@ -125,7 +126,7 @@ public class TaUserController extends BaseController {
125 126
         try {
126 127
             //使用分页插件
127 128
             IPage pg = new Page<>(pageNum, pageSize);
128
-            IPage<Map<String,Object>> result = iTaUserService.getPageList(pg, null);
129
+            IPage<Map<String,Object>> result = iTaUserService.getPageList(pg, null, null);
129 130
             responseBean.addSuccess(result);
130 131
         }catch (Exception e){
131 132
             e.printStackTrace();
@@ -387,6 +388,7 @@ public class TaUserController extends BaseController {
387 388
                                    @RequestParam(value ="phone",required = false) String phone,
388 389
                                    @RequestParam(value ="status",required = false) Integer status,
389 390
                                    @RequestParam(value ="isConsultant",required = false) Integer isConsultant,
391
+                                   @RequestParam(value ="buildingId",required = false) String buildingId,
390 392
                                    HttpServletRequest request){
391 393
         ResponseBean responseBean = new ResponseBean();
392 394
         try {
@@ -397,6 +399,7 @@ public class TaUserController extends BaseController {
397 399
             taUser.setUserName(userName);
398 400
             taUser.setPhone(phone);
399 401
             taUser.setStatus(status);
402
+            taUser.setBuildingId(buildingId);
400 403
             if(null != isConsultant && isConsultant == 1){
401 404
                 taUser.setIsConsultant(true);
402 405
             }else if (null != isConsultant && isConsultant == 0){

+ 1
- 1
src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserMapper.java ファイルの表示

@@ -22,7 +22,7 @@ import java.util.Map;
22 22
 @Mapper
23 23
 public interface TaUserMapper extends BaseMapper<TaUser> {
24 24
 	
25
-	List<Map<String,Object>> getPageList(IPage<TaUser> pg, @Param("channelId") Integer channelId);
25
+	List<Map<String,Object>> getPageList(IPage<TaUser> pg, @Param("channelId") Integer channelId, @Param("miniAppName") String miniAppName);
26 26
 	
27 27
 	List<TaTags> getTagsList(@Param("userId") Integer userId,@Param("orgId") Integer orgId);
28 28
 	

+ 1
- 1
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserService.java ファイルの表示

@@ -20,7 +20,7 @@ import java.util.Map;
20 20
  */
21 21
 public interface ITaUserService extends IService<TaUser> {
22 22
 
23
-    IPage<Map<String, Object>> getPageList(IPage<TaUser> pg, Integer channelId);
23
+    IPage<Map<String, Object>> getPageList(IPage<TaUser> pg, Integer channelId, String miniAppName);
24 24
 
25 25
     TaUser newUserAndOrg(TaUser taUser, Integer channelId) throws Exception;
26 26
 

+ 3
- 3
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserServiceImpl.java ファイルの表示

@@ -105,8 +105,8 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
105 105
     private WxUtils wxUtils;
106 106
 
107 107
     @Override
108
-    public IPage<Map<String, Object>> getPageList(IPage pg, Integer channelId) {
109
-        List<Map<String, Object>> taUserList = taUserMapper.getPageList(pg, channelId);
108
+    public IPage<Map<String, Object>> getPageList(IPage pg, Integer channelId, String miniAppName) {
109
+        List<Map<String, Object>> taUserList = taUserMapper.getPageList(pg, channelId, miniAppName);
110 110
 
111 111
         for (Map map : taUserList) {
112 112
             if (map.get("orgId") == null) {
@@ -411,7 +411,7 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
411 411
             throw new Exception("同一项目下权重值不能重复");
412 412
         }
413 413
 
414
-        List<TaUser> taUserList = taUserMapper.getUserList(taUser.getPhone(), taUser.getLoginName(), null);
414
+        List<TaUser> taUserList = taUserMapper.getUserList(taUser.getPhone(), taUser.getLoginName(), taUser.getOrgId());
415 415
         if (null != taUserList && taUserList.size() > 0) {
416 416
             throw new Exception("电话号码或登录名重复");
417 417
         }

+ 5
- 0
src/main/java/com/huiju/estateagents/common/DateUtils.java ファイルの表示

@@ -29,6 +29,11 @@ public class DateUtils {
29 29
         return LocalDateTime.now().format(formatter);
30 30
     }
31 31
 
32
+    public static String localDateTimeToString(LocalDateTime d) {
33
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
34
+        return d.format(formatter);
35
+    }
36
+
32 37
     public static LocalDateTime day2LocalDateime(String day) {
33 38
         DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
34 39
         return LocalDateTime.parse(day + " 00:00:00", df);

+ 106
- 0
src/main/java/com/huiju/estateagents/common/wxpay/WXPayRefundReason.java ファイルの表示

@@ -0,0 +1,106 @@
1
+package com.huiju.estateagents.common.wxpay;
2
+
3
+public enum WXPayRefundReason {
4
+    SYSTEMERROR("SYSTEMERROR","系统超时等"),
5
+    BIZERR_NEED_RETRY("BIZERR_NEED_RETRY","并发情况下,业务被拒绝,商户重试即可解决"),
6
+    TRADE_OVERDUE("TRADE_OVERDUE","订单已经超过可退款的最大期限(支付后一年内可退款)"),
7
+    ERROR("ERROR","申请退款业务发生错误"),
8
+    USER_ACCOUNT_ABNORMAL("USER_ACCOUNT_ABNORMAL","用户帐号注销"),
9
+    INVALID_REQ_TOO_MUCH("INVALID_REQ_TOO_MUCH","连续错误请求数过多被系统短暂屏蔽"),
10
+    NOTENOUGH("NOTENOUGH","商户可用退款余额不足"),
11
+    INVALID_TRANSACTIONID("INVALID_TRANSACTIONID","请求参数未按指引进行填写"),
12
+    PARAM_ERROR("PARAM_ERROR","请求参数未按指引进行填写"),
13
+    APPID_NOT_EXIST("APPID_NOT_EXIST","参数中缺少APPID"),
14
+    MCHID_NOT_EXIST("MCHID_NOT_EXIST","参数中缺少MCHID"),
15
+    ORDERNOTEXIST("ORDERNOTEXIST","缺少有效的订单号"),
16
+    REQUIRE_POST_METHOD("REQUIRE_POST_METHOD","未使用post传递参数 "),
17
+    SIGNERROR("SIGNERROR","参数签名结果不正确"),
18
+    XML_FORMAT_ERROR("XML_FORMAT_ERROR","XML格式错误"),
19
+    FREQUENCY_LIMITED("FREQUENCY_LIMITED","2个月之前的订单申请退款有频率限制"),
20
+    NOAUTH("NOAUTH","请求ip异常"),
21
+    ;
22
+
23
+    WXPayRefundReason(String code, String message) {
24
+        this.code = code;
25
+        this.message = message;
26
+    }
27
+
28
+    private String code;
29
+
30
+    private String message;
31
+
32
+    public String getCode() {
33
+        return code;
34
+    }
35
+
36
+    public void setCode(String code) {
37
+        this.code = code;
38
+    }
39
+
40
+    public String getMessage() {
41
+        return message;
42
+    }
43
+
44
+    public void setMessage(String message) {
45
+        this.message = message;
46
+    }
47
+
48
+
49
+    public static String getMsg(String code) {
50
+        String message = "";
51
+       switch (code){
52
+           case "SYSTEMERROR":
53
+               message = SYSTEMERROR.getMessage();
54
+               break;
55
+           case "BIZERR_NEED_RETRY":
56
+               message = BIZERR_NEED_RETRY.getMessage();
57
+               break;
58
+           case "TRADE_OVERDUE":
59
+               message = TRADE_OVERDUE.getMessage();
60
+               break;
61
+           case "ERROR":
62
+               message = ERROR.getMessage();
63
+               break;
64
+           case "USER_ACCOUNT_ABNORMAL":
65
+               message = USER_ACCOUNT_ABNORMAL.getMessage();
66
+               break;
67
+           case "INVALID_REQ_TOO_MUCH":
68
+               message = INVALID_REQ_TOO_MUCH.getMessage();
69
+               break;
70
+           case "NOTENOUGH":
71
+               message = NOTENOUGH.getMessage();
72
+               break;
73
+           case "INVALID_TRANSACTIONID":
74
+               message = INVALID_TRANSACTIONID.getMessage();
75
+               break;
76
+           case "PARAM_ERROR":
77
+               message = PARAM_ERROR.getMessage();
78
+               break;
79
+           case "APPID_NOT_EXIST":
80
+               message = APPID_NOT_EXIST.getMessage();
81
+               break;
82
+           case "MCHID_NOT_EXIST":
83
+               message = MCHID_NOT_EXIST.getMessage();
84
+               break;
85
+           case "REQUIRE_POST_METHOD":
86
+               message = REQUIRE_POST_METHOD.getMessage();
87
+               break;
88
+           case "SIGNERROR":
89
+               message = SIGNERROR.getMessage();
90
+               break;
91
+           case "XML_FORMAT_ERROR":
92
+               message = XML_FORMAT_ERROR.getMessage();
93
+               break;
94
+           case "FREQUENCY_LIMITED":
95
+               message = FREQUENCY_LIMITED.getMessage();
96
+               break;
97
+           case "NOAUTH":
98
+               message = NOAUTH.getMessage();
99
+               break;
100
+           case "ORDERNOTEXIST":
101
+               message = ORDERNOTEXIST.getMessage();
102
+               break;
103
+       }
104
+        return message;
105
+    }
106
+}

+ 15
- 10
src/main/java/com/huiju/estateagents/controller/MiniAppController.java ファイルの表示

@@ -218,16 +218,6 @@ public class MiniAppController extends BaseController {
218 218
                 return ResponseBean.error("发生未知错误", ResponseBean.ERROR_UNAVAILABLE);
219 219
             }
220 220
 
221
-            if (null != from && from.contains("share") && !com.huiju.estateagents.common.StringUtils.isEmpty(recommender) && count > 0) {
222
-                // 校验是否点击过此人的分享
223
-                boolean checkPoint = checkSharePersonFrom(from, taPerson.getPersonId(), targetId, orgId);
224
-                if (checkPoint) {
225
-                    // 添加积分
226
-                    applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll, orgId));
227
-                }
228
-            }
229
-
230
-
231 221
             Map<Object, Object> map = new HashMap<>();
232 222
             map.put("openId", session.getOpenid());
233 223
             map.put("orgId", orgId);
@@ -247,6 +237,20 @@ public class MiniAppController extends BaseController {
247 237
             }
248 238
             taPerson.setMiniappId(appid);
249 239
             taPersonService.updateById(taPerson);
240
+
241
+            // 增加积分线程
242
+            ExecutorService threadPool = Executors.newCachedThreadPool();
243
+            threadPool.execute(() -> {
244
+                if (null != from && from.contains("share") && !com.huiju.estateagents.common.StringUtils.isEmpty(recommender) && count > 0) {
245
+                    // 校验是否点击过此人的分享
246
+                    boolean checkPoint = checkSharePersonFrom(from, taPerson.getPersonId(), targetId, orgId);
247
+                    if (checkPoint) {
248
+                        // 添加积分
249
+                        applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll, orgId));
250
+                    }
251
+                }
252
+            });
253
+
250 254
             if (StringUtils.isNotBlank(from) && StringUtils.isNotBlank(recommender) && StringUtils.isNotBlank(targetId)) {
251 255
                 TaSharePersonFrom taSharePersonFrom = new TaSharePersonFrom();
252 256
                 TaPerson recommenderPerson = taPersonService.getById(recommender);
@@ -473,6 +477,7 @@ public class MiniAppController extends BaseController {
473 477
         }
474 478
         TaPerson person = taPersons.get(0);
475 479
         QueryWrapper<TaRecommendCustomer> cus = new QueryWrapper<>();
480
+        cus.eq("org_id", orgId);
476 481
         cus.eq("phone", phoneNoInfo.getPhoneNumber());
477 482
         cus.orderByDesc("create_date");
478 483
         List<TaRecommendCustomer> customer = taRecommendCustomerService.list(cus);

+ 1
- 2
src/main/java/com/huiju/estateagents/controller/StatisticalController.java ファイルの表示

@@ -160,8 +160,7 @@ public class StatisticalController extends BaseController {
160 160
                                             @RequestParam(value = "pageSize", defaultValue = "2") Integer pageSize,
161 161
                                             @RequestParam(value = "buildingId", required = false) String buildingId,
162 162
                                             HttpServletRequest request) {
163
-        Integer userId = getUserId(request);
164
-        return iStatisticalService.selectIntentionUser(pageNum, pageSize, getOrgId(request), buildingId, userId);
163
+        return iStatisticalService.selectIntentionUser(pageNum, pageSize, getOrgId(request), buildingId, getTaPersonBuildingListByUserId(request));
165 164
     }
166 165
 
167 166
     /**

+ 1
- 1
src/main/java/com/huiju/estateagents/controller/TaBuildingController.java ファイルの表示

@@ -174,7 +174,7 @@ public class TaBuildingController extends BaseController {
174 174
     })
175 175
     @RequestMapping(value = "/admin/building/add", method = RequestMethod.POST)
176 176
     public ResponseBean buildingAdd(@RequestBody String parameter, HttpServletRequest request) {
177
-        return taBuildingService.buildingAdd(parameter, getOrgId(request));
177
+        return taBuildingService.buildingAdd(parameter, getOrgId(request), getUserId(request));
178 178
     }
179 179
 
180 180
     /**

+ 26
- 15
src/main/java/com/huiju/estateagents/controller/TaHousingResourcesController.java ファイルの表示

@@ -8,6 +8,7 @@ import com.huiju.estateagents.common.CommConstant;
8 8
 import com.huiju.estateagents.entity.*;
9 9
 import com.huiju.estateagents.po.TaHousingResourcesPO;
10 10
 import com.huiju.estateagents.service.*;
11
+import org.apache.commons.collections.CollectionUtils;
11 12
 import org.apache.commons.lang3.StringUtils;
12 13
 import org.slf4j.Logger;
13 14
 import org.slf4j.LoggerFactory;
@@ -80,13 +81,15 @@ public class TaHousingResourcesController extends BaseController {
80 81
                                                @RequestParam(value = "status", required = false) Integer status,
81 82
                                                @RequestParam(value = "houseId", required = false) String houseId,
82 83
                                                @RequestParam(value = "lockingStatus", required = false) String lockingStatus,
84
+                                               @RequestParam(value = "actulStartHot", required = false) String actulStartHot,
85
+                                               @RequestParam(value = "actulEndHot", required = false) String actulEndHot,
83 86
                                                @RequestParam(value = "pageNumber", defaultValue = "1") Integer pageNumber,
84 87
                                                @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
85 88
                                                HttpServletRequest request) {
86 89
         ResponseBean responseBean = new ResponseBean();
87 90
         try {
88 91
             responseBean = iTaHousingResourcesService.selectPageList(salesBatchId, buildingId, pageNumber, pageSize, getOrgId(request), termName, blockName,
89
-                    unitName, floorName, roomName, apartmentId, status, houseId, lockingStatus);
92
+                    unitName, floorName, roomName, apartmentId, status, houseId, lockingStatus,actulStartHot,actulEndHot);
90 93
         } catch (Exception e) {
91 94
             e.printStackTrace();
92 95
             logger.error("taHousingResourcesList -=- {}", e.toString());
@@ -233,7 +236,7 @@ public class TaHousingResourcesController extends BaseController {
233 236
      */
234 237
     @RequestMapping(value = "/wx/listHousingResources", method = RequestMethod.GET)
235 238
     public ResponseBean listHousingResources(@RequestParam(value = "salesBatchId") String salesBatchId,
236
-                                             String startPrice, String endPrice, String apartmentId,@RequestParam(value = "source", required = false) String source,
239
+                                             String startPrice, String endPrice, String apartmentId, @RequestParam(value = "source", required = false) String source,
237 240
                                              HttpServletRequest request) {
238 241
         ResponseBean responseBean = new ResponseBean();
239 242
         Integer orgId = getOrgId(request);
@@ -262,9 +265,14 @@ public class TaHousingResourcesController extends BaseController {
262 265
             List<TaRaiseRecord> taRaiseRecordList = taRaiseRecordService.list(taRaiseRecordQueryWrapper);
263 266
 
264 267
             //认筹记录对应的有效房源,我的锁定的房源也在里面
265
-            QueryWrapper<TaRaiseHouse> taRaiseHouseQueryWrapper = new QueryWrapper<>();
266
-            taRaiseHouseQueryWrapper.in(taRaiseRecordList.size() > 0, "raise_record_id", taRaiseRecordList.stream().map(TaRaiseRecord::getRaiseRecordId).collect(Collectors.toList()));
267
-            List<TaRaiseHouse> taRaiseHouseList = taRaiseHouseService.list(taRaiseHouseQueryWrapper);
268
+            List<TaRaiseHouse> taRaiseHouseList = new ArrayList<>();
269
+            if (taRaiseRecordList.size() > 0){
270
+                QueryWrapper<TaRaiseHouse> taRaiseHouseQueryWrapper = new QueryWrapper<>();
271
+                taRaiseHouseQueryWrapper.in("raise_record_id", taRaiseRecordList.stream().map(TaRaiseRecord::getRaiseRecordId).collect(Collectors.toList()));
272
+                taRaiseHouseList = taRaiseHouseService.list(taRaiseHouseQueryWrapper);
273
+            }
274
+            List<TaRaiseHouse> finalTaRaiseHouseList = taRaiseHouseList;
275
+
268 276
             TaSalesBatch taSalesBatch = taSalesBatchService.getById(salesBatchId);
269 277
             taHousingResourcesPOList.forEach(e -> {
270 278
                 taPreselectionRecordList.forEach(p -> {
@@ -274,15 +282,18 @@ public class TaHousingResourcesController extends BaseController {
274 282
                     }
275 283
                 });
276 284
                 //我的认筹和锁定
277
-                taRaiseHouseList.forEach(r -> {
278
-                    //我的认筹
279
-                    if (e.getHouseId().equals(r.getHouseId())) {
280
-                        e.setMineRaise("mine");
281
-                        if (CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(e.getHouseLockingStatus())) {
282
-                            e.setMineLocked("mine");
285
+                if (CollectionUtils.isNotEmpty(taRaiseRecordList)) {
286
+                    finalTaRaiseHouseList.forEach(r -> {
287
+                        //我的认筹
288
+                        if (e.getHouseId().equals(r.getHouseId())) {
289
+                            e.setMineRaise("mine");
290
+                            if (CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(e.getHouseLockingStatus()) && personId.equals(e.getHouseLockingPerson())) {
291
+                                e.setMineLocked("mine");
292
+                            }
283 293
                         }
284
-                    }
285
-                });
294
+                    });
295
+                }
296
+
286 297
 
287 298
                 //塞入户型信息
288 299
                 if (!StringUtils.isEmpty(e.getApartmentId())) {
@@ -533,10 +544,10 @@ public class TaHousingResourcesController extends BaseController {
533 544
      * @return
534 545
      */
535 546
     @RequestMapping(value = "/wx/check/raise", method = RequestMethod.GET)
536
-    public ResponseBean checkRaise(@RequestParam(value = "houseIds") String houseIds,HttpServletRequest request) {
547
+    public ResponseBean checkRaise(@RequestParam(value = "houseIds") String houseIds, HttpServletRequest request) {
537 548
         ResponseBean responseBean = new ResponseBean();
538 549
         try {
539
-            boolean state = iTaHousingResourcesService.checkRaiseState(houseIds,getPersonId(request),getOrgId(request));
550
+            boolean state = iTaHousingResourcesService.checkRaiseState(houseIds, getPersonId(request), getOrgId(request));
540 551
             responseBean.addSuccess(state);
541 552
         } catch (Exception e) {
542 553
             logger.error("校验房源状态 -=- {}", e.getMessage());

+ 1
- 1
src/main/java/com/huiju/estateagents/controller/TaLiveActivityController.java ファイルの表示

@@ -186,7 +186,7 @@ public class TaLiveActivityController extends BaseController {
186 186
     public ResponseBean taLiveActivityGet(@PathVariable Integer id) {
187 187
         ResponseBean responseBean = new ResponseBean();
188 188
         try {
189
-            responseBean.addSuccess(iTaLiveActivityService.getById(id));
189
+            responseBean.addSuccess(iTaLiveActivityService.getDetailById(id));
190 190
         } catch (Exception e) {
191 191
             e.printStackTrace();
192 192
             logger.error("taLiveActivityDelete -=- {}", e.toString());

+ 8
- 7
src/main/java/com/huiju/estateagents/controller/TaPersonController.java ファイルの表示

@@ -84,17 +84,18 @@ public class TaPersonController extends BaseController {
84 84
             return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
85 85
         }
86 86
         Integer orgId = getOrgId(request);
87
+        String openid = getOpenId(request);
88
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
89
+        if (null == taPersons || taPersons.size() != 1) {
90
+            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
91
+        }
92
+        TaPerson person = taPersons.get(0);
93
+
87 94
         if (mine){
88
-            String openid = getOpenId(request);
89
-            List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
90
-            if (null == taPersons || taPersons.size() != 1) {
91
-                return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
92
-            }
93
-            TaPerson person = taPersons.get(0);
94 95
             IPage<Map<String, Object>>  result = taPersonService.getSavedConsaultants(pageNumber,pageSize,person.getPersonId());
95 96
             return ResponseBean.success(result);
96 97
         }else {
97
-            IPage<Map<String, Object>> result = taPersonService.getCardList(pageNumber, pageSize,buildingId,orgId);
98
+            IPage<Map<String, Object>> result = taPersonService.getCardList(pageNumber, pageSize,buildingId,orgId, person);
98 99
             return ResponseBean.success(result);
99 100
         }
100 101
 

+ 1
- 4
src/main/java/com/huiju/estateagents/controller/TaPointsRecordsController.java ファイルの表示

@@ -274,10 +274,7 @@ public class TaPointsRecordsController extends BaseController {
274 274
             queryWrapper.eq("person_id",id);
275 275
             queryWrapper.orderByDesc("create_date");
276 276
             IPage<TaPointsRecords> result = iTaPointsRecordsService.page(pg, queryWrapper);
277
-            Integer totalPoints = 0;
278
-            for (int i = 0;i<result.getRecords().size();i++){
279
-                totalPoints += result.getRecords().get(i).getPointsAmount();
280
-            }
277
+            Integer totalPoints = iTaPointsRecordsService.sumPointByPersonId(id);
281 278
             Map<String,Object> data = new HashMap<>();
282 279
             data.put("totalPoints",totalPoints);
283 280
             data.put("result",result);

+ 6
- 1
src/main/java/com/huiju/estateagents/controller/TaPreselectionRecordController.java ファイルの表示

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
7 7
 import com.huiju.estateagents.base.BaseController;
8 8
 import com.huiju.estateagents.base.ResponseBean;
9 9
 import com.huiju.estateagents.bo.request.PresecretRecordRequestBO;
10
+import com.huiju.estateagents.common.DateUtils;
10 11
 import com.huiju.estateagents.entity.TaPreselectionRecord;
11 12
 import com.huiju.estateagents.service.ITaPreselectionRecordService;
12 13
 import org.apache.commons.lang3.StringUtils;
@@ -17,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
17 18
 import org.springframework.web.bind.annotation.*;
18 19
 
19 20
 import javax.servlet.http.HttpServletRequest;
21
+import java.time.LocalDateTime;
20 22
 import java.util.List;
21 23
 
22 24
 /**
@@ -132,9 +134,12 @@ public class TaPreselectionRecordController extends BaseController {
132 134
      */
133 135
     @RequestMapping(value = "/taPreselectionRecord/{id}", method = RequestMethod.PUT)
134 136
     public ResponseBean taPreselectionRecordUpdate(@PathVariable Integer id,
135
-                                                   @RequestBody TaPreselectionRecord taPreselectionRecord) {
137
+                                                   @RequestBody TaPreselectionRecord taPreselectionRecord,
138
+                                                   HttpServletRequest request) {
136 139
         ResponseBean responseBean = new ResponseBean();
137 140
         try {
141
+            taPreselectionRecord.setUpdateDate(LocalDateTime.now());
142
+            taPreselectionRecord.setUpdateUser(getUserId(request));
138 143
             if (iTaPreselectionRecordService.updateById(taPreselectionRecord)) {
139 144
                 responseBean.addSuccess(taPreselectionRecord);
140 145
             } else {

+ 16
- 1
src/main/java/com/huiju/estateagents/controller/TaRaiseController.java ファイルの表示

@@ -9,7 +9,10 @@ import com.huiju.estateagents.base.ResponseBean;
9 9
 import com.huiju.estateagents.common.CommConstant;
10 10
 import com.huiju.estateagents.entity.TaPersonBuilding;
11 11
 import com.huiju.estateagents.entity.TaRaise;
12
+import com.huiju.estateagents.entity.TaSalesBatch;
12 13
 import com.huiju.estateagents.service.ITaRaiseService;
14
+import com.huiju.estateagents.service.ITaSalesBatchService;
15
+import com.huiju.estateagents.service.ITaSaveService;
13 16
 import com.huiju.estateagents.service.ITdCityService;
14 17
 import io.swagger.models.auth.In;
15 18
 import org.slf4j.Logger;
@@ -41,6 +44,9 @@ public class TaRaiseController extends BaseController {
41 44
     @Autowired
42 45
     public ITdCityService iTdCityService;
43 46
 
47
+    @Autowired
48
+    public ITaSalesBatchService iTaSalesBatchService;
49
+
44 50
     /**
45 51
      * 获取认筹列表
46 52
      *
@@ -130,9 +136,18 @@ public class TaRaiseController extends BaseController {
130 136
                 return responseBean;
131 137
             }
132 138
 
139
+            //获取销售批次状态
140
+            TaSalesBatch taSalesBatch = new TaSalesBatch();
141
+            if (taRaise.getSalesBatchId() != null){
142
+                QueryWrapper<TaSalesBatch> taSalesBatchQueryWrapper = new QueryWrapper<>();
143
+                taSalesBatchQueryWrapper.eq("sales_batch_id", taRaise.getSalesBatchId());
144
+                taSalesBatch = iTaSalesBatchService.getOne(taSalesBatchQueryWrapper);
145
+
146
+            }
147
+
133 148
             taRaise.setOrgId(orgId);
134 149
             taRaise.setRaisePrice(taRaise.getRaisePrice() != null ? taRaise.getRaisePrice() : null );
135
-            taRaise.setStatus(CommConstant.IS_PUBLISH);
150
+            taRaise.setStatus(taSalesBatch.getStatus());
136 151
             taRaise.setCreateDate(LocalDateTime.now());
137 152
             if (iTaRaiseService.save(taRaise)) {
138 153
                 responseBean.addSuccess(taRaise);

+ 148
- 15
src/main/java/com/huiju/estateagents/controller/TaRaiseRecordController.java ファイルの表示

@@ -12,11 +12,8 @@ import com.huiju.estateagents.bo.request.RaiseRecordRequestBO;
12 12
 import com.huiju.estateagents.center.taUser.entity.TaUser;
13 13
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
14 14
 import com.huiju.estateagents.common.CommConstant;
15
-import com.huiju.estateagents.drainage.entity.TaDrainageRecord;
16 15
 import com.huiju.estateagents.entity.*;
17
-import com.huiju.estateagents.po.BuildingImgPO;
18 16
 import com.huiju.estateagents.service.*;
19
-import jodd.util.StringUtil;
20 17
 import org.apache.commons.collections.CollectionUtils;
21 18
 import org.apache.commons.lang3.StringUtils;
22 19
 import org.slf4j.Logger;
@@ -160,6 +157,41 @@ public class TaRaiseRecordController extends BaseController {
160 157
         return responseBean;
161 158
     }
162 159
 
160
+    /**
161
+     * 批量作废前校验
162
+     *
163
+     * @param raiseRecord
164
+     * @return
165
+     */
166
+    @RequestMapping(value = "/admin/raise/checkBeforeInvalidRecord", method = RequestMethod.GET)
167
+    public ResponseBean checkBeforeInvalidRecord(@RequestBody TaRaiseRecord raiseRecord) {
168
+        ResponseBean responseBean = new ResponseBean();
169
+        try {
170
+            Integer fitNum = 0;
171
+            Integer notFitNum = 0;
172
+            Integer totalNum = raiseRecord.getTaRaiseRecords().size();
173
+            for (TaRaiseRecord record : raiseRecord.getTaRaiseRecords()) {
174
+                TaRaiseRecord r = iTaRaiseRecordService.getById(record.getRaiseRecordId());
175
+                if (CommConstant.STATUS_NORMAL != r.getStatus()) {
176
+                    notFitNum++;
177
+                } else {
178
+                    fitNum++;
179
+                }
180
+            }
181
+
182
+            // 组装反参
183
+            JSONObject resultObj = new JSONObject();
184
+            resultObj.put("totalNum", totalNum);
185
+            resultObj.put("fitNum", fitNum);
186
+            resultObj.put("notFitNum", notFitNum);
187
+            responseBean.addSuccess(resultObj);
188
+        } catch (Exception e) {
189
+            logger.error("checkBeforeInvalidRecord 异常:", e);
190
+            responseBean.addError(e.getMessage());
191
+        }
192
+        return responseBean;
193
+    }
194
+
163 195
     /**
164 196
      * 批量作废
165 197
      *
@@ -181,7 +213,6 @@ public class TaRaiseRecordController extends BaseController {
181 213
 
182 214
             // 获取用户信息
183 215
             TaUser taUser = taUserService.getUserInfoById(getUserId(request), getOrgId(request));
184
-
185 216
             raiseRecord.getTaRaiseRecords().stream().forEach(record -> {
186 217
                 if (taUser != null) {
187 218
                     record.setUpdateUserName(taUser.getUserName());
@@ -193,8 +224,14 @@ public class TaRaiseRecordController extends BaseController {
193 224
                 // 更新房源认筹热度
194 225
                 iTaRaiseRecordService.updateForSubtractRaiseHeat(record.getRaiseRecordId());
195 226
 
196
-                //发送订阅消息
197
-                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"认筹通知","认筹单已作废","点击详情查看认筹单","具体原因查看详情",false);
227
+                // 如果房源状态为已锁定,则修改房源锁定状态
228
+                if (CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(record.getHouseLockingStatus())) {
229
+                    record.setHouseLockingStatus(CommConstant.HOUSE_LOCKING_STATUS_UNLOCKED);
230
+                    iTaRaiseRecordService.updateHouseLockingStatus(record.getRaiseRecordId(), CommConstant.HOUSE_LOCKING_STATUS_UNLOCKED);
231
+                }
232
+
233
+                // 发送订阅消息
234
+                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(), record.getRaiseId(), "认筹通知", "认筹单已作废", "点击详情查看认筹单", "具体原因查看详情", false);
198 235
             });
199 236
 
200 237
             if (iTaRaiseRecordService.updateBatchById(raiseRecord.getTaRaiseRecords())) {
@@ -240,8 +277,14 @@ public class TaRaiseRecordController extends BaseController {
240 277
                 // 更新房源认筹热度
241 278
                 iTaRaiseRecordService.updateForSubtractRaiseHeat(record.getRaiseRecordId());
242 279
 
243
-                //发送订阅消息
244
-                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"认筹通知","认筹单已作废","点击详情查看认筹单","具体原因查看详情",false);
280
+                // 如果房源状态为已锁定,则修改房源锁定状态
281
+                if (CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(record.getHouseLockingStatus())) {
282
+                    record.setHouseLockingStatus(CommConstant.HOUSE_LOCKING_STATUS_UNLOCKED);
283
+                    iTaRaiseRecordService.updateHouseLockingStatus(record.getRaiseRecordId(), CommConstant.HOUSE_LOCKING_STATUS_UNLOCKED);
284
+                }
285
+
286
+                // 发送订阅消息
287
+                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(), record.getRaiseId(), "认筹通知", "认筹单已作废", "点击详情查看认筹单", "具体原因查看详情", false);
245 288
             });
246 289
 
247 290
             if (iTaRaiseRecordService.updateBatchById(raiseRecord.getTaRaiseRecords())) {
@@ -256,6 +299,58 @@ public class TaRaiseRecordController extends BaseController {
256 299
         return responseBean;
257 300
     }
258 301
 
302
+    /**
303
+     * 批量线下缴费前校验
304
+     *
305
+     * @param raiseRecord
306
+     * @param request
307
+     * @return
308
+     */
309
+    @RequestMapping(value = "/admin/raise/checkBeforePayOfflineRecord", method = RequestMethod.GET)
310
+    public ResponseBean checkBeforePayOfflineRecord(@RequestBody TaRaiseRecord raiseRecord, HttpServletRequest request) {
311
+        ResponseBean responseBean = new ResponseBean();
312
+        try {
313
+            Integer fitNum = 0;
314
+            Integer notFitNum = 0;
315
+            Integer totalNum = raiseRecord.getTaRaiseRecords().size();
316
+            // 获取该认筹缴费方式
317
+            TaRaise taRaise = taRaiseService.getById(raiseRecord.getRaiseId());
318
+            if (taRaise == null) {
319
+                responseBean.addError("当前批次不存在");
320
+                return responseBean;
321
+            }
322
+            // 校验缴费方式
323
+            if (CommConstant.PAY_TYPE_ONLINE == taRaise.getPayType()) {
324
+                responseBean.addError("当前批次只支持线上缴费,请稍后再试");
325
+                return responseBean;
326
+            }
327
+            for (TaRaiseRecord record : raiseRecord.getTaRaiseRecords()) {
328
+                TaRaiseRecord r = iTaRaiseRecordService.getById(record.getRaiseRecordId());
329
+                // 校验是否作废
330
+                if (CommConstant.STATUS_NORMAL != r.getStatus()) {
331
+                    notFitNum++;
332
+                    continue;
333
+                }
334
+                // 校验缴费状态
335
+                if (!CommConstant.PAY_STATUS_UNPAID.equals(r.getPayStatus())) {
336
+                    notFitNum++;
337
+                    continue;
338
+                }
339
+                fitNum++;
340
+            }
341
+            // 组装反参
342
+            JSONObject resultObj = new JSONObject();
343
+            resultObj.put("totalNum", totalNum);
344
+            resultObj.put("fitNum", fitNum);
345
+            resultObj.put("notFitNum", notFitNum);
346
+            responseBean.addSuccess(resultObj);
347
+        } catch (Exception e) {
348
+            logger.error("checkBeforePayOfflineRecord 异常:", e);
349
+            responseBean.addError(e.getMessage());
350
+        }
351
+        return responseBean;
352
+    }
353
+
259 354
     /**
260 355
      * 批量线下缴费
261 356
      *
@@ -291,7 +386,7 @@ public class TaRaiseRecordController extends BaseController {
291 386
                     return responseBean;
292 387
                 }
293 388
                 if (!CommConstant.PAY_STATUS_UNPAID.equals(tr.getPayStatus())) {
294
-                    responseBean.addError(String.format("认筹单编号为%s的记录为未缴费状态 ,请重新选择", record.getRaiseRecordId()));
389
+                    responseBean.addError(String.format("认筹单编号为%s的记录为已缴费或已退费状态 ,请重新选择", record.getRaiseRecordId()));
295 390
                     return responseBean;
296 391
                 }
297 392
             }
@@ -307,7 +402,7 @@ public class TaRaiseRecordController extends BaseController {
307 402
                 record.setPayStatus(CommConstant.PAY_STATUS_PAID);
308 403
                 record.setUpdateDate(LocalDateTime.now());
309 404
                 //发送订阅消息
310
-                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"认筹通知","认筹已缴费","点击详情查看认筹单","您的认筹已成功缴费",false);
405
+                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(), record.getRaiseId(), "认筹通知", "认筹已缴费", "点击详情查看认筹单", "您的认筹已成功缴费", false);
311 406
             });
312 407
 
313 408
             if (iTaRaiseRecordService.updateBatchById(raiseRecord.getTaRaiseRecords())) {
@@ -322,6 +417,42 @@ public class TaRaiseRecordController extends BaseController {
322 417
         return responseBean;
323 418
     }
324 419
 
420
+    /**
421
+     * 批量线下退费前校验
422
+     *
423
+     * @param raiseRecord
424
+     * @return
425
+     */
426
+    @RequestMapping(value = "/admin/raise/checkBeforeRefundOfflineRecord", method = RequestMethod.GET)
427
+    public ResponseBean checkBeforeRefundOfflineRecord(@RequestBody TaRaiseRecord raiseRecord) {
428
+        ResponseBean responseBean = new ResponseBean();
429
+        try {
430
+            Integer fitNum = 0;
431
+            Integer notFitNum = 0;
432
+            Integer totalNum = raiseRecord.getTaRaiseRecords().size();
433
+            for (TaRaiseRecord record : raiseRecord.getTaRaiseRecords()) {
434
+                TaRaiseRecord r = iTaRaiseRecordService.getById(record.getRaiseRecordId());
435
+                // 校验缴费状态
436
+                if (CommConstant.PAY_STATUS_PAID.equals(r.getPayStatus())) {
437
+                    fitNum++;
438
+                    continue;
439
+                }
440
+                notFitNum++;
441
+            }
442
+
443
+            // 组装反参
444
+            JSONObject resultObj = new JSONObject();
445
+            resultObj.put("totalNum", totalNum);
446
+            resultObj.put("fitNum", fitNum);
447
+            resultObj.put("notFitNum", notFitNum);
448
+            responseBean.addSuccess(resultObj);
449
+        } catch (Exception e) {
450
+            logger.error("checkBeforeRefundOfflineRecord 异常:", e);
451
+            responseBean.addError(e.getMessage());
452
+        }
453
+        return responseBean;
454
+    }
455
+
325 456
     /**
326 457
      * 批量线下退费
327 458
      *
@@ -379,7 +510,7 @@ public class TaRaiseRecordController extends BaseController {
379 510
                 record.setRefundReason(raiseRecord.getRefundReason());
380 511
                 record.setUpdateDate(LocalDateTime.now());
381 512
                 //发送订阅消息
382
-                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"认筹通知","认筹已退费","点击详情查看认筹单","您的认筹已成功退费",false);
513
+                iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(), record.getRaiseId(), "认筹通知", "认筹已退费", "点击详情查看认筹单", "您的认筹已成功退费", false);
383 514
             });
384 515
 
385 516
             if (iTaRaiseRecordService.updateBatchById(raiseRecord.getTaRaiseRecords())) {
@@ -535,6 +666,7 @@ public class TaRaiseRecordController extends BaseController {
535 666
             //获取认筹单信息
536 667
             TaRaiseRecord taRaiseRecord = iTaRaiseRecordService.getById(raiseRecordId);
537 668
 
669
+            String personId = getPersonId(request);
538 670
             //认筹表数据
539 671
             TaRaise taRaise = taRaiseService.getById(taRaiseRecord.getRaiseId());
540 672
             taRaise.setRaisePrice(taRaise.getRaisePrice());
@@ -559,7 +691,7 @@ public class TaRaiseRecordController extends BaseController {
559 691
             houseList.forEach(e -> {
560 692
                 taRaiseHouseList.forEach(r -> {
561 693
                     //我的认筹
562
-                    if (e.getHouseId().equals(r.getHouseId()) && CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(e.getHouseLockingStatus())) {
694
+                    if (e.getHouseId().equals(r.getHouseId()) && CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(e.getHouseLockingStatus()) && personId.equals(e.getHouseLockingPerson())) {
563 695
                         e.setMineLocked("mine");
564 696
                     }
565 697
                 });
@@ -609,7 +741,7 @@ public class TaRaiseRecordController extends BaseController {
609 741
      */
610 742
     @RequestMapping(value = "/wx/taRaiseRecord/list", method = RequestMethod.GET)
611 743
     public ResponseBean wxGetRaiseRecordList(@RequestParam(value = "buildingId", required = false) String buildingId,
612
-                                             @RequestParam(value = "salesBtchId", required = false) Integer salesBtchId,
744
+                                             @RequestParam(value = "salesBatchId", required = false) Integer salesBatchId,
613 745
                                              @RequestParam(value = "houseLockingStatus", required = false) String houseLockingStatus,
614 746
                                              @RequestParam(value = "pageNumber", defaultValue = "1") Integer pageNumber,
615 747
                                              @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) {
@@ -621,8 +753,10 @@ public class TaRaiseRecordController extends BaseController {
621 753
             taRaiseRecordQueryWrapper.eq("org_id", getOrgId(request));
622 754
             taRaiseRecordQueryWrapper.eq("person_id", getPersonId(request));
623 755
             taRaiseRecordQueryWrapper.eq(StringUtils.isNotEmpty(buildingId), "building_id", buildingId);
624
-            taRaiseRecordQueryWrapper.eq(null != salesBtchId, "sales_batch_id", salesBtchId);
756
+            taRaiseRecordQueryWrapper.eq(null != salesBatchId, "sales_batch_id", salesBatchId);
625 757
             taRaiseRecordQueryWrapper.eq(StringUtils.isNotEmpty(houseLockingStatus), "house_locking_status", houseLockingStatus);
758
+            taRaiseRecordQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
759
+            taRaiseRecordQueryWrapper.orderByDesc("create_date");
626 760
             IPage<TaRaiseRecord> page = iTaRaiseRecordService.page(pg, taRaiseRecordQueryWrapper);
627 761
             List<TaRaiseRecord> list = page.getRecords();
628 762
             list.forEach(e -> {
@@ -648,7 +782,6 @@ public class TaRaiseRecordController extends BaseController {
648 782
 
649 783
     /**
650 784
      * 微信端客户选择线下缴费就需要把此人的认筹单的缴费状态改为线下缴费
651
-     *
652 785
      */
653 786
     @RequestMapping(value = "/wx/taRaiseRecord/{raiseRecordId}", method = RequestMethod.PUT)
654 787
     public ResponseBean taRaiseRecordUpdate(@PathVariable Integer raiseRecordId,

+ 10
- 5
src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java ファイルの表示

@@ -7,6 +7,7 @@ import com.alibaba.excel.write.metadata.WriteSheet;
7 7
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
8 8
 import com.baomidou.mybatisplus.core.metadata.IPage;
9 9
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10
+import com.fasterxml.jackson.annotation.JsonFormat;
10 11
 import com.huiju.estateagents.base.ResponseBean;
11 12
 import com.huiju.estateagents.center.taUser.entity.TaUser;
12 13
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
@@ -29,6 +30,7 @@ import io.swagger.annotations.ApiImplicitParams;
29 30
 import io.swagger.annotations.ApiOperation;
30 31
 import org.springframework.beans.factory.annotation.Autowired;
31 32
 import org.springframework.context.ApplicationContext;
33
+import org.springframework.format.annotation.DateTimeFormat;
32 34
 import org.springframework.web.bind.annotation.*;
33 35
 
34 36
 import com.huiju.estateagents.base.BaseController;
@@ -307,7 +309,9 @@ public class TaRecommendCustomerController extends BaseController {
307 309
                                          @RequestParam(value = "sex",required = false)Integer sex,
308 310
                                          @RequestParam(value = "customerType") String customerType,// public 公  private 私
309 311
                                          @RequestParam(value = "status",required = false) Integer status,
310
-                                         @RequestParam(value = "sceneType",required = false) String sceneType){
312
+                                         @RequestParam(value = "sceneType",required = false) String sceneType,
313
+                                         @RequestParam(value = "startCreateDate",required = false) String startCreateDate,
314
+                                         @RequestParam(value = "endCreateDate",required = false) String endCreateDate){
311 315
         try{
312 316
 
313 317
             // TODO 目前如果是公客,就取当前操作人员的 buildingId
@@ -321,7 +325,7 @@ public class TaRecommendCustomerController extends BaseController {
321 325
 //                TaPersonBuilding personBuilding = taPersonBuildingMapper.selectOne(queryWrapper);
322 326
 //                buildingId = personBuilding.getBuildingId();
323 327
 //            }
324
-            return ResponseBean.success(taRecommendCustomerService.getCustomerList(status,pageNumber,pageSize,buildingId,name,tel,consultName,consultTel,entryType,verifyStatus,sex, customerType, getOrgId(request),getTaPersonBuildingListByUserId(request),sceneType));
328
+            return ResponseBean.success(taRecommendCustomerService.getCustomerList(status,pageNumber,pageSize,buildingId,name,tel,consultName,consultTel,entryType,verifyStatus,sex, customerType, getOrgId(request),getTaPersonBuildingListByUserId(request),sceneType, startCreateDate, endCreateDate));
325 329
         }catch (Exception e){
326 330
             e.printStackTrace();
327 331
             return ResponseBean.error(e.getMessage(),ResponseBean.ERROR_UNAVAILABLE);
@@ -767,7 +771,8 @@ public class TaRecommendCustomerController extends BaseController {
767 771
                                          @RequestParam(value ="verifyStatus",required = false) String verifyStatus,
768 772
                                          @RequestParam(value = "sex",required = false)Integer sex,
769 773
                                          @RequestParam(value = "customerType") String customerType,
770
-                                         @RequestParam(value = "status",required = false) Integer status) throws IOException { // public 公  private 私
774
+                                         @RequestParam(value = "status",required = false) Integer status,
775
+                                       @RequestParam(value = "sceneType",required = false) String sceneType) throws IOException { // public 公  private 私
771 776
 
772 777
         //        response.setContentType("application/vnd.ms-excel");
773 778
         response.setContentType("application/octet-stream");
@@ -795,7 +800,7 @@ public class TaRecommendCustomerController extends BaseController {
795 800
 //            pageCount = count % pageSize == 0 ? count / pageSize : (count / pageSize) + 1;
796 801
 //            List<PublicCustomerExport> publicList = null;
797 802
 //            do {
798
-                List<PublicCustomerExport> publicList = taRecommendCustomerMapper.getPublicCustomerExportList(pageCode * pageSize, pageSize, name, tel,  entryType, verifyStatus, sex, orgId,consultTel);
803
+                List<PublicCustomerExport> publicList = taRecommendCustomerMapper.getPublicCustomerExportList(pageCode * pageSize, pageSize, buildingId, name, tel,  entryType, verifyStatus, sex, orgId,consultTel,sceneType);
799 804
                 excelWriter.write(publicList, writeSheet);
800 805
 
801 806
 //                pageCode ++;
@@ -817,7 +822,7 @@ public class TaRecommendCustomerController extends BaseController {
817 822
 //            pageCount = count % pageSize == 0 ? count / pageSize : (count / pageSize) + 1;
818 823
 //            List<PrivateCustomerExport> privateList = null;
819 824
 //            do {
820
-                List<PrivateCustomerExport> privateList = taRecommendCustomerMapper.getCustomerExportList(pageCode *  pageSize, pageSize, buildingId, name, tel, consultName, consultTel, entryType, verifyStatus, sex, orgId,status,getTaPersonBuildingListByUserId(request));
825
+                List<PrivateCustomerExport> privateList = taRecommendCustomerMapper.getCustomerExportList(pageCode *  pageSize, pageSize, buildingId, name, tel, consultName, consultTel, entryType, verifyStatus, sex, orgId,status,sceneType,getTaPersonBuildingListByUserId(request));
821 826
                 excelWriter.write(privateList, writeSheet);
822 827
 
823 828
 //                pageCode ++;

+ 25
- 7
src/main/java/com/huiju/estateagents/controller/TaSalesBatchController.java ファイルの表示

@@ -163,7 +163,7 @@ public class TaSalesBatchController extends BaseController {
163 163
                 raiseQueryWrapper.eq("status", 1);
164 164
                 TaRaise raise = taRaiseService.getOne(raiseQueryWrapper);
165 165
                 if (raise != null) {
166
-                    responseBean.addError(String.format("销售批次%s关联有认筹,请先删除关联的预选模块", ts.getSalesBatchName()));
166
+                    responseBean.addError(String.format("销售批次%s关联有认筹,请先删除关联的认筹模块", ts.getSalesBatchName()));
167 167
                     return responseBean;
168 168
                 }
169 169
             }
@@ -235,22 +235,26 @@ public class TaSalesBatchController extends BaseController {
235 235
                 QueryWrapper<TaPreselection> preselectionQueryWrapper = new QueryWrapper<>();
236 236
                 preselectionQueryWrapper.eq("org_id", getOrgId(request));
237 237
                 preselectionQueryWrapper.eq("sales_batch_id", taSalesBatch.getSalesBatchId());
238
-                preselectionQueryWrapper.eq("status", 1);
238
+                preselectionQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
239 239
                 TaPreselection preselection = taPreselectionService.getOne(preselectionQueryWrapper);
240 240
                 if (preselection != null) {
241
-                    responseBean.addError(String.format("销售批次%s关联有预选,请先删除关联的预选模块", taSalesBatch.getSalesBatchName()));
242
-                    return responseBean;
241
+//                    responseBean.addError(String.format("销售批次%s关联有预选,请先删除关联的预选模块", taSalesBatch.getSalesBatchName()));
242
+//                    return responseBean;
243
+                    preselection.setStatus(CommConstant.STATUS_UNACCALIMED);
244
+                    taPreselectionService.updateById(preselection);
243 245
                 }
244 246
 
245 247
                 // 校验批次下是否有认筹
246 248
                 QueryWrapper<TaRaise> raiseQueryWrapper = new QueryWrapper<>();
247 249
                 raiseQueryWrapper.eq("org_id", getOrgId(request));
248 250
                 raiseQueryWrapper.eq("sales_batch_id", taSalesBatch.getSalesBatchId());
249
-                raiseQueryWrapper.eq("status", 1);
251
+                raiseQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
250 252
                 TaRaise raise = taRaiseService.getOne(raiseQueryWrapper);
251 253
                 if (raise != null) {
252
-                    responseBean.addError(String.format("销售批次%s关联有认筹,请先删除关联的认筹模块", taSalesBatch.getSalesBatchName()));
253
-                    return responseBean;
254
+//                    responseBean.addError(String.format("销售批次%s关联有认筹,请先删除关联的认筹模块", taSalesBatch.getSalesBatchName()));
255
+//                    return responseBean;
256
+                    raise.setStatus(CommConstant.STATUS_UNACCALIMED);
257
+                    taRaiseService.updateById(raise);
254 258
                 }
255 259
             }
256 260
 
@@ -268,6 +272,20 @@ public class TaSalesBatchController extends BaseController {
268 272
                 iExtendContentService.updateBatchById(list);
269 273
             }
270 274
 
275
+            QueryWrapper<TaPreselection> taPreselectionQueryWrapper = new QueryWrapper<>();
276
+            TaPreselection taPreselection = new TaPreselection();
277
+            taPreselection.setStatus(taSalesBatch.getStatus());
278
+            taPreselectionQueryWrapper.eq("org_id", getOrgId(request));
279
+            taPreselectionQueryWrapper.eq("sales_batch_id", taSalesBatch.getSalesBatchId());
280
+            taPreselectionService.update(taPreselection, taPreselectionQueryWrapper);
281
+
282
+            QueryWrapper<TaRaise> taRaiseQueryWrapper = new QueryWrapper<>();
283
+            TaRaise taRaise = new TaRaise();
284
+            taRaise.setStatus(taSalesBatch.getStatus());
285
+            taRaiseQueryWrapper.eq("org_id", getOrgId(request));
286
+            taRaiseQueryWrapper.eq("sales_batch_id", taSalesBatch.getSalesBatchId());
287
+            taRaiseService.update(taRaise, taRaiseQueryWrapper);
288
+
271 289
             if (iTaSalesBatchService.updateById(taSalesBatch)) {
272 290
                 responseBean.addSuccess(taSalesBatch);
273 291
             } else {

+ 28
- 0
src/main/java/com/huiju/estateagents/controller/TaSharePersonFromController.java ファイルの表示

@@ -8,6 +8,7 @@ import com.huiju.estateagents.base.ResponseBean;
8 8
 import com.huiju.estateagents.common.CommConstant;
9 9
 import com.huiju.estateagents.entity.*;
10 10
 import com.huiju.estateagents.service.ITaSharePersonFromService;
11
+import com.huiju.estateagents.service.ITdLiveDictService;
11 12
 import org.apache.commons.lang3.StringUtils;
12 13
 import org.slf4j.Logger;
13 14
 import org.slf4j.LoggerFactory;
@@ -22,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController;
22 23
 
23 24
 import javax.servlet.http.HttpServletRequest;
24 25
 import java.time.LocalDateTime;
26
+import java.util.List;
25 27
 
26 28
 /**
27 29
  * <p>
@@ -40,6 +42,9 @@ public class TaSharePersonFromController extends BaseController {
40 42
     @Autowired
41 43
     public ITaSharePersonFromService iTaSharePersonFromService;
42 44
 
45
+    @Autowired
46
+    public ITdLiveDictService tdLiveDictService;
47
+
43 48
 
44 49
     /**
45 50
      * 分页查询列表
@@ -202,4 +207,27 @@ public class TaSharePersonFromController extends BaseController {
202 207
         }
203 208
         return responseBean;
204 209
     }
210
+
211
+    /**
212
+     * 查询直播平台列表
213
+     * @param pageNum
214
+     * @param pageSize
215
+     * @param request
216
+     * @return
217
+     */
218
+    @RequestMapping(value="api/admin/livePlatList",method= RequestMethod.GET)
219
+    public ResponseBean taLivePlatList (@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
220
+                                        @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize, HttpServletRequest request){
221
+        ResponseBean responseBean = new ResponseBean();
222
+        try {
223
+            QueryWrapper<TdLiveDict> tdLiveDictQueryWrapper = new QueryWrapper<>();
224
+            tdLiveDictQueryWrapper.eq("status", 1);
225
+            List<TdLiveDict> tdLiveDictList = tdLiveDictService.list(tdLiveDictQueryWrapper);
226
+            responseBean.addSuccess(tdLiveDictList);
227
+        }catch (Exception e){
228
+            e.printStackTrace();
229
+            responseBean.addError(e.getMessage());
230
+        }
231
+        return responseBean;
232
+    }
205 233
 }

+ 5
- 0
src/main/java/com/huiju/estateagents/entity/TaBuildingApartment.java ファイルの表示

@@ -77,6 +77,11 @@ public class TaBuildingApartment implements Serializable {
77 77
 
78 78
     private String houseType;
79 79
 
80
+    /**
81
+     * 权重
82
+     */
83
+    private Integer orderNo;
84
+
80 85
     /**
81 86
      * 户型图片列表
82 87
      */

+ 1
- 1
src/main/java/com/huiju/estateagents/entity/TaPreselectionRecord.java ファイルの表示

@@ -43,7 +43,7 @@ public class TaPreselectionRecord implements Serializable {
43 43
     /**
44 44
      * 更新时间
45 45
      */
46
-    private String updateDate;
46
+    private LocalDateTime updateDate;
47 47
 
48 48
     /**
49 49
      * 房源id

+ 8
- 0
src/main/java/com/huiju/estateagents/entity/TdLiveDict.java ファイルの表示

@@ -1,5 +1,7 @@
1 1
 package com.huiju.estateagents.entity;
2 2
 
3
+import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableId;
3 5
 import lombok.Data;
4 6
 import lombok.EqualsAndHashCode;
5 7
 import lombok.experimental.Accessors;
@@ -22,6 +24,12 @@ public class TdLiveDict implements Serializable {
22 24
 
23 25
     private static final long serialVersionUID = 1L;
24 26
 
27
+    /**
28
+     * 认筹记录表
29
+     */
30
+    @TableId(value = "id", type = IdType.AUTO)
31
+    private Integer id;
32
+
25 33
     /**
26 34
      * 直播平台名称
27 35
      */

+ 1
- 1
src/main/java/com/huiju/estateagents/job/JudglActivityTimeJob.java ファイルの表示

@@ -54,7 +54,7 @@ public class JudglActivityTimeJob extends BaseController {
54 54
     /**
55 55
      * 开启定时任务,每天12:30执行
56 56
      */
57
-//    @Scheduled(cron = "* 0/5 * * * ?")
57
+    @Scheduled(cron = "* 0/5 * * * ?")
58 58
     private void configureTasks() {
59 59
         String time = DateUtils.cutSecond(LocalDateTime.now());
60 60
 

+ 11
- 1
src/main/java/com/huiju/estateagents/mapper/TaHousingResourcesMapper.java ファイルの表示

@@ -89,6 +89,16 @@ public interface TaHousingResourcesMapper extends BaseMapper<TaHousingResources>
89 89
      */
90 90
     Boolean updateForSubtractRaiseHeat(@Param("raiseRecordId") Integer raiseRecordId);
91 91
 
92
+    /**
93
+     * 更新房源锁定状态
94
+     *
95
+     * @param raiseRecordId
96
+     * @param houseLockingStatus
97
+     * @return
98
+     */
99
+    Boolean updateHouseLockingStatus(@Param("raiseRecordId") Integer raiseRecordId,
100
+                                     @Param("houseLockingStatus") String houseLockingStatus);
101
+
92 102
     /**
93 103
      * 根据房源ID获取房源详情
94 104
      *
@@ -120,7 +130,7 @@ public interface TaHousingResourcesMapper extends BaseMapper<TaHousingResources>
120 130
                                                    @Param("orgId") Integer orgId, @Param("termName") String termName, @Param("blockName") String blockName,
121 131
                                                    @Param("unitName") String unitName, @Param("floorName") String floorName, @Param("roomName") String roomName,
122 132
                                                    @Param("apartmentId") String apartmentId, @Param("status") Integer status, @Param("houseId") String houseId,
123
-                                                   @Param("lockingStatus") String lockingStatus);
133
+                                                   @Param("lockingStatus") String lockingStatus,@Param("actulStartHot") String actulStartHot,@Param("actulEndHot") String actulEndHot);
124 134
 
125 135
     List<TaHousingResources> selectHousingList(@Param("orgId") Integer orgId, @Param("taSalesBatchList") List<TaSalesBatch> taSalesBatchList);
126 136
 

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaLiveActivityMapper.java ファイルの表示

@@ -39,5 +39,5 @@ public interface TaLiveActivityMapper extends BaseMapper<TaLiveActivity> {
39 39
      */
40 40
     void updateLiveActivityStatus(@Param("orgId") Integer orgId, @Param("taLiveActivityList") List<TaLiveActivity> taLiveActivityList);
41 41
 
42
-
42
+    TaLiveActivity getDetailById(@Param("id")Integer id);
43 43
 }

+ 3
- 1
src/main/java/com/huiju/estateagents/mapper/TaPersonIntentionRecordMapper.java ファイルの表示

@@ -3,10 +3,12 @@ package com.huiju.estateagents.mapper;
3 3
 
4 4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 5
 import com.baomidou.mybatisplus.core.metadata.IPage;
6
+import com.huiju.estateagents.entity.TaPersonBuilding;
6 7
 import com.huiju.estateagents.entity.TaPersonIntentionRecord;
7 8
 import org.apache.ibatis.annotations.Mapper;
8 9
 import org.apache.ibatis.annotations.Param;
9 10
 
11
+import java.util.List;
10 12
 import java.util.Map;
11 13
 
12 14
 /**
@@ -32,5 +34,5 @@ public interface TaPersonIntentionRecordMapper extends BaseMapper<TaPersonIntent
32 34
     IPage<Map<String, Object>> selectIntentionUser(IPage<Map<String, Object>> page,
33 35
                                                    @Param("orgId") Integer orgId,
34 36
                                                    @Param("buildingId") String buildingId,
35
-                                                   @Param("userId") Integer userId);
37
+                                                   @Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
36 38
 }

+ 3
- 1
src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java ファイルの表示

@@ -25,10 +25,12 @@ import java.util.Map;
25 25
  */
26 26
 @Mapper
27 27
 public interface TaPersonMapper extends BaseMapper<TaPerson> {
28
-    List<Map<String, Object>> selectCardList(IPage<Map<String, Object>> page, @Param("personType") String personType, @Param("status") int status, @Param("buildingId") String buildingId, @Param("orgId") Integer orgId);
28
+    List<Map<String, Object>> selectCardList(IPage<Map<String, Object>> page, @Param("personType") String personType, @Param("status") int status, @Param("buildingId") String buildingId, @Param("orgId") Integer orgId, @Param("consultant") String consultant);
29 29
 
30 30
     int setFieldIncrement(@Param("personId") String personId, @Param("field") String field, @Param("increment") int increment);
31 31
 
32
+    int setPointsIncrement(@Param("personId") String personId, @Param("increment") int increment);
33
+
32 34
     TaPerson getSalesExecutive();
33 35
 
34 36
     List<TaPerson> getPersonByOpenId(@Param("openId") String openId);

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaPointsRecordsMapper.java ファイルの表示

@@ -18,6 +18,6 @@ import org.apache.ibatis.annotations.Param;
18 18
 public interface TaPointsRecordsMapper extends BaseMapper<TaPointsRecords> {
19 19
     IPage<TaPointsRecords> getCustomerPointsList(IPage<TaPointsRecords> page, @Param("personId") String personId);
20 20
 
21
-
21
+    Integer sumPointByPersonId(@Param("personId") String personId);
22 22
 
23 23
 }

+ 5
- 4
src/main/java/com/huiju/estateagents/mapper/TaRecommendCustomerMapper.java ファイルの表示

@@ -10,6 +10,7 @@ import com.huiju.estateagents.excel.*;
10 10
 import org.apache.ibatis.annotations.Mapper;
11 11
 import org.apache.ibatis.annotations.Param;
12 12
 
13
+import java.time.LocalDateTime;
13 14
 import java.util.List;
14 15
 import java.util.Map;
15 16
 
@@ -32,7 +33,7 @@ public interface TaRecommendCustomerMapper extends BaseMapper<TaRecommendCustome
32 33
 
33 34
     TaRecommendCustomer getCustomerById(@Param("customerId")String customerId);
34 35
 
35
-    IPage<TaRecommendCustomer> getCustomerList(IPage<TaRecommendCustomer> page,@Param("building") String building, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel,@Param("entryType") String entryType,@Param("verifyStatus") String verifyStatus,@Param("sex") Integer sex, @Param("orgId") Integer orgId,@Param("status")Integer status, @Param("personBuildingList") List<TaPersonBuilding> personBuildingList,@Param("sceneType") String sceneType);
36
+    IPage<TaRecommendCustomer> getCustomerList(IPage<TaRecommendCustomer> page,@Param("building") String building, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel,@Param("entryType") String entryType,@Param("verifyStatus") String verifyStatus,@Param("sex") Integer sex, @Param("orgId") Integer orgId,@Param("status")Integer status, @Param("personBuildingList") List<TaPersonBuilding> personBuildingList,@Param("sceneType") String sceneType, @Param("startCreateDate") String startCreateDate, @Param("endCreateDate") String endCreateDate);
36 37
     IPage<TaRecommendCustomer> getRecCustomerList(IPage<TaRecommendCustomer> page,@Param("building") String building, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel,@Param("entryType") String entryType,@Param("verifyStatus") String verifyStatus,@Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
37 38
     IPage<TaRecommendCustomer> getRepCustomerList(IPage<TaRecommendCustomer> page,@Param("building") String building, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel,@Param("entryType") String entryType,@Param("verifyStatus") String verifyStatus,@Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
38 39
     IPage<TaPerson> getIndependentAgents(IPage<TaPerson>page, @Param("name") String name, @Param("tel") String tel, @Param("orgId") Integer orgId);
@@ -48,7 +49,7 @@ public interface TaRecommendCustomerMapper extends BaseMapper<TaRecommendCustome
48 49
      * @param personBuildingList
49 50
      * @return
50 51
      */
51
-    IPage<TaPerson> getPublicCustomerList(IPage<TaPerson> page, @Param("name") String name, @Param("tel") String tel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("consultTel") String consultTel, @Param("sceneType") String sceneType,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList,@Param("buildingId") String buildingId);
52
+    IPage<TaPerson> getPublicCustomerList(IPage<TaPerson> page, @Param("name") String name, @Param("tel") String tel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("consultTel") String consultTel, @Param("sceneType") String sceneType,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList,@Param("buildingId") String buildingId, @Param("startCreateDate") String startCreateDate, @Param("endCreateDate") String endCreateDate);
52 53
 
53 54
     /**
54 55
      * 导出数据 获取推荐用户数据
@@ -118,7 +119,7 @@ public interface TaRecommendCustomerMapper extends BaseMapper<TaRecommendCustome
118 119
      * @param consultTel
119 120
      * @return
120 121
      */
121
-    List<PublicCustomerExport> getPublicCustomerExportList(@Param("pageCode") Integer pageCode, @Param("pageSize") Integer pageSize, @Param("name") String name, @Param("tel") String tel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("consultTel")String consultTel);
122
+    List<PublicCustomerExport> getPublicCustomerExportList(@Param("pageCode") Integer pageCode, @Param("pageSize") Integer pageSize, @Param("buildingId")String buildingId, @Param("name") String name, @Param("tel") String tel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("consultTel")String consultTel, @Param("sceneType")String sceneType);
122 123
 
123 124
     /**
124 125
      * 导出数据 私客总数
@@ -152,7 +153,7 @@ public interface TaRecommendCustomerMapper extends BaseMapper<TaRecommendCustome
152 153
      * @param status
153 154
      * @return
154 155
      */
155
-    List<PrivateCustomerExport> getCustomerExportList(@Param("pageCode") Integer pageCode, @Param("pageSize") Integer pageSize, @Param("building") String buildingId, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("status")Integer status,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
156
+    List<PrivateCustomerExport> getCustomerExportList(@Param("pageCode") Integer pageCode, @Param("pageSize") Integer pageSize, @Param("building") String buildingId, @Param("name") String name, @Param("tel") String tel, @Param("consultName") String consultName, @Param("consultTel") String consultTel, @Param("entryType") String entryType, @Param("verifyStatus") String verifyStatus, @Param("sex") Integer sex, @Param("orgId") Integer orgId, @Param("status")Integer status,@Param("sceneType") String sceneType,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
156 157
     
157 158
     /**
158 159
      * 获取我的客户的人数统计

+ 3
- 1
src/main/java/com/huiju/estateagents/service/IStatisticalService.java ファイルの表示

@@ -1,9 +1,11 @@
1 1
 package com.huiju.estateagents.service;
2 2
 
3 3
 import com.huiju.estateagents.base.ResponseBean;
4
+import com.huiju.estateagents.entity.TaPersonBuilding;
4 5
 
5 6
 import java.time.LocalDate;
6 7
 import java.util.Date;
8
+import java.util.List;
7 9
 
8 10
 /**
9 11
  * 数据统计 接口
@@ -105,7 +107,7 @@ public interface IStatisticalService {
105 107
      * @param buildingId
106 108
      * @return
107 109
      */
108
-    ResponseBean selectIntentionUser(Integer pageNum, Integer pageSize, Integer orgId, String buildingId, Integer userId);
110
+    ResponseBean selectIntentionUser(Integer pageNum, Integer pageSize, Integer orgId, String buildingId, List<TaPersonBuilding> taPersonBuildingListByUserId);
109 111
 
110 112
     /**
111 113
      * 用户来源数据 首页

+ 1
- 1
src/main/java/com/huiju/estateagents/service/ITaBuildingService.java ファイルの表示

@@ -68,7 +68,7 @@ public interface ITaBuildingService extends IService<TaBuilding> {
68 68
      * @param parameter
69 69
      * @return
70 70
      */
71
-    ResponseBean buildingAdd(String parameter, Integer orgId);
71
+    ResponseBean buildingAdd(String parameter, Integer orgId, Integer userId);
72 72
 
73 73
     /**
74 74
      * 修改成已发布

+ 4
- 3
src/main/java/com/huiju/estateagents/service/ITaHousingResourcesService.java ファイルの表示

@@ -1,6 +1,5 @@
1 1
 package com.huiju.estateagents.service;
2 2
 
3
-import com.baomidou.mybatisplus.core.metadata.IPage;
4 3
 import com.baomidou.mybatisplus.extension.service.IService;
5 4
 import com.huiju.estateagents.base.ResponseBean;
6 5
 import com.huiju.estateagents.entity.TaBuildingApartment;
@@ -29,7 +28,7 @@ public interface ITaHousingResourcesService extends IService<TaHousingResources>
29 28
      * @param type  为1只展示已发布的房源
30 29
      * @return
31 30
      */
32
-    List<TaHousingResourcesPO> listHousingResources(Integer orgId, String salesBatchId, String startPrice, String endPrice, String apartmentId,String personId,String source );
31
+    List<TaHousingResourcesPO> listHousingResources(Integer orgId, String salesBatchId, String startPrice, String endPrice, String apartmentId, String personId, String source);
33 32
 
34 33
 
35 34
     /* 分页获取房源列表-后台管理端
@@ -95,7 +94,8 @@ public interface ITaHousingResourcesService extends IService<TaHousingResources>
95 94
      * @return
96 95
      */
97 96
     ResponseBean selectPageList(Integer salesBatchId, String buildingId, Integer pageNumber, Integer pageSize, Integer orgId, String termName,
98
-                                String blockName, String unitName, String floorName, String roomName, String apartmentId, Integer status, String houseId, String lockingStatus);
97
+                                String blockName, String unitName, String floorName, String roomName, String apartmentId, Integer status, String houseId, String lockingStatus,
98
+                                String actulStartHot, String actulEndHot);
99 99
 
100 100
     /**
101 101
      * 更新房源信息
@@ -174,6 +174,7 @@ public interface ITaHousingResourcesService extends IService<TaHousingResources>
174 174
 
175 175
     /**
176 176
      * 校验房源的认筹状态
177
+     *
177 178
      * @param houseIds
178 179
      * @param personId
179 180
      * @param orgId

+ 2
- 0
src/main/java/com/huiju/estateagents/service/ITaLiveActivityService.java ファイルの表示

@@ -60,4 +60,6 @@ public interface ITaLiveActivityService extends IService<TaLiveActivity> {
60 60
     ResponseBean getLiveActivityDetailById(String id,Integer orgId);
61 61
 
62 62
     ResponseBean delLiveActivityList(Integer orgId, List<TaLiveActivity> liveActivityList);
63
+
64
+    ResponseBean getDetailById(Integer id);
63 65
 }

+ 1
- 2
src/main/java/com/huiju/estateagents/service/ITaPersonService.java ファイルの表示

@@ -4,7 +4,6 @@ import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
4 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.huiju.estateagents.base.ResponseBean;
6 6
 import com.huiju.estateagents.center.taUser.entity.TaUser;
7
-import com.huiju.estateagents.entity.TaBuildingDynamic;
8 7
 import com.huiju.estateagents.entity.TaPerson;
9 8
 import com.baomidou.mybatisplus.extension.service.IService;
10 9
 import com.huiju.estateagents.entity.TaPersonBuilding;
@@ -26,7 +25,7 @@ public interface ITaPersonService extends IService<TaPerson> {
26 25
 
27 26
     TaPerson updatePersonPhone(String miniOpenid, String phone, Integer orgId);
28 27
 
29
-    IPage<Map<String, Object>> getCardList(int pageNumber, int pageSize, String buildingId, Integer orgId);
28
+    IPage<Map<String, Object>> getCardList(int pageNumber, int pageSize, String buildingId, Integer orgId, TaPerson person);
30 29
 
31 30
     ResponseBean checkPhoneAndPass(String phone, String pass);
32 31
 

+ 2
- 0
src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java ファイルの表示

@@ -69,4 +69,6 @@ public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
69 69
 	 * @param groupActivityId
70 70
 	 */
71 71
 	void saveGroupRecord(TaPerson person, Integer integral, String buildingId, Integer groupActivityId);
72
+
73
+	Integer sumPointByPersonId(String personId);
72 74
 }

+ 16
- 1
src/main/java/com/huiju/estateagents/service/ITaRaiseRecordService.java ファイルの表示

@@ -84,7 +84,22 @@ public interface ITaRaiseRecordService extends IService<TaRaiseRecord> {
84 84
     /**
85 85
      * 发送认筹消息
86 86
      */
87
-    void sendRaiseMsg(Integer raiseRecordId, String personId, String title, String result, String reason,String remark, Boolean isSuccess);
87
+    void sendRaiseMsg(Integer raiseRecordId, String personId, String title, String result, String reason, String remark, Boolean isSuccess);
88 88
 
89
+    /**
90
+     * 减少房源表认筹实际热度值
91
+     *
92
+     * @param raiseRecordId
93
+     * @return
94
+     */
89 95
     Boolean updateForSubtractRaiseHeat(Integer raiseRecordId);
96
+
97
+    /**
98
+     * 更新房源锁定状态
99
+     *
100
+     * @param raiseRecordId
101
+     * @param houseLockingStatus
102
+     * @return
103
+     */
104
+    Boolean updateHouseLockingStatus(Integer raiseRecordId, String houseLockingStatus);
90 105
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java ファイルの表示

@@ -12,6 +12,7 @@ import com.huiju.estateagents.excel.ExcelRecommendCustomer;
12 12
 import com.huiju.estateagents.excel.ReporRecommendCustomer;
13 13
 import io.swagger.models.auth.In;
14 14
 
15
+import java.time.LocalDateTime;
15 16
 import java.util.List;
16 17
 
17 18
 /**
@@ -36,7 +37,7 @@ public interface ITaRecommendCustomerService extends IService<TaRecommendCustome
36 37
 
37 38
     IPage<TaRecommendCustomer> getUnSignedCustomerList(int pageNumber, int pageSize, String building,String personId);
38 39
 
39
-    IPage getCustomerList(Integer status,int pageNumber, int pageSize, String building,String name,String tel,String consultName,String consultTel,String entryType,String verifyStatus,Integer sex, String customerType, Integer orgId,List<TaPersonBuilding> taPersonBuildingList,String sceneType);
40
+    IPage getCustomerList(Integer status,int pageNumber, int pageSize, String building,String name,String tel,String consultName,String consultTel,String entryType,String verifyStatus,Integer sex, String customerType, Integer orgId,List<TaPersonBuilding> taPersonBuildingList,String sceneType, String startCreateDate, String endCreateDate);
40 41
 
41 42
     IPage<TaRecommendCustomer> getRecCustomerList(int pageNumber, int pageSize, String building,String name,String tel,String consultName,String consultTel,String entryType,String verifyStatus,Integer sex, Integer orgId,List<TaPersonBuilding> taPersonBuildingList);
42 43
 

+ 3
- 2
src/main/java/com/huiju/estateagents/service/impl/StatisticalServiceImpl.java ファイルの表示

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.huiju.estateagents.base.ResponseBean;
7 7
 import com.huiju.estateagents.common.CommConstant;
8
+import com.huiju.estateagents.entity.TaPersonBuilding;
8 9
 import com.huiju.estateagents.entity.TaPersonVisitRecord;
9 10
 import com.huiju.estateagents.entity.TdWxDict;
10 11
 import com.huiju.estateagents.exception.EstaException;
@@ -309,11 +310,11 @@ public class StatisticalServiceImpl implements IStatisticalService {
309 310
     }
310 311
 
311 312
     @Override
312
-    public ResponseBean selectIntentionUser(Integer pageNum, Integer pageSize, Integer orgId, String buildingId, Integer userId) {
313
+    public ResponseBean selectIntentionUser(Integer pageNum, Integer pageSize, Integer orgId, String buildingId, List<TaPersonBuilding> taPersonBuildingListByUserId) {
313 314
         ResponseBean responseBean = new ResponseBean();
314 315
 
315 316
         IPage<Map<String, Object>> pg = new Page<>(pageNum, pageSize);
316
-        IPage<Map<String, Object>> page = taPersonIntentionRecordMapper.selectIntentionUser(pg, orgId, buildingId, userId);
317
+        IPage<Map<String, Object>> page = taPersonIntentionRecordMapper.selectIntentionUser(pg, orgId, buildingId, taPersonBuildingListByUserId);
317 318
 
318 319
         responseBean.addSuccess(page);
319 320
         return responseBean;

+ 19
- 1
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java ファイルの表示

@@ -63,6 +63,9 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
63 63
     @Autowired
64 64
     TaPersonMapper taPersonMapper;
65 65
 
66
+    @Autowired
67
+    TaUserMapper taUserMapper;
68
+
66 69
     @Autowired
67 70
     TdCityMapper tdCityMapper;
68 71
 
@@ -111,6 +114,9 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
111 114
     @Autowired
112 115
     private ITaSalesBatchService iTaSalesBatchService;
113 116
 
117
+    @Autowired
118
+    private TaPersonBuildingMapper taPersonBuildingMapper;
119
+
114 120
     @Override
115 121
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId, List<TaPersonBuilding> taPersonBuildingList) {
116 122
         Page<TaBuilding> page = new Page<>();
@@ -253,6 +259,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
253 259
         QueryWrapper<TaBuildingApartment> AppointmentQueryWrapper = new QueryWrapper<>();
254 260
         AppointmentQueryWrapper.eq("building_id", id);
255 261
         AppointmentQueryWrapper.eq("status", 1);
262
+        AppointmentQueryWrapper.orderByDesc("order_no");
256 263
         AppointmentQueryWrapper.orderByDesc("create_date");
257 264
         List<TaBuildingApartment> appoint = taBuildingApartmentMapper.selectList(AppointmentQueryWrapper);
258 265
         for (TaBuildingApartment apar : appoint) {
@@ -488,7 +495,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
488 495
     }
489 496
 
490 497
     @Override
491
-    public ResponseBean buildingAdd(String parameter, Integer orgId) {
498
+    public ResponseBean buildingAdd(String parameter, Integer orgId, Integer userId) {
492 499
         ResponseBean responseBean = new ResponseBean();
493 500
 
494 501
         JSONObject object = JSONObject.parseObject(parameter);
@@ -524,6 +531,14 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
524 531
             tdCityMapper.updateById(city);
525 532
         }
526 533
 
534
+        //新建项目以后自动授权给当前用户
535
+        TaUser taUser = taUserMapper.selectById(userId);
536
+        TaPersonBuilding taPersonBuilding = new TaPersonBuilding();
537
+        taPersonBuilding.setBuildingId(building.getBuildingId());
538
+        taPersonBuilding.setUserId(taUser.getUserId());
539
+        taPersonBuilding.setCreateDate(LocalDateTime.now());
540
+        taPersonBuildingMapper.insert(taPersonBuilding);
541
+
527 542
         // 项目主图
528 543
         String imgStr = object.getString("img");
529 544
         List<TaBuildingImg> buildingImgs = JSONObject.parseArray(imgStr, TaBuildingImg.class);
@@ -897,6 +912,8 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
897 912
         // 楼盘户型
898 913
         QueryWrapper<TaBuildingApartment> buildingApartmentQueryWrapper = new QueryWrapper<>();
899 914
         buildingApartmentQueryWrapper.eq("building_id", building.getBuildingId());
915
+        buildingApartmentQueryWrapper.orderByDesc("order_no");
916
+        buildingApartmentQueryWrapper.orderByDesc("create_date");
900 917
         List<TaBuildingApartment> buildingApartmentList = taBuildingApartmentMapper.selectList(buildingApartmentQueryWrapper);
901 918
 
902 919
         // 楼盘户型图
@@ -920,6 +937,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
920 937
         buildingApartmentQueryWrapper.eq("building_id", id);
921 938
         buildingApartmentQueryWrapper.eq("status", 1);
922 939
         buildingApartmentQueryWrapper.eq(org.apache.commons.lang3.StringUtils.isNotBlank(apartmentType), "apartment_type", apartmentType);
940
+        buildingApartmentQueryWrapper.orderByDesc("order_no");
923 941
         buildingApartmentQueryWrapper.orderByDesc("create_date");
924 942
         List<TaBuildingApartment> buildingApartment = taBuildingApartmentMapper.selectList(buildingApartmentQueryWrapper);
925 943
         buildingApartment.forEach(e -> {

+ 54
- 54
src/main/java/com/huiju/estateagents/service/impl/TaHousingResourcesServiceImpl.java ファイルの表示

@@ -24,7 +24,6 @@ import org.springframework.beans.factory.annotation.Autowired;
24 24
 import org.springframework.stereotype.Service;
25 25
 import org.springframework.transaction.annotation.Transactional;
26 26
 import org.springframework.web.multipart.MultipartFile;
27
-import sun.util.locale.LocaleUtils;
28 27
 
29 28
 import java.math.BigDecimal;
30 29
 import java.time.LocalDateTime;
@@ -394,10 +393,11 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
394 393
      */
395 394
     @Override
396 395
     public ResponseBean selectPageList(Integer salesBatchId, String buildingId, Integer pageNumber, Integer pageSize, Integer orgId, String termName, String blockName,
397
-                                       String unitName, String floorName, String roomName, String apartmentId, Integer status, String houseId, String lockingStatus) {
396
+                                       String unitName, String floorName, String roomName, String apartmentId, Integer status, String houseId, String lockingStatus,
397
+                                       String actulStartHot, String actulEndHot) {
398 398
         IPage<TaHousingResources> pg = new Page<>(pageNumber, pageSize);
399 399
         IPage<TaHousingResources> pageData = taHousingResourcesMapper.getHouseResourceList(pg, salesBatchId, buildingId, orgId, termName, blockName, unitName,
400
-                floorName, roomName, apartmentId, status, houseId, lockingStatus);
400
+                floorName, roomName, apartmentId, status, houseId, lockingStatus, actulStartHot, actulEndHot);
401 401
         return ResponseBean.success(pageData);
402 402
     }
403 403
 
@@ -662,10 +662,10 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
662 662
             return responseBean;
663 663
         }
664 664
 
665
-        QueryWrapper<TaRaiseHouse> taRaiseHouseQueryWrapper = new QueryWrapper<>();
666
-        taRaiseHouseQueryWrapper.eq("raise_record_id", raiseRecordId);
667
-        taRaiseHouseQueryWrapper.eq("raise_house_id", raiseHouseId);
668
-        TaRaiseHouse taRaiseHouse = taRaiseHouseService.getOne(taRaiseHouseQueryWrapper);
665
+//        QueryWrapper<TaRaiseHouse> taRaiseHouseQueryWrapper = new QueryWrapper<>();
666
+//        taRaiseHouseQueryWrapper.eq("raise_record_id", raiseRecordId);
667
+//        taRaiseHouseQueryWrapper.eq("raise_house_id", raiseHouseId);
668
+//        TaRaiseHouse taRaiseHouse = taRaiseHouseService.getOne(taRaiseHouseQueryWrapper);
669 669
 
670 670
         QueryWrapper<TaRaiseRecord> taRaiseRecordQueryWrapper = new QueryWrapper<>();
671 671
         taRaiseRecordQueryWrapper.eq("raise_record_id", raiseRecordId);
@@ -673,64 +673,64 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
673 673
 
674 674
         // 更新为锁定状态
675 675
         if ("locked".equals(type)) {
676
-                // 校验当前房源状态
677
-                if ("locked".equals(po.getHouseLockingStatus())){
678
-                    responseBean.addError("房源已被锁定");
679
-                    return responseBean;
680
-                }
676
+            // 校验当前房源状态
677
+            if ("locked".equals(po.getHouseLockingStatus())) {
678
+                responseBean.addError("房源已被锁定");
679
+                return responseBean;
680
+            }
681 681
 
682
-                TaHousingResources housingResources = new TaHousingResources();
683
-                housingResources.setHouseId(po.getHouseId());
684
-                housingResources.setHouseLockingStatus("locked");
685
-                housingResources.setHouseLockingPerson(personId);
686
-                housingResources.setUpdateDate(LocalDateTime.now());
687
-                housingResources.setHouseLockingPerson(raiseRecord.getPersonId());
688
-                updateById(housingResources);
689
-
690
-                //更新认筹单房源锁定状态
691
-                TaRaiseRecord taRaiseRecord = new TaRaiseRecord();
692
-                taRaiseRecord.setRaiseRecordId(raiseRecordId);
693
-                taRaiseRecord.setHouseLockingStatus("locked");
694
-                taRaiseRecordMapper.updateById(taRaiseRecord);
695
-
696
-                // 更新关联表状态
682
+            TaHousingResources housingResources = new TaHousingResources();
683
+            housingResources.setHouseId(po.getHouseId());
684
+            housingResources.setHouseLockingStatus("locked");
685
+            housingResources.setHouseLockingPerson(personId);
686
+            housingResources.setUpdateDate(LocalDateTime.now());
687
+            housingResources.setHouseLockingPerson(raiseRecord.getPersonId());
688
+            updateById(housingResources);
689
+
690
+            //更新认筹单房源锁定状态
691
+            TaRaiseRecord taRaiseRecord = new TaRaiseRecord();
692
+            taRaiseRecord.setRaiseRecordId(raiseRecordId);
693
+            taRaiseRecord.setHouseLockingStatus("locked");
694
+            taRaiseRecordMapper.updateById(taRaiseRecord);
695
+
696
+            // 更新关联表状态
697 697
 //                TaRaiseHouse raiseHouse = new TaRaiseHouse();
698 698
 //                raiseHouse.setRaiseHouseId(raiseHouseId);
699 699
 //                raiseHouse.setHouseLockingStatus("locked");
700 700
 //            taRaiseHouseService.updateById(raiseHouse);
701
-                responseBean.addSuccess(taRaiseRecordMapper.updateById(taRaiseRecord));
702
-                return responseBean;
701
+            responseBean.addSuccess(taRaiseRecordMapper.updateById(taRaiseRecord));
702
+            return responseBean;
703 703
         }
704 704
 
705 705
         // 更新为解锁状态
706 706
         if ("unlocked".equals(type)) {
707
-                // 校验当前房源状态
708
-                if ("unlocked".equals(po.getHouseLockingStatus())){
709
-                    responseBean.addError("房源已被解锁");
710
-                    return responseBean;
711
-                }
707
+            // 校验当前房源状态
708
+            if ("unlocked".equals(po.getHouseLockingStatus())) {
709
+                responseBean.addError("房源已被解锁");
710
+                return responseBean;
711
+            }
712 712
 
713
-                TaHousingResources housingResources = new TaHousingResources();
714
-                housingResources.setHouseId(po.getHouseId());
715
-                housingResources.setHouseLockingStatus("unlocked");
716
-                housingResources.setHouseLockingPerson("");
717
-                housingResources.setUpdateDate(LocalDateTime.now());
718
-                updateById(housingResources);
713
+            TaHousingResources housingResources = new TaHousingResources();
714
+            housingResources.setHouseId(po.getHouseId());
715
+            housingResources.setHouseLockingStatus("unlocked");
716
+            housingResources.setHouseLockingPerson("");
717
+            housingResources.setUpdateDate(LocalDateTime.now());
718
+            updateById(housingResources);
719 719
 
720
-                //更新认筹单房源锁定状态
721
-                TaRaiseRecord taRaiseRecord = new TaRaiseRecord();
722
-                taRaiseRecord.setRaiseRecordId(raiseRecordId);
723
-                taRaiseRecord.setHouseLockingStatus("unlocked");
724
-                taRaiseRecordMapper.updateById(taRaiseRecord);
720
+            //更新认筹单房源锁定状态
721
+            TaRaiseRecord taRaiseRecord = new TaRaiseRecord();
722
+            taRaiseRecord.setRaiseRecordId(raiseRecordId);
723
+            taRaiseRecord.setHouseLockingStatus("unlocked");
724
+            taRaiseRecordMapper.updateById(taRaiseRecord);
725 725
 
726
-                // 更新关联表状态
726
+            // 更新关联表状态
727 727
 //                TaRaiseHouse raiseHouse = new TaRaiseHouse();
728 728
 //                raiseHouse.setRaiseHouseId(raiseHouseId);
729 729
 ////                raiseHouse.setHouseLockingStatus("unlocked");
730 730
 ////                raiseHouse.setPersonId("");
731 731
 ////                raiseHouse.setPersonName("");
732 732
 //                responseBean.addSuccess(taRaiseHouseService.updateById(raiseHouse));
733
-                return responseBean;
733
+            return responseBean;
734 734
         }
735 735
         responseBean.addError("fail");
736 736
         return responseBean;
@@ -751,24 +751,24 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
751 751
         TaHousingResources taHousingResources = taHousingResourcesMapper.selectById(houseIdArr[0]);
752 752
         //通过销售批次信息获取认筹信息
753 753
         QueryWrapper<TaRaise> taRaiseQueryWrapper = new QueryWrapper<>();
754
-        taRaiseQueryWrapper.eq("org_id",orgId);
755
-        taRaiseQueryWrapper.eq("sales_batch_id",taHousingResources.getSalesBatchId());
756
-        taRaiseQueryWrapper.eq("building_id",taHousingResources.getBuildingId());
757
-        taRaiseQueryWrapper.eq("status",CommConstant.STATUS_NORMAL);
754
+        taRaiseQueryWrapper.eq("org_id", orgId);
755
+        taRaiseQueryWrapper.eq("sales_batch_id", taHousingResources.getSalesBatchId());
756
+        taRaiseQueryWrapper.eq("building_id", taHousingResources.getBuildingId());
757
+        taRaiseQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
758 758
         TaRaise taRaise = taRaiseMapper.selectOne(taRaiseQueryWrapper);
759 759
         if (null == taRaise) {
760 760
             throw new Exception("认筹单已经作废");
761 761
         }
762 762
         //校验房源是否同一批次
763
-        for (String houseId : houseIdArr){
763
+        for (String houseId : houseIdArr) {
764 764
             TaHousingResources taHousingResourcesChecked = taHousingResourcesMapper.selectById(houseId);
765
-            if (!taHousingResources.getSalesBatchId().equals(taHousingResourcesChecked.getSalesBatchId())){
765
+            if (!taHousingResources.getSalesBatchId().equals(taHousingResourcesChecked.getSalesBatchId())) {
766 766
                 throw new Exception("非同一批次房源");
767 767
             }
768 768
             if (taHousingResourcesChecked.getStatus() != CommConstant.STATUS_NORMAL) {
769 769
                 throw new Exception("其中有房源已被取消发布");
770 770
             }
771
-            if (taRaise.getHouseLockingType().equals(CommConstant.HOUSE_LOCKING_TYPE_AUTO) && CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(taHousingResourcesChecked.getHouseLockingStatus())){
771
+            if (taRaise.getHouseLockingType().equals(CommConstant.HOUSE_LOCKING_TYPE_AUTO) && CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(taHousingResourcesChecked.getHouseLockingStatus())) {
772 772
                 throw new Exception("房源已被其他客户锁定");
773 773
             }
774 774
             if (taRaise.getNeedPreselection()) {

+ 7
- 0
src/main/java/com/huiju/estateagents/service/impl/TaLiveActivityServiceImpl.java ファイルの表示

@@ -186,4 +186,11 @@ public class TaLiveActivityServiceImpl extends ServiceImpl<TaLiveActivityMapper,
186 186
         taLiveActivityMapper.updateLiveActivityStatus(orgId, liveActivityList);
187 187
         return responseBean;
188 188
     }
189
+
190
+    @Override
191
+    public ResponseBean getDetailById(Integer id) {
192
+        ResponseBean responseBean = new ResponseBean();
193
+        responseBean.addSuccess(taLiveActivityMapper.getDetailById(id));
194
+        return responseBean;
195
+    }
189 196
 }

+ 15
- 2
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java ファイルの表示

@@ -202,13 +202,26 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
202 202
     }
203 203
 
204 204
     @Override
205
-    public IPage<Map<String, Object>> getCardList(int pageNumber, int pageSize,String buildingId,Integer orgId) {
205
+    public IPage<Map<String, Object>> getCardList(int pageNumber, int pageSize, String buildingId, Integer orgId, TaPerson person) {
206
+        // 获取当前人员的推荐置业顾问ID
207
+        QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
208
+        queryWrapper.eq("org_id", orgId);
209
+        queryWrapper.eq("person_id", person.getPersonId());
210
+        queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
211
+        queryWrapper.last("limit 1");
212
+        TaRecommendCustomer cust = taRecommendCustomerMapper.selectOne(queryWrapper);
213
+        String consultant = "";
214
+        if (cust != null) {
215
+            // 有可能是 personId, 有可能是 userId
216
+            consultant = cust.getRealtyConsultant();
217
+        }
218
+
206 219
         Page<Map<String, Object>> page = new Page<>();
207 220
         page.setSize(pageSize);
208 221
         page.setPages(pageNumber);
209 222
         page.setCurrent(pageNumber);
210 223
 
211
-        List<Map<String, Object>> result = taPersonMapper.selectCardList(page, CommConstant.PERSON_REALTY_CONSULTANT, CommConstant.STATUS_NORMAL,buildingId,orgId);
224
+        List<Map<String, Object>> result = taPersonMapper.selectCardList(page, CommConstant.PERSON_REALTY_CONSULTANT, CommConstant.STATUS_NORMAL,buildingId,orgId, consultant);
212 225
         page.setRecords(result);
213 226
 
214 227
         return page;

+ 2
- 2
src/main/java/com/huiju/estateagents/service/impl/TaPersonVisitRecordServiceImpl.java ファイルの表示

@@ -159,8 +159,8 @@ public class TaPersonVisitRecordServiceImpl extends ServiceImpl<TaPersonVisitRec
159 159
 			taPersonQueryWrapper.eq("user_id", e.getSharePersonId());
160 160
 			TaPerson taPersonUser = taPersonMapper.selectOne(taPersonQueryWrapper);
161 161
 
162
-			e.setShareName(userShareInfo == null ? taPersonUser.getNickname() : userShareInfo.getNickname());
163
-			e.setShareTel(userShareInfo == null ? taPersonUser.getPhone() :userShareInfo.getPhone());
162
+			e.setShareName((userShareInfo == null &&  taPersonUser == null) ? null : userShareInfo == null ? taPersonUser.getNickname() : userShareInfo.getNickname());
163
+			e.setShareTel((userShareInfo == null &&  taPersonUser == null) ? null : userShareInfo == null ? taPersonUser.getPhone(): userShareInfo.getPhone());
164 164
 
165 165
 			if (CommConstant.H5_SHARE.equals(e.getEventType())) {
166 166
 				e.setActivityName(e.getDrainageName());

+ 386
- 379
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java ファイルの表示

@@ -31,277 +31,279 @@ import java.util.List;
31 31
  */
32 32
 @Service
33 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 code
46
-	 * @return
47
-	 */
48
-	@Override
49
-	public Integer getRulePoints(String code,Integer orgId) {
50
-		QueryWrapper<TdPointsRules> tdPointsRulesQueryWrapper = new QueryWrapper<>();
51
-		tdPointsRulesQueryWrapper.eq("code",code);
52
-		tdPointsRulesQueryWrapper.eq("org_id",orgId);
53
-		tdPointsRulesQueryWrapper.eq("status",CommConstant.STATUS_NORMAL);
54
-		TdPointsRules rule = tdPointsRulesMapper.selectOne(tdPointsRulesQueryWrapper);
55
-		if (null == rule) {
56
-			return 0;
57
-		}
58
-
59
-		Integer status = rule.getStatus();
60
-		return null != status && status.equals(CommConstant.POINTS_RULE_ON) ? rule.getPointsAmount() : 0;
61
-	}
62
-
63
-	private boolean isPointsRecordsExist(String personId, String changeType, String changeParams) {
64
-		QueryWrapper<TaPointsRecords> query = new QueryWrapper<>();
65
-		query.eq("person_id", personId)
66
-			.eq("change_type", changeType)
67
-			.like(!StringUtils.isEmpty(changeParams), "change_params", changeParams)
68
-			.eq("status", CommConstant.STATUS_NORMAL);
69
-
70
-		Integer count = taPointsRecordsMapper.selectCount(query);
71
-		return null != count && count > 0;
72
-	}
73
-
74
-	@Override
75
-	public void sharePoints(TaShare taShare, Integer orgId) {
76
-		//
77
-		String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
78
-		
79
-		// 是否开启积分规则
80
-		Integer pointsAmount = getRulePoints(changeType,orgId);
81
-		if (pointsAmount == 0) {
82
-			return;
83
-		}
84
-
85
-		// 已经领取过的不会再次领取
86
-		String[] params = {
87
-				"shareId="+String.valueOf(taShare.getShareId()),
88
-				"openUser="+taShare.getOpenUser().getPersonId()
89
-		};
90
-		String changeParams = String.join("&", params);
91
-		boolean hasJoined = isPointsRecordsExist(taShare.getPersonId(), changeType, changeParams);
92
-		if (hasJoined) {
93
-			return;
94
-		}
95
-
96
-		// 发放积分
97
-		TaPerson person = taPersonMapper.selectById(taShare.getPersonId());
98
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
99
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
100
-		}
101
-	}
102
-
103
-	@Override
104
-	public void sharePosterAll(String recommenderId, Integer orgId) {
105
-		String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
106
-		// 是否开启积分规则
107
-		Integer pointsAmount = getRulePoints(changeType,orgId);
108
-		if (pointsAmount == 0) {
109
-			return;
110
-		}
111
-
112
-		String[] params = {
113
-				"openUser="+recommenderId
114
-		};
115
-		String changeParams = String.join("&", params);
116
-
117
-		// 发放积分
118
-		TaPerson person = taPersonMapper.selectById(recommenderId);
119
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
120
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
121
-		}
122
-	}
123
-
124
-	@Override
125
-	public void checkinPoints(TaPersonSign taPersonSign,Integer orgId) {
126
-		//
127
-		String changeType = CommConstant.POINTS_CHANGE_CHECKIN;
128
-		
129
-		// 是否开启积分规则
130
-		Integer pointsAmount = getRulePoints(changeType,orgId);
131
-		if (pointsAmount == 0) {
132
-			return;
133
-		}
134
-
135
-		// 已经领取过的不会再次领取
136
-		List<String> params = new ArrayList<String>() {{
137
-			add("date="+DateUtils.today());
138
-			add("user="+taPersonSign.getPerson().getPersonId());
139
-		}};
140
-		String changeParams = String.join("&", params);
141
-		boolean hasJoined = isPointsRecordsExist(taPersonSign.getPerson().getPersonId(), changeType, changeParams);
142
-		if (hasJoined) {
143
-			return;
144
-		}
145
-
146
-		// 添加参数
147
-		params.add("recId="+taPersonSign.getRecId());
148
-		changeParams = String.join("&", params);
149
-
150
-
151
-		// 增加积分
152
-		// 1-7 天积分 1-7, 超过7天按 7 个积分算
34
+
35
+    @Autowired
36
+    TaPersonMapper taPersonMapper;
37
+
38
+    @Autowired
39
+    private TdPointsRulesMapper tdPointsRulesMapper;
40
+
41
+    @Autowired
42
+    private TaPointsRecordsMapper taPointsRecordsMapper;
43
+
44
+    /**
45
+     * 获取规则积分, 0 代表未启用
46
+     *
47
+     * @param code
48
+     * @return
49
+     */
50
+    @Override
51
+    public Integer getRulePoints(String code, Integer orgId) {
52
+        QueryWrapper<TdPointsRules> tdPointsRulesQueryWrapper = new QueryWrapper<>();
53
+        tdPointsRulesQueryWrapper.eq("code", code);
54
+        tdPointsRulesQueryWrapper.eq("org_id", orgId);
55
+        tdPointsRulesQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
56
+        TdPointsRules rule = tdPointsRulesMapper.selectOne(tdPointsRulesQueryWrapper);
57
+        if (null == rule) {
58
+            return 0;
59
+        }
60
+
61
+        Integer status = rule.getStatus();
62
+        return null != status && status.equals(CommConstant.POINTS_RULE_ON) ? rule.getPointsAmount() : 0;
63
+    }
64
+
65
+    private boolean isPointsRecordsExist(String personId, String changeType, String changeParams) {
66
+        QueryWrapper<TaPointsRecords> query = new QueryWrapper<>();
67
+        query.eq("person_id", personId)
68
+                .eq("change_type", changeType)
69
+                .like(!StringUtils.isEmpty(changeParams), "change_params", changeParams)
70
+                .eq("status", CommConstant.STATUS_NORMAL);
71
+
72
+        Integer count = taPointsRecordsMapper.selectCount(query);
73
+        return null != count && count > 0;
74
+    }
75
+
76
+    @Override
77
+    public void sharePoints(TaShare taShare, Integer orgId) {
78
+        //
79
+        String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
80
+
81
+        // 是否开启积分规则
82
+        Integer pointsAmount = getRulePoints(changeType, orgId);
83
+        if (pointsAmount == 0) {
84
+            return;
85
+        }
86
+
87
+        // 已经领取过的不会再次领取
88
+        String[] params = {
89
+                "shareId=" + String.valueOf(taShare.getShareId()),
90
+                "openUser=" + taShare.getOpenUser().getPersonId()
91
+        };
92
+        String changeParams = String.join("&", params);
93
+        boolean hasJoined = isPointsRecordsExist(taShare.getPersonId(), changeType, changeParams);
94
+        if (hasJoined) {
95
+            return;
96
+        }
97
+
98
+        // 发放积分
99
+        TaPerson person = taPersonMapper.selectById(taShare.getPersonId());
100
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
101
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
102
+        }
103
+    }
104
+
105
+    @Override
106
+    public void sharePosterAll(String recommenderId, Integer orgId) {
107
+        String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
108
+        // 是否开启积分规则
109
+        Integer pointsAmount = getRulePoints(changeType, orgId);
110
+        if (pointsAmount == 0) {
111
+            return;
112
+        }
113
+
114
+        String[] params = {
115
+                "openUser=" + recommenderId
116
+        };
117
+        String changeParams = String.join("&", params);
118
+
119
+        // 发放积分
120
+        TaPerson person = taPersonMapper.selectById(recommenderId);
121
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
122
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
123
+        }
124
+    }
125
+
126
+    @Override
127
+    public void checkinPoints(TaPersonSign taPersonSign, Integer orgId) {
128
+        //
129
+        String changeType = CommConstant.POINTS_CHANGE_CHECKIN;
130
+
131
+        // 是否开启积分规则
132
+        Integer pointsAmount = getRulePoints(changeType, orgId);
133
+        if (pointsAmount == 0) {
134
+            return;
135
+        }
136
+
137
+        // 已经领取过的不会再次领取
138
+        List<String> params = new ArrayList<String>() {{
139
+            add("date=" + DateUtils.today());
140
+            add("user=" + taPersonSign.getPerson().getPersonId());
141
+        }};
142
+        String changeParams = String.join("&", params);
143
+        boolean hasJoined = isPointsRecordsExist(taPersonSign.getPerson().getPersonId(), changeType, changeParams);
144
+        if (hasJoined) {
145
+            return;
146
+        }
147
+
148
+        // 添加参数
149
+        params.add("recId=" + taPersonSign.getRecId());
150
+        changeParams = String.join("&", params);
151
+
152
+
153
+        // 增加积分
154
+        // 1-7 天积分 1-7, 超过7天按 7 个积分算
153 155
 //		Integer durationDays = taPersonSign.getDurationDays();
154 156
 //		int points = durationDays >= 7 ? 7 : durationDays;
155 157
 
156
-		// 发放积分
157
-		TaPerson person = taPersonMapper.selectById(taPersonSign.getPersonId());
158
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
159
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
160
-		}
161
-	}
162
-
163
-	@Override
164
-	public void checkinActivityPoints(TaActivityDynamicEnlist taActivityDynamicEnlist, Integer orgId){
165
-		String changeType =CommConstant.POINTS_CHANGE_ACTIVITY_CHECKIN;
166
-		// 是否开启积分规则
167
-		Integer pointsAmount = getRulePoints(changeType,orgId);
168
-		if (pointsAmount == 0) {
169
-			return;
170
-		}
171
-		
172
-		// 已经领取过的不会再次领取
173
-		List<String> params = new ArrayList<String>() {{
174
-			add("user="+taActivityDynamicEnlist.getPersonId());
175
-			add("targetId="+taActivityDynamicEnlist.getEnlistId().toString());
176
-		}};
177
-		String changeParams = String.join("&", params);
178
-		boolean hasJoined = isPointsRecordsExist(taActivityDynamicEnlist.getPersonId(), changeType, changeParams);
179
-		if (hasJoined) {
180
-			return;
181
-		}
182
-		// 添加参数
183
-		params.add("enlistId="+taActivityDynamicEnlist.getEnlistId());
184
-		changeParams = String.join("&", params);
185
-
186
-		// 发放积分
187
-		TaPerson person = taPersonMapper.selectById(taActivityDynamicEnlist.getPersonId());
188
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
189
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
190
-		}
191
-	}
192
-
193
-	@Override
194
-	public void signUpPoints(TaPerson taPerson, Integer orgId) {
195
-		//
196
-		String changeType = CommConstant.POINTS_CHANGE_SIGNUP_AGENT;
197
-		// 是否开启积分规则
198
-		Integer pointsAmount = getRulePoints(changeType,orgId);
199
-		if (pointsAmount == 0) {
200
-			return;
201
-		}
202
-
203
-		// 已经领取过的不会再次领取
204
-		List<String> params = new ArrayList<String>() {{
205
-			add("user="+taPerson.getPersonId());
206
-		}};
207
-		String changeParams = String.join("&", params);
208
-		boolean hasJoined = isPointsRecordsExist(taPerson.getPersonId(), changeType, changeParams);
209
-		if (hasJoined) {
210
-			return;
211
-		}
212
-
213
-		// 发放积分
214
-		if (savePoints(taPerson, changeType, changeParams, pointsAmount, orgId)) {
215
-			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
216
-		}
217
-	}
218
-
219
-	@Override
220
-	public void recommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId) {
221
-		//
222
-		String changeType = CommConstant.POINTS_CHANGE_RECOMMEND_CUSTOMER;
223
-		
224
-		// 是否开启积分规则
225
-		Integer pointsAmount = getRulePoints(changeType,orgId);
226
-		if (pointsAmount == 0) {
227
-			return;
228
-		}
229
-
230
-		// 已经领取过的不会再次领取
231
-		List<String> params = new ArrayList<String>() {{
232
-			// 推荐人
233
-			add("person="+taRecommendCustomer.getRecommendPerson());
234
-			// 推荐客户手机
235
-			add("phone="+taRecommendCustomer.getPhone());
236
-		}};
237
-		String changeParams = String.join("&", params);
238
-		boolean hasJoined = isPointsRecordsExist(taRecommendCustomer.getRecommendPerson(), changeType, changeParams);
239
-		if (hasJoined) {
240
-			return;
241
-		}
242
-
243
-		// 发放积分
244
-		TaPerson taPerson = taPersonMapper.getById(taRecommendCustomer.getRecommendPerson());
245
-		if (null != taPerson && savePoints(taPerson, changeType, changeParams, pointsAmount, orgId)) {
246
-			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
247
-		}
248
-	}
249
-
250
-	@Override
251
-	public IPage<TaPointsRecords> getWxRecords(Integer pageNum, Integer pageSize,String personId){
252
-		IPage<TaPointsRecords> pg = new Page<>(pageNum, pageSize);
253
-		return taPointsRecordsMapper.getCustomerPointsList(pg,personId);
254
-	}
255
-
256
-	@Override
257
-	public void consumeGoodsPoints(TaGoods taGoods, Integer orgId) {
258
-		Integer minusPoints = taGoods.getPointPrice();
259
-		if (null == minusPoints || minusPoints <= 0) {
260
-			return;
261
-		}
262
-
263
-		TaPerson taPerson = taGoods.getExchanger();
264
-		Integer origPoints = taPerson.getPoints();
265
-		if (null == origPoints) {
266
-			origPoints = 0;
267
-		}
268
-
269
-		// 积分不足
270
-		if (minusPoints > origPoints) {
271
-			return;
272
-		}
273
-
274
-		String[] params = {
275
-				"person="+taPerson.getPersonId(),
276
-				"goods="+String.valueOf(taGoods.getGoodsId()),
277
-				"points="+String.valueOf(minusPoints)
278
-		};
279
-		String changeParams = String.join("&", params);
280
-
281
-		// 发放积分
282
-		Integer pointsAmount = 0 - minusPoints;
283
-		if (savePoints(taPerson, CommConstant.POINTS_CHANGE_GOODS, changeParams, pointsAmount, orgId)) {
284
-			taPersonMapper.setFieldIncrement(taPerson.getPersonId(), "points", pointsAmount);
285
-		}
286
-	}
287
-
288
-	private boolean savePoints(TaPerson person, String changeType, String changeParams, Integer pointsAmount, Integer orgId) {
289
-		if (null == person){
290
-			return true;
291
-		}
292
-		TaPointsRecords taPointsRecords = new TaPointsRecords();
293
-		taPointsRecords.setPersonId(person.getPersonId());
294
-		taPointsRecords.setPersonName(StringUtils.ifNull(person.getName(),person.getNickname()));
295
-		taPointsRecords.setPersonType(person.getPersonType());
296
-		taPointsRecords.setPointsAmount(pointsAmount);
297
-		taPointsRecords.setChangeType(changeType);
298
-		taPointsRecords.setChangeParams(changeParams);
299
-		taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
300
-		taPointsRecords.setCreateDate(LocalDateTime.now());
301
-		taPointsRecords.setOrgId(orgId);
302
-
303
-		return taPointsRecordsMapper.insert(taPointsRecords) > 0;
304
-	}
158
+        // 发放积分
159
+        TaPerson person = taPersonMapper.selectById(taPersonSign.getPersonId());
160
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
161
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
162
+        }
163
+    }
164
+
165
+    @Override
166
+    public void checkinActivityPoints(TaActivityDynamicEnlist taActivityDynamicEnlist, Integer orgId) {
167
+        String changeType = CommConstant.POINTS_CHANGE_ACTIVITY_CHECKIN;
168
+        // 是否开启积分规则
169
+        Integer pointsAmount = getRulePoints(changeType, orgId);
170
+        if (pointsAmount == 0) {
171
+            return;
172
+        }
173
+
174
+        // 已经领取过的不会再次领取
175
+        List<String> params = new ArrayList<String>() {{
176
+            add("user=" + taActivityDynamicEnlist.getPersonId());
177
+            add("targetId=" + taActivityDynamicEnlist.getEnlistId().toString());
178
+        }};
179
+        String changeParams = String.join("&", params);
180
+        boolean hasJoined = isPointsRecordsExist(taActivityDynamicEnlist.getPersonId(), changeType, changeParams);
181
+        if (hasJoined) {
182
+            return;
183
+        }
184
+        // 添加参数
185
+        params.add("enlistId=" + taActivityDynamicEnlist.getEnlistId());
186
+        changeParams = String.join("&", params);
187
+
188
+        // 发放积分
189
+        TaPerson person = taPersonMapper.selectById(taActivityDynamicEnlist.getPersonId());
190
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
191
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
192
+        }
193
+    }
194
+
195
+    @Override
196
+    public void signUpPoints(TaPerson taPerson, Integer orgId) {
197
+        //
198
+        String changeType = CommConstant.POINTS_CHANGE_SIGNUP_AGENT;
199
+        // 是否开启积分规则
200
+        Integer pointsAmount = getRulePoints(changeType, orgId);
201
+        if (pointsAmount == 0) {
202
+            return;
203
+        }
204
+
205
+        // 已经领取过的不会再次领取
206
+        List<String> params = new ArrayList<String>() {{
207
+            add("user=" + taPerson.getPersonId());
208
+        }};
209
+        String changeParams = String.join("&", params);
210
+        boolean hasJoined = isPointsRecordsExist(taPerson.getPersonId(), changeType, changeParams);
211
+        if (hasJoined) {
212
+            return;
213
+        }
214
+
215
+        // 发放积分
216
+        if (savePoints(taPerson, changeType, changeParams, pointsAmount, orgId)) {
217
+            taPersonMapper.setPointsIncrement(taPerson.getPersonId(), pointsAmount);
218
+        }
219
+    }
220
+
221
+    @Override
222
+    public void recommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId) {
223
+        //
224
+        String changeType = CommConstant.POINTS_CHANGE_RECOMMEND_CUSTOMER;
225
+
226
+        // 是否开启积分规则
227
+        Integer pointsAmount = getRulePoints(changeType, orgId);
228
+        if (pointsAmount == 0) {
229
+            return;
230
+        }
231
+
232
+        // 已经领取过的不会再次领取
233
+        List<String> params = new ArrayList<String>() {{
234
+            // 推荐人
235
+            add("person=" + taRecommendCustomer.getRecommendPerson());
236
+            // 推荐客户手机
237
+            add("phone=" + taRecommendCustomer.getPhone());
238
+        }};
239
+        String changeParams = String.join("&", params);
240
+        boolean hasJoined = isPointsRecordsExist(taRecommendCustomer.getRecommendPerson(), changeType, changeParams);
241
+        if (hasJoined) {
242
+            return;
243
+        }
244
+
245
+        // 发放积分
246
+        TaPerson taPerson = taPersonMapper.getById(taRecommendCustomer.getRecommendPerson());
247
+        if (null != taPerson && savePoints(taPerson, changeType, changeParams, pointsAmount, orgId)) {
248
+            taPersonMapper.setPointsIncrement(taPerson.getPersonId(), pointsAmount);
249
+        }
250
+    }
251
+
252
+    @Override
253
+    public IPage<TaPointsRecords> getWxRecords(Integer pageNum, Integer pageSize, String personId) {
254
+        IPage<TaPointsRecords> pg = new Page<>(pageNum, pageSize);
255
+        return taPointsRecordsMapper.getCustomerPointsList(pg, personId);
256
+    }
257
+
258
+    @Override
259
+    public void consumeGoodsPoints(TaGoods taGoods, Integer orgId) {
260
+        Integer minusPoints = taGoods.getPointPrice();
261
+        if (null == minusPoints || minusPoints <= 0) {
262
+            return;
263
+        }
264
+
265
+        TaPerson taPerson = taGoods.getExchanger();
266
+        Integer origPoints = taPerson.getPoints();
267
+        if (null == origPoints) {
268
+            origPoints = 0;
269
+        }
270
+
271
+        // 积分不足
272
+        if (minusPoints > origPoints) {
273
+            return;
274
+        }
275
+
276
+        String[] params = {
277
+                "person=" + taPerson.getPersonId(),
278
+                "goods=" + String.valueOf(taGoods.getGoodsId()),
279
+                "points=" + String.valueOf(minusPoints)
280
+        };
281
+        String changeParams = String.join("&", params);
282
+
283
+        // 发放积分
284
+        Integer pointsAmount = 0 - minusPoints;
285
+        if (savePoints(taPerson, CommConstant.POINTS_CHANGE_GOODS, changeParams, pointsAmount, orgId)) {
286
+            taPersonMapper.setPointsIncrement(taPerson.getPersonId(), pointsAmount);
287
+        }
288
+    }
289
+
290
+    private boolean savePoints(TaPerson person, String changeType, String changeParams, Integer pointsAmount, Integer orgId) {
291
+        if (null == person) {
292
+            return true;
293
+        }
294
+        TaPointsRecords taPointsRecords = new TaPointsRecords();
295
+        taPointsRecords.setPersonId(person.getPersonId());
296
+        taPointsRecords.setPersonName(StringUtils.ifNull(person.getName(), person.getNickname()));
297
+        taPointsRecords.setPersonType(person.getPersonType());
298
+        taPointsRecords.setPointsAmount(pointsAmount);
299
+        taPointsRecords.setChangeType(changeType);
300
+        taPointsRecords.setChangeParams(changeParams);
301
+        taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
302
+        taPointsRecords.setCreateDate(LocalDateTime.now());
303
+        taPointsRecords.setOrgId(orgId);
304
+
305
+        return taPointsRecordsMapper.insert(taPointsRecords) > 0;
306
+    }
305 307
 
306 308
 //	@Override
307 309
 //	public void authPoints(String personId) {
@@ -316,115 +318,120 @@ public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMappe
316 318
 //			sendPoints(person,4,CommConstant.POINTS_AUTHORIZE);
317 319
 //		}
318 320
 //	}
319
-	
320
-	private void sendPoints(TaPerson person,Integer rulesId,String shareType, Integer orgId) {
321
-		//发放积分
322
-		QueryWrapper<TdPointsRules> queryWrapper = new QueryWrapper<>();
323
-		queryWrapper.eq("rule_id",rulesId);
324
-		queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
325
-		TdPointsRules tdPointsRules = tdPointsRulesMapper.selectOne(queryWrapper);
326
-		if (null != tdPointsRules) {
327
-			//插入积分消费流水表
328
-			TaPointsRecords taPointsRecords = new TaPointsRecords();
329
-			taPointsRecords.setPersonId(person.getPersonId());
330
-			taPointsRecords.setPersonName(com.huiju.estateagents.common.StringUtils.ifNull(person.getName(),person.getNickname()));
331
-			taPointsRecords.setPersonType(person.getPersonType());
332
-			taPointsRecords.setPointsAmount(tdPointsRules.getPointsAmount());
333
-			taPointsRecords.setChangeType(shareType);
334
-			JSONObject jsonObject = new JSONObject();
335
-			jsonObject.put("person_id",person.getPersonId());
336
-			taPointsRecords.setChangeParams(jsonObject.toJSONString());
337
-			taPointsRecords.setCreateDate(LocalDateTime.now());
338
-			taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
339
-			taPointsRecords.setOrgId(orgId);
340
-			taPointsRecordsMapper.insert(taPointsRecords);
341
-			//添加积分
342
-			UpdateWrapper<TaPerson> taPersonwrapper = new UpdateWrapper<>();
343
-			taPersonwrapper.eq("person_id", person.getPersonId());
344
-			taPersonwrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(tdPointsRules.getPointsAmount()));
345
-			taPersonMapper.update(new TaPerson(), taPersonwrapper);
346
-		}
347
-	}
348
-
349
-
350
-	@Override
351
-	public void documentVerify(TaDocumentVerify taDocumentVerify, Integer orgId) {
352
-		//
353
-		String changeType = CommConstant.POINTS_CHANGE_DOCUMENT_VERIFY;
354
-		// 是否开启积分规则
355
-		Integer pointsAmount = getRulePoints(changeType,orgId);
356
-		if (pointsAmount == 0) {
357
-			return;
358
-		}
359
-
360
-		// 已经领取过的不会再次领取
361
-		String[] params = {
362
-				"shareId="+String.valueOf(taDocumentVerify.getDocumentVerifyId()),
363
-				"openUser="+taDocumentVerify.getPersonId()
364
-		};
365
-		String changeParams = String.join("&", params);
366
-		boolean hasJoined = isPointsRecordsExist(taDocumentVerify.getPersonId(), changeType, changeParams);
367
-		if (hasJoined) {
368
-			return;
369
-		}
370
-
371
-		// 发放积分
372
-		TaPerson person = taPersonMapper.selectById(taDocumentVerify.getPersonId());
373
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
374
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
375
-		}
376
-	}
377
-
378
-	@Override
379
-	public void activityVerificationSign(HelpInitiateRecord helpInitiateRecord, Integer orgId) {
380
-		//
381
-		String changeType = CommConstant.POINTS_CHANGE_ACTIVITY_VERIFICATION;
382
-		// 是否开启积分规则
383
-		Integer pointsAmount = getRulePoints(changeType,orgId);
384
-		if (pointsAmount == 0) {
385
-			return;
386
-		}
387
-
388
-		
389
-
390
-		// 已经领取过的不会再次领取
391
-		String[] params = {
392
-				"shareId="+String.valueOf(helpInitiateRecord.getHelpRecordInitiateId()),
393
-				"openUser="+helpInitiateRecord.getPersonId()
394
-		};
395
-		String changeParams = String.join("&", params);
396
-		boolean hasJoined = isPointsRecordsExist(helpInitiateRecord.getPersonId(), changeType, changeParams);
397
-		if (hasJoined) {
398
-			return;
399
-		}
400
-
401
-		// 发放积分
402
-		TaPerson person = taPersonMapper.selectById(helpInitiateRecord.getPersonId());
403
-		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
404
-			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
405
-		}
406
-	}
407
-	
408
-	/**
409
-	 * 消费拼团积分
410
-	 *  @param person
411
-	 * @param integral
412
-	 * @param buildingId
413
-	 * @param groupActivityId
414
-	 */
415
-	@Override
416
-	public void saveGroupRecord(TaPerson person, Integer integral, String buildingId, Integer groupActivityId) {
417
-		TaPointsRecords taPointsRecords = new TaPointsRecords();
418
-		taPointsRecords.setPersonId(person.getPersonId());
419
-		taPointsRecords.setPersonName(person.getNickname());
420
-		taPointsRecords.setPersonType(person.getPersonType());
421
-		taPointsRecords.setPointsAmount(-integral);
422
-		taPointsRecords.setChangeType(CommConstant.POINTS_CHANGE_GROUP);
423
-		taPointsRecords.setChangeParams("{\"group_activity_id\":"+groupActivityId+"}");
424
-		taPointsRecords.setCreateDate(LocalDateTime.now());
425
-		taPointsRecords.setOrgId(person.getOrgId());
426
-		taPointsRecords.setBuildingId(buildingId);
427
-		taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
428
-		taPointsRecordsMapper.insert(taPointsRecords);
429
-	}
321
+
322
+    private void sendPoints(TaPerson person, Integer rulesId, String shareType, Integer orgId) {
323
+        //发放积分
324
+        QueryWrapper<TdPointsRules> queryWrapper = new QueryWrapper<>();
325
+        queryWrapper.eq("rule_id", rulesId);
326
+        queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
327
+        TdPointsRules tdPointsRules = tdPointsRulesMapper.selectOne(queryWrapper);
328
+        if (null != tdPointsRules) {
329
+            //插入积分消费流水表
330
+            TaPointsRecords taPointsRecords = new TaPointsRecords();
331
+            taPointsRecords.setPersonId(person.getPersonId());
332
+            taPointsRecords.setPersonName(com.huiju.estateagents.common.StringUtils.ifNull(person.getName(), person.getNickname()));
333
+            taPointsRecords.setPersonType(person.getPersonType());
334
+            taPointsRecords.setPointsAmount(tdPointsRules.getPointsAmount());
335
+            taPointsRecords.setChangeType(shareType);
336
+            JSONObject jsonObject = new JSONObject();
337
+            jsonObject.put("person_id", person.getPersonId());
338
+            taPointsRecords.setChangeParams(jsonObject.toJSONString());
339
+            taPointsRecords.setCreateDate(LocalDateTime.now());
340
+            taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
341
+            taPointsRecords.setOrgId(orgId);
342
+            taPointsRecordsMapper.insert(taPointsRecords);
343
+            //添加积分
344
+            UpdateWrapper<TaPerson> taPersonwrapper = new UpdateWrapper<>();
345
+            taPersonwrapper.eq("person_id", person.getPersonId());
346
+            taPersonwrapper.setSql("points = IFNULL(points, 0) + " + String.valueOf(tdPointsRules.getPointsAmount()));
347
+            taPersonMapper.update(new TaPerson(), taPersonwrapper);
348
+        }
349
+    }
350
+
351
+
352
+    @Override
353
+    public void documentVerify(TaDocumentVerify taDocumentVerify, Integer orgId) {
354
+        //
355
+        String changeType = CommConstant.POINTS_CHANGE_DOCUMENT_VERIFY;
356
+        // 是否开启积分规则
357
+        Integer pointsAmount = getRulePoints(changeType, orgId);
358
+        if (pointsAmount == 0) {
359
+            return;
360
+        }
361
+
362
+        // 已经领取过的不会再次领取
363
+        String[] params = {
364
+                "shareId=" + String.valueOf(taDocumentVerify.getDocumentVerifyId()),
365
+                "openUser=" + taDocumentVerify.getPersonId()
366
+        };
367
+        String changeParams = String.join("&", params);
368
+        boolean hasJoined = isPointsRecordsExist(taDocumentVerify.getPersonId(), changeType, changeParams);
369
+        if (hasJoined) {
370
+            return;
371
+        }
372
+
373
+        // 发放积分
374
+        TaPerson person = taPersonMapper.selectById(taDocumentVerify.getPersonId());
375
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
376
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
377
+        }
378
+    }
379
+
380
+    @Override
381
+    public void activityVerificationSign(HelpInitiateRecord helpInitiateRecord, Integer orgId) {
382
+        //
383
+        String changeType = CommConstant.POINTS_CHANGE_ACTIVITY_VERIFICATION;
384
+        // 是否开启积分规则
385
+        Integer pointsAmount = getRulePoints(changeType, orgId);
386
+        if (pointsAmount == 0) {
387
+            return;
388
+        }
389
+
390
+
391
+        // 已经领取过的不会再次领取
392
+        String[] params = {
393
+                "shareId=" + String.valueOf(helpInitiateRecord.getHelpRecordInitiateId()),
394
+                "openUser=" + helpInitiateRecord.getPersonId()
395
+        };
396
+        String changeParams = String.join("&", params);
397
+        boolean hasJoined = isPointsRecordsExist(helpInitiateRecord.getPersonId(), changeType, changeParams);
398
+        if (hasJoined) {
399
+            return;
400
+        }
401
+
402
+        // 发放积分
403
+        TaPerson person = taPersonMapper.selectById(helpInitiateRecord.getPersonId());
404
+        if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
405
+            taPersonMapper.setPointsIncrement(person.getPersonId(), pointsAmount);
406
+        }
407
+    }
408
+
409
+    /**
410
+     * 消费拼团积分
411
+     *
412
+     * @param person
413
+     * @param integral
414
+     * @param buildingId
415
+     * @param groupActivityId
416
+     */
417
+    @Override
418
+    public void saveGroupRecord(TaPerson person, Integer integral, String buildingId, Integer groupActivityId) {
419
+        TaPointsRecords taPointsRecords = new TaPointsRecords();
420
+        taPointsRecords.setPersonId(person.getPersonId());
421
+        taPointsRecords.setPersonName(person.getNickname());
422
+        taPointsRecords.setPersonType(person.getPersonType());
423
+        taPointsRecords.setPointsAmount(-integral);
424
+        taPointsRecords.setChangeType(CommConstant.POINTS_CHANGE_GROUP);
425
+        taPointsRecords.setChangeParams("{\"group_activity_id\":" + groupActivityId + "}");
426
+        taPointsRecords.setCreateDate(LocalDateTime.now());
427
+        taPointsRecords.setOrgId(person.getOrgId());
428
+        taPointsRecords.setBuildingId(buildingId);
429
+        taPointsRecords.setStatus(CommConstant.STATUS_NORMAL);
430
+        taPointsRecordsMapper.insert(taPointsRecords);
431
+    }
432
+
433
+    @Override
434
+    public Integer sumPointByPersonId(String personId) {
435
+        return taPointsRecordsMapper.sumPointByPersonId(personId);
436
+    }
430 437
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/service/impl/TaPreselectionRecordServiceImpl.java ファイルの表示

@@ -183,6 +183,7 @@ public class TaPreselectionRecordServiceImpl extends ServiceImpl<TaPreselectionR
183 183
         taPreselectionRecord.setSalesBatchId(resourcesPO.getSalesBatchId());
184 184
         taPreselectionRecord.setStatus(1);
185 185
         taPreselectionRecord.setCreateDate(LocalDateTime.now());
186
+        taPreselectionRecord.setUpdateDate(LocalDateTime.now());
186 187
         save(taPreselectionRecord);
187 188
 
188 189
         // 更新房源表热度
@@ -228,7 +229,7 @@ public class TaPreselectionRecordServiceImpl extends ServiceImpl<TaPreselectionR
228 229
         TaPreselectionRecord record = new TaPreselectionRecord();
229 230
         record.setPreselectionRecordId(preselectionRecord.getPreselectionRecordId());
230 231
         record.setStatus(0);
231
-        record.setUpdateDate(DateUtils.today());
232
+        record.setUpdateDate(LocalDateTime.now());
232 233
         updateById(record);
233 234
 
234 235
         // 更新房源表热度

+ 8
- 0
src/main/java/com/huiju/estateagents/service/impl/TaRaiseRecordServiceImpl.java ファイルの表示

@@ -224,6 +224,7 @@ public class TaRaiseRecordServiceImpl extends ServiceImpl<TaRaiseRecordMapper, T
224 224
         taRaiseRecord.setPayStatus(CommConstant.PAY_STATUS_UNPAID);
225 225
         taRaiseRecord.setPayType(CommConstant.PAY_TYPE_ONLINE);
226 226
         taRaiseRecord.setCreateDate(LocalDateTime.now());
227
+        taRaiseRecord.setUpdateDate(LocalDateTime.now());
227 228
         //插入认筹单信息
228 229
         taRaiseRecordMapper.insert(taRaiseRecord);
229 230
 
@@ -310,6 +311,13 @@ public class TaRaiseRecordServiceImpl extends ServiceImpl<TaRaiseRecordMapper, T
310 311
 
311 312
     @Override
312 313
     public Boolean updateForSubtractRaiseHeat(Integer raiseRecordId) {
314
+        logger.info("TaRaiseRecordServiceImpl.updateForSubtractRaiseHeat 接收参数:raiseRecordId:{}", raiseRecordId);
313 315
         return taHousingResourcesMapper.updateForSubtractRaiseHeat(raiseRecordId);
314 316
     }
317
+
318
+    @Override
319
+    public Boolean updateHouseLockingStatus(Integer raiseRecordId, String houseLockingStatus) {
320
+        logger.info("TaRaiseRecordServiceImpl.updateHouseLockingStatus 接收参数:raiseRecordId:{},houseLockingStatus:{}", raiseRecordId, houseLockingStatus);
321
+        return taHousingResourcesMapper.updateHouseLockingStatus(raiseRecordId, houseLockingStatus);
322
+    }
315 323
 }

+ 7
- 5
src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java ファイルの表示

@@ -413,6 +413,7 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
413 413
         QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
414 414
         queryWrapper.eq("phone", taRecommendCustomer.getPhone());
415 415
         queryWrapper.eq("building_id",taRecommendCustomer.getBuildingId());
416
+        queryWrapper.eq("org_id", taRecommendCustomer.getOrgId());
416 417
         queryWrapper.in("verify_status",CommConstant.VERIFY_AGREE,CommConstant.VERIFY_READY);
417 418
         List<TaRecommendCustomer> result = taRecommendCustomerMapper.selectList(queryWrapper);
418 419
         if (null != result && result.size() > 0) {
@@ -486,17 +487,17 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
486 487
     }
487 488
 
488 489
     @Override
489
-    public IPage getCustomerList(Integer status,int pageNumber, int pageSize,String building,String name,String tel,String consultName,String consultTel,String entryType,String verifyStatus,Integer sex, String customerType, Integer orgId,List<TaPersonBuilding> taPersonBuildingList,String sceneType){
490
+    public IPage getCustomerList(Integer status,int pageNumber, int pageSize,String building,String name,String tel,String consultName,String consultTel,String entryType,String verifyStatus,Integer sex, String customerType, Integer orgId,List<TaPersonBuilding> taPersonBuildingList,String sceneType, String startCreateDate, String endCreateDate){
490 491
 
491 492
         if (CommConstant.CUTOMER_TYPE_PUBLIC.equals(customerType)) {
492 493
             // 公客
493 494
             IPage<TaPerson>page = new Page<>(pageNumber,pageSize);
494 495
             // 公客就不用 buildingId 进行查询
495
-            return taRecommendCustomerMapper.getPublicCustomerList(page,name, tel,  entryType, verifyStatus, sex, orgId,consultTel,sceneType, taPersonBuildingList,building);
496
+            return taRecommendCustomerMapper.getPublicCustomerList(page,name, tel,  entryType, verifyStatus, sex, orgId,consultTel,sceneType, taPersonBuildingList,building, startCreateDate, endCreateDate);
496 497
         } else {
497 498
             // 私客
498 499
             IPage<TaRecommendCustomer>page = new Page<>(pageNumber,pageSize);
499
-            return taRecommendCustomerMapper.getCustomerList(page, building, name, tel, consultName, consultTel, entryType, verifyStatus, sex, orgId,status,taPersonBuildingList,sceneType);
500
+            return taRecommendCustomerMapper.getCustomerList(page, building, name, tel, consultName, consultTel, entryType, verifyStatus, sex, orgId,status,taPersonBuildingList,sceneType, startCreateDate, endCreateDate);
500 501
         }
501 502
 
502 503
     }
@@ -722,7 +723,7 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
722 723
         }
723 724
 
724 725
         // 已经存在的, 随机返回一条记录
725
-        List<TaRecommendCustomer> custs = getCustomerByPhone(phone);
726
+        List<TaRecommendCustomer> custs = getCustomerByPhone(phone, person.getOrgId());
726 727
         if (null != custs && custs.size() > 0) {
727 728
             return custs.get(0);
728 729
         }
@@ -797,8 +798,9 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
797 798
 
798 799
     }
799 800
 
800
-    private List<TaRecommendCustomer> getCustomerByPhone(String phone) {
801
+    private List<TaRecommendCustomer> getCustomerByPhone(String phone, Integer orgId) {
801 802
         QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
803
+        queryWrapper.eq("org_id", orgId);
802 804
         queryWrapper.eq("phone", phone);
803 805
         queryWrapper.gt("status", CommConstant.STATUS_DELETE);
804 806
         queryWrapper.orderByDesc("report_date");

+ 7
- 4
src/main/java/com/huiju/estateagents/service/impl/WxPayServiceImpl.java ファイルの表示

@@ -3,10 +3,8 @@ package com.huiju.estateagents.service.impl;
3 3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 4
 import com.huiju.estateagents.base.ResponseBean;
5 5
 import com.huiju.estateagents.common.CommConstant;
6
-import com.huiju.estateagents.common.wxpay.WXPay;
7
-import com.huiju.estateagents.common.wxpay.WXPayConstants;
8
-import com.huiju.estateagents.common.wxpay.WXPayUtil;
9
-import com.huiju.estateagents.common.wxpay.WxConfig;
6
+import com.huiju.estateagents.common.StringUtils;
7
+import com.huiju.estateagents.common.wxpay.*;
10 8
 import com.huiju.estateagents.entity.*;
11 9
 import com.huiju.estateagents.mapper.*;
12 10
 import com.huiju.estateagents.service.ITaRaiseRecordService;
@@ -215,9 +213,13 @@ public class WxPayServiceImpl implements IWxPayService {
215 213
                 TaRaiseRecord taRaiseRecord = taRaiseRecordMapper.selectOne(new QueryWrapper<TaRaiseRecord>().eq("order_id", e.getParentOrderId()));
216 214
                 if (orderInfo.get("refund_status").equals(WXPayConstants.SUCCESS)){
217 215
                     taRaiseRecord.setPayStatus(CommConstant.PAY_STATUS_REFUNDED);
216
+                    if (!StringUtils.isEmpty(orderInfo.get("err_code"))){
217
+                        taRaiseRecord.setRefundReason(WXPayRefundReason.getMsg(orderInfo.get("err_code")));
218
+                    }
218 219
                 }
219 220
                 if (!orderInfo.get("refund_status").equals(WXPayConstants.SUCCESS)){
220 221
                     taRaiseRecord.setPayStatus(CommConstant.PAY_STATUS_CHANGE);
222
+                    taRaiseRecord.setRefundReason("");
221 223
                 }
222 224
 
223 225
                 taRaiseRecordMapper.updateById(taRaiseRecord);
@@ -488,6 +490,7 @@ public class WxPayServiceImpl implements IWxPayService {
488 490
         //更改支付状态并插入订单id
489 491
         TaRaiseRecord taRaiseRecord = taRaiseRecordMapper.selectById(taOrder.getTargetId());
490 492
         taRaiseRecord.setOrderId(taOrder.getOrderId());
493
+        taRaiseRecord.setPayType(CommConstant.PAY_TYPE_ONLINE);
491 494
         taRaiseRecordMapper.updateById(taRaiseRecord);
492 495
     }
493 496
 }

+ 1
- 1
src/main/resources/application-prod-blue.yml ファイルの表示

@@ -68,7 +68,7 @@ sms:
68 68
     # 验证码长度
69 69
     size: 4
70 70
     # 短信签名
71
-    sign: AI智慧案场
71
+    sign: 橙蕉
72 72
 
73 73
   visitor:
74 74
     code: "0501"

+ 1
- 1
src/main/resources/application-prod-green.yml ファイルの表示

@@ -68,7 +68,7 @@ sms:
68 68
     # 验证码长度
69 69
     size: 4
70 70
     # 短信签名
71
-    sign: AI智慧案场
71
+    sign: 橙蕉
72 72
 
73 73
   visitor:
74 74
     code: "0501"

+ 29
- 5
src/main/resources/mapper/TaHousingResourcesMapper.xml ファイルの表示

@@ -190,14 +190,16 @@
190 190
 
191 191
     <update id="updateForAddHeat" parameterType="java.lang.Integer">
192 192
         UPDATE ta_housing_resources t
193
-        SET t.real_heat = IFNULL(t.real_heat, 0) + 1
193
+        SET t.real_heat = IFNULL(t.real_heat, 0) + 1,
194
+            t.update_date = now()
194 195
         WHERE
195 196
             t.house_id = #{houseId}
196 197
     </update>
197 198
 
198 199
     <update id="updateForSubtractHeat" parameterType="java.lang.Integer">
199 200
         UPDATE ta_housing_resources t
200
-        SET t.real_heat = IFNULL(t.real_heat, 0) - 1
201
+        SET t.real_heat = IFNULL(t.real_heat, 0) - 1,
202
+            t.update_date = now()
201 203
         WHERE
202 204
             t.house_id = #{houseId}
203 205
             AND t.real_heat > 0
@@ -205,12 +207,21 @@
205 207
 
206 208
     <update id="updateForSubtractRaiseHeat" parameterType="java.lang.Integer">
207 209
         UPDATE ta_housing_resources t
208
-        SET t.raise_real_heat = IFNULL( t.raise_real_heat, 0 ) - 1
210
+        SET t.raise_real_heat = IFNULL( t.raise_real_heat, 0 ) - 1,
211
+            t.update_date = now()
209 212
         WHERE
210 213
             t.house_id IN ( SELECT tr.house_id FROM ta_raise_house tr WHERE tr.raise_record_id = #{raiseRecordId})
211 214
             AND t.raise_real_heat > 0
212 215
     </update>
213 216
 
217
+    <update id="updateHouseLockingStatus">
218
+        UPDATE ta_housing_resources t
219
+        SET t.house_locking_status = #{houseLockingStatus},
220
+            t.update_date = now()
221
+        WHERE
222
+            t.house_id IN ( SELECT tr.house_id FROM ta_raise_house tr WHERE tr.raise_record_id = #{raiseRecordId})
223
+    </update>
224
+
214 225
     <select id="getHousingDetailById" resultType="com.huiju.estateagents.po.TaHousingResourcesPO">
215 226
         SELECT
216 227
         t.house_id,
@@ -290,9 +301,22 @@
290 301
         <if test="roomName != null and roomName != ''">
291 302
             AND t.room_name like CONCAT('%',#{roomName}, '%')
292 303
         </if>
293
-        <if test="lockingStatus != null and lockingStatus != ''">
294
-            AND t.house_locking_status = #{lockingStatus}
304
+        <choose>
305
+            <when test="lockingStatus == 'unlocked'">
306
+                AND (t.house_locking_status = #{lockingStatus} OR t.house_locking_status IS NULL)
307
+            </when>
308
+            <when test="lockingStatus != null and lockingStatus != ''">
309
+                AND t.house_locking_status = #{lockingStatus}
310
+            </when>
311
+        </choose>
312
+        <if test="actulStartHot != '' and actulStartHot != null">
313
+            and t.real_heat &gt;= #{actulStartHot}
314
+        </if>
315
+        <if test="actulEndHot != '' and actulEndHot != null">
316
+            and t.real_heat &lt;= #{actulEndHot}
295 317
         </if>
318
+        ORDER BY
319
+            t.create_date DESC
296 320
     </select>
297 321
 
298 322
     <select id="selectHousingList" resultType="com.huiju.estateagents.entity.TaHousingResources">

+ 5
- 0
src/main/resources/mapper/TaLiveActivityMapper.xml ファイルの表示

@@ -47,5 +47,10 @@
47 47
     </if>
48 48
         order by t.weight desc
49 49
     </select>
50
+    <select id="getDetailById" resultType="com.huiju.estateagents.entity.TaLiveActivity">
51
+        select t.*,a.live_plat_name as liveAppName From ta_live_activity t
52
+        left join td_live_dict a on t.live_app = a.id
53
+        where t.live_activity_id = #{id}
54
+    </select>
50 55
 
51 56
 </mapper>

+ 5
- 2
src/main/resources/mapper/TaPersonIntentionRecordMapper.xml ファイルの表示

@@ -31,8 +31,11 @@
31 31
                     AND tpir.org_id = #{orgId}
32 32
                     AND tp.org_id = #{orgId}
33 33
                 </if>
34
-                <if test="userId != null">
35
-                    AND tpir.building_id IN ( SELECT t3.building_id FROM ta_person_building t3 WHERE t3.user_id = #{userId} )
34
+                <if test="personBuildingList != null and personBuildingList.size > 0">
35
+                    AND tpir.building_id in
36
+                    <foreach collection="personBuildingList" item="personBuilding" open="(" close=")" separator=",">
37
+                        #{personBuilding.buildingId}
38
+                    </foreach>
36 39
                 </if>
37 40
             </trim>
38 41
         GROUP BY

+ 8
- 1
src/main/resources/mapper/TaPersonMapper.xml ファイルの表示

@@ -12,7 +12,8 @@
12 12
             t.tel AS phone,
13 13
             t.avatarurl AS avatar,
14 14
             t.photo,
15
-            u.description as description
15
+            u.description as description,
16
+            (t.person_id = #{consultant} or t.user_id = #{consultant}) as mine
16 17
         FROM
17 18
             ta_person t left join ta_user u on t.user_id = u.user_id
18 19
         LEFT JOIN ta_person_building p ON u.user_id = p.user_id
@@ -83,6 +84,12 @@
83 84
         WHERE person_id = #{personId}
84 85
     </update>
85 86
 
87
+    <update id="setPointsIncrement">
88
+        UPDATE ta_person
89
+        SET  points = IFNULL(points, 0) + #{increment}
90
+        WHERE person_id = #{personId}
91
+    </update>
92
+
86 93
     <select id="selectCustomer" resultType="com.huiju.estateagents.entity.TaPerson">
87 94
         SELECT
88 95
 	a.*,

+ 3
- 0
src/main/resources/mapper/TaPointsRecordsMapper.xml ファイルの表示

@@ -4,5 +4,8 @@
4 4
     <select id="getCustomerPointsList" resultType="com.huiju.estateagents.entity.TaPointsRecords">
5 5
 
6 6
     </select>
7
+    <select id="sumPointByPersonId" resultType="java.lang.Integer">
8
+        select sum(points_amount) from ta_points_records t where t.person_id = #{personId}
9
+    </select>
7 10
 
8 11
 </mapper>

+ 1
- 1
src/main/resources/mapper/TaPreselectionRecordMapper.xml ファイルの表示

@@ -119,7 +119,7 @@
119 119
                 AND a.room_name like CONCAT('%',#{bo.roomName}, '%')
120 120
             </if>
121 121
             <if test="bo.houseId != null and bo.houseId !=''">
122
-                AND t.house_id = #{bo.houseId}
122
+                AND t.house_id like CONCAT('%',#{bo.houseId}, '%')
123 123
             </if>
124 124
             <if test="bo.phone != null and bo.phone != ''">
125 125
                 AND b.phone like CONCAT('%',#{bo.phone}, '%')

+ 1
- 1
src/main/resources/mapper/TaRaiseMapper.xml ファイルの表示

@@ -17,7 +17,7 @@
17 17
             t.pay_description_online,
18 18
             t.pay_description_offline,
19 19
             t.pay_protocol,
20
-            t.`status`,
20
+            t2.`status`,
21 21
             t.create_date,
22 22
             t2.sales_batch_name,
23 23
             t2.sales_number,

+ 9
- 3
src/main/resources/mapper/TaRaiseRecordMapper.xml ファイルの表示

@@ -38,9 +38,12 @@
38 38
         <if test="bo.status != null">
39 39
             AND t.`status` = #{bo.status}
40 40
         </if>
41
-        <if test="bo.lockingStatus != null">
41
+        <if test="bo.lockingStatus == 'locked'">
42 42
             AND t.house_locking_status = #{bo.lockingStatus}
43 43
         </if>
44
+        <if test="bo.lockingStatus == 'unlocked'">
45
+            AND (t.house_locking_status = #{bo.lockingStatus} || t.house_locking_status is null)
46
+        </if>
44 47
         <if test="bo.apartmentId != null and bo.apartmentId != ''">
45 48
             AND t.apartment_id = #{bo.apartmentId}
46 49
         </if>
@@ -81,7 +84,7 @@
81 84
             AND t.raise_id =#{bo.raiseId}
82 85
         </if>
83 86
         <if test="bo.houseId != null and bo.houseId != ''">
84
-            AND t3.house_id =  =#{bo.houseId}
87
+            AND t3.house_id = #{bo.houseId}
85 88
         </if>
86 89
         <if test="bo.raiseRecordId != null and bo.raiseRecordId != ''">
87 90
             AND t.raise_record_id = #{bo.raiseRecordId}
@@ -111,7 +114,7 @@
111 114
             AND t.tel like CONCAT('%',#{bo.tel} , '%')
112 115
         </if>
113 116
         <if test="bo.personTel != null and bo.personTel != ''">
114
-            AND t5.tel like CONCAT('%',#{bo.personTel}  , '%')
117
+            AND t.tel like CONCAT('%',#{bo.personTel}  , '%')
115 118
         </if>
116 119
         <if test="bo.payStatus != null and bo.payStatus != ''">
117 120
             AND t.pay_status = #{bo.payStatus}
@@ -125,6 +128,9 @@
125 128
         <if test = "bo.endTime != null and bo.endTime != ''">
126 129
             AND t.create_date &lt;= STR_TO_DATE(#{bo.endTime}, '%Y-%m-%d %H:%i:%s')
127 130
         </if>
131
+        <if test="bo.personName != null and bo.personName != ''">
132
+            AND t.name like CONCAT('%', #{bo.personName} , '%')
133
+        </if>
128 134
         GROUP BY
129 135
             t2.raise_record_id
130 136
         ORDER BY

+ 25
- 1
src/main/resources/mapper/TaRecommendCustomerMapper.xml ファイルの表示

@@ -212,6 +212,12 @@ FROM
212 212
             <if test="sex != null and sex !=''">
213 213
                 and a.sex = #{sex}
214 214
             </if>
215
+            <if test="startCreateDate != null and startCreateDate !=''">
216
+                and a.create_Date >= #{startCreateDate}
217
+            </if>
218
+            <if test="endCreateDate != null and endCreateDate !=''">
219
+                and a.create_Date  &lt;= #{endCreateDate}
220
+            </if>
215 221
             <if test="personBuildingList != null and personBuildingList.size > 0">
216 222
                 AND a.building_id in
217 223
                 <foreach collection="personBuildingList" item="personBuilding" open="(" close=")" separator=",">
@@ -264,6 +270,12 @@ FROM
264 270
             <if test="sex != null and sex !=''">
265 271
                 and b.sex = #{sex}
266 272
             </if>
273
+            <if test="startCreateDate != null and startCreateDate !=''">
274
+                and b.create_Date >= #{startCreateDate}
275
+            </if>
276
+            <if test="endCreateDate != null and endCreateDate !=''">
277
+                and b.create_Date  &lt;= #{endCreateDate}
278
+            </if>
267 279
             <if test="consultTel != null and consultTel !=''">
268 280
                 and b.tel like CONCAT('%',#{consultTel}, '%')
269 281
             </if>
@@ -537,15 +549,23 @@ FROM
537 549
           if(b.gender = 1, '男', if(b.gender = 2, '女', '未知')) as sex
538 550
         FROM
539 551
         ta_person b
552
+        LEFT JOIN ta_person_from_record r ON b.person_id = r.person_id AND r.is_first_time = 1 and r.org_id = #{orgId}
553
+        left join td_wx_dict d on r.scene_id = d.scene_id
540 554
         <where>
541 555
             b.status > 0
542 556
             AND IFNULL(b.person_type, '') in ('estate agent', 'customer')
543 557
             <if test="name != null and name !=''">
544 558
                 and b.nickname like CONCAT('%',#{name}, '%')
545 559
             </if>
560
+            <if test="buildingId != null and buildingId !=''">
561
+                AND r.building_id = #{buildingId}
562
+            </if>
546 563
             <if test="tel != null and tel!=''">
547 564
                 and b.phone like CONCAT('%',#{tel}, '%')
548 565
             </if>
566
+            <if test="sceneType !=null and sceneType !=''">
567
+                and d.scene_type = #{sceneType}
568
+            </if>
549 569
             <if test="entryType != null and entryType !=''">
550 570
                 and b.entry_type = #{entryType}
551 571
             </if>
@@ -636,8 +656,9 @@ FROM
636 656
         LEFT JOIN ta_person b ON a.realty_consultant = b.person_id
637 657
         LEFT JOIN ta_person c ON a.realty_consultant = c.user_id
638 658
         LEFT JOIN ta_user d on d.user_id = a.realty_consultant
639
-        LEFT JOIN ta_person_from_record p ON a.person_id = p.person_id AND p.is_first_time = 1
659
+        LEFT JOIN ta_person_from_record p ON a.person_id = p.person_id AND p.is_first_time = 1 and p.org_id = #{orgId}
640 660
         left join ta_building t on a.building_id = t.building_id
661
+        LEFT JOIN td_wx_dict w ON p.scene_id = w.scene_id
641 662
         <where>
642 663
             a.status > 0
643 664
             and a.verify_status = 1
@@ -679,6 +700,9 @@ FROM
679 700
                     #{personBuilding.buildingId}
680 701
                 </foreach>
681 702
             </if>
703
+            <if test="sceneType !=null and sceneType !=''">
704
+                and p.scene_type = #{sceneType}
705
+            </if>
682 706
         </where>
683 707
         group by a.customer_id,a.building_id
684 708
         order by a.create_date desc

+ 2
- 1
src/main/resources/mapper/TaSalesBatchMapper.xml ファイルの表示

@@ -30,12 +30,13 @@
30 30
             </foreach>
31 31
         </if>
32 32
         ORDER BY
33
-          a.create_date DESC
33
+          t.create_date DESC
34 34
     </select>
35 35
 
36 36
     <select id="countPreSelectRecord" resultType="java.lang.Integer">
37 37
         select count(*) from ta_preselection_record t
38 38
         where t.org_id = #{orgId}
39
+        and t.status != -1
39 40
         and t.sales_batch_id in
40 41
         <foreach collection="taSalesBatchList" item="taSalesBatch" open="(" close=")" separator=",">
41 42
             #{taSalesBatch.salesBatchId}

+ 6
- 0
src/main/resources/mapper/TaUserMapper.xml ファイルの表示

@@ -34,6 +34,9 @@
34 34
             <if test="channelId != null and channelId != ''">
35 35
                 and n.channel_id = #{channelId}
36 36
             </if>
37
+            <if test="miniAppName != null and miniAppName != ''">
38
+                and m.name like CONCAT('%', #{miniAppName}, '%')
39
+            </if>
37 40
     </select>
38 41
 
39 42
     <select id="getTagsList" resultType="com.huiju.estateagents.center.taUser.entity.TaTags">
@@ -80,6 +83,9 @@
80 83
             <if test="taUser.isConsultant != null and taUser.isConsultant != '' or taUser.isConsultant ==0">
81 84
                 and t.is_consultant = #{taUser.isConsultant}
82 85
             </if>
86
+            <if test="taUser.buildingId != null and taUser.buildingId != ''">
87
+                and b.building_id = #{taUser.buildingId}
88
+            </if>
83 89
             <if test="personBuildingList != null and personBuildingList.size > 0">
84 90
                 AND b.building_id in
85 91
                 <foreach collection="personBuildingList" item="personBuilding" open="(" close=")" separator=",">