魏熙美 5 years ago
parent
commit
51b2108a49
34 changed files with 561 additions and 47 deletions
  1. 1
    8
      src/main/java/com/huiju/estateagents/center/sysUser/controller/SysUserController.java
  2. 2
    1
      src/main/java/com/huiju/estateagents/center/sysUser/service/ISysTokenService.java
  3. 15
    1
      src/main/java/com/huiju/estateagents/center/sysUser/service/impl/SysTokenServiceImpl.java
  4. 15
    8
      src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java
  5. 3
    0
      src/main/java/com/huiju/estateagents/center/taUser/entity/TaUser.java
  6. 2
    1
      src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java
  7. 46
    0
      src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserServiceImpl.java
  8. 134
    0
      src/main/java/com/huiju/estateagents/common/SMSUtils.java
  9. 35
    0
      src/main/java/com/huiju/estateagents/config/SMSProperties.java
  10. 14
    0
      src/main/java/com/huiju/estateagents/controller/CommonController.java
  11. 10
    1
      src/main/java/com/huiju/estateagents/controller/MiniAppController.java
  12. 23
    0
      src/main/java/com/huiju/estateagents/controller/TaMiniappController.java
  13. 16
    2
      src/main/java/com/huiju/estateagents/controller/TaPersonController.java
  14. 19
    0
      src/main/java/com/huiju/estateagents/controller/TaPointsRecordsController.java
  15. 7
    6
      src/main/java/com/huiju/estateagents/controller/TdPointsRulesController.java
  16. 3
    0
      src/main/java/com/huiju/estateagents/entity/TaPointsRecords.java
  17. 5
    5
      src/main/java/com/huiju/estateagents/interceptor/AccessInterceptor.java
  18. 2
    0
      src/main/java/com/huiju/estateagents/mapper/TaPointsRecordsMapper.java
  19. 5
    0
      src/main/java/com/huiju/estateagents/mapper/TaRoleMenuMapper.java
  20. 4
    0
      src/main/java/com/huiju/estateagents/service/IMiniAppService.java
  21. 3
    0
      src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java
  22. 7
    0
      src/main/java/com/huiju/estateagents/service/impl/MiniAppServiceImpl.java
  23. 10
    0
      src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java
  24. 12
    12
      src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java
  25. 23
    0
      src/main/resources/application-demo.yml
  26. 23
    0
      src/main/resources/application-dev.yml
  27. 23
    0
      src/main/resources/application-gzysd.yml
  28. 23
    0
      src/main/resources/application-nj.yml
  29. 23
    0
      src/main/resources/application-prod.yml
  30. 23
    0
      src/main/resources/application-test.yml
  31. 23
    0
      src/main/resources/application-xs.yml
  32. 3
    0
      src/main/resources/mapper/TaPointsRecordsMapper.xml
  33. 3
    1
      src/main/resources/mapper/TaRoleMenuMapper.xml
  34. 1
    1
      src/main/resources/mapper/TaUserAuthButtonMapper.xml

+ 1
- 8
src/main/java/com/huiju/estateagents/center/sysUser/controller/SysUserController.java View File

@@ -197,7 +197,7 @@ public class SysUserController extends BaseController {
197 197
         String token = JWTUtils.newToken(sysUser.getUserName());
198 198
     
199 199
         //保存token
200
-        saveToken(token);
200
+        sysTokenService.saveToken(token);
201 201
         
202 202
         Map<String, Object> result = new HashMap<>();
203 203
         result.put("token", token);
@@ -214,11 +214,4 @@ public class SysUserController extends BaseController {
214 214
         sysTokenService.remove(sysTokenQueryWrapper);
215 215
         return ResponseBean.success("成功退出");
216 216
     }
217
-    
218
-    private void saveToken(String token) {
219
-        SysToken sysToken = new SysToken();
220
-        sysToken.setToken(token);
221
-        sysToken.setExpDate(LocalDateTime.now());
222
-        sysTokenService.save(sysToken);
223
-    }
224 217
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/center/sysUser/service/ISysTokenService.java View File

@@ -12,5 +12,6 @@ import com.huiju.estateagents.center.sysUser.entity.SysToken;
12 12
  * @since 2019-09-11
13 13
  */
14 14
 public interface ISysTokenService extends IService<SysToken> {
15
-
15
+	
16
+	SysToken saveToken(String token);
16 17
 }

+ 15
- 1
src/main/java/com/huiju/estateagents/center/sysUser/service/impl/SysTokenServiceImpl.java View File

@@ -5,8 +5,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 5
 import com.huiju.estateagents.center.sysUser.entity.SysToken;
6 6
 import com.huiju.estateagents.center.sysUser.mapper.SysTokenMapper;
7 7
 import com.huiju.estateagents.center.sysUser.service.ISysTokenService;
8
+import org.springframework.beans.factory.annotation.Autowired;
8 9
 import org.springframework.stereotype.Service;
9 10
 
11
+import java.time.LocalDateTime;
12
+
10 13
 /**
11 14
  * <p>
12 15
  * 令牌表  服务实现类
@@ -17,5 +20,16 @@ import org.springframework.stereotype.Service;
17 20
  */
18 21
 @Service
19 22
 public class SysTokenServiceImpl extends ServiceImpl<SysTokenMapper, SysToken> implements ISysTokenService {
20
-
23
+	
24
+	@Autowired
25
+	private SysTokenMapper sysTokenMapper;
26
+	
27
+	@Override
28
+	public SysToken saveToken(String token) {
29
+		SysToken sysToken = new SysToken();
30
+		sysToken.setToken(token);
31
+		sysToken.setExpDate(LocalDateTime.now().plusDays(7));
32
+		sysTokenMapper.insert(sysToken);
33
+		return sysToken;
34
+	}
21 35
 }

+ 15
- 8
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java View File

@@ -13,9 +13,11 @@ import com.huiju.estateagents.center.sysUser.service.ISysTokenService;
13 13
 import com.huiju.estateagents.center.taUser.entity.TaTagUser;
14 14
 import com.huiju.estateagents.center.taUser.entity.TaTags;
15 15
 import com.huiju.estateagents.center.taUser.entity.TaUser;
16
+import com.huiju.estateagents.center.taUser.entity.TaUserRole;
16 17
 import com.huiju.estateagents.center.taUser.service.ITaTagUserService;
17 18
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthButtonService;
18 19
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
20
+import com.huiju.estateagents.center.taUser.service.ITaUserRoleService;
19 21
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
20 22
 import com.huiju.estateagents.common.CommConstant;
21 23
 import com.huiju.estateagents.common.JWTUtils;
@@ -76,6 +78,9 @@ public class TaUserController extends BaseController {
76 78
     
77 79
     @Autowired
78 80
     private ITaPersonBuildingService taPersonBuildingService;
81
+    
82
+    @Autowired
83
+    private ITaUserRoleService taUserRoleService;
79 84
 
80 85
     /**
81 86
      * 分页查询列表
@@ -282,7 +287,7 @@ public class TaUserController extends BaseController {
282 287
         String token = JWTUtils.newTokenByMap(map);
283 288
     
284 289
         //保存token
285
-        saveToken(token);
290
+        sysTokenService.saveToken(token);
286 291
     
287 292
         Map<String, Object> result = new HashMap<>();
288 293
         result.put("token", token);
@@ -357,6 +362,15 @@ public class TaUserController extends BaseController {
357 362
                 tags.add(e.getTagId());
358 363
             });
359 364
             taUser.setTaTags(tags);
365
+            //获取角色信息
366
+            QueryWrapper<TaUserRole> taUserRoleQueryWrapper = new QueryWrapper<>();
367
+            taUserRoleQueryWrapper.eq("user_id",id);
368
+            List<TaUserRole> taUserRoleList = taUserRoleService.list(taUserRoleQueryWrapper);
369
+            List<Integer> ids = new ArrayList<>();
370
+            taUserRoleList.forEach(e -> {
371
+                ids.add(e.getRoleId());
372
+            });
373
+            taUser.setRoleIds(ids);
360 374
             taUser.setLoginPassword("");
361 375
             QueryWrapper<TaPersonBuilding> taPersonBuildingQueryWrapper = new QueryWrapper<>();
362 376
             taPersonBuildingQueryWrapper.eq("user_id",taUser.getUserId());
@@ -414,11 +428,4 @@ public class TaUserController extends BaseController {
414 428
         }
415 429
         return responseBean;
416 430
     }
417
-    
418
-    private void saveToken(String token) {
419
-        SysToken sysToken = new SysToken();
420
-        sysToken.setToken(token);
421
-        sysToken.setExpDate(LocalDateTime.now());
422
-        sysTokenService.save(sysToken);
423
-    }
424 431
 }

+ 3
- 0
src/main/java/com/huiju/estateagents/center/taUser/entity/TaUser.java View File

@@ -153,6 +153,9 @@ public class TaUser implements Serializable {
153 153
     @TableField(exist = false)
154 154
     private List<Integer> taTags = new ArrayList<Integer>();
155 155
     
156
+    @TableField(exist = false)
157
+    private List<Integer> roleIds = new ArrayList<Integer>();
158
+    
156 159
     @TableField(exist = false)
157 160
     private String buildingId;
158 161
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java View File

@@ -88,7 +88,7 @@ public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper,
88 88
         }
89 89
         try {
90 90
             //授权菜单,先删除在新增
91
-            taUserAuthMenuMapper.deleteUserAuthMenu(roleId);
91
+            taRoleMenuMapper.deleteCurrentMenu(roleId);
92 92
             for (SysMenu sysMenu: sysMenuList) {
93 93
                 TaRoleMenu taRoleMenu = new TaRoleMenu();
94 94
                 taRoleMenu.setRoleId(roleId);
@@ -126,6 +126,7 @@ public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper,
126 126
             TaRole taRole = new TaRole();
127 127
             taRole.setRoleName(name);
128 128
             taRole.setOrgId(orgId);
129
+            taRole.setStatus(1);
129 130
             taRole.setCreateDate(LocalDateTime.now());
130 131
             taRoleMapper.insert(taRole);
131 132
 

+ 46
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserServiceImpl.java View File

@@ -6,8 +6,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6 6
 import com.huiju.estateagents.center.taUser.entity.TaTagUser;
7 7
 import com.huiju.estateagents.center.taUser.entity.TaTags;
8 8
 import com.huiju.estateagents.center.taUser.entity.TaUser;
9
+import com.huiju.estateagents.center.taUser.entity.TaUserRole;
9 10
 import com.huiju.estateagents.center.taUser.mapper.TaTagUserMapper;
10 11
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
12
+import com.huiju.estateagents.center.taUser.mapper.TaUserRoleMapper;
11 13
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
12 14
 import com.huiju.estateagents.common.CommConstant;
13 15
 import com.huiju.estateagents.common.MD5Utils;
@@ -15,11 +17,13 @@ import com.huiju.estateagents.common.StringUtils;
15 17
 import com.huiju.estateagents.entity.TaMiniapp;
16 18
 import com.huiju.estateagents.entity.TaMiniappTemplate;
17 19
 import com.huiju.estateagents.entity.TaOrg;
20
+import com.huiju.estateagents.entity.TaPerson;
18 21
 import com.huiju.estateagents.entity.TaPersonBuilding;
19 22
 import com.huiju.estateagents.mapper.TaMiniappMapper;
20 23
 import com.huiju.estateagents.mapper.TaMiniappTemplateMapper;
21 24
 import com.huiju.estateagents.mapper.TaOrgMapper;
22 25
 import com.huiju.estateagents.mapper.TaPersonBuildingMapper;
26
+import com.huiju.estateagents.mapper.TaPersonMapper;
23 27
 import org.checkerframework.checker.units.qual.A;
24 28
 import org.springframework.beans.factory.annotation.Autowired;
25 29
 import org.springframework.stereotype.Service;
@@ -57,6 +61,12 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
57 61
 	@Autowired
58 62
 	private TaPersonBuildingMapper taPersonBuildingMapper;
59 63
 	
64
+	@Autowired
65
+	private TaPersonMapper taPersonMapper;
66
+	
67
+	@Autowired
68
+	private TaUserRoleMapper taUserRoleMapper;
69
+	
60 70
 	@Override
61 71
 	public IPage<Map<String,Object>> getPageList(IPage pg) {
62 72
 		List<Map<String,Object>> taUserList = taUserMapper.getPageList(pg);
@@ -224,6 +234,15 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
224 234
 			taTagUserMapper.insert(taTagUser);
225 235
 		});
226 236
 		
237
+		//保存用户角色
238
+		List<Integer> roleIds = taUser.getRoleIds();
239
+		roleIds.forEach(e -> {
240
+			TaUserRole taUserRole = new TaUserRole();
241
+			taUserRole.setUserId(taUser.getUserId());
242
+			taUserRole.setRoleId(e);
243
+			taUserRoleMapper.insert(taUserRole);
244
+		});
245
+		
227 246
 		//保存项目
228 247
 		TaPersonBuilding taPersonBuilding = new TaPersonBuilding();
229 248
 		taPersonBuilding.setBuildingId(taUser.getBuildingId());
@@ -269,6 +288,18 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
269 288
 			taTagUserMapper.insert(taTagUser);
270 289
 		});
271 290
 		
291
+		QueryWrapper<TaUserRole> taUserRoleQueryWrapper = new QueryWrapper<>();
292
+		taUserRoleQueryWrapper.eq("user_id",taUser.getUserId());
293
+		taUserRoleMapper.delete(taUserRoleQueryWrapper);
294
+		//保存用户角色
295
+		List<Integer> roleIds = taUser.getRoleIds();
296
+		roleIds.forEach(e -> {
297
+			TaUserRole taUserRole = new TaUserRole();
298
+			taUserRole.setUserId(taUser.getUserId());
299
+			taUserRole.setRoleId(e);
300
+			taUserRoleMapper.insert(taUserRole);
301
+		});
302
+		
272 303
 		QueryWrapper<TaPersonBuilding> taPersonBuildingQueryWrapper = new QueryWrapper<>();
273 304
 		taPersonBuildingQueryWrapper.eq("user_id",taUser.getUserId());
274 305
 		taPersonBuildingMapper.delete(taPersonBuildingQueryWrapper);
@@ -279,6 +310,21 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
279 310
 		taPersonBuilding.setCreateDate(LocalDateTime.now());
280 311
 		taPersonBuildingMapper.insert(taPersonBuilding);
281 312
 		
313
+		//更新person
314
+		TaPerson taPerson = new TaPerson();
315
+		taPerson.setAvatarurl(taUser.getAvatar());
316
+		taPerson.setCompany(taUser.getOrgName());
317
+		taPerson.setTel(taUser.getPhone());
318
+		taPerson.setName(taUser.getUserName());
319
+		taPerson.setAddress(taUser.getAddress());
320
+		taPerson.setIdNo(taUser.getIdNo());
321
+		taPerson.setDepartment(taUser.getDepartment());
322
+		taPerson.setPost(taUser.getPosition());
323
+		taPerson.setPhoto(taUser.getPhoto());
324
+		QueryWrapper<TaPerson> taPersonQueryWrapper = new QueryWrapper<>();
325
+		taPersonQueryWrapper.eq("user_id",taUser.getUserId());
326
+		taPersonMapper.update(taPerson,taPersonQueryWrapper);
327
+		
282 328
 		return taUser;
283 329
 	}
284 330
 }

+ 134
- 0
src/main/java/com/huiju/estateagents/common/SMSUtils.java View File

@@ -0,0 +1,134 @@
1
+package com.huiju.estateagents.common;
2
+
3
+import com.huiju.estateagents.config.SMSProperties;
4
+import lombok.Data;
5
+import lombok.extern.slf4j.Slf4j;
6
+import org.springframework.beans.factory.annotation.Autowired;
7
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
8
+import org.springframework.context.annotation.Configuration;
9
+import org.springframework.http.*;
10
+import org.springframework.web.client.RestTemplate;
11
+
12
+import java.time.LocalDateTime;
13
+import java.util.*;
14
+
15
+@Slf4j
16
+@Configuration
17
+@EnableConfigurationProperties(SMSProperties.class)
18
+public class SMSUtils {
19
+    // 短信服务配置
20
+    SMSProperties smsProperties;
21
+
22
+    Map<String, Phone> allPhones;
23
+
24
+    @Autowired
25
+    public SMSUtils(SMSProperties properties) {
26
+        smsProperties = properties;
27
+        allPhones = new HashMap<>();
28
+    }
29
+
30
+    /**
31
+     * 发送验证码到 tel
32
+     * @param tel
33
+     * @return
34
+     */
35
+    public boolean sendCaptcha(String tel) {
36
+        Phone phone = allPhones.get(tel);
37
+        if (null == phone) {
38
+            phone = new Phone();
39
+            phone.setTel(tel);
40
+        }
41
+
42
+        phone.setCaptcha(genCaptcha(smsProperties.getCaptcha().getSize()));
43
+        phone.setExpire(LocalDateTime.now().plusSeconds(smsProperties.getCaptcha().getExpire()));
44
+        allPhones.put(tel, phone);
45
+
46
+        log.info("发送手机 {} 验证码 {}", tel, phone.getCaptcha());
47
+
48
+        String[] params = { phone.getCaptcha(), smsProperties.getCaptcha().getSign() };
49
+        return sendMessage(smsProperties.getCaptcha().getCode(), tel, params);
50
+    }
51
+
52
+    /**
53
+     * 校验验证码
54
+     * @param tel
55
+     * @param smsCaptcha
56
+     * @return
57
+     */
58
+    public boolean checkCaptcha(String tel, String smsCaptcha) {
59
+        Phone phone = allPhones.get(tel);
60
+        if (null == phone) {
61
+            log.error("手机号 {} 的验证码未找到", tel);
62
+            return false;
63
+        }
64
+
65
+        if (null == smsCaptcha || !smsCaptcha.equals(phone.getCaptcha())) {
66
+            log.error("手机号 {} 校验验证码出错, 正确: {}, 错误: {}", tel, phone.getCaptcha(), smsCaptcha);
67
+            return false;
68
+        }
69
+
70
+        LocalDateTime now = LocalDateTime.now();
71
+        if (now.isAfter(phone.getExpire())) {
72
+            log.error("手机号 {} 的验证码已过期", tel);
73
+            return false;
74
+        }
75
+
76
+        // 如果验证成功, 则从缓存中删除
77
+        allPhones.remove(tel);
78
+        return true;
79
+    }
80
+
81
+    public boolean sendVisitor(String tel, String name) {
82
+        log.info("发送手机 {} 客户名称 {}", tel, name);
83
+
84
+        String[] params = { name };
85
+        return sendMessage(smsProperties.getVisitor().getCode(), tel, params);
86
+    }
87
+
88
+    private String genCaptcha(int length) {
89
+        List<String> nums = new ArrayList<>();
90
+        for (int i = 0; i < length; i ++) {
91
+            int rand = (new Random()).nextInt(10);
92
+            nums.add(String.valueOf(rand));
93
+        }
94
+        return String.join("", nums);
95
+    }
96
+
97
+    private boolean sendMessage(String code, String tel, String[] params) {
98
+        // 发送内容
99
+        SMSProperties.Template message = new SMSProperties.Template();
100
+        message.setCode(code);
101
+        message.setTel(tel);
102
+        message.setParams(params);
103
+
104
+        // 构造 request
105
+        HttpHeaders headers = new HttpHeaders();
106
+        headers.setContentType(MediaType.parseMediaType(smsProperties.getContentType()));
107
+//        String body = JSONObject.toJSONString(message);
108
+        HttpMethod method = HttpMethod.resolve(smsProperties.getMethod());
109
+        HttpEntity requestEntity = new HttpEntity(message, headers);
110
+
111
+        RestTemplate template = new RestTemplate();
112
+        HttpEntity<String> response = template.exchange(
113
+                smsProperties.getUrl(),
114
+                method,
115
+                requestEntity,
116
+                String.class,
117
+                new Object()
118
+        );
119
+
120
+        if (((ResponseEntity<String>) response).getStatusCodeValue() != HttpStatus.OK.value()) {
121
+            log.error("请求发送短信验证码失败: {}", response.toString());
122
+            return false;
123
+        }
124
+
125
+        return true;
126
+    }
127
+
128
+    @Data
129
+    public static class Phone {
130
+        String tel;
131
+        String captcha;
132
+        LocalDateTime expire;
133
+    }
134
+}

+ 35
- 0
src/main/java/com/huiju/estateagents/config/SMSProperties.java View File

@@ -0,0 +1,35 @@
1
+package com.huiju.estateagents.config;
2
+
3
+
4
+import lombok.Data;
5
+import org.springframework.boot.context.properties.ConfigurationProperties;
6
+
7
+@Data
8
+@ConfigurationProperties(prefix = "sms")
9
+public class SMSProperties {
10
+    String url;
11
+    String method;
12
+    String contentType;
13
+    Captcha captcha;
14
+    Visitor visitor;
15
+
16
+    @Data
17
+    public static class Template {
18
+        String code;
19
+        String tel;
20
+        String[] params;
21
+    }
22
+
23
+    @Data
24
+    public static class Captcha {
25
+        String code;
26
+        Integer expire;
27
+        Integer size;
28
+        String sign;
29
+    }
30
+
31
+    @Data
32
+    public static class Visitor {
33
+        String code;
34
+    }
35
+}

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

@@ -4,8 +4,10 @@ package com.huiju.estateagents.controller;
4 4
 import com.huiju.estateagents.base.ResponseBean;
5 5
 import com.huiju.estateagents.common.AliOSSUtils;
6 6
 import com.huiju.estateagents.common.CommConstant;
7
+import com.huiju.estateagents.common.SMSUtils;
7 8
 import com.huiju.estateagents.common.StringUtils;
8 9
 import org.apache.ibatis.annotations.Mapper;
10
+import org.springframework.beans.factory.annotation.Autowired;
9 11
 import org.springframework.web.bind.annotation.*;
10 12
 import org.springframework.web.multipart.MultipartFile;
11 13
 
@@ -18,6 +20,8 @@ import java.util.Map;
18 20
 @RestController
19 21
 @RequestMapping("/api")
20 22
 public class CommonController {
23
+    @Autowired
24
+    SMSUtils smsUtils;
21 25
 
22 26
     /**
23 27
      * 图片上传
@@ -60,6 +64,16 @@ public class CommonController {
60 64
         return result;
61 65
     }
62 66
 
67
+    @PostMapping("{plat}/captcha")
68
+    public ResponseBean sendCaptcha(@RequestParam String tel) {
69
+        boolean success = smsUtils.sendCaptcha(tel);
70
+        if (success) {
71
+            return ResponseBean.success("发送验证码成功");
72
+        } else {
73
+            return ResponseBean.error("验证码发送失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
74
+        }
75
+    }
76
+
63 77
     @GetMapping("/wx/awesome/dict/{typeFor}")
64 78
     public ResponseBean dicts(@PathVariable String typeFor) {
65 79
 

+ 10
- 1
src/main/java/com/huiju/estateagents/controller/MiniAppController.java View File

@@ -7,6 +7,8 @@ import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
7 7
 import com.alibaba.fastjson.JSONObject;
8 8
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
9 9
 import com.huiju.estateagents.base.ResponseBean;
10
+import com.huiju.estateagents.center.sysUser.entity.SysToken;
11
+import com.huiju.estateagents.center.sysUser.service.ISysTokenService;
10 12
 import com.huiju.estateagents.common.CommConstant;
11 13
 import com.huiju.estateagents.common.WxUtils;
12 14
 import com.huiju.estateagents.entity.*;
@@ -46,6 +48,11 @@ public class MiniAppController {
46 48
     @Autowired
47 49
     private ITaOrgService taOrgService;
48 50
 
51
+    @Autowired
52
+    private ISysTokenService sysTokenService;
53
+
54
+
55
+
49 56
 
50 57
 
51 58
     /**
@@ -92,7 +99,7 @@ public class MiniAppController {
92 99
             personQueryWrapper.eq("org_id",orgId);
93 100
             int count = taPersonService.count(personQueryWrapper);
94 101
 
95
-            if(from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
102
+            if(null!=from&&from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
96 103
                 // 添加积分
97 104
                  applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll));
98 105
             }
@@ -131,6 +138,8 @@ public class MiniAppController {
131 138
             result.put("extraInfo", extraInfo);
132 139
             result.put("miniAuthorized", null != taPerson.getAvatarurl() && taPerson.getAvatarurl().indexOf("wx.qlogo.cn") > 0);
133 140
 
141
+            String token = miniResp.get("token");
142
+            sysTokenService.saveToken(token);
134 143
 
135 144
             return ResponseBean.success(result);
136 145
         } catch (WxErrorException e) {

+ 23
- 0
src/main/java/com/huiju/estateagents/controller/TaMiniappController.java View File

@@ -1,10 +1,12 @@
1 1
 package com.huiju.estateagents.controller;
2 2
 
3
+import com.alibaba.fastjson.JSONObject;
3 4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 5
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 7
 import com.huiju.estateagents.base.BaseController;
7 8
 import com.huiju.estateagents.base.ResponseBean;
9
+import com.huiju.estateagents.common.StringUtils;
8 10
 import com.huiju.estateagents.entity.TaMiniapp;
9 11
 import com.huiju.estateagents.service.ITaMiniappService;
10 12
 import org.slf4j.Logger;
@@ -141,4 +143,25 @@ public class TaMiniappController extends BaseController {
141 143
         }
142 144
         return responseBean;
143 145
     }
146
+
147
+    @PostMapping(value = "center/check/taMiniapp")
148
+    public ResponseBean createQRCode(@RequestBody String paramStr) {
149
+        if (StringUtils.isEmpty(paramStr)) {
150
+            return ResponseBean.error("生成二维码参数为空", ResponseBean.ERROR_MISSING_PARAMS);
151
+        }
152
+
153
+        JSONObject params = JSONObject.parseObject(paramStr);
154
+        if (null == params) {
155
+            return ResponseBean.error("非法生成二维码参数", ResponseBean.ERROR_ILLEGAL_PARAMS);
156
+        }
157
+
158
+        String appid = params.getString("appid");
159
+        String secret = params.getString("secret");
160
+        String path = params.getString("path");
161
+
162
+        if (StringUtils.isEmpty(appid) || StringUtils.isEmpty(secret) || StringUtils.isEmpty(path)) {
163
+
164
+        }
165
+        return null;
166
+    }
144 167
 }

+ 16
- 2
src/main/java/com/huiju/estateagents/controller/TaPersonController.java View File

@@ -10,6 +10,7 @@ import com.huiju.estateagents.center.taUser.entity.TaUser;
10 10
 import com.huiju.estateagents.center.taUser.service.ITaUserService;
11 11
 import com.huiju.estateagents.common.CommConstant;
12 12
 import com.huiju.estateagents.common.JWTUtils;
13
+import com.huiju.estateagents.common.SMSUtils;
13 14
 import com.huiju.estateagents.common.StringUtils;
14 15
 import com.huiju.estateagents.entity.*;
15 16
 import com.huiju.estateagents.service.ITaPersonService;
@@ -49,6 +50,8 @@ public class TaPersonController extends BaseController {
49 50
     TaChannelPersonService taChannelPersonService;
50 51
     @Autowired
51 52
     ITaUserService taUserService;
53
+    @Autowired
54
+    SMSUtils smsUtils;
52 55
 
53 56
     /**
54 57
      *
@@ -91,9 +94,12 @@ public class TaPersonController extends BaseController {
91 94
     }
92 95
 
93 96
     @PutMapping("/wx/registerConsultant")
94
-    public ResponseBean registerConsultant(HttpServletRequest request,@RequestParam String phone) {
95
-        Integer orgId =getOrgId(request);
97
+    public ResponseBean registerConsultant(HttpServletRequest request,@RequestParam String phone,@RequestParam String code) {
96 98
         ResponseBean responseBean = new ResponseBean();
99
+        if(smsUtils.checkCaptcha(phone,code)){
100
+            responseBean.addError("验证码错误。");
101
+        }
102
+        Integer orgId =getOrgId(request);
97 103
         String openid = JWTUtils.getSubject(request);
98 104
         List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
99 105
         if (null == taPersons || taPersons.size() != 1) {
@@ -109,6 +115,14 @@ public class TaPersonController extends BaseController {
109 115
             person.setPersonType(CommConstant.PERSON_REALTY_CONSULTANT);
110 116
             person.setUserId(user.getUserId());
111 117
             person.setAvatarurl(user.getAvatar());
118
+            person.setCompany(user.getOrgName());
119
+            person.setTel(user.getPhone());
120
+            person.setName(user.getUserName());
121
+            person.setAddress(user.getAddress());
122
+            person.setIdNo(user.getIdNo());
123
+            person.setDepartment(user.getDepartment());
124
+            person.setPost(user.getPosition());
125
+            person.setPhoto(user.getPhoto());
112 126
             taPersonService.updateById(person);
113 127
             responseBean.addSuccess(person);
114 128
         }else {

+ 19
- 0
src/main/java/com/huiju/estateagents/controller/TaPointsRecordsController.java View File

@@ -105,6 +105,25 @@ public class TaPointsRecordsController extends BaseController {
105 105
             queryWrapper.orderByDesc("create_date");
106 106
 
107 107
             IPage<TaPointsRecords> result = iTaPointsRecordsService.page(pg, queryWrapper);
108
+            for(int i = 0;i<result.getRecords().size();i++){
109
+                switch (result.getRecords().get(i).getChangeType()){
110
+                    case CommConstant.POINTS_CHANGE_GOODS:
111
+                        result.getRecords().get(i).setRecordName("兑换商品");
112
+                        break;
113
+                    case CommConstant.POINTS_CHANGE_SHARE_POSTER:
114
+                        result.getRecords().get(i).setRecordName("分享海报");
115
+                        break;
116
+                    case CommConstant.POINTS_CHANGE_CHECKIN:
117
+                        result.getRecords().get(i).setRecordName("签到");
118
+                        break;
119
+                    case CommConstant.POINTS_CHANGE_RECOMMEND_CUSTOMER:
120
+                        result.getRecords().get(i).setRecordName("推荐客户");
121
+                        break;
122
+                    case CommConstant.POINTS_CHANGE_SIGNUP_AGENT:
123
+                        result.getRecords().get(i).setRecordName("注册经纪人");
124
+                        break;
125
+                }
126
+            }
108 127
             responseBean.addSuccess(result);
109 128
         }catch (Exception e){
110 129
             e.printStackTrace();

+ 7
- 6
src/main/java/com/huiju/estateagents/controller/TdPointsRulesController.java View File

@@ -98,13 +98,14 @@ public class TdPointsRulesController extends BaseController {
98 98
             queryWrapper.orderByDesc("create_date");
99 99
             queryWrapper.eq(StringUtils.isNotBlank(buildingId),"building_id", buildingId);
100 100
             Integer orgId = getOrgId(request);
101
-            queryWrapper.eq("org_id",orgId);
102
-            if (CommConstant.POINTS_RULE_PLATFORM.equals(type)) {
103
-                queryWrapper.isNull("building_id");
104
-            } else if (CommConstant.POINTS_RULE_PROJECT.equals(type)) {
105
-                queryWrapper.isNotNull("building_id");
101
+            queryWrapper.eq(orgId != null,"org_id",orgId);
102
+            if(null != type){
103
+                if (CommConstant.POINTS_RULE_PLATFORM.equals(type)) {
104
+                    queryWrapper.isNull("building_id");
105
+                } else if (CommConstant.POINTS_RULE_PROJECT.equals(type)) {
106
+                    queryWrapper.isNotNull("building_id");
107
+                }
106 108
             }
107
-
108 109
             IPage<TdPointsRules> result = iTdPointsRulesService.page(pg, queryWrapper);
109 110
             responseBean.addSuccess(result);
110 111
         }catch (Exception e){

+ 3
- 0
src/main/java/com/huiju/estateagents/entity/TaPointsRecords.java View File

@@ -84,5 +84,8 @@ public class TaPointsRecords implements Serializable {
84 84
     @TableField(exist = false)
85 85
     private Integer totalPoints;
86 86
 
87
+    @TableField(exist = false)
88
+    private String recordName;
89
+
87 90
 
88 91
 }

+ 5
- 5
src/main/java/com/huiju/estateagents/interceptor/AccessInterceptor.java View File

@@ -125,18 +125,18 @@ public class AccessInterceptor implements HandlerInterceptor {
125 125
             response.getOutputStream().write(JSONObject.toJSONBytes(resp));
126 126
             return false;
127 127
         }
128
-
128
+        
129 129
         //添加如果执行了登出操作提示先进行登录
130 130
         SysToken sysToken = sysTokenService.getById(jwtAuths[1]);
131 131
         if (null == sysToken){
132 132
             ResponseBean resp = ResponseBean.error("请先进行系统登录操作", ResponseBean.ERROR_AUTH_FAIL);
133
-
133
+    
134 134
             response.addHeader("Content-type", "application/json");
135 135
             response.getOutputStream().write(JSONObject.toJSONBytes(resp));
136 136
             return false;
137 137
         }
138
-
139
-        //按钮权限校验
138
+        
139
+//        按钮权限校验
140 140
         boolean state = checkButtonRole(request);
141 141
         if (!state){
142 142
             ResponseBean resp = ResponseBean.error("权限验证非法" , ResponseBean.ERROR_AUTH_FAIL);
@@ -157,7 +157,7 @@ public class AccessInterceptor implements HandlerInterceptor {
157 157
         //根据路径匹配code 一致继续 否则无权限
158 158
         String requestURI = request.getRequestURI();
159 159
         String method = request.getMethod();
160
-        TaButtonUriMap taButtonUriMap = taButtonUriMapService.getByURI(method+":"+requestURI);
160
+        TaButtonUriMap taButtonUriMap = taButtonUriMapService.getByURI(requestURI+":"+method);
161 161
         if (null == taButtonUriMap){
162 162
             return true;
163 163
         }

+ 2
- 0
src/main/java/com/huiju/estateagents/mapper/TaPointsRecordsMapper.java View File

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

+ 5
- 0
src/main/java/com/huiju/estateagents/mapper/TaRoleMenuMapper.java View File

@@ -15,4 +15,9 @@ import org.apache.ibatis.annotations.Mapper;
15 15
 @Mapper
16 16
 public interface TaRoleMenuMapper extends BaseMapper<TaRoleMenu> {
17 17
 
18
+    /**
19
+     * 先删除再添加
20
+     * @param roleId
21
+     */
22
+    void deleteCurrentMenu(Integer roleId);
18 23
 }

+ 4
- 0
src/main/java/com/huiju/estateagents/service/IMiniAppService.java View File

@@ -1,8 +1,10 @@
1 1
 package com.huiju.estateagents.service;
2 2
 
3
+import cn.binarywang.wx.miniapp.api.WxMaService;
3 4
 import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
4 5
 import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
5 6
 import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
7
+import com.alibaba.fastjson.JSONObject;
6 8
 import com.huiju.estateagents.base.ResponseBean;
7 9
 import com.huiju.estateagents.entity.TaMiniapp;
8 10
 import com.huiju.estateagents.entity.TaMiniappQrcode;
@@ -29,6 +31,8 @@ public interface IMiniAppService {
29 31
 
30 32
     ResponseBean getQrCode(String paramsStr, String appid);
31 33
 
34
+    String createQrCode(WxMaService service, String path) throws Exception;
35
+
32 36
     TaMiniappQrcode getQrCodeBySerialNo(Integer id);
33 37
 
34 38
     List<TaMiniapp> getAllAvaliableMiniapps();

+ 3
- 0
src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java View File

@@ -1,5 +1,6 @@
1 1
 package com.huiju.estateagents.service;
2 2
 
3
+import com.baomidou.mybatisplus.core.metadata.IPage;
3 4
 import com.baomidou.mybatisplus.extension.service.IService;
4 5
 import com.huiju.estateagents.entity.*;
5 6
 
@@ -23,6 +24,8 @@ public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
23 24
 
24 25
 	void consumeGoodsPoints(TaGoods taGoods);
25 26
 
27
+	IPage<TaPointsRecords> getWxRecords(Integer pageNum,Integer pageSize,String personId);
28
+
26 29
 	/**
27 30
 	 * 分享积分增加  人员不限制
28 31
 	 * @param recommenderId

+ 7
- 0
src/main/java/com/huiju/estateagents/service/impl/MiniAppServiceImpl.java View File

@@ -175,6 +175,13 @@ public class MiniAppServiceImpl implements IMiniAppService {
175 175
         }
176 176
     }
177 177
 
178
+    @Override
179
+    public String createQrCode(WxMaService service, String path) throws Exception {
180
+        File qrFile = service.getQrcodeService().createWxaCode(path);
181
+        String qrcode = AliOSSUtils.putObject(qrFile, CommConstant.ALIOSS_DEFAULT_UPLOAD);
182
+        return qrcode;
183
+    }
184
+
178 185
     @Override
179 186
     public TaMiniappQrcode getQrCodeBySerialNo(Integer id) {
180 187
         return taMiniappQrcodeMapper.selectById(id);

+ 10
- 0
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java View File

@@ -3,6 +3,8 @@ package com.huiju.estateagents.service.impl;
3 3
 import com.alibaba.fastjson.JSONObject;
4 4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5 5
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
6
+import com.baomidou.mybatisplus.core.metadata.IPage;
7
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 8
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 9
 import com.huiju.estateagents.common.CommConstant;
8 10
 import com.huiju.estateagents.common.DateUtils;
@@ -214,6 +216,12 @@ public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMappe
214 216
 		}
215 217
 	}
216 218
 
219
+	@Override
220
+	public IPage<TaPointsRecords> getWxRecords(Integer pageNum, Integer pageSize,String personId){
221
+		IPage<TaPointsRecords> pg = new Page<>(pageNum, pageSize);
222
+		return taPointsRecordsMapper.getCustomerPointsList(pg,personId);
223
+	}
224
+
217 225
 	@Override
218 226
 	public void consumeGoodsPoints(TaGoods taGoods) {
219 227
 		Integer minusPoints = taGoods.getPointPrice();
@@ -301,4 +309,6 @@ public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMappe
301 309
 			taPersonMapper.update(new TaPerson(), taPersonwrapper);
302 310
 		}
303 311
 	}
312
+
313
+
304 314
 }

+ 12
- 12
src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java View File

@@ -54,19 +54,19 @@ public class TaRoleServiceImpl extends ServiceImpl<TaRoleMapper, TaRole> impleme
54 54
             SysMenu sysMenu = sysMenuMapper.selectById(taRoleMenu.getMenuId());
55 55
             sysMenuList.add(sysMenu);
56 56
 
57
-            // 查询按钮
58
-            QueryWrapper<TaRoleButton> taRoleButtonQuery= new QueryWrapper<>();
59
-            taRoleButtonQuery.eq("role_id",id);
60
-            List<TaRoleButton> taRoleButtonList= taRoleButtonMapper.selectList(taRoleButtonQuery);
61
-            List<SysButtonInMenu> sysButtonInArr = new ArrayList<>();
62
-            for(TaRoleButton taRoleButton :taRoleButtonList){
63
-                QueryWrapper<SysButtonInMenu> sysButtonInMenuQuery = new QueryWrapper<>();
64
-                sysButtonInMenuQuery.eq("btn_id",taRoleButton.getBtnId());
65
-                SysButtonInMenu sysButtonInMenuList= sysButtonInMenuMapper.selectOne(sysButtonInMenuQuery);
66
-                sysButtonInArr.add(sysButtonInMenuList);
67
-            }
68
-            sysMenu.setSysButtonInMenu(sysButtonInArr);
69 57
         }
58
+        // 查询按钮
59
+        QueryWrapper<TaRoleButton> taRoleButtonQuery= new QueryWrapper<>();
60
+        taRoleButtonQuery.eq("role_id",id);
61
+        List<TaRoleButton> taRoleButtonList= taRoleButtonMapper.selectList(taRoleButtonQuery);
62
+        List<SysButtonInMenu> sysButtonInArr = new ArrayList<>();
63
+        for(TaRoleButton taRoleButton :taRoleButtonList){
64
+            QueryWrapper<SysButtonInMenu> sysButtonInMenuQuery = new QueryWrapper<>();
65
+            sysButtonInMenuQuery.eq("btn_id",taRoleButton.getBtnId());
66
+            SysButtonInMenu sysButtonInMenuList= sysButtonInMenuMapper.selectOne(sysButtonInMenuQuery);
67
+            sysButtonInArr.add(sysButtonInMenuList);
68
+        }
69
+        taRole.setSysButtonInMenu(sysButtonInArr);
70 70
         taRole.setSysMenuList(sysMenuList);
71 71
         return taRole;
72 72
     }

+ 23
- 0
src/main/resources/application-demo.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign: AI智慧案场
72
+
73
+  visitor:
74
+    code: "0501"

+ 23
- 0
src/main/resources/application-dev.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign:營銷雲
72
+
73
+  visitor:
74
+    code: "0501"

+ 23
- 0
src/main/resources/application-gzysd.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign: AI智慧案场
72
+
73
+  visitor:
74
+    code: "0501"

+ 23
- 0
src/main/resources/application-nj.yml View File

@@ -49,4 +49,27 @@ ali:
49 49
     bucketName: estateagents
50 50
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
51 51
 
52
+# 手机短信服务
53
+sms:
54
+  url: http://micservice.ycjcjy.com/sms
55
+  method: POST
56
+  contentType: "application/json;charset=UTF-8"
57
+  template:
58
+    code:
59
+    tel:
60
+    params:
52 61
 
62
+  # 以下为各模板 code
63
+  # 验证码
64
+  captcha:
65
+    # 模板 code
66
+    code: "0301"
67
+    # 有效时间 秒
68
+    expire: 120
69
+    # 验证码长度
70
+    size: 4
71
+    # 短信签名
72
+    sign: AI智慧案场
73
+
74
+  visitor:
75
+    code: "0501"

+ 23
- 0
src/main/resources/application-prod.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign: AI智慧案场
72
+
73
+  visitor:
74
+    code: "0501"

+ 23
- 0
src/main/resources/application-test.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign: AI智慧案场
72
+
73
+  visitor:
74
+    code: "0501"

+ 23
- 0
src/main/resources/application-xs.yml View File

@@ -48,4 +48,27 @@ ali:
48 48
     bucketName: estateagents
49 49
     bucketURL: https://estateagents.oss-cn-shanghai.aliyuncs.com
50 50
 
51
+# 手机短信服务
52
+sms:
53
+  url: http://micservice.ycjcjy.com/sms
54
+  method: POST
55
+  contentType: "application/json;charset=UTF-8"
56
+  template:
57
+    code:
58
+    tel:
59
+    params:
51 60
 
61
+  # 以下为各模板 code
62
+  # 验证码
63
+  captcha:
64
+    # 模板 code
65
+    code: "0301"
66
+    # 有效时间 秒
67
+    expire: 120
68
+    # 验证码长度
69
+    size: 4
70
+    # 短信签名
71
+    sign: AI智慧案场
72
+
73
+  visitor:
74
+    code: "0501"

+ 3
- 0
src/main/resources/mapper/TaPointsRecordsMapper.xml View File

@@ -1,5 +1,8 @@
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.TaPointsRecordsMapper">
4
+    <select id="getCustomerPointsList" resultType="com.huiju.estateagents.entity.TaPointsRecords">
5
+
6
+    </select>
4 7
 
5 8
 </mapper>

+ 3
- 1
src/main/resources/mapper/TaRoleMenuMapper.xml View File

@@ -1,5 +1,7 @@
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.TaRoleMenuMapper">
4
-
4
+    <delete  id="deleteCurrentMenu">
5
+    delete from ta_role_menu where ta_role_menu.role_id = #{roleId}
6
+    </delete >
5 7
 </mapper>

+ 1
- 1
src/main/resources/mapper/TaUserAuthButtonMapper.xml View File

@@ -18,7 +18,7 @@
18 18
         where
19 19
             t.btn_id in (
20 20
                 SELECT
21
-                a.role_id
21
+                a.btn_id
22 22
                 from
23 23
                 ta_role_button a
24 24
                 where