weichaochao 5 years ago
parent
commit
a11182cbdd

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

394
         }
394
         }
395
     }
395
     }
396
 
396
 
397
+    /**
398
+     * 分配置业顾问
399
+     */
400
+    @RequestMapping(value="/admin/customer/consultant/assist/{personId}",method= RequestMethod.POST)
401
+    public ResponseBean assistConsultant (@RequestBody TaUser taUser, @PathVariable String personId, HttpServletRequest request){
402
+        try{
403
+            Integer orgId = getOrgId(request);
404
+            taRecommendCustomerService.consultantAssist(taUser, personId, orgId);
405
+            return ResponseBean.success("");
406
+        }catch (Exception e){
407
+            e.printStackTrace();
408
+            return ResponseBean.error(e.getMessage(),ResponseBean.ERROR_UNAVAILABLE);
409
+        }
410
+    }
397
 
411
 
398
     @GetMapping("/admin/customer/recommend/{customerId}")
412
     @GetMapping("/admin/customer/recommend/{customerId}")
399
     public ResponseBean getCustomersIRecommended (@RequestParam int pageNumber, @RequestParam int pageSize, @PathVariable String customerId,HttpServletRequest request){
413
     public ResponseBean getCustomersIRecommended (@RequestParam int pageNumber, @RequestParam int pageSize, @PathVariable String customerId,HttpServletRequest request){

+ 4
- 1
src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java View File

2
 
2
 
3
 import com.baomidou.mybatisplus.core.metadata.IPage;
3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.center.taUser.entity.TaUser;
5
 import com.huiju.estateagents.entity.TaPerson;
6
 import com.huiju.estateagents.entity.TaPerson;
6
 import com.huiju.estateagents.entity.TaPersonBuilding;
7
 import com.huiju.estateagents.entity.TaPersonBuilding;
7
 import com.huiju.estateagents.entity.TaRecommendCustomer;
8
 import com.huiju.estateagents.entity.TaRecommendCustomer;
9
 import com.huiju.estateagents.excel.AgentsRecommendCustomer;
10
 import com.huiju.estateagents.excel.AgentsRecommendCustomer;
10
 import com.huiju.estateagents.excel.ExcelRecommendCustomer;
11
 import com.huiju.estateagents.excel.ExcelRecommendCustomer;
11
 import com.huiju.estateagents.excel.ReporRecommendCustomer;
12
 import com.huiju.estateagents.excel.ReporRecommendCustomer;
13
+import io.swagger.models.auth.In;
12
 
14
 
13
-import java.time.LocalDateTime;
14
 import java.util.List;
15
 import java.util.List;
15
 
16
 
16
 /**
17
 /**
54
 
55
 
55
     TaRecommendCustomer newByPerson(TaPerson person);
56
     TaRecommendCustomer newByPerson(TaPerson person);
56
 
57
 
58
+    ResponseBean consultantAssist(TaUser taUser, String personId, Integer orgId);
59
+
57
     /**
60
     /**
58
      * 导出数据(推荐客户)
61
      * 导出数据(推荐客户)
59
      * @param orgId
62
      * @param orgId

+ 9
- 9
src/main/java/com/huiju/estateagents/service/impl/StatisticalServiceImpl.java View File

330
     @Override
330
     @Override
331
     public ResponseBean selectPersonFrom(Integer orgId, LocalDate startDate, LocalDate endDate) {
331
     public ResponseBean selectPersonFrom(Integer orgId, LocalDate startDate, LocalDate endDate) {
332
         ResponseBean responseBean = new ResponseBean();
332
         ResponseBean responseBean = new ResponseBean();
333
-        List<TsPersonFromStatistic> list = tsPersonFromStatisticMapper.selectPersonFrom(orgId,startDate,endDate);
333
+//        List<TsPersonFromStatistic> list = tsPersonFromStatisticMapper.selectPersonFrom(orgId,startDate,endDate);
334
         QueryWrapper<TdWxDict> tdWxDictQueryWrapper = new QueryWrapper<>();
334
         QueryWrapper<TdWxDict> tdWxDictQueryWrapper = new QueryWrapper<>();
335
         tdWxDictQueryWrapper.groupBy("scene_type");
335
         tdWxDictQueryWrapper.groupBy("scene_type");
336
         List<TdWxDict> tdWxDicts = tdWxDictMapper.selectList(tdWxDictQueryWrapper);
336
         List<TdWxDict> tdWxDicts = tdWxDictMapper.selectList(tdWxDictQueryWrapper);
337
-        tdWxDicts.forEach(e -> {
338
-            int fromSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getFromNum).sum();
339
-            int registerSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getRegisteredNum).sum();
340
-            e.setFromData(fromSum);
341
-            e.setRegisterSum(registerSum);
342
-        });
337
+//        tdWxDicts.forEach(e -> {
338
+//            int fromSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getFromNum).sum();
339
+//            int registerSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getRegisteredNum).sum();
340
+//            e.setFromData(fromSum);
341
+//            e.setRegisterSum(registerSum);
342
+//        });
343
         Map<String,Object> map = new HashMap<>();
343
         Map<String,Object> map = new HashMap<>();
344
         map.put("tdWxDicts",tdWxDicts);
344
         map.put("tdWxDicts",tdWxDicts);
345
-        List<TsPersonFromStatistic> tableList = tsPersonFromStatisticMapper.selectPersonFromGroupByData(orgId,startDate,endDate);
346
-        map.put("list",tableList);
345
+//        List<TsPersonFromStatistic> tableList = tsPersonFromStatisticMapper.selectPersonFromGroupByData(orgId,startDate,endDate);
346
+//        map.put("list",tableList);
347
         responseBean.addSuccess(map);
347
         responseBean.addSuccess(map);
348
         return responseBean;
348
         return responseBean;
349
     }
349
     }

+ 49
- 0
src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java View File

750
         }
750
         }
751
     }
751
     }
752
 
752
 
753
+    @Override
754
+    public ResponseBean consultantAssist(TaUser taUser, String personId, Integer orgId) {
755
+        TaPerson taPerson = taPersonMapper.getById(personId);
756
+
757
+        QueryWrapper<TaPerson> taPersonQueryWrapper = new QueryWrapper();
758
+        taPersonQueryWrapper.eq("user_id", taUser.getUserId());
759
+        TaPerson recommendPerson = taPersonMapper.selectOne(taPersonQueryWrapper);
760
+
761
+        QueryWrapper<TaUser> queryWrapper = new QueryWrapper();
762
+        queryWrapper.eq("user_id", taUser.getUserId());
763
+        TaUser userInfo = taUserMapper.selectOne(queryWrapper);
764
+
765
+        QueryWrapper<TaPersonBuilding> taPersonBuildingQueryWrapper = new QueryWrapper();
766
+        taPersonBuildingQueryWrapper.eq("user_id", taUser.getUserId());
767
+        TaPersonBuilding taPersonBuilding = taPersonBuildingMapper.selectOne(taPersonBuildingQueryWrapper);
768
+
769
+        if (null == userInfo || userInfo.getStatus() != CommConstant.STATUS_NORMAL) {
770
+            return ResponseBean.error("置业顾问不存在或已被注销", ResponseBean.ERROR_UNAVAILABLE);
771
+        }
772
+
773
+        TaRecommendCustomer taRecommendCustomer = new TaRecommendCustomer();
774
+        taRecommendCustomer.setOrgId(orgId);
775
+        taRecommendCustomer.setName(taPerson.getNickname());
776
+        taRecommendCustomer.setPicture(taPerson.getAvatarurl());
777
+        taRecommendCustomer.setPhone(taPerson.getPhone());
778
+        taRecommendCustomer.setSex(null == taPerson.getGender() ? null : ("1".equals(taPerson.getGender()) ? 1 : 2));
779
+        taRecommendCustomer.setRealtyConsultant(userInfo.getUserId().toString());
780
+        taRecommendCustomer.setBuildingId(taPersonBuilding.getBuildingId());
781
+        TaBuilding building = taBuildingMapper.selectById(taPersonBuilding.getBuildingId());
782
+        taRecommendCustomer.setIntention(building.getBuildingName());
783
+        taRecommendCustomer.setReportRecommendStatus(CommConstant.VERIFY_AGREE);
784
+        taRecommendCustomer.setCreateDate(LocalDateTime.now());
785
+        taRecommendCustomer.setReportDate(LocalDateTime.now());
786
+        taRecommendCustomer.setPersonId(taPerson.getPersonId());
787
+        taRecommendCustomer.setEntryType(CommConstant.ENTRY_VERIFY);
788
+        taRecommendCustomer.setVerifyStatus(CommConstant.VERIFY_AGREE);
789
+        taRecommendCustomer.setStatus(CommConstant.CUSTOMER_REPORT);
790
+        taRecommendCustomer.setPersonId(personId);
791
+        taRecommendCustomer.setRecommendPerson(recommendPerson == null ? taUser.getUserId().toString() : recommendPerson.getPersonId());
792
+
793
+        int row = taRecommendCustomerMapper.insert(taRecommendCustomer);
794
+        if (row < 1) {
795
+            return ResponseBean.error("分配客户失败", ResponseBean.ERROR_UNAVAILABLE);
796
+        }
797
+
798
+        return ResponseBean.success(taRecommendCustomer);
799
+
800
+    }
801
+
753
     private List<TaRecommendCustomer> getCustomerByPhone(String phone) {
802
     private List<TaRecommendCustomer> getCustomerByPhone(String phone) {
754
         QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
803
         QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
755
         queryWrapper.eq("phone", phone);
804
         queryWrapper.eq("phone", phone);