傅行帆 před 3 roky
rodič
revize
a98e6162f2

+ 13
- 1
src/main/java/com/yunzhi/marketing/center/taUser/controller/TaUserController.java Zobrazit soubor

@@ -1,6 +1,7 @@
1 1
 package com.yunzhi.marketing.center.taUser.controller;
2 2
 
3 3
 import com.alibaba.fastjson.JSONObject;
4
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 5
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5 6
 import com.baomidou.mybatisplus.core.metadata.IPage;
6 7
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -21,7 +22,9 @@ import com.yunzhi.marketing.mapper.TaRoleMapper;
21 22
 import com.yunzhi.marketing.entity.*;
22 23
 import com.yunzhi.marketing.service.*;
23 24
 import com.yunzhi.marketing.xlk.entity.Institution;
25
+import com.yunzhi.marketing.xlk.entity.UserInstitution;
24 26
 import com.yunzhi.marketing.xlk.service.IInstitutionService;
27
+import com.yunzhi.marketing.xlk.service.IUserInstitutionService;
25 28
 import io.jsonwebtoken.lang.Collections;
26 29
 import io.swagger.annotations.Api;
27 30
 import io.swagger.annotations.ApiOperation;
@@ -37,6 +40,7 @@ import java.util.ArrayList;
37 40
 import java.util.HashMap;
38 41
 import java.util.List;
39 42
 import java.util.Map;
43
+import java.util.stream.Collectors;
40 44
 
41 45
 /**
42 46
  * <p>
@@ -92,6 +96,9 @@ public class TaUserController extends BaseController {
92 96
     @Autowired
93 97
     private IInstitutionService iInstitutionService;
94 98
 
99
+    @Autowired
100
+    private IUserInstitutionService userInstitutionService;
101
+
95 102
     /**
96 103
      * 分页查询列表
97 104
      * @param pageNum
@@ -442,7 +449,7 @@ public class TaUserController extends BaseController {
442 449
             taUser.setMiniStatus(miniStatus);
443 450
             taUser.setJobNumber(jobNumber);
444 451
 
445
-            IPage<TaUser> result = iTaUserService.seleUserList(pg,taUser,getTaPersonBuildingListByUserId(request));
452
+            IPage<TaUser> result = iTaUserService.seleUserList(pg,taUser,getTaPersonBuildingListByUserId(request),getInstitutionIds(request));
446 453
             List<TaUser> taUserList = result.getRecords();
447 454
             taUserList.forEach(e -> {
448 455
                 List<TaTags> taTagsList = iTaUserService.getTagsList(e);
@@ -510,6 +517,11 @@ public class TaUserController extends BaseController {
510 517
                     taUser.setBuildingIds(buildings);
511 518
                 }
512 519
             }
520
+            // 绑定的组织机构返回
521
+            LambdaQueryWrapper<UserInstitution> institutionLambdaQueryWrapper = new LambdaQueryWrapper<>();
522
+            institutionLambdaQueryWrapper.eq(UserInstitution::getUserId,id);
523
+            List<UserInstitution> list = userInstitutionService.list(institutionLambdaQueryWrapper);
524
+            taUser.setInstitutionIdLis(list.stream().map(UserInstitution::getInstitutionId).collect(Collectors.toList()));
513 525
             responseBean.addSuccess(taUser);
514 526
         }catch (Exception e){
515 527
             e.printStackTrace();

+ 1
- 1
src/main/java/com/yunzhi/marketing/center/taUser/mapper/TaUserMapper.java Zobrazit soubor

@@ -29,7 +29,7 @@ public interface TaUserMapper extends BaseMapper<TaUser> {
29 29
 	
30 30
 	List<TaUser> getUserList(@Param("phone") String phone,@Param("orgId") Integer orgId);
31 31
 
32
-    IPage<TaUser> seleUserList(IPage pg,@Param("taUser") TaUser taUser,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList);
32
+    IPage<TaUser> seleUserList(IPage pg,@Param("taUser") TaUser taUser,@Param("personBuildingList") List<TaPersonBuilding> personBuildingList,@Param("institutionIds") List<String> institutionIds);
33 33
 
34 34
     Integer validateWeight(@Param("buildingIds") List<String> buildingIds, @Param("buildingId") String buildingId, @Param("weight") String weight, @Param("userId")Integer userId);
35 35
 

+ 1
- 1
src/main/java/com/yunzhi/marketing/center/taUser/service/ITaUserService.java Zobrazit soubor

@@ -65,7 +65,7 @@ public interface ITaUserService extends IService<TaUser> {
65 65
      * @param taPersonBuildingListByUserId
66 66
      * @return
67 67
      */
68
-    IPage<TaUser> seleUserList(IPage pg, TaUser taUser, List<TaPersonBuilding> taPersonBuildingListByUserId);
68
+    IPage<TaUser> seleUserList(IPage pg, TaUser taUser, List<TaPersonBuilding> taPersonBuildingListByUserId,List<String> institutionIds);
69 69
 
70 70
     /**
71 71
      * 获取用户信息

+ 35
- 15
src/main/java/com/yunzhi/marketing/center/taUser/service/impl/TaUserServiceImpl.java Zobrazit soubor

@@ -1,6 +1,7 @@
1 1
 package com.yunzhi.marketing.center.taUser.service.impl;
2 2
 
3 3
 import cn.binarywang.wx.miniapp.api.WxMaService;
4
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 5
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5 6
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
6 7
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -25,6 +26,7 @@ import com.yunzhi.marketing.mapper.*;
25 26
 import com.yunzhi.marketing.service.*;
26 27
 import com.yunzhi.marketing.xlk.entity.UserInstitution;
27 28
 import com.yunzhi.marketing.xlk.mapper.UserInstitutionMapper;
29
+import me.chanjar.weixin.cp.bean.WxCpAgent;
28 30
 import org.apache.commons.collections.CollectionUtils;
29 31
 import org.springframework.beans.factory.annotation.Autowired;
30 32
 import org.springframework.stereotype.Service;
@@ -499,20 +501,18 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
499 501
             taPersonBuilding.setUserId(taUser.getUserId());
500 502
             taPersonBuilding.setCreateDate(LocalDateTime.now());
501 503
             taPersonBuildingMapper.insert(taPersonBuilding);
504
+        } else {
505
+            //非置业顾问可授权多个项目
506
+            List<String> buildingIdList = taUser.getBuildingIds();
507
+            LocalDateTime nowTime = LocalDateTime.now();
508
+            buildingIdList.forEach(e -> {
509
+                TaPersonBuilding taPersonBuilding = new TaPersonBuilding();
510
+                taPersonBuilding.setBuildingId(e);
511
+                taPersonBuilding.setUserId(taUser.getUserId());
512
+                taPersonBuilding.setCreateDate(nowTime);
513
+                taPersonBuildingMapper.insert(taPersonBuilding);
514
+            });
502 515
         }
503
-//        // 这个版本取消非置业顾问授权
504
-//        else {
505
-//            //非置业顾问可授权多个项目
506
-//            List<String> buildingIdList = taUser.getBuildingIds();
507
-//            LocalDateTime nowTime = LocalDateTime.now();
508
-//            buildingIdList.forEach(e -> {
509
-//                TaPersonBuilding taPersonBuilding = new TaPersonBuilding();
510
-//                taPersonBuilding.setBuildingId(e);
511
-//                taPersonBuilding.setUserId(taUser.getUserId());
512
-//                taPersonBuilding.setCreateDate(nowTime);
513
-//                taPersonBuildingMapper.insert(taPersonBuilding);
514
-//            });
515
-//        }
516 516
 
517 517
         return taUser;
518 518
     }
@@ -607,6 +607,26 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
607 607
             });
608 608
         }
609 609
 
610
+        // 更新这个用户的组织机构
611
+        List<String> institutionIdLis = taUser.getInstitutionIdLis();
612
+        if (institutionIdLis.size() > 0) {
613
+            // 先删除后新增
614
+            LambdaQueryWrapper<UserInstitution> userInstitutionLambdaQueryWrapper = new LambdaQueryWrapper<>();
615
+            userInstitutionLambdaQueryWrapper.eq(UserInstitution::getUserId,taUser.getUserId());
616
+            userInstitutionMapper.delete(userInstitutionLambdaQueryWrapper);
617
+            // 新增
618
+            institutionIdLis.forEach(e -> {
619
+                UserInstitution userInstitution = new UserInstitution();
620
+                userInstitution.setInstitutionId(e);
621
+                userInstitution.setOrgId(taUser.getOrgId());
622
+                userInstitution.setUserId(taUser.getUserId());
623
+                userInstitution.setCreateDate(LocalDateTime.now());
624
+                userInstitutionMapper.insert(userInstitution);
625
+
626
+            });
627
+        }
628
+
629
+
610 630
         //更新person
611 631
         TaPerson taPerson = new TaPerson();
612 632
         taPerson.setAvatarurl(taUser.getAvatar());
@@ -703,8 +723,8 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
703 723
      * @return
704 724
      */
705 725
     @Override
706
-    public IPage<TaUser> seleUserList(IPage pg, TaUser taUser, List<TaPersonBuilding> personBuildingList) {
707
-        return taUserMapper.seleUserList(pg, taUser, personBuildingList);
726
+    public IPage<TaUser> seleUserList(IPage pg, TaUser taUser, List<TaPersonBuilding> personBuildingList,List<String> institutionIds) {
727
+        return taUserMapper.seleUserList(pg, taUser, personBuildingList,institutionIds);
708 728
     }
709 729
 
710 730
     @Override

+ 5
- 1
src/main/java/com/yunzhi/marketing/controller/ExtendContentController.java Zobrazit soubor

@@ -97,6 +97,7 @@ public class ExtendContentController extends BaseController {
97 97
             queryWrapper.ne("status",9);
98 98
             queryWrapper.eq(status != null, "status", status);
99 99
             queryWrapper.eq( "org_id", getOrgId(request));
100
+            queryWrapper.in("institution_id",getInstitutionIds(request));
100 101
             queryWrapper.and(taPersonBuildingList.size() > 0, wapper -> wapper.in("building_id",taPersonBuildingList.stream().map(TaPersonBuilding::getBuildingId).collect(Collectors.toList())).or().eq("create_user",getUserId(request)));
101 102
             queryWrapper.orderByDesc("order_no");
102 103
             queryWrapper.orderByDesc("create_date");
@@ -186,7 +187,10 @@ public class ExtendContentController extends BaseController {
186 187
             extendContent.setContentType("nothing");
187 188
         }
188 189
         extendContent.setCreateUser(getUserId(request));
189
-        extendContent.setInstitutionId(getInstitutionId(extendContent.getBuildingId()));
190
+        if (StringUtils.isNotEmpty(extendContent.getBuildingId())) {
191
+            extendContent.setInstitutionId(getInstitutionId(extendContent.getBuildingId()));
192
+        }
193
+
190 194
         responseBean = iExtendContentService.extendContentAdd(extendContent);
191 195
         responseBean.addSuccess(extendContent);
192 196
         return responseBean;

+ 0
- 1
src/main/java/com/yunzhi/marketing/controller/TaChannelController.java Zobrazit soubor

@@ -140,7 +140,6 @@ public class TaChannelController extends BaseController {
140 140
             int channelCode= taChannelMapper.channelCode();
141 141
             channel.setChannelCode(String.valueOf(channelCode));
142 142
             channel.setOrgId(orgId);
143
-            channel.setInstitutionId(getInstitutionId(channel.getBuildingId()));
144 143
             if (taChannelService.save(channel)){
145 144
                 responseBean.addSuccess(channel);
146 145
             }else {

+ 2
- 1
src/main/java/com/yunzhi/marketing/controller/TaNewsController.java Zobrazit soubor

@@ -81,7 +81,7 @@ public class TaNewsController extends BaseController {
81 81
                                    @RequestParam(value = "newsStatus", required = false) Integer newsStatus,
82 82
                                    @RequestParam(value = "title", required = false) String title,
83 83
                                    @RequestParam(value = "cityId", required = false) Integer cityId){
84
-        ResponseBean responseBean = iTaNewsService.getList(pageNum, pageSize, buildingId, getOrgId(request), newsTypeId, newsStatus, title, cityId,getTaPersonBuildingListByUserId(request));
84
+        ResponseBean responseBean = iTaNewsService.getList(pageNum, pageSize, buildingId, getOrgId(request), newsTypeId, newsStatus, title, cityId,getTaPersonBuildingListByUserId(request),getInstitutionIds(request));
85 85
         return responseBean;
86 86
     }
87 87
 
@@ -129,6 +129,7 @@ public class TaNewsController extends BaseController {
129 129
         Integer cityId = iTaBuildingService.getCityById(taNews.getBuildingId());
130 130
         taNews.setCityId(cityId);
131 131
         taNews.setOrgId(getOrgId(request));
132
+        taNews.setInstitutionId(getInstitutionId(taNews.getBuildingId()));
132 133
         ResponseBean responseBean = iTaNewsService.addTaNews(taNews);
133 134
         return responseBean;
134 135
     }

+ 1
- 1
src/main/java/com/yunzhi/marketing/controller/TaNewsTypeController.java Zobrazit soubor

@@ -57,7 +57,7 @@ public class TaNewsTypeController extends BaseController {
57 57
                                        @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
58 58
                                        @RequestParam(value = "buildingId", required = false) String buildingId,
59 59
                                        HttpServletRequest request){
60
-        ResponseBean responseBean = iTaNewsTypeService.getList(pageNum, pageSize, buildingId, getOrgId(request),getTaPersonBuildingListByUserId(request));
60
+        ResponseBean responseBean = iTaNewsTypeService.getList(pageNum, pageSize, buildingId, getOrgId(request),getTaPersonBuildingListByUserId(request),getInstitutionIds(request));
61 61
         return responseBean;
62 62
     }
63 63
 

+ 1
- 1
src/main/java/com/yunzhi/marketing/controller/TdBuildingTypeController.java Zobrazit soubor

@@ -113,7 +113,7 @@ public class TdBuildingTypeController extends BaseController {
113 113
 
114 114
     /**
115 115
      * 分页查询列表
116
-     * @param pageNum
116
+     * @param
117 117
      * @param pageSize
118 118
      * @return
119 119
      */

+ 5
- 0
src/main/java/com/yunzhi/marketing/entity/TaNewsType.java Zobrazit soubor

@@ -59,4 +59,9 @@ public class TaNewsType implements Serializable {
59 59
      * 状态
60 60
      */
61 61
     private Integer status;
62
+
63
+    /**
64
+     * 组织机构id
65
+     */
66
+    private String institutionId;
62 67
 }

+ 1
- 1
src/main/java/com/yunzhi/marketing/service/ITaNewsService.java Zobrazit soubor

@@ -27,7 +27,7 @@ public interface ITaNewsService extends IService<TaNews> {
27 27
      * @param newsTypeId
28 28
      * @return
29 29
      */
30
-    ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList);
30
+    ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds);
31 31
 
32 32
     /**
33 33
      * 根据Id查询资讯数据

+ 1
- 1
src/main/java/com/yunzhi/marketing/service/ITaNewsTypeService.java Zobrazit soubor

@@ -25,7 +25,7 @@ public interface ITaNewsTypeService extends IService<TaNewsType> {
25 25
      * @param orgId
26 26
      * @return
27 27
      */
28
-    ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, List<TaPersonBuilding> personBuildingList);
28
+    ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds);
29 29
 
30 30
     /**
31 31
      * 根据Id查询资讯类型数据

+ 2
- 1
src/main/java/com/yunzhi/marketing/service/impl/TaNewsServiceImpl.java Zobrazit soubor

@@ -55,7 +55,7 @@ public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> impleme
55 55
 
56 56
 
57 57
     @Override
58
-    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList) {
58
+    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds) {
59 59
         ResponseBean responseBean = new ResponseBean();
60 60
 
61 61
         IPage<TaNews> page = new Page<>();
@@ -70,6 +70,7 @@ public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> impleme
70 70
         taNewsQueryWrapper.eq("status", 1);
71 71
         taNewsQueryWrapper.eq(cityId != null, "city_id", cityId);
72 72
         taNewsQueryWrapper.like(title!=null,"news_name", title);
73
+        taNewsQueryWrapper.in("institution_id",institutionIds);
73 74
         taNewsQueryWrapper.in(personBuildingList.size() > 0,"building_id",personBuildingList.stream().map(TaPersonBuilding::getBuildingId).collect(Collectors.toList()));
74 75
         taNewsQueryWrapper.orderByAsc("news_status");
75 76
         taNewsQueryWrapper.orderByDesc("weight","create_date");

+ 5
- 1
src/main/java/com/yunzhi/marketing/service/impl/TaNewsTypeServiceImpl.java Zobrazit soubor

@@ -42,7 +42,7 @@ public class TaNewsTypeServiceImpl extends ServiceImpl<TaNewsTypeMapper, TaNewsT
42 42
 
43 43
 
44 44
     @Override
45
-    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, List<TaPersonBuilding> personBuildingList) {
45
+    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds) {
46 46
         ResponseBean responseBean = new ResponseBean();
47 47
         IPage<TaNewsType> page = new Page<>();
48 48
         page.setCurrent(pageNum);
@@ -52,6 +52,7 @@ public class TaNewsTypeServiceImpl extends ServiceImpl<TaNewsTypeMapper, TaNewsT
52 52
         taNewsQueryWrapper.eq(StringUtils.isNotBlank(buildingId),"building_id", buildingId);
53 53
         taNewsQueryWrapper.eq(orgId != null,"org_id", orgId);
54 54
         taNewsQueryWrapper.eq("status", 1);
55
+        taNewsQueryWrapper.in("institution_id",institutionIds);
55 56
         taNewsQueryWrapper.in(personBuildingList.size() > 0,"building_id", personBuildingList.stream().map(TaPersonBuilding::getBuildingId).collect(Collectors.toList()));
56 57
         taNewsQueryWrapper.orderByDesc("create_date");
57 58
         IPage<TaNewsType> typeIPage = this.page(page, taNewsQueryWrapper);
@@ -99,6 +100,9 @@ public class TaNewsTypeServiceImpl extends ServiceImpl<TaNewsTypeMapper, TaNewsT
99 100
         taNewsType.setCreateDate(LocalDateTime.now());
100 101
         taNewsType.setStatus(1);
101 102
         taNewsType.setOrgId(orgId);
103
+        String buildingId = taNewsType.getBuildingId();
104
+        TaBuilding building = iTaBuildingService.getById(buildingId);
105
+        taNewsType.setInstitutionId(building.getInstitutionId());
102 106
         this.save(taNewsType);
103 107
         responseBean.addSuccess(taNewsType);
104 108
         return responseBean;

+ 15
- 1
src/main/resources/mapper/TaUserMapper.xml Zobrazit soubor

@@ -66,7 +66,21 @@
66 66
             d.person_id as consultant_person_id,
67 67
             if(d.person_id is not null,1,0) as mini_status
68 68
         FROM
69
-            ta_user t
69
+            (SELECT
70
+                u.*
71
+                FROM
72
+                ta_user u
73
+                LEFT JOIN xlk_user_institution i ON u.user_id = i.user_id
74
+                WHERE
75
+                u.org_id = #{taUser.orgId}
76
+                <if test="institutionIds != null and institutionIds.size > 0">
77
+                    AND i.institution_id in
78
+                    <foreach collection="institutionIds" item="item" open="(" close=")" separator=",">
79
+                        #{item}
80
+                    </foreach>
81
+                </if>
82
+                GROUP BY
83
+                u.user_id) t
70 84
             LEFT JOIN ta_person_building b ON t.user_id = b.user_id
71 85
             LEFT JOIN ta_person d on t.user_id = d.user_id
72 86
         WHERE