Kaynağa Gözat

Merge branch 'v3.5.1' of http://git.ycjcjy.com/zhiyuxing/estateagents into v3.5.1

胡轶钦 5 yıl önce
ebeveyn
işleme
5882ab3049
27 değiştirilmiş dosya ile 670 ekleme ve 34 silme
  1. 31
    0
      src/main/java/com/huiju/estateagents/activity/controller/ActivityController.java
  2. 10
    0
      src/main/java/com/huiju/estateagents/activity/mapper/ActivityMapper.java
  3. 10
    0
      src/main/java/com/huiju/estateagents/activity/service/ActivityServiceI.java
  4. 19
    0
      src/main/java/com/huiju/estateagents/activity/service/impl/ActivityServiceImpl.java
  5. 4
    2
      src/main/java/com/huiju/estateagents/controller/TaBuildingController.java
  6. 21
    0
      src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java
  7. 56
    1
      src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java
  8. 39
    0
      src/main/java/com/huiju/estateagents/controller/TaUvController.java
  9. 7
    2
      src/main/java/com/huiju/estateagents/entity/HelpActivity.java
  10. 4
    1
      src/main/java/com/huiju/estateagents/entity/TaBuilding.java
  11. 1
    1
      src/main/java/com/huiju/estateagents/entity/TaBuildingDynamic.java
  12. 6
    0
      src/main/java/com/huiju/estateagents/entity/TaPersonVisitRecord.java
  13. 7
    2
      src/main/java/com/huiju/estateagents/entity/TaShareActivity.java
  14. 9
    3
      src/main/java/com/huiju/estateagents/mapper/TaPersonVisitRecordMapper.java
  15. 30
    1
      src/main/java/com/huiju/estateagents/mapper/TaRecommendCustomerMapper.java
  16. 2
    2
      src/main/java/com/huiju/estateagents/service/ITaBuildingService.java
  17. 7
    0
      src/main/java/com/huiju/estateagents/service/ITaPersonVisitRecordService.java
  18. 35
    1
      src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java
  19. 2
    0
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java
  20. 18
    1
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java
  21. 24
    0
      src/main/java/com/huiju/estateagents/service/impl/TaPersonVisitRecordServiceImpl.java
  22. 106
    2
      src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java
  23. 77
    2
      src/main/java/com/huiju/estateagents/statistic/controller/TaCustomerFollowUpRecordController.java
  24. 1
    1
      src/main/java/com/huiju/estateagents/statistic/entity/TaCustomerFollowUpRecord.java
  25. 76
    0
      src/main/resources/mapper/Activity.xml
  26. 12
    0
      src/main/resources/mapper/TaPersonVisitRecordMapper.xml
  27. 56
    12
      src/main/resources/mapper/TaRecommendCustomerMapper.xml

+ 31
- 0
src/main/java/com/huiju/estateagents/activity/controller/ActivityController.java Dosyayı Görüntüle

@@ -1,10 +1,13 @@
1 1
 package com.huiju.estateagents.activity.controller;
2 2
 
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
3 4
 import com.huiju.estateagents.activity.service.ActivityServiceI;
4 5
 import com.huiju.estateagents.base.BaseController;
5 6
 import com.huiju.estateagents.base.ResponseBean;
6 7
 import com.huiju.estateagents.entity.TaPerson;
8
+import com.huiju.estateagents.entity.TaRecommendCustomer;
7 9
 import com.huiju.estateagents.service.ITaPersonService;
10
+import com.huiju.estateagents.service.ITaRecommendCustomerService;
8 11
 import io.swagger.annotations.Api;
9 12
 import org.springframework.beans.factory.annotation.Autowired;
10 13
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -30,6 +33,9 @@ public class ActivityController extends BaseController {
30 33
 	@Autowired
31 34
 	private ITaPersonService taPersonService;
32 35
 	
36
+	@Autowired
37
+	ITaRecommendCustomerService taRecommendCustomerService;
38
+	
33 39
 	@RequestMapping(value = "/wx/activity/list", method = RequestMethod.GET)
34 40
 	public ResponseBean wxBuildingDynamiceList(@RequestParam(value = "pageNumber",defaultValue = "1")Integer pageNumber,
35 41
 	                                           @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
@@ -47,4 +53,29 @@ public class ActivityController extends BaseController {
47 53
 		
48 54
 		return responseBean;
49 55
 	}
56
+	
57
+	@RequestMapping(value = "/wx/customer/activity/list", method = RequestMethod.GET)
58
+	public ResponseBean wxActivityList(@RequestParam(value = "pageNumber",defaultValue = "1")Integer pageNumber,
59
+	                                           @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
60
+	                                           @RequestParam(value = "customerId") String customerId,
61
+	                                           HttpServletRequest request){
62
+		ResponseBean  responseBean = new ResponseBean();
63
+		Integer orgId = getOrgId(request);
64
+		//查找客户信息
65
+		QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
66
+		queryWrapper.eq("customer_id",customerId);
67
+		TaRecommendCustomer taRecommendCustomer = taRecommendCustomerService.getOne(queryWrapper);
68
+		if (null == taRecommendCustomer){
69
+			return ResponseBean.error("验证人员信息失败",ResponseBean.ERROR_UNAVAILABLE);
70
+		}
71
+		if (null == taRecommendCustomer.getPersonId()){
72
+			return ResponseBean.error("验证人员信息失败",ResponseBean.ERROR_UNAVAILABLE);
73
+		}
74
+		
75
+		QueryWrapper<TaPerson> taPersonQueryWrapper = new QueryWrapper<>();
76
+		taPersonQueryWrapper.eq("person_id",taRecommendCustomer.getPersonId());
77
+		TaPerson person = taPersonService.getOne(taPersonQueryWrapper);
78
+		responseBean = activityService.getCustomerActivityList(pageNumber,pageSize,orgId,person);
79
+		return responseBean;
80
+	}
50 81
 }

+ 10
- 0
src/main/java/com/huiju/estateagents/activity/mapper/ActivityMapper.java Dosyayı Görüntüle

@@ -6,8 +6,18 @@ import org.apache.ibatis.annotations.Mapper;
6 6
 import org.apache.ibatis.annotations.Param;
7 7
 
8 8
 import java.util.List;
9
+import java.util.Map;
9 10
 
10 11
 @Mapper
11 12
 public interface ActivityMapper {
12 13
 	List<Activity> getActivityList(Page pg, @Param("orgId") Integer orgId,@Param("status") Integer status,@Param("cityId") Integer cityId);
14
+	
15
+	/**
16
+	 * 获取客户参与的活动列表
17
+	 * @param pg
18
+	 * @param orgId
19
+	 * @param personId
20
+	 * @return
21
+	 */
22
+	List<Map<String,Object>> getCustomerActivityList(Page pg,@Param("orgId") Integer orgId,@Param("personId") String personId);
13 23
 }

+ 10
- 0
src/main/java/com/huiju/estateagents/activity/service/ActivityServiceI.java Dosyayı Görüntüle

@@ -14,4 +14,14 @@ public interface ActivityServiceI {
14 14
 	 * @return
15 15
 	 */
16 16
 	ResponseBean getActivityList(Integer pageNumber, Integer pageSize, Integer orgId, TaPerson person,Integer cityId);
17
+	
18
+	/**
19
+	 * 获取客户参加的活动信息
20
+	 * @param pageNumber
21
+	 * @param pageSize
22
+	 * @param orgId
23
+	 * @param person
24
+	 * @return
25
+	 */
26
+	ResponseBean getCustomerActivityList(Integer pageNumber, Integer pageSize, Integer orgId, TaPerson person);
17 27
 }

+ 19
- 0
src/main/java/com/huiju/estateagents/activity/service/impl/ActivityServiceImpl.java Dosyayı Görüntüle

@@ -21,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
21 21
 import org.springframework.stereotype.Service;
22 22
 
23 23
 import java.util.List;
24
+import java.util.Map;
24 25
 
25 26
 /**
26 27
  * @author FXF
@@ -113,4 +114,22 @@ public class ActivityServiceImpl implements ActivityServiceI {
113 114
 		pg.setRecords(list);
114 115
 		return ResponseBean.success(pg);
115 116
 	}
117
+	
118
+	/**
119
+	 * 获取客户参加的活动信息
120
+	 *
121
+	 * @param pageNumber
122
+	 * @param pageSize
123
+	 * @param orgId
124
+	 * @param person
125
+	 * @return
126
+	 */
127
+	@Override
128
+	public ResponseBean getCustomerActivityList(Integer pageNumber, Integer pageSize, Integer orgId, TaPerson person) {
129
+		//分页获取全部数据
130
+		Page pg = new Page(pageNumber,pageSize);
131
+		List<Map<String, Object>> customerActivityList = activityMapper.getCustomerActivityList(pg, orgId, person.getPersonId());
132
+		pg.setRecords(customerActivityList);
133
+		return ResponseBean.success(pg);
134
+	}
116 135
 }

+ 4
- 2
src/main/java/com/huiju/estateagents/controller/TaBuildingController.java Dosyayı Görüntüle

@@ -236,10 +236,12 @@ public class TaBuildingController extends BaseController {
236 236
     @ApiOperation(value = "依据项目ID 查户型", notes = "依据项目ID 查户型")
237 237
     @ApiImplicitParams({
238 238
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "id", value = "项目ID"),
239
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "apartmentType", value = "类型"),
239 240
     })
240 241
     @RequestMapping(value = "/admin/buildingApartment/buildingId/{id}", method = RequestMethod.GET)
241
-    public ResponseBean buildingApartmentBuildingId(@PathVariable(value = "id") String id){
242
-        return taBuildingService.buildingApartmentBuildingId(id);
242
+    public ResponseBean buildingApartmentBuildingId(@PathVariable(value = "id") String id,
243
+                                                    @RequestParam(value = "apartmentType", required = false) String apartmentType){
244
+        return taBuildingService.buildingApartmentBuildingId(id, apartmentType);
243 245
     }
244 246
 
245 247
     /**

+ 21
- 0
src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java Dosyayı Görüntüle

@@ -200,4 +200,25 @@ public class TaPersonVisitRecordController extends BaseController {
200 200
             return ResponseBean.error(e.getMessage(),ResponseBean.ERROR_UNAVAILABLE);
201 201
         }
202 202
     }
203
+    
204
+    /**
205
+     * 盘客工具分页获取访问记录
206
+     * @param pageNum
207
+     * @param pageSize
208
+     * @return
209
+     */
210
+    @RequestMapping(value="/wx/taPersonVisitRecord",method= RequestMethod.GET)
211
+    public ResponseBean wxPersonVisitRecordList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
212
+                                                @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
213
+                                                @RequestParam(value = "customerId") String customerId){
214
+        try {
215
+            //使用分页插件
216
+            IPage<TaPersonVisitRecord> pg = new Page<>(pageNum, pageSize);
217
+            IPage<TaPersonVisitRecord> result = iTaPersonVisitRecordService.getPersonVisitRecordList(pg, customerId);
218
+            return ResponseBean.success(result);
219
+        }catch (Exception e){
220
+            logger.error("taPersonVisitRecordList -=- {}",e.toString());
221
+            return ResponseBean.error(e.getMessage(),ResponseBean.ERROR_UNAVAILABLE);
222
+        }
223
+    }
203 224
 }

+ 56
- 1
src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java Dosyayı Görüntüle

@@ -765,5 +765,60 @@ public class TaRecommendCustomerController extends BaseController {
765 765
 
766 766
 
767 767
     }
768
-
768
+    
769
+    /**
770
+     * 查询判客工具下的我的客户人数集合
771
+     * @param request
772
+     * @return
773
+     */
774
+    @GetMapping("/wx/inventory/customer/statistics")
775
+    @ApiOperation(value = "查询我的客户人数统计", notes = "查询我的客户人数统计")
776
+    public ResponseBean getMyCustStatistics(HttpServletRequest request) {
777
+        String openid = getOpenId(request);
778
+        return taRecommendCustomerService.getMyCustStatistics(openid);
779
+    }
780
+    
781
+    /**
782
+     * 分页查询判客工具下的我的客户跟进人集合
783
+     *  根据type区分  follow 跟进  clinch 成交
784
+     * @param request
785
+     * @return
786
+     */
787
+    @GetMapping("/wx/inventory/customer/{type}")
788
+    @ApiOperation(value = "查询我的客户人数统计", notes = "查询我的客户人数统计")
789
+    public ResponseBean getMyCustFollows(@PathVariable(value = "type") String type,
790
+                                         @RequestParam(value = "pageNumber",defaultValue = "0") Integer pageNumber,
791
+                                         @RequestParam(value = "pageSize",defaultValue = "10") Integer pageSize,
792
+                                         @RequestParam(value = "name",required = false) String name,
793
+                                         @RequestParam(value = "phone",required = false) String phone,
794
+                                         @RequestParam(value = "status",required = false) Integer status,HttpServletRequest request) {
795
+        String openid = getOpenId(request);
796
+        return taRecommendCustomerService.getMyCustFollowOrClinch(pageNumber,pageSize,openid,type,name,phone,status);
797
+    }
798
+    
799
+    /**
800
+     * 查询盘客工具下我的客户详情
801
+     * @param request
802
+     * @return
803
+     */
804
+    @GetMapping("/wx/inventory/customer/{customerId}")
805
+    @ApiOperation(value = "查询客户详情", notes = "查询客户详情")
806
+    public ResponseBean getMyCustDetail(@PathVariable(value = "customerId") String customerId,HttpServletRequest request) {
807
+        String openid = getOpenId(request);
808
+        return taRecommendCustomerService.getMyCustDetail(customerId,openid);
809
+    }
810
+    
811
+    /**
812
+     * 查询盘客工具下编辑基本信息
813
+     * @param request
814
+     * @return
815
+     */
816
+    @PutMapping("/wx/inventory/customer/{customerId}")
817
+    @ApiOperation(value = "编辑客户信息", notes = "编辑客户信息")
818
+    public ResponseBean updateMyCustDetail(@PathVariable(value = "customerId") String customerId,
819
+                                           @RequestBody TaRecommendCustomer taRecommendCustomer, HttpServletRequest request) {
820
+        String openid = getOpenId(request);
821
+        taRecommendCustomer.setCustomerId(customerId);
822
+        return taRecommendCustomerService.updateMyCust(taRecommendCustomer,openid);
823
+    }
769 824
 }

+ 39
- 0
src/main/java/com/huiju/estateagents/controller/TaUvController.java Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 package com.huiju.estateagents.controller;
2 2
 
3 3
 
4
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 5
 import com.huiju.estateagents.base.ResponseBean;
5 6
 import com.huiju.estateagents.common.JWTUtils;
6 7
 import com.huiju.estateagents.entity.TaUv;
@@ -11,6 +12,9 @@ import org.springframework.web.bind.annotation.*;
11 12
 import com.huiju.estateagents.base.BaseController;
12 13
 
13 14
 import javax.servlet.http.HttpServletRequest;
15
+import java.time.LocalDateTime;
16
+import java.util.List;
17
+import java.util.stream.Collectors;
14 18
 
15 19
 /**
16 20
  * <p>
@@ -40,4 +44,39 @@ public class TaUvController extends BaseController {
40 44
 
41 45
         return taUvService.getListOf(id, typeOf, pageNumber, pageSize);
42 46
     }
47
+
48
+
49
+    /**
50
+     * 测试:重复插入数据 ta_uv 表
51
+     */
52
+    //@RequestMapping(value = "/admin/test/uv", method = RequestMethod.GET)
53
+    public  ResponseBean testUv(HttpServletRequest request, @RequestParam("beUv") String beUv, @RequestParam("num") Integer num){
54
+        ResponseBean responseBean = new ResponseBean();
55
+        QueryWrapper<TaUv> queryWrapper = new QueryWrapper<>();
56
+        queryWrapper.eq("be_uv", beUv);
57
+        queryWrapper.eq("tagert_type", "project");
58
+        List<TaUv> list = taUvService.list(queryWrapper);
59
+
60
+//        TaUv uv = new TaUv();
61
+//        uv.setPersonId("8a79cdad85182211abeab6adcafd5830");
62
+//        uv.setNameOrnick("党党");
63
+//        uv.setPhotoOravatar("https://wx.qlogo.cn/mmopen/vi_32/ywmrMa0pkIVrPwNAedLt58eKMlicQSHce2M0TUBJFdFIH5pYPPMVfbKJHJJNicDfVrfRVuGXpn3xseJCTTT5nqibg/132");
64
+//        uv.setBeUv("2dd1dadd467751adcc106cb7cb1ab76d");
65
+//        uv.setTagertType("project");
66
+//        uv.setCreateDate(LocalDateTime.of(2019, 9, 9, 10, 10));
67
+//        taUvService.save(uv);
68
+
69
+        int i = 0;
70
+        for (int t = 0; t < num; t++) {
71
+            List<TaUv> collect = list.stream().map(e -> {
72
+                e.setCreateDate(LocalDateTime.of(2019, 9, 9, 10, 10));
73
+                e.setUvId(null);
74
+                return e;
75
+            }).collect(Collectors.toList());
76
+
77
+            taUvService.saveBatch(collect);
78
+        }
79
+
80
+        return responseBean;
81
+    }
43 82
 }

+ 7
- 2
src/main/java/com/huiju/estateagents/entity/HelpActivity.java Dosyayı Görüntüle

@@ -107,9 +107,14 @@ public class HelpActivity implements Serializable {
107 107
     private String img;
108 108
 
109 109
     /**
110
-     * 列表
110
+     * 助力封面图1,用于活动列表
111 111
      */
112
-    private String detailImg;
112
+    private String listImg;
113
+
114
+    /**
115
+     * 助力封面图2,用于首页底部活动轮播
116
+     */
117
+    private String bannerListImg;
113 118
 
114 119
     /**
115 120
      * 城市ID

+ 4
- 1
src/main/java/com/huiju/estateagents/entity/TaBuilding.java Dosyayı Görüntüle

@@ -198,7 +198,10 @@ public class TaBuilding implements Serializable {
198 198
      */
199 199
     private Integer mapScope;
200 200
 
201
-
201
+    /**
202
+     * 地图数据
203
+     */
204
+    private String mapJson;
202 205
 
203 206
     /**
204 207
      * 图片

+ 1
- 1
src/main/java/com/huiju/estateagents/entity/TaBuildingDynamic.java Dosyayı Görüntüle

@@ -47,7 +47,7 @@ public class TaBuildingDynamic implements Serializable {
47 47
     /**
48 48
      * 首页详情图片URL
49 49
      */
50
-    private String detailImgUrl;
50
+    private String listImgUrl;
51 51
 
52 52
     /**
53 53
      * 标题

+ 6
- 0
src/main/java/com/huiju/estateagents/entity/TaPersonVisitRecord.java Dosyayı Görüntüle

@@ -101,5 +101,11 @@ public class TaPersonVisitRecord implements Serializable {
101 101
      */
102 102
     @TableField(exist = false)
103 103
     private Integer accessCount;
104
+    
105
+    /**
106
+     * 楼盘名称
107
+     */
108
+    @TableField(exist = false)
109
+    private String buildingName;
104 110
 
105 111
 }

+ 7
- 2
src/main/java/com/huiju/estateagents/entity/TaShareActivity.java Dosyayı Görüntüle

@@ -51,9 +51,14 @@ public class TaShareActivity implements Serializable {
51 51
     private String mainImg;
52 52
 
53 53
     /**
54
-     * 活动列表
54
+     * 拼团封面图1,用于活动列表
55 55
      */
56
-    private String detailImg;
56
+    private String listImg;
57
+
58
+    /**
59
+     * 拼团封面图2,用于首页底部活动轮播
60
+     */
61
+    private String bannerListImg;
57 62
 
58 63
     /**
59 64
      * 活动开始时间

+ 9
- 3
src/main/java/com/huiju/estateagents/mapper/TaPersonVisitRecordMapper.java Dosyayı Görüntüle

@@ -49,7 +49,13 @@ public interface TaPersonVisitRecordMapper extends BaseMapper<TaPersonVisitRecor
49 49
     @ResultType(TaPersonVisitRecord.class)
50 50
     @Select("select * from ta_person_visit_record where event = #{event} and person_id = #{personId} and org_id = #{orgId} ")
51 51
     List<TaPersonVisitRecord> selectEventAll(@Param("event") String event, @Param("personId") String personId, @Param("orgId") Integer orgId);
52
-
53
-
54
-
52
+    
53
+    
54
+    /**
55
+     * 获取用户行为列表
56
+     * @param pg
57
+     * @param personId
58
+     * @return
59
+     */
60
+	IPage<TaPersonVisitRecord> getPersonVisitRecordList(IPage<TaPersonVisitRecord> pg,@Param("personId") String personId);
55 61
 }

+ 30
- 1
src/main/java/com/huiju/estateagents/mapper/TaRecommendCustomerMapper.java Dosyayı Görüntüle

@@ -10,6 +10,7 @@ import org.apache.ibatis.annotations.Mapper;
10 10
 import org.apache.ibatis.annotations.Param;
11 11
 
12 12
 import java.util.List;
13
+import java.util.Map;
13 14
 
14 15
 /**
15 16
  * <p>
@@ -150,7 +151,35 @@ public interface TaRecommendCustomerMapper extends BaseMapper<TaRecommendCustome
150 151
      * @return
151 152
      */
152 153
     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);
154
+    
155
+    /**
156
+     * 获取我的客户的人数统计
157
+     * @param personId
158
+     * @param userId
159
+     * @return
160
+     */
161
+	List<Map<String, Object>> getMyCustStatistics(@Param("personId") String personId,@Param("userId") Integer userId,@Param("orgId") Integer orgId);
162
+    
163
+    /**
164
+     * 获取我的跟进客户数据
165
+     * @param page
166
+     * @param personId
167
+     * @param userId
168
+     * @param orgId
169
+     * @param type
170
+     * @param name
171
+     * @param phone
172
+     * @param status
173
+     * @return
174
+     */
175
+    IPage<TaRecommendCustomer> getMyCustFollowOrClinch(IPage<TaRecommendCustomer> page, @Param("personId") String personId, @Param("userId") Integer userId, @Param("orgId") Integer orgId, @Param("type") String type, @Param("name") String name, @Param("phone") String phone,@Param("status") Integer status);
176
+    
177
+    /**
178
+     * 获取我的客户详情数据
179
+     * @param customerId
180
+     * @return
181
+     */
182
+    TaRecommendCustomer getMyCustDetailById(String customerId);
153 183
 
154 184
     List<PersonIntention> getCustomerIntentions(@Param("personId")String personId);
155
-
156 185
 }

+ 2
- 2
src/main/java/com/huiju/estateagents/service/ITaBuildingService.java Dosyayı Görüntüle

@@ -90,7 +90,7 @@ public interface ITaBuildingService extends IService<TaBuilding> {
90 90
     ResponseBean buildingApartmentAdd(String parameter);
91 91
 
92 92
     /**
93
-     * 户型添加
93
+     * 户型修改
94 94
      * @param parameter
95 95
      * @return
96 96
      */
@@ -141,7 +141,7 @@ public interface ITaBuildingService extends IService<TaBuilding> {
141 141
      * @param id
142 142
      * @return
143 143
      */
144
-    ResponseBean buildingApartmentBuildingId(String id);
144
+    ResponseBean buildingApartmentBuildingId(String id, String apartmentType);
145 145
 
146 146
     /**
147 147
      * 户型删除

+ 7
- 0
src/main/java/com/huiju/estateagents/service/ITaPersonVisitRecordService.java Dosyayı Görüntüle

@@ -15,6 +15,13 @@ import com.huiju.estateagents.entity.TaPersonVisitRecord;
15 15
  * @since 2019-07-23
16 16
  */
17 17
 public interface ITaPersonVisitRecordService extends IService<TaPersonVisitRecord> {
18
+	/**
19
+	 * 分页获取客户访问记录
20
+	 * @param pg
21
+	 * @param customerId
22
+	 * @return
23
+	 */
24
+	IPage<TaPersonVisitRecord> getPersonVisitRecordList(IPage<TaPersonVisitRecord> pg, String customerId);
18 25
 //    IPage<TaPerson> selectCustomer(IPage<TaPerson> page);
19 26
 //    TaPerson customerInfo(String personId);
20 27
 }

+ 35
- 1
src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java Dosyayı Görüntüle

@@ -97,5 +97,39 @@ public interface ITaRecommendCustomerService extends IService<TaRecommendCustome
97 97
      * @return
98 98
      */
99 99
     List<AgentsRecommendCustomer> getIndependentAgentsExport(Integer orgId, Integer pageCode, Integer pageSize);
100
-
100
+    
101
+    /**
102
+     * 查询我的客户人数集合
103
+     * @param openid
104
+     * @return
105
+     */
106
+    ResponseBean getMyCustStatistics(String openid);
107
+    
108
+    /**
109
+     * 分页查询我的跟进客户集合
110
+     * @param pageNumber
111
+     * @param pageSize
112
+     * @param openid
113
+     * @param name
114
+     * @param phone
115
+     * @param status
116
+     * @return
117
+     */
118
+    ResponseBean getMyCustFollowOrClinch(Integer pageNumber, Integer pageSize, String openid, String type, String name, String phone, Integer status);
119
+    
120
+    /**
121
+     * 获取盘客工具下我的客户详情
122
+     * @param customerId
123
+     * @param openid
124
+     * @return
125
+     */
126
+    ResponseBean getMyCustDetail(String customerId, String openid);
127
+    
128
+    /**
129
+     * 更新我的客户基本信息
130
+     * @param taRecommendCustomer
131
+     * @param openid
132
+     * @return
133
+     */
134
+    ResponseBean updateMyCust(TaRecommendCustomer taRecommendCustomer, String openid);
101 135
 }

+ 2
- 0
src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java Dosyayı Görüntüle

@@ -173,6 +173,7 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
173 173
 //        buildingDynamic.setDynamicId(idGen.nextId()+"");
174 174
         buildingDynamic.setBuildingId(map.get("buildingId")+"");
175 175
         buildingDynamic.setImgUrl((String) map.get("imgUrl"));
176
+        buildingDynamic.setListImgUrl((String) map.get("listImgUrl"));
176 177
         buildingDynamic.setDesc(map.get("desc")+"");
177 178
         buildingDynamic.setUrl(map.get("url")+"");
178 179
         buildingDynamic.setTitle(map.get("title")+"");
@@ -207,6 +208,7 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
207 208
         buildingDynamic.setDynamicId(map.get("dynamicId")+"");
208 209
         buildingDynamic.setBuildingId(map.get("buildingId")+"");
209 210
         buildingDynamic.setImgUrl((String) map.get("imgUrl"));
211
+        buildingDynamic.setListImgUrl((String) map.get("listImgUrl"));
210 212
         buildingDynamic.setDesc(map.get("desc")+"");
211 213
         buildingDynamic.setUrl(map.get("url")+"");
212 214
         buildingDynamic.setTitle(map.get("title")+"");

+ 18
- 1
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java Dosyayı Görüntüle

@@ -625,12 +625,29 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
625 625
     }
626 626
 
627 627
     @Override
628
-    public ResponseBean buildingApartmentBuildingId(String id) {
628
+    public ResponseBean buildingApartmentBuildingId(String id, String apartmentType) {
629 629
         QueryWrapper<TaBuildingApartment> buildingApartmentQueryWrapper = new QueryWrapper<>();
630 630
         buildingApartmentQueryWrapper.eq("building_id", id);
631 631
         buildingApartmentQueryWrapper.eq("status",1);
632
+        buildingApartmentQueryWrapper.eq(org.apache.commons.lang3.StringUtils.isNotBlank(apartmentType),"apartment_type",apartmentType);
632 633
         buildingApartmentQueryWrapper.orderByDesc("create_date");
633 634
         List<TaBuildingApartment> buildingApartment= taBuildingApartmentMapper.selectList(buildingApartmentQueryWrapper);
635
+        buildingApartment.forEach(e -> {
636
+            QueryWrapper<TaApartmentImg> ApartmentImgQueryWrapper = new QueryWrapper<>();
637
+            ApartmentImgQueryWrapper.eq("apartment_id", e.getApartmentId());
638
+            List<TaApartmentImg> buildingImg= taApartmentImgMapper.selectList(ApartmentImgQueryWrapper);
639
+
640
+            List<TaBuildingImg> buildingImag = buildingImg.stream().map(img -> {
641
+                QueryWrapper<TaBuildingImg> buildingImgQueryWrapper = new QueryWrapper<>();
642
+                buildingImgQueryWrapper.eq("img_id", img.getImgId());
643
+                buildingImgQueryWrapper.eq("img_type", "aparment");
644
+                return taBuildingImgMapper.selectOne(buildingImgQueryWrapper);
645
+            }).collect(Collectors.toList());
646
+
647
+            e.setBuildingImgList(buildingImag);
648
+
649
+        });
650
+
634 651
         return ResponseBean.success(buildingApartment);
635 652
     }
636 653
 

+ 24
- 0
src/main/java/com/huiju/estateagents/service/impl/TaPersonVisitRecordServiceImpl.java Dosyayı Görüntüle

@@ -4,12 +4,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 5
 import com.huiju.estateagents.entity.TaPerson;
6 6
 import com.huiju.estateagents.entity.TaPersonVisitRecord;
7
+import com.huiju.estateagents.entity.TaRecommendCustomer;
7 8
 import com.huiju.estateagents.mapper.TaPersonMapper;
8 9
 import com.huiju.estateagents.mapper.TaPersonVisitRecordMapper;
10
+import com.huiju.estateagents.mapper.TaRecommendCustomerMapper;
9 11
 import com.huiju.estateagents.service.ITaPersonVisitRecordService;
10 12
 import org.springframework.beans.factory.annotation.Autowired;
11 13
 import org.springframework.stereotype.Service;
12 14
 
15
+import java.util.List;
16
+
13 17
 /**
14 18
  * <p>
15 19
  *   服务实现类
@@ -20,6 +24,26 @@ import org.springframework.stereotype.Service;
20 24
  */
21 25
 @Service
22 26
 public class TaPersonVisitRecordServiceImpl extends ServiceImpl<TaPersonVisitRecordMapper, TaPersonVisitRecord> implements ITaPersonVisitRecordService {
27
+	
28
+	@Autowired
29
+	private TaRecommendCustomerMapper taRecommendCustomerMapper;
30
+	
31
+	@Autowired
32
+	private TaPersonVisitRecordMapper personVisitRecordMapper;
33
+	
34
+	/**
35
+	 * 分页获取客户访问记录
36
+	 *
37
+	 * @param pg
38
+	 * @param customerId
39
+	 * @return
40
+	 */
41
+	@Override
42
+	public IPage<TaPersonVisitRecord> getPersonVisitRecordList(IPage<TaPersonVisitRecord> pg, String customerId) {
43
+		TaRecommendCustomer taRecommendCustomer = taRecommendCustomerMapper.selectById(customerId);
44
+		IPage<TaPersonVisitRecord> result = personVisitRecordMapper.getPersonVisitRecordList(pg,taRecommendCustomer.getPersonId());
45
+		return result;
46
+	}
23 47
 //    @Autowired
24 48
 //    private TaPersonMapper taPersonMapper;
25 49
 //    @Autowired

+ 106
- 2
src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java Dosyayı Görüntüle

@@ -1,6 +1,5 @@
1 1
 package com.huiju.estateagents.service.impl;
2 2
 
3
-import ch.qos.logback.core.status.StatusUtil;
4 3
 import com.alibaba.fastjson.JSONObject;
5 4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6 5
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -20,10 +19,11 @@ import com.huiju.estateagents.mapper.*;
20 19
 import com.huiju.estateagents.service.IMiniAppService;
21 20
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
22 21
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
22
+import com.huiju.estateagents.statistic.entity.TaCustomerFollowUpRecord;
23
+import com.huiju.estateagents.statistic.mapper.TaCustomerFollowUpRecordMapper;
23 24
 import org.springframework.beans.factory.annotation.Autowired;
24 25
 import org.springframework.stereotype.Service;
25 26
 
26
-import javax.naming.spi.ResolveResult;
27 27
 import java.time.LocalDateTime;
28 28
 import java.util.HashMap;
29 29
 import java.util.List;
@@ -60,6 +60,9 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
60 60
 
61 61
     @Autowired
62 62
     private TdCityMapper cityMapper;
63
+    
64
+    @Autowired
65
+    private TaCustomerFollowUpRecordMapper customerFollowUpRecordMapper;
63 66
 
64 67
     @Override
65 68
     public ResponseBean getMyCustList(String openid, String keywords, int pageNumber, int pageSize) {
@@ -583,4 +586,105 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
583 586
     public List<AgentsRecommendCustomer> getIndependentAgentsExport(Integer orgId, Integer pageCode, Integer pageSize) {
584 587
         return taRecommendCustomerMapper.getIndependentAgentsExport(orgId, pageCode, pageSize);
585 588
     }
589
+    
590
+    /**
591
+     * 查询我的客户人数集合
592
+     *
593
+     * @param openid
594
+     * @return
595
+     */
596
+    @Override
597
+    public ResponseBean getMyCustStatistics(String openid) {
598
+        List<TaPerson> taPersons = getPersonsByOpenId(openid);
599
+        if (null == taPersons || taPersons.size() != 1) {
600
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
601
+        }
602
+    
603
+        TaPerson taPerson = taPersons.get(0);
604
+        List<Map<String,Object>> list = taRecommendCustomerMapper.getMyCustStatistics(taPerson.getPersonId(),taPerson.getUserId(),taPerson.getOrgId());
605
+        return ResponseBean.success(list);
606
+    }
607
+    
608
+    /**
609
+     * 分页查询我的跟进客户集合
610
+     *
611
+     * @param pageNumber
612
+     * @param pageSize
613
+     * @param openid
614
+     * @param name
615
+     * @param phone
616
+     * @param status
617
+     * @return
618
+     */
619
+    @Override
620
+    public ResponseBean getMyCustFollowOrClinch(Integer pageNumber, Integer pageSize, String openid, String type, String name, String phone, Integer status) {
621
+        List<TaPerson> taPersons = getPersonsByOpenId(openid);
622
+        if (null == taPersons || taPersons.size() != 1) {
623
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
624
+        }
625
+    
626
+        TaPerson taPerson = taPersons.get(0);
627
+        
628
+        IPage<TaRecommendCustomer> page = new Page<>();
629
+        page.setCurrent(pageNumber);
630
+        page.setSize(pageSize);
631
+        
632
+        //分页获取跟进客户status != 4的为跟进客户, status = 4的为成交客户 根据type区分  follow 跟进  clinch 成交
633
+        IPage<TaRecommendCustomer> result = taRecommendCustomerMapper.getMyCustFollowOrClinch(page, taPerson.getPersonId(),taPerson.getUserId(),taPerson.getOrgId(), type,name,phone,status);
634
+        return ResponseBean.success(result);
635
+    }
636
+    
637
+    /**
638
+     * 获取盘客工具下我的客户详情
639
+     *
640
+     * @param customerId
641
+     * @param openid
642
+     * @return
643
+     */
644
+    @Override
645
+    public ResponseBean getMyCustDetail(String customerId, String openid) {
646
+        List<TaPerson> taPersons = getPersonsByOpenId(openid);
647
+        if (null == taPersons || taPersons.size() != 1) {
648
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
649
+        }
650
+    
651
+        TaPerson taPerson = taPersons.get(0);
652
+        TaRecommendCustomer taRecommendCustomer = taRecommendCustomerMapper.getMyCustDetailById(customerId);
653
+        //添加跟进行为
654
+        addCustomerFpllowUp(taPerson,taRecommendCustomer,"查看客户详情");
655
+        return ResponseBean.success(taRecommendCustomer);
656
+    }
657
+    
658
+    /**
659
+     * 更新我的客户基本信息
660
+     *
661
+     * @param taRecommendCustomer
662
+     * @param openid
663
+     * @return
664
+     */
665
+    @Override
666
+    public ResponseBean updateMyCust(TaRecommendCustomer taRecommendCustomer, String openid) {
667
+        List<TaPerson> taPersons = getPersonsByOpenId(openid);
668
+        if (null == taPersons || taPersons.size() != 1) {
669
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
670
+        }
671
+    
672
+        TaPerson taPerson = taPersons.get(0);
673
+        taRecommendCustomerMapper.updateById(taRecommendCustomer);
674
+        //添加跟进行为
675
+        addCustomerFpllowUp(taPerson,taRecommendCustomer,"编辑客户信息");
676
+        return ResponseBean.success(taRecommendCustomer);
677
+    }
678
+    
679
+    //添加跟进行为
680
+    private void addCustomerFpllowUp(TaPerson taPerson,TaRecommendCustomer taRecommendCustomer,String recordType) {
681
+        TaCustomerFollowUpRecord taCustomerFollowUpRecord = new TaCustomerFollowUpRecord();
682
+        taCustomerFollowUpRecord.setOrgId(taPerson.getOrgId());
683
+        taCustomerFollowUpRecord.setCreateDate(LocalDateTime.now());
684
+        taCustomerFollowUpRecord.setCustomerId(taRecommendCustomer.getCustomerId());
685
+        taCustomerFollowUpRecord.setRecordType(recordType);
686
+        taCustomerFollowUpRecord.setFollowerId(taPerson.getPersonId());
687
+        taCustomerFollowUpRecord.setCustomerSex(taRecommendCustomer.getSex());
688
+        customerFollowUpRecordMapper.insert(taCustomerFollowUpRecord);
689
+    }
586 690
 }

+ 77
- 2
src/main/java/com/huiju/estateagents/statistic/controller/TaCustomerFollowUpRecordController.java Dosyayı Görüntüle

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.huiju.estateagents.base.BaseController;
7 7
 import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.entity.TaPerson;
9
+import com.huiju.estateagents.service.ITaPersonService;
8 10
 import com.huiju.estateagents.statistic.entity.TaCustomerFollowUpRecord;
9 11
 import com.huiju.estateagents.statistic.service.ITaCustomerFollowUpRecordService;
10 12
 import org.slf4j.Logger;
@@ -18,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestParam;
18 20
 import org.springframework.web.bind.annotation.ResponseBody;
19 21
 import org.springframework.web.bind.annotation.RestController;
20 22
 
23
+import javax.servlet.http.HttpServletRequest;
24
+import java.util.List;
25
+
21 26
 /**
22 27
  * <p>
23 28
     * 跟进记录表 小程序盘客工具我的客户跟进记录信息 前端控制器
@@ -27,14 +32,16 @@ import org.springframework.web.bind.annotation.RestController;
27 32
  * @since 2019-11-08
28 33
  */
29 34
 @RestController
30
-@RequestMapping("/")
35
+@RequestMapping("/api")
31 36
 public class TaCustomerFollowUpRecordController extends BaseController {
32 37
 
33 38
     private final Logger logger = LoggerFactory.getLogger(TaCustomerFollowUpRecordController.class);
34 39
 
35 40
     @Autowired
36 41
     public ITaCustomerFollowUpRecordService iTaCustomerFollowUpRecordService;
37
-
42
+    
43
+    @Autowired
44
+    private ITaPersonService taPersonService;
38 45
 
39 46
     /**
40 47
      * 分页查询列表
@@ -146,4 +153,72 @@ public class TaCustomerFollowUpRecordController extends BaseController {
146 153
         }
147 154
         return responseBean;
148 155
     }
156
+    
157
+    /**
158
+     * 盘客工具添加跟进记录
159
+     * @param taCustomerFollowUpRecord 实体对象
160
+     * @return
161
+     */
162
+    @RequestMapping(value="/wx/taCustomerFollowUpRecord",method= RequestMethod.POST)
163
+    public ResponseBean wxCustomerFollowUpRecordAdd(@RequestBody TaCustomerFollowUpRecord taCustomerFollowUpRecord, HttpServletRequest request){
164
+        ResponseBean responseBean = new ResponseBean();
165
+        String openid = getOpenId(request);
166
+        Integer orgId = getOrgId(request);
167
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
168
+        if (null == taPersons || taPersons.size() != 1) {
169
+            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
170
+        }
171
+        TaPerson person = taPersons.get(0);
172
+        try {
173
+            taCustomerFollowUpRecord.setFollowerId(person.getPersonId());
174
+            if (iTaCustomerFollowUpRecordService.save(taCustomerFollowUpRecord)){
175
+                responseBean.addSuccess(taCustomerFollowUpRecord);
176
+            }else {
177
+                responseBean.addError("fail");
178
+            }
179
+        }catch (Exception e){
180
+            e.printStackTrace();
181
+            logger.error("taCustomerFollowUpRecordAdd -=- {}",e.toString());
182
+            responseBean.addError(e.getMessage());
183
+        }
184
+        return responseBean;
185
+    }
186
+    
187
+    /**
188
+     * 分页查询跟进记录列表
189
+     * @param pageNum
190
+     * @param pageSize
191
+     * @return
192
+     */
193
+    @RequestMapping(value="/wx/taCustomerFollowUpRecord",method= RequestMethod.GET)
194
+    public ResponseBean wxCustomerFollowUpRecordList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
195
+                                                     @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
196
+                                                     @RequestParam(value ="customerId",required = true) Integer customerId,
197
+                                                     HttpServletRequest request){
198
+        ResponseBean responseBean = new ResponseBean();
199
+        String openid = getOpenId(request);
200
+        Integer orgId = getOrgId(request);
201
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
202
+        if (null == taPersons || taPersons.size() != 1) {
203
+            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
204
+        }
205
+        TaPerson person = taPersons.get(0);
206
+        try {
207
+            //使用分页插件
208
+            IPage<TaCustomerFollowUpRecord> pg = new Page<>(pageNum, pageSize);
209
+            QueryWrapper<TaCustomerFollowUpRecord> queryWrapper = new QueryWrapper<>();
210
+            queryWrapper.eq("follower_id",person.getPersonId());
211
+            queryWrapper.eq("org_id",orgId);
212
+            queryWrapper.eq("customer_id",customerId);
213
+            queryWrapper.orderByDesc("create_date");
214
+            
215
+            IPage<TaCustomerFollowUpRecord> result = iTaCustomerFollowUpRecordService.page(pg, queryWrapper);
216
+            responseBean.addSuccess(result);
217
+        }catch (Exception e){
218
+            e.printStackTrace();
219
+            logger.error("taCustomerFollowUpRecordList -=- {}",e.toString());
220
+            responseBean.addError(e.getMessage());
221
+        }
222
+        return responseBean;
223
+    }
149 224
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/statistic/entity/TaCustomerFollowUpRecord.java Dosyayı Görüntüle

@@ -58,7 +58,7 @@ public class TaCustomerFollowUpRecord implements Serializable {
58 58
     /**
59 59
      * 跟进人ID
60 60
      */
61
-    private Integer followerId;
61
+    private String followerId;
62 62
     
63 63
     /**
64 64
      * 客户性别

+ 76
- 0
src/main/resources/mapper/Activity.xml Dosyayı Görüntüle

@@ -25,4 +25,80 @@
25 25
         </if>
26 26
         ORDER BY weight desc,activity_status,start_date
27 27
     </select>
28
+    <select id="getCustomerActivityList" resultType="java.util.Map">
29
+        SELECT
30
+            t.enlist_id AS id,
31
+            t.dynamic_id AS activityId,
32
+            t.create_date AS createDate,
33
+            IF( t.is_checkin = 1, "已签到", "未签到" ) AS `status`,
34
+            d.img_url AS mainImg,
35
+            d.title,
36
+            d.start_date AS startDate,
37
+            d.enlist_end AS endDate,
38
+            'dynamic' AS type
39
+        FROM
40
+            ta_activity_dynamic_enlist t
41
+            LEFT JOIN ta_building_dynamic d ON t.dynamic_id = d.dynamic_id
42
+        WHERE
43
+            t.org_id = #{orgId}
44
+            AND t.person_id = #{personId}
45
+      UNION ALL
46
+        SELECT
47
+            t.record_id AS id,
48
+            t.group_activity_id AS activityId,
49
+            t.create_time AS createDate,
50
+        CASE
51
+            WHEN t.STATUS = 1 THEN
52
+            "进行中"
53
+            WHEN t.STATUS = 0
54
+            AND t.verification_status = 1 THEN
55
+            "成功已核销"
56
+        WHEN t.STATUS = 0
57
+        AND t.verification_status != 1 THEN
58
+        "成功未核销"
59
+        WHEN t.STATUS = 2 THEN
60
+        "失败"
61
+        END `status`,
62
+            d.main_img AS mainImg,
63
+            d.activity_name AS title,
64
+            d.start_time AS startDate,
65
+            d.end_time AS endDate,
66
+            'group' AS type
67
+        FROM
68
+            ta_share_record t
69
+            LEFT JOIN ta_share_activity d ON t.group_activity_id = d.group_activity_id
70
+        WHERE
71
+            t.org_id = #{orgId}
72
+            AND t.person_id = #{personId}
73
+      UNION ALL
74
+        SELECT
75
+            t.help_record_initiate_id AS id,
76
+            t.help_activity_id AS activityId,
77
+            t.create_date AS createDate,
78
+        CASE
79
+                WHEN t.STATUS = 1 THEN
80
+                "进行中"
81
+                WHEN t.STATUS = 0
82
+                AND t.verification_status = 1 THEN
83
+                    "成功已核销"
84
+                    WHEN t.STATUS = 0
85
+                    AND t.verification_status != 1 THEN
86
+                        "成功未核销"
87
+                        WHEN t.STATUS = 2 THEN
88
+                        "失败"
89
+                    END `status`,
90
+            d.img AS mainImg,
91
+            d.title,
92
+            d.start_date AS startDate,
93
+            d.end_date AS endDate,
94
+            'help' AS type
95
+        FROM
96
+            ta_help_initiate_record t
97
+            LEFT JOIN ta_help_activity d ON t.help_activity_id = d.help_activity_id
98
+        WHERE
99
+            t.org_id = #{orgId}
100
+            AND t.person_id = #{personId}
101
+        ORDER BY
102
+        createDate DESC
103
+    </select>
28 104
 </mapper>

+ 12
- 0
src/main/resources/mapper/TaPersonVisitRecordMapper.xml Dosyayı Görüntüle

@@ -49,5 +49,17 @@
49 49
         GROUP BY tpvr.person_id, tpvr.event
50 50
         ORDER BY 	accessCount DESC,tpvr.visit_time DESC
51 51
     </select>
52
+    <select id="getPersonVisitRecordList" resultType="com.huiju.estateagents.entity.TaPersonVisitRecord">
53
+        SELECT
54
+            t.*,
55
+            b.building_name
56
+        FROM
57
+            ta_person_visit_record t
58
+            LEFT JOIN ta_building b ON t.building_id = b.building_id
59
+        WHERE
60
+            t.person_id = #{personId}
61
+        ORDER BY
62
+            t.visit_time DESC
63
+    </select>
52 64
 
53 65
 </mapper>

+ 56
- 12
src/main/resources/mapper/TaRecommendCustomerMapper.xml Dosyayı Görüntüle

@@ -230,7 +230,7 @@ FROM
230 230
             b.status > 0
231 231
             and b.org_id = #{orgId}
232 232
             AND IFNULL(b.person_type, '') in ('estate agent', 'customer')
233
-            AND b.person_id not IN ( SELECT c.person_id FROM ta_recommend_customer c WHERE c.org_id = #{orgId} AND person_id is not null AND person_id = ''  )
233
+            AND b.person_id not IN ( SELECT c.person_id FROM ta_recommend_customer c WHERE c.org_id = #{orgId} AND person_id is not null AND person_id != ''  )
234 234
             <if test="name != null and name !=''">
235 235
                 and b.nickname like CONCAT('%',#{name}, '%')
236 236
             </if>
@@ -605,19 +605,63 @@ FROM
605 605
         limit #{pageCode}, #{pageSize}
606 606
     </select>
607 607
 
608
+    <select id="getMyCustStatistics" resultType="java.util.Map">
609
+        SELECT
610
+            sum( IF ( STATUS = 4, 1, 0 ) ) AS followSum,
611
+            sum( IF ( STATUS != 4 AND STATUS != 4, 1, 0 ) ) AS clinchSum
612
+        FROM
613
+            ta_recommend_customer
614
+        WHERE
615
+            org_id = #{orgId}
616
+        AND ( realty_consultant = #{personId} OR realty_consultant = #{userId} )
617
+    </select>
618
+
619
+    <select id="getMyCustFollowOrClinch" resultType="com.huiju.estateagents.entity.TaRecommendCustomer">
620
+        SELECT
621
+            *
622
+        FROM
623
+            ta_recommend_customer
624
+        WHERE
625
+            org_id = #{orgId}
626
+        AND ( realty_consultant = #{personId} OR realty_consultant = #{userId} )
627
+        <if test="type == 'follow'">
628
+          AND STATUS != 4
629
+            <if test="name != null and name !=''">
630
+                and `name` like CONCAT('%',#{name}, '%')
631
+            </if>
632
+            <if test="phone != null and phone !=''">
633
+                and phone like CONCAT('%',#{phone}, '%')
634
+            </if>
635
+            <if test="status != null and status !=''">
636
+                and status = #{status}
637
+            </if>
638
+        </if>
639
+        <if test="type == 'clinch'">
640
+          AND STATUS = 4
641
+        </if>
642
+    </select>
643
+
644
+    <select id="getMyCustDetailById" resultType="com.huiju.estateagents.entity.TaRecommendCustomer">
645
+        SELECT
646
+            *
647
+        FROM
648
+            ta_recommend_customer
649
+        where customer_id = #{customerId}
650
+    </select>
651
+
608 652
     <select id="getCustomerIntentions" resultType="com.huiju.estateagents.entity.PersonIntention">
609 653
         SELECT
610
-	SUM( intention ) AS intention,
611
-	building_id,
612
-	building_name
613
-FROM
614
-	`ta_person_intention_record`
615
-WHERE
616
-	person_id = #{personId}
617
-GROUP BY
618
-	building_id
619
-ORDER BY
620
-	intention DESC
654
+            SUM( intention ) AS intention,
655
+            building_id,
656
+            building_name
657
+        FROM
658
+            `ta_person_intention_record`
659
+        WHERE
660
+            person_id = #{personId}
661
+        GROUP BY
662
+            building_id
663
+        ORDER BY
664
+            intention DESC
621 665
     </select>
622 666
 
623 667
 </mapper>