Ver código fonte

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

魏熙美 5 anos atrás
pai
commit
4159fcd895
35 arquivos alterados com 896 adições e 115 exclusões
  1. 63
    0
      src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthButtonController.java
  2. 61
    0
      src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthMenuController.java
  3. 33
    1
      src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java
  4. 22
    0
      src/main/java/com/huiju/estateagents/center/taUser/entity/TaUser.java
  5. 40
    0
      src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserAuthButtonMapper.java
  6. 48
    0
      src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserAuthMenuMapper.java
  7. 22
    0
      src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthButtonService.java
  8. 22
    0
      src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthMenuService.java
  9. 97
    0
      src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthButtonServiceImpl.java
  10. 108
    0
      src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java
  11. 24
    44
      src/main/java/com/huiju/estateagents/common/WxUtils.java
  12. 23
    16
      src/main/java/com/huiju/estateagents/controller/MiniAppController.java
  13. 1
    1
      src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java
  14. 4
    1
      src/main/java/com/huiju/estateagents/entity/SysButtonInMenu.java
  15. 7
    0
      src/main/java/com/huiju/estateagents/entity/SysMenu.java
  16. 3
    0
      src/main/java/com/huiju/estateagents/entity/TaMiniapp.java
  17. 2
    0
      src/main/java/com/huiju/estateagents/entity/TaPerson.java
  18. 4
    0
      src/main/java/com/huiju/estateagents/mapper/TaMiniappMapper.java
  19. 2
    1
      src/main/java/com/huiju/estateagents/mapper/TaMiniappTemplateMapper.java
  20. 4
    0
      src/main/java/com/huiju/estateagents/mapper/TaRoleMapper.java
  21. 13
    8
      src/main/java/com/huiju/estateagents/service/IMiniAppService.java
  22. 3
    1
      src/main/java/com/huiju/estateagents/service/ITaRoleService.java
  23. 68
    22
      src/main/java/com/huiju/estateagents/service/impl/MiniAppServiceImpl.java
  24. 11
    0
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java
  25. 10
    0
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java
  26. 1
    1
      src/main/java/com/huiju/estateagents/service/impl/TaChatServiceImpl.java
  27. 11
    4
      src/main/java/com/huiju/estateagents/service/impl/TaNewsServiceImpl.java
  28. 23
    11
      src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java
  29. 1
    1
      src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java
  30. 9
    0
      src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java
  31. 10
    1
      src/main/resources/mapper/TaMiniappMapper.xml
  32. 10
    1
      src/main/resources/mapper/TaMiniappTemplateMapper.xml
  33. 9
    1
      src/main/resources/mapper/TaRoleMapper.xml
  34. 60
    0
      src/main/resources/mapper/TaUserAuthButtonMapper.xml
  35. 67
    0
      src/main/resources/mapper/TaUserAuthMenuMapper.xml

+ 63
- 0
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthButtonController.java Ver arquivo

@@ -0,0 +1,63 @@
1
+package com.huiju.estateagents.center.taUser.controller;
2
+
3
+import com.huiju.estateagents.base.BaseController;
4
+import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthButtonService;
6
+import com.huiju.estateagents.entity.SysButtonInMenu;
7
+import com.huiju.estateagents.entity.SysMenu;
8
+import org.springframework.beans.factory.annotation.Autowired;
9
+import org.springframework.web.bind.annotation.*;
10
+
11
+import java.util.List;
12
+
13
+/**
14
+ * @author weicc
15
+ * @Title: TaUserAuthButtonController
16
+ * @Description: TODO
17
+ * @date 2019/9/23
18
+ */
19
+@RestController
20
+@RequestMapping("/api")
21
+public class TaUserAuthButtonController extends BaseController {
22
+
23
+    @Autowired
24
+    public ITaUserAuthButtonService iTaUserAuthButtonService;
25
+
26
+    /**
27
+     * 根据userId获取菜单列表
28
+     * @param pageNum
29
+     * @param pageSize
30
+     * @param userId
31
+     * @return
32
+     */
33
+    @RequestMapping(value="/admin/userAuthButton/{userId}",method= RequestMethod.GET)
34
+    public ResponseBean getButtonByUserId(@RequestParam("pageNum")Integer pageNum,
35
+                                        @RequestParam("pageSize")Integer pageSize,
36
+                                        @PathVariable String userId){
37
+        return iTaUserAuthButtonService.getButtonByUserId(pageNum,pageSize,userId);
38
+    }
39
+
40
+
41
+    /**
42
+     * 获取所有的菜单按钮
43
+     * @param pageNum
44
+     * @param pageSize
45
+     * @return
46
+     */
47
+    @RequestMapping(value="/admin/buttonList",method= RequestMethod.GET)
48
+    public ResponseBean getMenuByRole(@RequestParam("pageNum")Integer pageNum,
49
+                                      @RequestParam("pageSize")Integer pageSize){
50
+        return iTaUserAuthButtonService.getAllButton(pageNum, pageSize);
51
+    }
52
+
53
+    /**
54
+     * 用户授权按钮
55
+     * @param userId
56
+     * @return
57
+     */
58
+    @RequestMapping(value="/admin/updateAuthButton/{userId}",method= RequestMethod.PUT)
59
+    public ResponseBean updateUserAuthMenu(@PathVariable Integer userId,
60
+                                           @RequestBody List<SysButtonInMenu> sysButtonList){
61
+        return iTaUserAuthButtonService.updateUserAuthButton(userId, sysButtonList);
62
+    }
63
+}

+ 61
- 0
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthMenuController.java Ver arquivo

@@ -0,0 +1,61 @@
1
+package com.huiju.estateagents.center.taUser.controller;
2
+
3
+import com.huiju.estateagents.base.BaseController;
4
+import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
6
+import com.huiju.estateagents.entity.SysMenu;
7
+import org.springframework.beans.factory.annotation.Autowired;
8
+import org.springframework.web.bind.annotation.*;
9
+
10
+import java.util.List;
11
+
12
+/**
13
+ * @author weicc
14
+ * @Title: TaUserAuthMenuController
15
+ * @Description: TODO
16
+ * @date 2019/9/21
17
+ */
18
+@RestController
19
+@RequestMapping("/api")
20
+public class TaUserAuthMenuController extends BaseController {
21
+
22
+    @Autowired
23
+    public ITaUserAuthMenuService iTaUserAuthMenuService;
24
+
25
+    /**
26
+     * 根据userId获取菜单列表
27
+     * @param pageNum
28
+     * @param pageSize
29
+     * @param userId
30
+     * @return
31
+     */
32
+    @RequestMapping(value="/admin/userAuthMenu/{userId}",method= RequestMethod.GET)
33
+    public ResponseBean  getMenuByUserId(@RequestParam("pageNum")Integer pageNum,
34
+                                         @RequestParam("pageSize")Integer pageSize,
35
+                                         @PathVariable String userId){
36
+        return iTaUserAuthMenuService.getMenuByUserId(pageNum,pageSize,userId);
37
+    }
38
+
39
+    /**
40
+     * 获取所有菜单
41
+     * @param pageNum
42
+     * @param pageSize
43
+     * @return
44
+     */
45
+    @RequestMapping(value="/admin/menuList",method= RequestMethod.GET)
46
+    public ResponseBean getMenuByRole(@RequestParam("pageNum")Integer pageNum,
47
+                                      @RequestParam("pageSize")Integer pageSize){
48
+        return iTaUserAuthMenuService.getAllMenu(pageNum, pageSize);
49
+    }
50
+
51
+    /**
52
+     * 用户授权菜单
53
+     * @param userId
54
+     * @return
55
+     */
56
+    @RequestMapping(value="/admin/updateAuthMenu/{userId}",method= RequestMethod.PUT)
57
+    public ResponseBean updateUserAuthMenu(@PathVariable Integer userId,
58
+                                           @RequestBody List<SysMenu> sysMenuList){
59
+        return iTaUserAuthMenuService.updateUserAuthMenu(userId, sysMenuList);
60
+    }
61
+}

+ 33
- 1
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java Ver arquivo

@@ -11,19 +11,28 @@ import com.huiju.estateagents.center.sysUser.entity.SysToken;
11 11
 import com.huiju.estateagents.center.sysUser.entity.SysUser;
12 12
 import com.huiju.estateagents.center.sysUser.service.ISysTokenService;
13 13
 import com.huiju.estateagents.center.taUser.entity.TaUser;
14
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthButtonService;
15
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
14 16
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
15 17
 import com.huiju.estateagents.common.CommConstant;
16 18
 import com.huiju.estateagents.common.JWTUtils;
17 19
 import com.huiju.estateagents.common.MD5Utils;
20
+import com.huiju.estateagents.entity.SysButtonInMenu;
21
+import com.huiju.estateagents.entity.SysMenu;
18 22
 import com.huiju.estateagents.entity.TaPerson;
23
+import com.huiju.estateagents.entity.TaRole;
24
+import com.huiju.estateagents.service.ITaRoleService;
19 25
 import org.slf4j.Logger;
20 26
 import org.slf4j.LoggerFactory;
21 27
 import org.springframework.beans.factory.annotation.Autowired;
22 28
 import org.springframework.web.bind.annotation.*;
29
+import sun.dc.pr.PRError;
23 30
 
24 31
 import javax.servlet.http.HttpServletRequest;
32
+import javax.xml.ws.Response;
25 33
 import java.time.LocalDateTime;
26 34
 import java.util.HashMap;
35
+import java.util.List;
27 36
 import java.util.Map;
28 37
 
29 38
 /**
@@ -46,6 +55,14 @@ public class TaUserController extends BaseController {
46 55
     @Autowired
47 56
     private ISysTokenService sysTokenService;
48 57
 
58
+    @Autowired
59
+    private ITaRoleService iTaRoleService;
60
+
61
+    @Autowired
62
+    private ITaUserAuthMenuService iTaUserAuthMenuService;
63
+
64
+    @Autowired
65
+    private ITaUserAuthButtonService iTaUserAuthButtonService;
49 66
 
50 67
     /**
51 68
      * 分页查询列表
@@ -188,11 +205,23 @@ public class TaUserController extends BaseController {
188 205
     @RequestMapping(value="/admin/taUser/current",method= RequestMethod.GET)
189 206
     public ResponseBean taUserGetCurrent(HttpServletRequest request){
190 207
         ResponseBean responseBean = new ResponseBean();
208
+        Map userMap = new HashMap();
191 209
         Map map = JWTUtils.getUserIdAndOrgId(request);
192 210
         try {
193 211
             TaUser taUser = iTaUserService.getById(map.get("userId").toString());
212
+            List<TaRole> roles = iTaRoleService.getRolesByUser(taUser.getUserId());
213
+            ResponseBean authMenu = iTaUserAuthMenuService.getMenuByUserId(null, null, taUser.getUserId().toString());
214
+            ResponseBean authButton = iTaUserAuthButtonService.getButtonByUserId(null, null, taUser.getUserId().toString());
215
+            taUser.setMenus((List<SysMenu>) authMenu.getData());
216
+            taUser.setButtons((List<SysButtonInMenu>) authButton.getData());
217
+            taUser.setRoles(roles);
194 218
             taUser.setLoginPassword("");
195
-            responseBean.addSuccess(taUser);
219
+
220
+            //获取所有菜单
221
+            List<SysMenu> allMenus = (List<SysMenu>) iTaUserAuthMenuService.getAllMenu(null, null).getData();
222
+            userMap.put("taUser", taUser);
223
+            userMap.put("menuList", allMenus);
224
+            responseBean.addSuccess(userMap);
196 225
         }catch (Exception e){
197 226
             e.printStackTrace();
198 227
             logger.error("taUserDelete -=- {}",e.toString());
@@ -228,6 +257,9 @@ public class TaUserController extends BaseController {
228 257
         if (taUser.getStatus() != CommConstant.STATUS_NORMAL) {
229 258
             return ResponseBean.error("用户状态异常", ResponseBean.ERROR_UNAVAILABLE);
230 259
         }
260
+
261
+        List<TaRole> roles = iTaRoleService.getRolesByUser(taUser.getUserId());
262
+        taUser.setRoles(roles);
231 263
         taUser.setLoginPassword("");
232 264
         Map map = new HashMap();
233 265
         map.put("userId",taUser.getUserId().toString());

+ 22
- 0
src/main/java/com/huiju/estateagents/center/taUser/entity/TaUser.java Ver arquivo

@@ -3,13 +3,17 @@ package com.huiju.estateagents.center.taUser.entity;
3 3
 import com.baomidou.mybatisplus.annotation.IdType;
4 4
 import com.baomidou.mybatisplus.annotation.TableField;
5 5
 import com.baomidou.mybatisplus.annotation.TableId;
6
+import com.huiju.estateagents.entity.SysButtonInMenu;
7
+import com.huiju.estateagents.entity.SysMenu;
6 8
 import com.huiju.estateagents.entity.TaMiniapp;
9
+import com.huiju.estateagents.entity.TaRole;
7 10
 import lombok.Data;
8 11
 import lombok.EqualsAndHashCode;
9 12
 import lombok.experimental.Accessors;
10 13
 
11 14
 import java.io.Serializable;
12 15
 import java.time.LocalDateTime;
16
+import java.util.List;
13 17
 
14 18
 /**
15 19
  * <p>
@@ -119,4 +123,22 @@ public class TaUser implements Serializable {
119 123
      */
120 124
     @TableField(exist = false)
121 125
     private TaMiniapp miniapp;
126
+
127
+    /**
128
+     * 授权角色列表
129
+     */
130
+    @TableField(exist = false)
131
+    private List<TaRole> roles;
132
+
133
+    /**
134
+     * 授权菜单列表
135
+     */
136
+    @TableField(exist = false)
137
+    private List<SysMenu> menus;
138
+
139
+    /**
140
+     * 授权按钮列表
141
+     */
142
+    @TableField(exist = false)
143
+    private List<SysButtonInMenu> buttons;
122 144
 }

+ 40
- 0
src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserAuthButtonMapper.java Ver arquivo

@@ -0,0 +1,40 @@
1
+package com.huiju.estateagents.center.taUser.mapper;
2
+
3
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.huiju.estateagents.entity.SysButtonInMenu;
7
+import com.huiju.estateagents.entity.SysMenu;
8
+import org.apache.ibatis.annotations.Mapper;
9
+import org.apache.ibatis.annotations.Param;
10
+
11
+import java.util.List;
12
+
13
+/**
14
+ * @author admin
15
+ * @Title: TaUserAuthButtonMapper
16
+ * @Description: TODO
17
+ * @date 2019/9/23
18
+ */
19
+@Mapper
20
+public interface TaUserAuthButtonMapper  extends BaseMapper<SysButtonInMenu> {
21
+    /**
22
+     * 根据用户Id查询按钮列表
23
+     * @param page
24
+     * @param userId
25
+     * @return
26
+     */
27
+    IPage<SysButtonInMenu> sysButtonListByUserId(Page page, @Param("userId")String userId);
28
+
29
+
30
+    /**
31
+     * 根据角色Id查询按钮列表
32
+     * @param page
33
+     * @return
34
+     */
35
+    IPage<SysButtonInMenu> sysButtonListByRoleId(Page page);
36
+
37
+    void deleteUserAuthButton(@Param("userId") Integer userId);
38
+
39
+    void addUserAuthButton(@Param("userId") Integer userId, @Param("sysButtons") List<SysButtonInMenu> sysButtonInMenus);
40
+}

+ 48
- 0
src/main/java/com/huiju/estateagents/center/taUser/mapper/TaUserAuthMenuMapper.java Ver arquivo

@@ -0,0 +1,48 @@
1
+package com.huiju.estateagents.center.taUser.mapper;
2
+
3
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.huiju.estateagents.entity.SysMenu;
7
+import org.apache.ibatis.annotations.Mapper;
8
+import org.apache.ibatis.annotations.Param;
9
+
10
+import java.util.List;
11
+
12
+
13
+/**
14
+ * @author weicc
15
+ * @Title: TaUserAuthMenuMapper
16
+ * @Description: TODO
17
+ * @date 2019/9/21
18
+ */
19
+@Mapper
20
+public interface TaUserAuthMenuMapper extends BaseMapper<SysMenu> {
21
+    /**
22
+     * 根据用户Id查询菜单列表
23
+     * @param page
24
+     * @param userId
25
+     * @return
26
+     */
27
+    IPage<SysMenu> sysMenuListByUserId(Page page, @Param("userId")String userId);
28
+
29
+
30
+    /**
31
+     * 根据角色Id查询菜单列表
32
+     * @param page
33
+     * @return
34
+     */
35
+    IPage<SysMenu> sysMenuListByRoleId(Page page);
36
+
37
+    /**
38
+     * 删除授权的菜单
39
+     * @param userId
40
+     */
41
+    void deleteUserAuthMenu(@Param("userId") Integer userId);
42
+
43
+    /**
44
+     * 新增授权的菜单
45
+     * @param userId
46
+     */
47
+    void addUserAuthMenu(@Param("userId") Integer userId, @Param("sysMenus") List<SysMenu> sysMenuList);
48
+}

+ 22
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthButtonService.java Ver arquivo

@@ -0,0 +1,22 @@
1
+package com.huiju.estateagents.center.taUser.service;
2
+
3
+import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.SysButtonInMenu;
6
+
7
+import java.util.List;
8
+
9
+/**
10
+ * @author admin
11
+ * @Title: ITaUserAuthButtonService
12
+ * @Description: TODO
13
+ * @date 2019/9/23
14
+ */
15
+public interface ITaUserAuthButtonService extends IService<SysButtonInMenu> {
16
+
17
+    ResponseBean getButtonByUserId(Integer pageNum, Integer pageSize, String userId);
18
+
19
+    ResponseBean getAllButton(Integer pageNum, Integer pageSize);
20
+
21
+    ResponseBean updateUserAuthButton(Integer userId, List<SysButtonInMenu> sysButtonInMenus);
22
+}

+ 22
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthMenuService.java Ver arquivo

@@ -0,0 +1,22 @@
1
+package com.huiju.estateagents.center.taUser.service;
2
+
3
+import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.SysMenu;
6
+
7
+import java.util.List;
8
+
9
+/**
10
+ * @author admin
11
+ * @Title: ITaUserAuthMenuService
12
+ * @Description: TODO
13
+ * @date 2019/9/21
14
+ */
15
+public interface ITaUserAuthMenuService extends IService<SysMenu> {
16
+
17
+    ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId);
18
+
19
+    ResponseBean getAllMenu(Integer pageNum, Integer pageSize);
20
+
21
+    ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList);
22
+}

+ 97
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthButtonServiceImpl.java Ver arquivo

@@ -0,0 +1,97 @@
1
+package com.huiju.estateagents.center.taUser.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.center.taUser.entity.TaUser;
9
+import com.huiju.estateagents.center.taUser.mapper.TaUserAuthButtonMapper;
10
+import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
11
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthButtonService;
12
+import com.huiju.estateagents.entity.SysButtonInMenu;
13
+import com.huiju.estateagents.entity.SysMenu;
14
+import com.huiju.estateagents.entity.TaRoleButton;
15
+import com.huiju.estateagents.mapper.TaRoleButtonMapper;
16
+import org.springframework.beans.factory.annotation.Autowired;
17
+import org.springframework.stereotype.Service;
18
+
19
+import java.util.ArrayList;
20
+import java.util.List;
21
+
22
+/**
23
+ * @author admin
24
+ * @Title: TaUserAuthButtonServiceImpl
25
+ * @Description: TODO
26
+ * @date 2019/9/23
27
+ */
28
+@Service
29
+public class TaUserAuthButtonServiceImpl extends ServiceImpl<TaUserAuthButtonMapper, SysButtonInMenu> implements ITaUserAuthButtonService {
30
+
31
+    @Autowired
32
+    TaUserAuthButtonMapper taUserAuthButtonMapper;
33
+    @Autowired
34
+    TaRoleButtonMapper taRoleButtonMapper;
35
+    @Autowired
36
+    private TaUserMapper taUserMapper;
37
+
38
+    @Override
39
+    public ResponseBean getButtonByUserId(Integer pageNum, Integer pageSize, String userId) {
40
+        Page<SysMenu> page = new Page<>();
41
+        page.setSize(pageSize == null ? 10 : pageSize);
42
+        page.setCurrent(pageNum == null ? 1 : pageNum);
43
+
44
+        List<SysButtonInMenu> records = taUserAuthButtonMapper.sysButtonListByUserId(page, userId).getRecords();
45
+        return ResponseBean.success(records);
46
+    }
47
+
48
+    @Override
49
+    public ResponseBean getAllButton(Integer pageNum, Integer pageSize) {
50
+        Page<SysButtonInMenu> page = new Page<>();
51
+        page.setSize(pageSize == null ? 10 : pageSize);
52
+        page.setCurrent(pageNum == null ? 1 : pageNum);
53
+
54
+        IPage<SysButtonInMenu> sysMenuIPage = taUserAuthButtonMapper.sysButtonListByRoleId(page);
55
+        List<SysButtonInMenu> records = sysMenuIPage.getRecords();
56
+
57
+        QueryWrapper<TaRoleButton> queryWrapper = new QueryWrapper();
58
+        List<TaRoleButton> taRoleButtons = taRoleButtonMapper.selectList(queryWrapper);
59
+
60
+        for (SysButtonInMenu sysButtonInMenu : records){
61
+            ArrayList<Integer> roles = new ArrayList<>();
62
+            for (TaRoleButton taRoleButton : taRoleButtons){
63
+                if (sysButtonInMenu.getBtnId().equals(taRoleButton.getBtnId())){
64
+                    roles.add(taRoleButton.getBtnId());
65
+                }
66
+            }
67
+            sysButtonInMenu.setRoles(roles);
68
+        }
69
+
70
+        return ResponseBean.success(records);
71
+    }
72
+
73
+    @Override
74
+    public ResponseBean updateUserAuthButton(Integer userId, List<SysButtonInMenu> sysButtonInMenus) {
75
+        ResponseBean responseBean = new ResponseBean();
76
+
77
+        // 人员
78
+        TaUser taUser = taUserMapper.selectById(userId);
79
+        if (null == taUser) {
80
+            responseBean.addError("授权人不存在");
81
+            return responseBean;
82
+        }
83
+
84
+        try{
85
+            //授权菜单按钮,先删除在新增
86
+            taUserAuthButtonMapper.deleteUserAuthButton(userId);
87
+            taUserAuthButtonMapper.addUserAuthButton(userId, sysButtonInMenus);
88
+            responseBean.addSuccess("操作成功");
89
+            return  responseBean;
90
+        }catch (Exception e){
91
+            responseBean.addSuccess("操作失败");
92
+            e.printStackTrace();
93
+            return responseBean;
94
+        }
95
+
96
+    }
97
+}

+ 108
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java Ver arquivo

@@ -0,0 +1,108 @@
1
+package com.huiju.estateagents.center.taUser.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.center.taUser.entity.TaUser;
9
+import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
10
+import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
11
+import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
12
+import com.huiju.estateagents.entity.SysMenu;
13
+import com.huiju.estateagents.entity.TaRoleMenu;
14
+import com.huiju.estateagents.mapper.TaRoleMenuMapper;
15
+import org.springframework.beans.factory.annotation.Autowired;
16
+import org.springframework.stereotype.Service;
17
+
18
+import java.util.ArrayList;
19
+import java.util.Arrays;
20
+import java.util.List;
21
+
22
+/**
23
+ * @author weicc
24
+ * @Title: TaUserAuthMenuServiceImpl
25
+ * @Description: TODO
26
+ * @date 2019/9/21
27
+ */
28
+@Service
29
+public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper, SysMenu> implements ITaUserAuthMenuService {
30
+
31
+
32
+    @Autowired
33
+    private TaUserAuthMenuMapper taUserAuthMenuMapper;
34
+    @Autowired
35
+    private TaRoleMenuMapper taRoleMenuMapper;
36
+    @Autowired
37
+    private TaUserMapper taUserMapper;
38
+
39
+    /**
40
+     * 根据用户id获取授权菜单
41
+     * @param pageNum
42
+     * @param pageSize
43
+     * @param userId
44
+     * @return
45
+     */
46
+    @Override
47
+    public ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId) {
48
+        Page<SysMenu> page = new Page<>();
49
+        page.setSize(pageSize == null ? 10 : pageSize);
50
+        page.setCurrent(pageNum == null ? 1 : pageNum);
51
+
52
+        IPage<SysMenu> sysMenuIPage = taUserAuthMenuMapper.sysMenuListByUserId(page, userId);
53
+        List<SysMenu> records = sysMenuIPage.getRecords();
54
+
55
+        return ResponseBean.success(records);
56
+    }
57
+
58
+    @Override
59
+    public ResponseBean getAllMenu(Integer pageNum, Integer pageSize) {
60
+        Page<SysMenu> page = new Page<>();
61
+        page.setSize(pageSize == null ? 10 : pageSize);
62
+        page.setCurrent(pageNum == null ? 1 : pageNum);
63
+
64
+        IPage<SysMenu> sysMenuIPage = taUserAuthMenuMapper.sysMenuListByRoleId(page);
65
+        List<SysMenu> records = sysMenuIPage.getRecords();
66
+
67
+        QueryWrapper<TaRoleMenu> queryWrapper = new QueryWrapper();
68
+        List<TaRoleMenu> taRoleMenus = taRoleMenuMapper.selectList(queryWrapper);
69
+
70
+        for (SysMenu sysMenu : records){
71
+            ArrayList<Integer> roles = new ArrayList<>();
72
+            for (TaRoleMenu taRoleMenu : taRoleMenus){
73
+                if (taRoleMenu.getMenuId().equals(sysMenu.getMenuId())){
74
+                    roles.add(taRoleMenu.getRoleId());
75
+                }
76
+            }
77
+            sysMenu.setRoles(roles);
78
+        }
79
+
80
+        return ResponseBean.success(records);
81
+    }
82
+
83
+    @Override
84
+    public ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList) {
85
+        ResponseBean responseBean = new ResponseBean();
86
+
87
+        // 人员
88
+        TaUser taUser = taUserMapper.selectById(userId);
89
+        if (null == taUser) {
90
+            responseBean.addError("授权人不存在");
91
+            return responseBean;
92
+        }
93
+
94
+        try{
95
+            //授权菜单,先删除在新增
96
+            taUserAuthMenuMapper.deleteUserAuthMenu(userId);
97
+            taUserAuthMenuMapper.addUserAuthMenu(userId, sysMenuList);
98
+            responseBean.addSuccess("操作成功");
99
+            return  responseBean;
100
+        }catch (Exception e){
101
+            responseBean.addSuccess("操作失败");
102
+            e.printStackTrace();
103
+            return responseBean;
104
+        }
105
+
106
+    }
107
+
108
+}

+ 24
- 44
src/main/java/com/huiju/estateagents/common/WxUtils.java Ver arquivo

@@ -2,67 +2,47 @@ package com.huiju.estateagents.common;
2 2
 
3 3
 import cn.binarywang.wx.miniapp.api.WxMaService;
4 4
 import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl;
5
-import cn.binarywang.wx.miniapp.bean.WxMaTemplateData;
6
-import cn.binarywang.wx.miniapp.bean.WxMaTemplateMessage;
7 5
 import cn.binarywang.wx.miniapp.config.WxMaInMemoryConfig;
8
-import com.huiju.estateagents.config.WxProperties;
9
-import com.huiju.estateagents.entity.TaBuilding;
10
-import com.huiju.estateagents.service.ITaBuildingService;
11
-import me.chanjar.weixin.common.error.WxErrorException;
6
+import com.huiju.estateagents.entity.TaMiniapp;
7
+import com.huiju.estateagents.service.IMiniAppService;
12 8
 import org.springframework.beans.factory.annotation.Autowired;
13
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
14
-import org.springframework.context.annotation.Configuration;
9
+import org.springframework.stereotype.Component;
15 10
 
16 11
 import javax.annotation.PostConstruct;
17
-import java.time.LocalDateTime;
18
-import java.util.ArrayList;
19
-import java.util.Arrays;
20 12
 import java.util.List;
21
-import java.util.Map;
13
+import java.util.concurrent.ConcurrentHashMap;
22 14
 
23
-@Configuration
24
-@EnableConfigurationProperties(WxProperties.class)
15
+@Component
25 16
 public class WxUtils {
26
-    static WxMaService miniApp;
27
-
28
-    static WxProperties properties;
17
+    private ConcurrentHashMap<String, WxMaService> serives = new ConcurrentHashMap();
29 18
 
30 19
     @Autowired
31
-    public WxUtils(WxProperties properties) { WxUtils.properties = properties; }
20
+    IMiniAppService iMiniAppService;
32 21
 
33
-    public static WxMaService getMiniApp() {
34
-        return miniApp;
22
+    public WxMaService getMiniApp(String appid) {
23
+        return serives.get(appid);
35 24
     }
36 25
 
37
-    @Autowired
38
-    ITaBuildingService iTaBuildingService;
39
-
40 26
     @PostConstruct
41 27
     public void init() {
42 28
         System.out.println("-------------PostConstruct----------------");
43 29
 
44
-        WxMaInMemoryConfig config = new WxMaInMemoryConfig();
45
-
46
-        WxProperties.Miniapp miniProperty = WxUtils.properties.getMiniapp();
47
-
48
-        config.setAppid(miniProperty.getAppid());
49
-        config.setSecret(miniProperty.getSecret());
50
-        config.setToken(miniProperty.getToken());
51
-        config.setAesKey(miniProperty.getAesKey());
52
-        config.setMsgDataFormat(miniProperty.getMsgDataFormat());
53
-
54
-        WxUtils.miniApp = new WxMaServiceImpl();
55
-        WxUtils.miniApp.setWxMaConfig(config);
56
-        System.out.println("-------------PostConstruct- 222---------------");
57
-        System.out.println(WxUtils.miniApp);
58
-    }
30
+        List<TaMiniapp> taMiniappList = iMiniAppService.getAllAvaliableMiniapps();
31
+        if (null != taMiniappList) {
32
+            return;
33
+        }
59 34
 
60
-    public static WxProperties.Tpl getTplByName(String name) {
61
-        for ( WxProperties.Tpl t: properties.getTpls()) {
62
-            if (t.getName().equals(name)) {
63
-                return t;
64
-            }
35
+        for (TaMiniapp taMiniapp : taMiniappList) {
36
+            WxMaInMemoryConfig config = new WxMaInMemoryConfig();
37
+            config.setAppid(taMiniapp.getMiniappId());
38
+            config.setSecret(taMiniapp.getSecret());
39
+            config.setToken(taMiniapp.getToken());
40
+            config.setAesKey(taMiniapp.getAesKey());
41
+            config.setMsgDataFormat("JSON");
42
+
43
+            WxMaService service = new WxMaServiceImpl();
44
+            service.setWxMaConfig(config);
45
+            serives.put(taMiniapp.getMiniappId(), service);
65 46
         }
66
-        return null;
67 47
     }
68 48
 }

+ 23
- 16
src/main/java/com/huiju/estateagents/controller/MiniAppController.java Ver arquivo

@@ -34,23 +34,15 @@ public class MiniAppController {
34 34
     @Autowired
35 35
     private ITaPersonService taPersonService;
36 36
 
37
-    final WxMaService wxService = WxUtils.getMiniApp();
38
-
39 37
     @Autowired
40 38
     private IMiniAppService miniAppService;
41 39
 
42 40
     @Autowired
43 41
     private ITaRecommendCustomerService taRecommendCustomerService;
44 42
 
45
-    @Autowired
46
-    private ITaCustomerPersonService taCustomerPersonService;
47
-
48 43
     @Resource
49 44
     private ApplicationContext applicationContext;
50 45
 
51
-    @Autowired
52
-    private TaShareMapper taShareMapper;
53
-
54 46
     @Autowired
55 47
     private ITaOrgService taOrgService;
56 48
 
@@ -71,12 +63,23 @@ public class MiniAppController {
71 63
      * 登陆接口
72 64
      */
73 65
     @PostMapping("/login")
74
-    public ResponseBean login(String code,@RequestParam(required = false) String from,@RequestParam(required = false)String recommender,HttpServletRequest request) {
66
+    public ResponseBean login(
67
+            String code,
68
+            @RequestParam(required = false) String from,
69
+            @RequestParam(required = false)String recommender,
70
+            HttpServletRequest request) {
71
+        String appid = request.getHeader("appid");
72
+
75 73
         if (StringUtils.isBlank(code)) {
76 74
             return ResponseBean.error("参数 code 不能为空", ResponseBean.ERROR_ILLEGAL_PARAMS);
77 75
         }
76
+        if (StringUtils.isBlank(appid)) {
77
+            return ResponseBean.error("Header 参数 appid 不能为空", ResponseBean.ERROR_ILLEGAL_PARAMS);
78
+        }
79
+
78 80
         try {
79
-            WxMaJscode2SessionResult session = miniAppService.getSessionInfo(code);
81
+
82
+            WxMaJscode2SessionResult session = miniAppService.getSessionInfo(code, appid);
80 83
             Integer orgId =getOrgId(request);
81 84
             Map<String, String> miniResp = new HashMap<>();
82 85
             miniResp.put("openid", session.getOpenid());
@@ -93,7 +96,7 @@ public class MiniAppController {
93 96
                 // 添加积分
94 97
                  applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll));
95 98
             }
96
-            TaPerson taPerson = taPersonService.newPersonByOpenid(session.getOpenid(),orgId);
99
+            TaPerson taPerson = taPersonService.newPersonByOpenid(session.getOpenid(), orgId);
97 100
             if (null == taPerson) {
98 101
                 return ResponseBean.error("发生未知错误", ResponseBean.ERROR_UNAVAILABLE);
99 102
             }
@@ -109,6 +112,7 @@ public class MiniAppController {
109 112
                     }
110 113
                 }
111 114
             }
115
+            taPerson.setMiniappId(appid);
112 116
             taPersonService.updateById(taPerson);
113 117
 
114 118
             taPerson.setPassword(null);
@@ -155,6 +159,7 @@ public class MiniAppController {
155 159
      */
156 160
     @PostMapping("/signup")
157 161
     public ResponseBean info(@RequestBody String paramStr, HttpServletRequest request) {
162
+        String appid = request.getHeader("appid");
158 163
         TaPerson person = null;
159 164
 
160 165
         if (null == paramStr || "".equals(paramStr.trim()) || "{}".equals(paramStr.trim())) {
@@ -178,12 +183,12 @@ public class MiniAppController {
178 183
             String iv = params.getString("iv");
179 184
 
180 185
             // 用户信息校验
181
-            if (!miniAppService.checkUserInfo(sessionKey, rawData, signature)) {
186
+            if (!miniAppService.checkUserInfo(sessionKey, rawData, signature, appid)) {
182 187
                 return ResponseBean.error("校验参数失败", ResponseBean.ERROR_ILLEGAL_PARAMS);
183 188
             }
184 189
 
185 190
             // 解密用户信息
186
-            WxMaUserInfo userInfo = miniAppService.getUserInfo(sessionKey, encryptedData, iv);
191
+            WxMaUserInfo userInfo = miniAppService.getUserInfo(sessionKey, encryptedData, iv, appid);
187 192
 
188 193
             // 更新或保存用户信息
189 194
             person = taPersonService.mergePersonWxInfo(userInfo);
@@ -208,6 +213,7 @@ public class MiniAppController {
208 213
      */
209 214
     @PostMapping("/userPhone")
210 215
     public ResponseBean phone(@RequestBody String paramStr, HttpServletRequest request) {
216
+        String appid = request.getHeader("appid");
211 217
         JSONObject params = JSONObject.parseObject(paramStr);
212 218
         if (null == params) {
213 219
             return ResponseBean.error("校验参数失败", ResponseBean.ERROR_ILLEGAL_PARAMS);
@@ -218,7 +224,7 @@ public class MiniAppController {
218 224
         String iv = params.getString("iv");
219 225
 
220 226
         // 解密
221
-        WxMaPhoneNumberInfo phoneNoInfo = miniAppService.getPhoneNoInfo(sessionKey, encryptedData, iv);
227
+        WxMaPhoneNumberInfo phoneNoInfo = miniAppService.getPhoneNoInfo(sessionKey, encryptedData, iv, appid);
222 228
 
223 229
         // 更新用户绑定手机
224 230
         String openid = JWTUtils.getSubject(request);
@@ -271,8 +277,9 @@ public class MiniAppController {
271 277
      * @return
272 278
      */
273 279
     @PostMapping("/qrcode")
274
-    public ResponseBean qrcode(@RequestBody String paramsStr) {
275
-        return miniAppService.getQrCode(paramsStr);
280
+    public ResponseBean qrcode(@RequestBody String paramsStr, HttpServletRequest request) {
281
+        String appid = request.getHeader("appid");
282
+        return miniAppService.getQrCode(paramsStr, appid);
276 283
     }
277 284
 
278 285
     /**

+ 1
- 1
src/main/java/com/huiju/estateagents/controller/TaRecommendCustomerController.java Ver arquivo

@@ -437,7 +437,7 @@ public class TaRecommendCustomerController extends BaseController {
437 437
         return responseBean;
438 438
     }
439 439
 
440
-    @GetMapping("/admin/customer/recommend/drift")
440
+    @GetMapping("/admin/customer/recommend/")
441 441
     public ResponseBean getDriftCustomerList (HttpServletRequest request,
442 442
                                               @RequestParam(value ="buildingId",defaultValue = "false") String buildingId,
443 443
                                          @RequestParam(value ="pageNumber",defaultValue = "1") Integer pageNumber,

+ 4
- 1
src/main/java/com/huiju/estateagents/entity/SysButtonInMenu.java Ver arquivo

@@ -1,12 +1,14 @@
1 1
 package com.huiju.estateagents.entity;
2 2
 
3 3
 import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
4 5
 import com.baomidou.mybatisplus.annotation.TableId;
5 6
 import lombok.Data;
6 7
 import lombok.EqualsAndHashCode;
7 8
 import lombok.experimental.Accessors;
8 9
 
9 10
 import java.io.Serializable;
11
+import java.util.List;
10 12
 
11 13
 /**
12 14
  * <p>
@@ -46,5 +48,6 @@ public class SysButtonInMenu implements Serializable {
46 48
 
47 49
     private String code;
48 50
 
49
-
51
+    @TableField(exist = false)
52
+    private List<Integer> roles;
50 53
 }

+ 7
- 0
src/main/java/com/huiju/estateagents/entity/SysMenu.java Ver arquivo

@@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
8 8
 import lombok.experimental.Accessors;
9 9
 
10 10
 import java.io.Serializable;
11
+import java.util.List;
11 12
 
12 13
 /**
13 14
  * <p>
@@ -75,4 +76,10 @@ public class SysMenu implements Serializable {
75 76
      */
76 77
     @TableField(exist = false)
77 78
     private Boolean hasRights;
79
+
80
+    /**
81
+     * 是否有权限
82
+     */
83
+    @TableField(exist = false)
84
+    private List<Integer> roles;
78 85
 }

+ 3
- 0
src/main/java/com/huiju/estateagents/entity/TaMiniapp.java Ver arquivo

@@ -56,6 +56,9 @@ public class TaMiniapp implements Serializable {
56 56
      */
57 57
     private Integer orgId;
58 58
 
59
+
60
+    private String aesKey;
61
+
59 62
     @TableField(exist = false)
60 63
     private List<TaMiniappTemplate> tpls;
61 64
 }

+ 2
- 0
src/main/java/com/huiju/estateagents/entity/TaPerson.java Ver arquivo

@@ -259,6 +259,8 @@ public class TaPerson implements Serializable {
259 259
     @TableField(exist = false)
260 260
     private int inviteCount;
261 261
 
262
+    private String miniappId;
263
+
262 264
     @TableField(exist = false)
263 265
     private List<TaPoster> posters;
264 266
 

+ 4
- 0
src/main/java/com/huiju/estateagents/mapper/TaMiniappMapper.java Ver arquivo

@@ -2,8 +2,11 @@ package com.huiju.estateagents.mapper;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4
 import com.huiju.estateagents.entity.TaMiniapp;
5
+import com.huiju.estateagents.entity.TaMiniappTemplate;
5 6
 import org.apache.ibatis.annotations.Mapper;
6 7
 
8
+import java.util.List;
9
+
7 10
 /**
8 11
  * <p>
9 12
  * 小程序表  Mapper 接口
@@ -15,4 +18,5 @@ import org.apache.ibatis.annotations.Mapper;
15 18
 @Mapper
16 19
 public interface TaMiniappMapper extends BaseMapper<TaMiniapp> {
17 20
 
21
+    List<TaMiniapp> getAllAvaliableMiniapps();
18 22
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/mapper/TaMiniappTemplateMapper.java Ver arquivo

@@ -3,6 +3,7 @@ package com.huiju.estateagents.mapper;
3 3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4
 import com.huiju.estateagents.entity.TaMiniappTemplate;
5 5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
6 7
 
7 8
 /**
8 9
  * <p>
@@ -14,5 +15,5 @@ import org.apache.ibatis.annotations.Mapper;
14 15
  */
15 16
 @Mapper
16 17
 public interface TaMiniappTemplateMapper extends BaseMapper<TaMiniappTemplate> {
17
-
18
+    TaMiniappTemplate selectTplByType(@Param("type") String type, @Param("appid") String appid);
18 19
 }

+ 4
- 0
src/main/java/com/huiju/estateagents/mapper/TaRoleMapper.java Ver arquivo

@@ -3,6 +3,9 @@ package com.huiju.estateagents.mapper;
3 3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 4
 import com.huiju.estateagents.entity.TaRole;
5 5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
7
+
8
+import java.util.List;
6 9
 
7 10
 /**
8 11
  * <p>
@@ -15,4 +18,5 @@ import org.apache.ibatis.annotations.Mapper;
15 18
 @Mapper
16 19
 public interface TaRoleMapper extends BaseMapper<TaRole> {
17 20
 
21
+    List<TaRole> getRolesByUser(@Param("user") Integer userId);
18 22
 }

+ 13
- 8
src/main/java/com/huiju/estateagents/service/IMiniAppService.java Ver arquivo

@@ -4,27 +4,32 @@ import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
4 4
 import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
5 5
 import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
6 6
 import com.huiju.estateagents.base.ResponseBean;
7
+import com.huiju.estateagents.entity.TaMiniapp;
7 8
 import com.huiju.estateagents.entity.TaMiniappQrcode;
9
+import com.huiju.estateagents.entity.TaPerson;
8 10
 import me.chanjar.weixin.common.error.WxErrorException;
9 11
 
10 12
 import java.time.LocalDateTime;
13
+import java.util.List;
11 14
 
12 15
 public interface IMiniAppService {
13
-    WxMaJscode2SessionResult getSessionInfo(String code) throws WxErrorException;
16
+    WxMaJscode2SessionResult getSessionInfo(String code, String appid) throws WxErrorException;
14 17
 
15
-    boolean checkUserInfo(String sessionKey, String rawData, String signature);
18
+    boolean checkUserInfo(String sessionKey, String rawData, String signature, String appid);
16 19
 
17
-    WxMaUserInfo getUserInfo(String sessionKey, String encryptedData, String iv);
20
+    WxMaUserInfo getUserInfo(String sessionKey, String encryptedData, String iv, String appid);
18 21
 
19
-    WxMaPhoneNumberInfo getPhoneNoInfo(String sessionKey, String encryptedData, String iv);
22
+    WxMaPhoneNumberInfo getPhoneNoInfo(String sessionKey, String encryptedData, String iv, String appid);
20 23
 
21
-    void sendNoticeMessage(String toUser, String link, String name, String phone, String content, LocalDateTime dt);
24
+    void sendNoticeMessage(TaPerson toUser, String link, String name, String phone, String content, LocalDateTime dt);
22 25
 
23
-    void sendMainBizMessage(String toUser, String link, String custName, String phone, String sex, String fromName, String bizType, String content);
26
+    void sendMainBizMessage(TaPerson toUser, String link, String custName, String phone, String sex, String fromName, String bizType, String content);
24 27
 
25
-    void sendNewCustomerMessage(String toUser, String link, String custName, String phone, String sex, String fromName);
28
+    void sendNewCustomerMessage(TaPerson toUser, String link, String custName, String phone, String sex, String fromName);
26 29
 
27
-    ResponseBean getQrCode(String paramsStr);
30
+    ResponseBean getQrCode(String paramsStr, String appid);
28 31
 
29 32
     TaMiniappQrcode getQrCodeBySerialNo(Integer id);
33
+
34
+    List<TaMiniapp> getAllAvaliableMiniapps();
30 35
 }

+ 3
- 1
src/main/java/com/huiju/estateagents/service/ITaRoleService.java Ver arquivo

@@ -3,6 +3,8 @@ package com.huiju.estateagents.service;
3 3
 import com.baomidou.mybatisplus.extension.service.IService;
4 4
 import com.huiju.estateagents.entity.TaRole;
5 5
 
6
+import java.util.List;
7
+
6 8
 /**
7 9
  * <p>
8 10
  * 角色表 角色表,每个org的角色可以单独设置。但是都共有一个admin角色。这个角色在创建用户的时候创建好了 服务类
@@ -12,5 +14,5 @@ import com.huiju.estateagents.entity.TaRole;
12 14
  * @since 2019-09-11
13 15
  */
14 16
 public interface ITaRoleService extends IService<TaRole> {
15
-
17
+    List<TaRole> getRolesByUser(Integer userId);
16 18
 }

+ 68
- 22
src/main/java/com/huiju/estateagents/service/impl/MiniAppServiceImpl.java Ver arquivo

@@ -7,13 +7,19 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
7 7
 import com.huiju.estateagents.base.ResponseBean;
8 8
 import com.huiju.estateagents.common.*;
9 9
 import com.huiju.estateagents.config.WxProperties;
10
+import com.huiju.estateagents.entity.TaMiniapp;
10 11
 import com.huiju.estateagents.entity.TaMiniappQrcode;
12
+import com.huiju.estateagents.entity.TaMiniappTemplate;
13
+import com.huiju.estateagents.entity.TaPerson;
11 14
 import com.huiju.estateagents.mapper.TaMiniFormidsMapper;
15
+import com.huiju.estateagents.mapper.TaMiniappMapper;
12 16
 import com.huiju.estateagents.mapper.TaMiniappQrcodeMapper;
17
+import com.huiju.estateagents.mapper.TaMiniappTemplateMapper;
13 18
 import com.huiju.estateagents.service.IMiniAppService;
14 19
 import com.huiju.estateagents.service.ITaMiniFormidsService;
15 20
 import lombok.extern.slf4j.Slf4j;
16 21
 import me.chanjar.weixin.common.error.WxErrorException;
22
+import org.checkerframework.checker.units.qual.A;
17 23
 import org.springframework.beans.factory.annotation.Autowired;
18 24
 import org.springframework.stereotype.Service;
19 25
 
@@ -35,34 +41,43 @@ public class MiniAppServiceImpl implements IMiniAppService {
35 41
     @Autowired
36 42
     ITaMiniFormidsService taMiniFormidsService;
37 43
 
44
+    @Autowired
45
+    TaMiniappMapper taMiniappMapper;
46
+
47
+    @Autowired
48
+    TaMiniappTemplateMapper taMiniappTemplateMapper;
49
+
50
+    @Autowired
51
+    WxUtils wxUtils;
52
+
38 53
     @Override
39
-    public WxMaJscode2SessionResult getSessionInfo(String code) throws WxErrorException {
40
-        WxMaService wxService = WxUtils.getMiniApp();
54
+    public WxMaJscode2SessionResult getSessionInfo(String code, String appid) throws WxErrorException {
55
+        WxMaService wxService = wxUtils.getMiniApp(appid);
41 56
         System.out.println(wxService);
42 57
         System.out.println(wxService.getUserService());
43 58
         return wxService.getUserService().getSessionInfo(code);
44 59
     }
45 60
 
46 61
     @Override
47
-    public boolean checkUserInfo(String sessionKey, String rawData, String signature) {
48
-        WxMaService wxService = WxUtils.getMiniApp();
62
+    public boolean checkUserInfo(String sessionKey, String rawData, String signature, String appid) {
63
+        WxMaService wxService = wxUtils.getMiniApp(appid);
49 64
         return wxService.getUserService().checkUserInfo(sessionKey, rawData, signature);
50 65
     }
51 66
 
52 67
     @Override
53
-    public WxMaUserInfo getUserInfo(String sessionKey, String encryptedData, String iv) {
54
-        WxMaService wxService = WxUtils.getMiniApp();
68
+    public WxMaUserInfo getUserInfo(String sessionKey, String encryptedData, String iv, String appid) {
69
+        WxMaService wxService = wxUtils.getMiniApp(appid);
55 70
         return wxService.getUserService().getUserInfo(sessionKey, encryptedData, iv);
56 71
     }
57 72
 
58 73
     @Override
59
-    public WxMaPhoneNumberInfo getPhoneNoInfo(String sessionKey, String encryptedData, String iv) {
60
-        WxMaService wxService = WxUtils.getMiniApp();
74
+    public WxMaPhoneNumberInfo getPhoneNoInfo(String sessionKey, String encryptedData, String iv, String appid) {
75
+        WxMaService wxService = wxUtils.getMiniApp(appid);
61 76
         return wxService.getUserService().getPhoneNoInfo(sessionKey, encryptedData, iv);
62 77
     }
63 78
 
64 79
     @Override
65
-    public void sendNoticeMessage(String toUser, String link, String name, String phone, String content, LocalDateTime dt) {
80
+    public void sendNoticeMessage(TaPerson toUser, String link, String name, String phone, String content, LocalDateTime dt) {
66 81
         List<WxMaTemplateData> data = new ArrayList<>();
67 82
         data.add(new WxMaTemplateData("keyword1", name, "#fffff"));
68 83
         data.add(new WxMaTemplateData("keyword2", phone, "#fffff"));
@@ -73,7 +88,7 @@ public class MiniAppServiceImpl implements IMiniAppService {
73 88
     }
74 89
 
75 90
     @Override
76
-    public void sendMainBizMessage(String toUser, String link, String custName, String phone, String sex, String fromName, String bizType, String content) {
91
+    public void sendMainBizMessage(TaPerson toUser, String link, String custName, String phone, String sex, String fromName, String bizType, String content) {
77 92
         List<WxMaTemplateData> data = new ArrayList<>();
78 93
         data.add(new WxMaTemplateData("keyword1", custName, "#fffff"));
79 94
         data.add(new WxMaTemplateData("keyword2", StringUtils.ifNull(phone, "未知"), "#fffff"));
@@ -86,7 +101,7 @@ public class MiniAppServiceImpl implements IMiniAppService {
86 101
     }
87 102
 
88 103
     @Override
89
-    public void sendNewCustomerMessage(String toUser, String link, String custName, String phone, String sex, String fromName) {
104
+    public void sendNewCustomerMessage(TaPerson toUser, String link, String custName, String phone, String sex, String fromName) {
90 105
         List<WxMaTemplateData> data = new ArrayList<>();
91 106
         data.add(new WxMaTemplateData("keyword1", custName, "#fffff"));
92 107
         data.add(new WxMaTemplateData("keyword2", StringUtils.ifNull(phone, "未知"), "#fffff"));
@@ -97,11 +112,10 @@ public class MiniAppServiceImpl implements IMiniAppService {
97 112
     }
98 113
 
99 114
     @Override
100
-    public ResponseBean getQrCode(String paramsStr) {
115
+    public ResponseBean getQrCode(String paramsStr, String appid) {
101 116
         if (null == paramsStr) return ResponseBean.error("请指定二维码生成参数", ResponseBean.ERROR_MISSING_PARAMS);
102 117
 
103
-        WxMaService wxService = WxUtils.getMiniApp();
104
-        String appid = wxService.getWxMaConfig().getAppid();
118
+        WxMaService wxService = wxUtils.getMiniApp(appid);
105 119
 
106 120
         // 先去数据库中查询
107 121
         QueryWrapper<TaMiniappQrcode> queryWrapper = new QueryWrapper<>();
@@ -166,29 +180,61 @@ public class MiniAppServiceImpl implements IMiniAppService {
166 180
         return taMiniappQrcodeMapper.selectById(id);
167 181
     }
168 182
 
169
-    private void sendMessage(String tplName, String toUser, String link, List<WxMaTemplateData> data) {
170
-        WxProperties.Tpl tpl = WxUtils.getTplByName(tplName);
183
+    @Override
184
+    public List<TaMiniapp> getAllAvaliableMiniapps() {
185
+        List<TaMiniapp> taMiniappList = taMiniappMapper.getAllAvaliableMiniapps();
186
+
187
+        if (null != taMiniappList) {
188
+            for (TaMiniapp miniapp : taMiniappList) {
189
+                QueryWrapper<TaMiniappTemplate> queryWrapper = new QueryWrapper<>();
190
+                queryWrapper.eq("miniapp_id", miniapp.getMiniappId());
191
+                miniapp.setTpls(taMiniappTemplateMapper.selectList(queryWrapper));
192
+            }
193
+        }
194
+
195
+        return taMiniappList;
196
+    }
197
+
198
+    private void sendMessage(String tplName, TaPerson toUser, String link, List<WxMaTemplateData> data) {
199
+        String appid = toUser.getMiniappId();
200
+        if (StringUtils.isEmpty(appid)) {
201
+            log.error("人员 {} 无对应来源小程序信息", toUser);
202
+        }
203
+
204
+        TaMiniappTemplate tpl = getTplByType(tplName, toUser.getMiniappId());
171 205
         if (null == tpl) return ;
172 206
 
173
-        String formid = taMiniFormidsService.getFormidBy(toUser, true);
207
+        String formid = taMiniFormidsService.getFormidBy(toUser.getMiniOpenid(), true);
174 208
         if (StringUtils.isEmpty(formid)) {
175
-            log.error("發送消息失敗, 沒有有效的 formid");
209
+            log.error("送消息失敗, 沒有有效的 formid");
176 210
             return;
177 211
         }
178 212
 
179 213
         WxMaTemplateMessage message = WxMaTemplateMessage.builder()
180
-                .templateId(tpl.getId())
214
+                .templateId(tpl.getTplId())
181 215
                 .data(data)
182 216
                 .formId(formid)
183 217
                 .page(StringUtils.ifNull(link, CommConstant.MINIAPP_INDEX))
184
-                .toUser(toUser)
218
+                .toUser(toUser.getMiniOpenid())
185 219
                 .build();
186 220
         try {
187
-
188
-            WxMaService wxService = WxUtils.getMiniApp();
221
+            WxMaService wxService = wxUtils.getMiniApp(appid);
189 222
             wxService.getMsgService().sendTemplateMsg(message);
190 223
         } catch (WxErrorException e) {
191 224
             e.printStackTrace();
192 225
         }
193 226
     }
227
+
228
+    private TaMiniappTemplate getTplByType(String type, String appid) {
229
+        TaMiniappTemplate tpl = taMiniappTemplateMapper.selectTplByType(type, appid);
230
+        return tpl;
231
+    }
232
+
233
+    public TaMiniapp getMinappByOrg(Integer org) {
234
+        QueryWrapper<TaMiniapp> queryWrapper = new QueryWrapper<>();
235
+        queryWrapper.eq("org_id", org);
236
+        queryWrapper.last("limit 1");
237
+
238
+        return taMiniappMapper.selectOne(queryWrapper);
239
+    }
194 240
 }

+ 11
- 0
src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java Ver arquivo

@@ -15,6 +15,8 @@ import com.huiju.estateagents.mapper.TaBuildingMapper;
15 15
 import com.huiju.estateagents.mapper.TaPersonMapper;
16 16
 import com.huiju.estateagents.service.ITaBuildingDynamicService;
17 17
 import com.huiju.estateagents.service.ITaSaveService;
18
+import com.huiju.estateagents.service.TaPosterService;
19
+import com.huiju.estateagents.service.TaShareContentService;
18 20
 import org.springframework.beans.factory.annotation.Autowired;
19 21
 import org.springframework.beans.propertyeditors.CustomDateEditor;
20 22
 import org.springframework.stereotype.Service;
@@ -58,6 +60,12 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
58 60
     @Autowired
59 61
     private ITaSaveService iTaSaveService;
60 62
 
63
+    @Autowired
64
+    private TaPosterService taPosterService;
65
+
66
+    @Autowired
67
+    private TaShareContentService taShareContentService;
68
+
61 69
     protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
62 70
         DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
63 71
         CustomDateEditor editor = new CustomDateEditor(df, true);//true表示允许为空,false反之
@@ -114,6 +122,7 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
114 122
         // 判断换当前列表活动状态—1:进行中(展示活动报名截止时间),2:未开始(展示活动报名时间),3:结束(不展示)
115 123
         for (TaBuildingDynamic taBuildingDynamic:records){
116 124
             setExtendInfo(taBuildingDynamic, taPerson);
125
+
117 126
         }
118 127
         HashMap<String, Object> map = new HashMap<>();
119 128
         map.put("list", records);
@@ -288,6 +297,8 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
288 297
         taActivityDynamicEnlist.eq("building_id", taBuildingDynamic.getBuildingId());
289 298
         int applyCount= taActivityDynamicEnlistMapper.selectCount(taActivityDynamicEnlist);
290 299
         taBuildingDynamic.setCount(applyCount);
300
+        taBuildingDynamic.setPosters(taPosterService.getPostersForTarget(taBuildingDynamic.getDynamicId(),CommConstant.POSTER_CONTENT_TYPE_ACTIVITY));
301
+        taBuildingDynamic.setShareContents(taShareContentService.getPostersForTarget(taBuildingDynamic.getDynamicId(),CommConstant.POSTER_CONTENT_TYPE_ACTIVITY));
291 302
 
292 303
         // 是否收藏
293 304
         TaSave taSave = iTaSaveService.getInfoBy(taPerson.getPersonId(), CommConstant.FAVOR_ACTIVITY, taBuildingDynamic.getDynamicId());

+ 10
- 0
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java Ver arquivo

@@ -13,6 +13,8 @@ import com.huiju.estateagents.entity.*;
13 13
 import com.huiju.estateagents.mapper.*;
14 14
 import com.huiju.estateagents.service.ITaBuildingService;
15 15
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
16
+import com.huiju.estateagents.service.TaPosterService;
17
+import com.huiju.estateagents.service.TaShareContentService;
16 18
 import jodd.util.CollectionUtil;
17 19
 import org.apache.commons.collections.CollectionUtils;
18 20
 import org.checkerframework.checker.units.qual.A;
@@ -68,6 +70,12 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
68 70
     @Autowired
69 71
     private TaBuildingProjectTypeMapper taBuildingProjectTypeMapper;
70 72
 
73
+    @Autowired
74
+    private TaPosterService taPosterService;
75
+
76
+    @Autowired
77
+    private TaShareContentService taShareContentService;
78
+
71 79
 
72 80
     @Override
73 81
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId) {
@@ -116,6 +124,8 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
116 124
         buildingProjectTypeQueryWrapper.eq("building_id", building.getBuildingId());
117 125
         List<TaBuildingProjectType> taBuildingProjectTypes = taBuildingProjectTypeMapper.selectList(buildingProjectTypeQueryWrapper);
118 126
         building.setBuildingProjectType(taBuildingProjectTypes);
127
+        building.setPosters(taPosterService.getPostersForTarget(id,CommConstant.POSTER_CONTENT_TYPE_BUILDING));
128
+        building.setShareContents(taShareContentService.getPostersForTarget(id,CommConstant.POSTER_CONTENT_TYPE_BUILDING));
119 129
 
120 130
         return ResponseBean.success(building);
121 131
     }

+ 1
- 1
src/main/java/com/huiju/estateagents/service/impl/TaChatServiceImpl.java Ver arquivo

@@ -147,7 +147,7 @@ public class TaChatServiceImpl extends ServiceImpl<TaChatMapper, TaChat> impleme
147 147
                 };
148 148
                 String link = "/pages/im/index?"+String.join("&", its);
149 149
 
150
-                miniAppService.sendNoticeMessage(to.getMiniOpenid(), link, StringUtils.ifNull(from.getName(), from.getNickname()), StringUtils.ifNull(from.getTel(), from.getPhone()), "给您发送了一条新消息, 请查收", LocalDateTime.now());
150
+                miniAppService.sendNoticeMessage(to, link, StringUtils.ifNull(from.getName(), from.getNickname()), StringUtils.ifNull(from.getTel(), from.getPhone()), "给您发送了一条新消息, 请查收", LocalDateTime.now());
151 151
             } else {
152 152
                 taChat.setIsRead(CommConstant.MESSAGE_READED);
153 153
             }

+ 11
- 4
src/main/java/com/huiju/estateagents/service/impl/TaNewsServiceImpl.java Ver arquivo

@@ -16,9 +16,7 @@ import com.huiju.estateagents.exception.EstaException;
16 16
 import com.huiju.estateagents.mapper.TaFavorMapper;
17 17
 import com.huiju.estateagents.mapper.TaNewsMapper;
18 18
 import com.huiju.estateagents.mapper.TaSaveMapper;
19
-import com.huiju.estateagents.service.ITaBuildingService;
20
-import com.huiju.estateagents.service.ITaNewsService;
21
-import com.huiju.estateagents.service.ITaNewsTypeService;
19
+import com.huiju.estateagents.service.*;
22 20
 import org.checkerframework.checker.units.qual.A;
23 21
 import org.springframework.beans.factory.annotation.Autowired;
24 22
 import org.springframework.stereotype.Service;
@@ -52,6 +50,12 @@ public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> impleme
52 50
     @Autowired
53 51
     private TaSaveMapper taSaveMapper;
54 52
 
53
+    @Autowired
54
+    private TaPosterService taPosterService;
55
+
56
+    @Autowired
57
+    private TaShareContentService taShareContentService;
58
+
55 59
 
56 60
     @Override
57 61
     public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus) {
@@ -89,7 +93,10 @@ public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> impleme
89 93
         if (null == newsId) {
90 94
             responseBean.addError("编号不能为空!");
91 95
         }
92
-        responseBean.addSuccess(this.getById(newsId));
96
+        TaNews data = this.getById(newsId);
97
+        data.setPosters(taPosterService.getPostersForTarget(newsId.toString(),CommConstant.POSTER_CONTENT_TYPE_NEWS));
98
+        data.setShareContents(taShareContentService.getPostersForTarget(newsId.toString(),CommConstant.POSTER_CONTENT_TYPE_NEWS));
99
+        responseBean.addSuccess(data);
93 100
         return  responseBean;
94 101
     }
95 102
 

+ 23
- 11
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java Ver arquivo

@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
7 7
 import com.baomidou.mybatisplus.core.metadata.IPage;
8 8
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
9 9
 import com.huiju.estateagents.base.ResponseBean;
10
+import com.huiju.estateagents.center.taUser.entity.TaUser;
11
+import com.huiju.estateagents.center.taUser.service.ITaUserService;
10 12
 import com.huiju.estateagents.common.CommConstant;
11 13
 import com.huiju.estateagents.common.DateUtils;
12 14
 import com.huiju.estateagents.common.MD5Utils;
@@ -14,10 +16,8 @@ import com.huiju.estateagents.common.StringUtils;
14 16
 import com.huiju.estateagents.entity.*;
15 17
 import com.huiju.estateagents.event.EventBus;
16 18
 import com.huiju.estateagents.mapper.*;
17
-import com.huiju.estateagents.service.ITaPersonService;
19
+import com.huiju.estateagents.service.*;
18 20
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
19
-import com.huiju.estateagents.service.ITaPointsRecordsService;
20
-import com.huiju.estateagents.service.ITaRecommendCustomerService;
21 21
 import org.springframework.beans.factory.annotation.Autowired;
22 22
 import org.springframework.context.ApplicationContext;
23 23
 import org.springframework.stereotype.Service;
@@ -76,6 +76,15 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
76 76
     @Autowired
77 77
     private ITaPointsRecordsService pointsRecordsService;
78 78
 
79
+    @Autowired
80
+    private ITaUserService taUserService;
81
+
82
+    @Autowired
83
+    private TaPosterService taPosterService;
84
+
85
+    @Autowired
86
+    private TaShareContentService taShareContentService;
87
+
79 88
 
80 89
     @Resource
81 90
     private ApplicationContext applicationContext;
@@ -217,8 +226,9 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
217 226
         // 获取访问记录
218 227
         List<Map<String, Object>> visitors = taUvMapper.getLastVisitors(CommConstant.FAVOR_CONSULTANT, person.getPersonId(), 10);
219 228
 
229
+        TaUser user = taUserService.getById(person.getUserId());
220 230
         // 获取关联项目
221
-        List<TaPersonBuilding> buildingList = getPersonBuildings(person.getPersonId());
231
+        List<TaPersonBuilding> buildingList = getPersonBuildings(user.getUserId().toString());
222 232
         List<String> buildings = new ArrayList<>();
223 233
         if (null != buildingList && buildingList.size() > 0) {
224 234
             for(TaPersonBuilding b: buildingList) {
@@ -228,22 +238,24 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
228 238
 
229 239
         Map<String, Object> result = new HashMap<>();
230 240
         result.put("id", person.getPersonId());
231
-        result.put("name", person.getName());
232
-        result.put("company", person.getCompany());
233
-        result.put("department", person.getDepartment());
241
+        result.put("name", user.getUserName());
242
+        result.put("company", user.getOrgName());
243
+        result.put("department", user.getDepartment());
234 244
         result.put("picture", person.getPhoto());
235 245
         result.put("hotNum", person.getHotNum());
236 246
         result.put("likeNum", person.getLikeNum());
237 247
         result.put("pvNum", person.getPvNum());
238 248
         result.put("post", person.getPost());
239 249
         result.put("phone", person.getTel());
240
-        result.put("avatar", person.getAvatarurl());
250
+        result.put("avatar",user.getAvatar());
241 251
         result.put("visitors", visitors);
242 252
         result.put("liked", false);
243 253
         result.put("unReadNum", 0);
244 254
         result.put("projects", buildings);
245 255
         result.put("address", person.getAddress());
246 256
         result.put("personTags",person.getPersonTags());
257
+        result.put("posters",taPosterService.getPostersForTarget(user.getUserId().toString(),CommConstant.POSTER_CONTENT_TYPE_PERSON));
258
+        result.put("shareContent",taShareContentService.getPostersForTarget(user.getUserId().toString(),CommConstant.POSTER_CONTENT_TYPE_PERSON));
247 259
         QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
248 260
         saveQueryWrapper.eq("tagert_type", "card");
249 261
         saveQueryWrapper.eq("person_id",personId);
@@ -605,9 +617,9 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
605 617
         return taPersonMapper.getPersonByOpenId(openid);
606 618
     }
607 619
 
608
-    public List<TaPersonBuilding> getPersonBuildings(String personId) {
620
+    public List<TaPersonBuilding> getPersonBuildings(String userId) {
609 621
         QueryWrapper<TaPersonBuilding> queryWrapper = new QueryWrapper<>();
610
-        queryWrapper.eq("person_id", personId);
622
+        queryWrapper.eq("user_id", userId);
611 623
         return taPersonBuildingMapper.selectList(queryWrapper);
612 624
     }
613 625
 
@@ -651,7 +663,7 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
651 663
     @Override
652 664
     public IPage<TaPerson> getDriftCustomerList (int pageNumber, int pageSize,String building, Integer orgId){
653 665
         QueryWrapper<TaPerson> queryWrapper = new QueryWrapper<>();
654
-        queryWrapper.isNull("person_type");
666
+        queryWrapper.eq("person_type",CommConstant.PERSON_ESTATE_DRIFT);
655 667
         if(building.equals("") && null != building){
656 668
             queryWrapper.eq("building_id",building);
657 669
         }

+ 1
- 1
src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java Ver arquivo

@@ -290,7 +290,7 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
290 290
         TaPerson saleMan = taPersonMapper.getSalesExecutive();
291 291
         if (null != saleMan && !StringUtils.isEmpty(saleMan.getMiniOpenid())) {
292 292
             // 发送消息
293
-            iMiniAppService.sendNewCustomerMessage(saleMan.getMiniOpenid(), CommConstant.MINIAPP_INDEX, taRecommendCustomer.getName(), taRecommendCustomer.getPhone(), "", taPerson.getName());
293
+            iMiniAppService.sendNewCustomerMessage(saleMan, CommConstant.MINIAPP_INDEX, taRecommendCustomer.getName(), taRecommendCustomer.getPhone(), "", taPerson.getName());
294 294
         }
295 295
 
296 296
         return ResponseBean.success(taRecommendCustomer);

+ 9
- 0
src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java Ver arquivo

@@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 4
 import com.huiju.estateagents.entity.TaRole;
5 5
 import com.huiju.estateagents.mapper.TaRoleMapper;
6 6
 import com.huiju.estateagents.service.ITaRoleService;
7
+import org.springframework.beans.factory.annotation.Autowired;
7 8
 import org.springframework.stereotype.Service;
8 9
 
10
+import java.util.List;
11
+
9 12
 /**
10 13
  * <p>
11 14
  * 角色表 角色表,每个org的角色可以单独设置。但是都共有一个admin角色。这个角色在创建用户的时候创建好了 服务实现类
@@ -16,5 +19,11 @@ import org.springframework.stereotype.Service;
16 19
  */
17 20
 @Service
18 21
 public class TaRoleServiceImpl extends ServiceImpl<TaRoleMapper, TaRole> implements ITaRoleService {
22
+    @Autowired
23
+    TaRoleMapper taRoleMapper;
19 24
 
25
+    @Override
26
+    public List<TaRole> getRolesByUser(Integer userId) {
27
+        return taRoleMapper.getRolesByUser(userId);
28
+    }
20 29
 }

+ 10
- 1
src/main/resources/mapper/TaMiniappMapper.xml Ver arquivo

@@ -1,5 +1,14 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 <mapper namespace="com.huiju.estateagents.mapper.TaMiniappMapper">
4
-
4
+    <select id="getAllAvaliableMiniapps" resultType="com.huiju.estateagents.entity.TaMiniapp">
5
+        SELECT
6
+            s.*
7
+        FROM
8
+            ta_user t
9
+        INNER JOIN ta_miniapp s ON t.org_id = s.org_id
10
+        WHERE
11
+            t.`status` = 1
12
+        AND t.exp_date &gt;= now()
13
+    </select>
5 14
 </mapper>

+ 10
- 1
src/main/resources/mapper/TaMiniappTemplateMapper.xml Ver arquivo

@@ -1,5 +1,14 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 <mapper namespace="com.huiju.estateagents.mapper.TaMiniappTemplateMapper">
4
-
4
+    <select id="selectTplByType" resultType="com.huiju.estateagents.entity.TaMiniappTemplate">
5
+        SELECT
6
+            s.*
7
+        FROM
8
+            ta_miniapp t
9
+        INNER JOIN ta_miniapp_template s ON t.miniapp_id = s.miniapp_id
10
+        WHERE
11
+            t.miniapp_id = #{appid}
12
+        AND s.tpl_type = #{type}
13
+    </select>
5 14
 </mapper>

+ 9
- 1
src/main/resources/mapper/TaRoleMapper.xml Ver arquivo

@@ -1,5 +1,13 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 <mapper namespace="com.huiju.estateagents.mapper.TaRoleMapper">
4
-
4
+    <select id="getRolesByUser" resultType="com.huiju.estateagents.entity.TaRole">
5
+        SELECT
6
+            t.*
7
+        FROM
8
+            ta_role t
9
+        INNER JOIN ta_user_role s ON t.role_id = s.role_id
10
+        WHERE
11
+            s.user_id = #{user}
12
+    </select>
5 13
 </mapper>

+ 60
- 0
src/main/resources/mapper/TaUserAuthButtonMapper.xml Ver arquivo

@@ -0,0 +1,60 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.center.taUser.mapper.TaUserAuthButtonMapper">
4
+
5
+    <sql id="queryColumn">
6
+		t.btn_id,
7
+		t.menu_id,
8
+		t.name,
9
+		t.status,
10
+		t.code
11
+	</sql>
12
+
13
+    <select id="sysButtonListByUserId" resultType="com.huiju.estateagents.entity.SysButtonInMenu">
14
+        select
15
+          <include refid="queryColumn"></include>
16
+        from
17
+          sys_button_in_menu t
18
+        where
19
+            t.btn_id in (
20
+                SELECT
21
+                a.role_id
22
+                from
23
+                ta_role_button a
24
+                where
25
+                a.role_id in (
26
+                    select
27
+                    role_id
28
+                    from
29
+                    ta_user_role b
30
+                    where
31
+                    b.user_id = #{userId}
32
+                )
33
+            )
34
+    </select>
35
+
36
+    <select id="sysButtonListByRoleId" resultType="com.huiju.estateagents.entity.SysButtonInMenu">
37
+        select
38
+          <include refid="queryColumn"></include>
39
+        from
40
+        sys_button_in_menu t
41
+    </select>
42
+
43
+    <delete id="deleteUserAuthButton">
44
+      delete from ta_role_button where role_id in (
45
+        select role_id from ta_user_role r where r.user_id = #{userId}
46
+      )
47
+    </delete>
48
+
49
+    <update id="addUserAuthButton">
50
+        <foreach item="item" index="index" collection="sysButtons" separator=";" >
51
+            insert into ta_role_button (role_id, btn_id)
52
+            values
53
+            (
54
+            (select role_id from ta_user_role u where u.user_id = #{userId}),
55
+            #{item.btnId}
56
+            )
57
+        </foreach>
58
+    </update>
59
+
60
+</mapper>

+ 67
- 0
src/main/resources/mapper/TaUserAuthMenuMapper.xml Ver arquivo

@@ -0,0 +1,67 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper">
4
+
5
+    <sql id="queryColumn">
6
+		t.menu_id,
7
+		t.code,
8
+		t.name,
9
+		t.parent_code,
10
+		t.icon,
11
+		t.app_type,
12
+		t.status,
13
+		t.menu_root
14
+	</sql>
15
+
16
+    <select id="sysMenuListByUserId" resultType="com.huiju.estateagents.entity.SysMenu">
17
+        select
18
+          <include refid="queryColumn"></include>
19
+        from
20
+            sys_menu t
21
+        where
22
+            t.menu_id in (
23
+                SELECT
24
+                    a.menu_id
25
+                from
26
+                    ta_role_menu a
27
+                where
28
+                    a.role_id in (
29
+                        select
30
+                            role_id
31
+                        from
32
+                            ta_user_role b
33
+                        where
34
+                            b.user_id = #{userId}
35
+                    )
36
+            )
37
+        order by t.sort_num desc
38
+    </select>
39
+
40
+    <select id="sysMenuListByRoleId" resultType="com.huiju.estateagents.entity.SysMenu">
41
+        select
42
+          <include refid="queryColumn"></include>
43
+        from
44
+          sys_menu t
45
+        where
46
+          t.app_type = 'estateagent-admin'
47
+          order by t.sort_num
48
+    </select>
49
+
50
+    <delete id="deleteUserAuthMenu">
51
+      delete from ta_role_menu where role_id in (
52
+        select role_id from ta_user_role r where r.user_id = #{userId}
53
+      )
54
+    </delete>
55
+
56
+    <update id="addUserAuthMenu">
57
+        <foreach item="item" index="index" collection="sysMenus" separator=";" >
58
+            insert into ta_role_menu (role_id, menu_id)
59
+            values
60
+            (
61
+              (select role_id from ta_user_role u where u.user_id = #{userId}),
62
+               #{item.menuId}
63
+            )
64
+        </foreach>
65
+    </update>
66
+
67
+</mapper>