Commit b3f11d9379d5d3042c54c9edc236b1ae4e8ddc95
1 parent
743ba7d9
重构system模块代码规范,JeecgBoot 3.2.0 版本发布
Showing
8 changed files
with
0 additions
and
1009 deletions
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/controller/SystemAPIController.java deleted
1 | -package org.jeecg.modules.api.controller; | |
2 | - | |
3 | -import com.alibaba.fastjson.JSONObject; | |
4 | -import lombok.extern.slf4j.Slf4j; | |
5 | -import org.jeecg.common.api.dto.OnlineAuthDTO; | |
6 | -import org.jeecg.common.api.dto.message.*; | |
7 | -import org.jeecg.common.system.vo.*; | |
8 | -import org.jeecg.modules.system.service.ISysUserService; | |
9 | -import org.jeecg.modules.system.service.impl.SysBaseApiImpl; | |
10 | -import org.springframework.beans.factory.annotation.Autowired; | |
11 | -import org.springframework.web.bind.annotation.*; | |
12 | - | |
13 | -import java.util.List; | |
14 | -import java.util.Map; | |
15 | -import java.util.Set; | |
16 | - | |
17 | - | |
18 | -/** | |
19 | - * 服务化 system模块 对外接口请求类 | |
20 | - * @author: jeecg-boot | |
21 | - */ | |
22 | -@Slf4j | |
23 | -@RestController | |
24 | -@RequestMapping("/sys/api") | |
25 | -public class SystemAPIController { | |
26 | - | |
27 | - @Autowired | |
28 | - private SysBaseApiImpl sysBaseApi; | |
29 | - @Autowired | |
30 | - private ISysUserService sysUserService; | |
31 | - | |
32 | - | |
33 | - /** | |
34 | - * 发送系统消息 | |
35 | - * @param message 使用构造器赋值参数 如果不设置category(消息类型)则默认为2 发送系统消息 | |
36 | - */ | |
37 | - @PostMapping("/sendSysAnnouncement") | |
38 | - public void sendSysAnnouncement(@RequestBody MessageDTO message){ | |
39 | - sysBaseApi.sendSysAnnouncement(message); | |
40 | - } | |
41 | - | |
42 | - /** | |
43 | - * 发送消息 附带业务参数 | |
44 | - * @param message 使用构造器赋值参数 | |
45 | - */ | |
46 | - @PostMapping("/sendBusAnnouncement") | |
47 | - public void sendBusAnnouncement(@RequestBody BusMessageDTO message){ | |
48 | - sysBaseApi.sendBusAnnouncement(message); | |
49 | - } | |
50 | - | |
51 | - /** | |
52 | - * 通过模板发送消息 | |
53 | - * @param message 使用构造器赋值参数 | |
54 | - */ | |
55 | - @PostMapping("/sendTemplateAnnouncement") | |
56 | - public void sendTemplateAnnouncement(@RequestBody TemplateMessageDTO message){ | |
57 | - sysBaseApi.sendTemplateAnnouncement(message); | |
58 | - } | |
59 | - | |
60 | - /** | |
61 | - * 通过模板发送消息 附带业务参数 | |
62 | - * @param message 使用构造器赋值参数 | |
63 | - */ | |
64 | - @PostMapping("/sendBusTemplateAnnouncement") | |
65 | - public void sendBusTemplateAnnouncement(@RequestBody BusTemplateMessageDTO message){ | |
66 | - sysBaseApi.sendBusTemplateAnnouncement(message); | |
67 | - } | |
68 | - | |
69 | - /** | |
70 | - * 通过消息中心模板,生成推送内容 | |
71 | - * @param templateDTO 使用构造器赋值参数 | |
72 | - * @return | |
73 | - */ | |
74 | - @PostMapping("/parseTemplateByCode") | |
75 | - public String parseTemplateByCode(@RequestBody TemplateDTO templateDTO){ | |
76 | - return sysBaseApi.parseTemplateByCode(templateDTO); | |
77 | - } | |
78 | - | |
79 | - /** | |
80 | - * 根据业务类型busType及业务busId修改消息已读 | |
81 | - */ | |
82 | - @GetMapping("/updateSysAnnounReadFlag") | |
83 | - public void updateSysAnnounReadFlag(@RequestParam("busType") String busType, @RequestParam("busId")String busId){ | |
84 | - sysBaseApi.updateSysAnnounReadFlag(busType, busId); | |
85 | - } | |
86 | - | |
87 | - /** | |
88 | - * 根据用户账号查询用户信息 | |
89 | - * @param username | |
90 | - * @return | |
91 | - */ | |
92 | - @GetMapping("/getUserByName") | |
93 | - public LoginUser getUserByName(@RequestParam("username") String username){ | |
94 | - return sysBaseApi.getUserByName(username); | |
95 | - } | |
96 | - | |
97 | - /** | |
98 | - * 根据用户id查询用户信息 | |
99 | - * @param id | |
100 | - * @return | |
101 | - */ | |
102 | - @GetMapping("/getUserById") | |
103 | - LoginUser getUserById(@RequestParam("id") String id){ | |
104 | - return sysBaseApi.getUserById(id); | |
105 | - } | |
106 | - | |
107 | - /** | |
108 | - * 通过用户账号查询角色集合 | |
109 | - * @param username | |
110 | - * @return | |
111 | - */ | |
112 | - @GetMapping("/getRolesByUsername") | |
113 | - List<String> getRolesByUsername(@RequestParam("username") String username){ | |
114 | - return sysBaseApi.getRolesByUsername(username); | |
115 | - } | |
116 | - | |
117 | - /** | |
118 | - * 通过用户账号查询部门集合 | |
119 | - * @param username | |
120 | - * @return 部门 id | |
121 | - */ | |
122 | - @GetMapping("/getDepartIdsByUsername") | |
123 | - List<String> getDepartIdsByUsername(@RequestParam("username") String username){ | |
124 | - return sysBaseApi.getDepartIdsByUsername(username); | |
125 | - } | |
126 | - | |
127 | - /** | |
128 | - * 通过用户账号查询部门 name | |
129 | - * @param username | |
130 | - * @return 部门 name | |
131 | - */ | |
132 | - @GetMapping("/getDepartNamesByUsername") | |
133 | - List<String> getDepartNamesByUsername(@RequestParam("username") String username){ | |
134 | - return sysBaseApi.getDepartNamesByUsername(username); | |
135 | - } | |
136 | - | |
137 | - | |
138 | - /** | |
139 | - * 获取数据字典 | |
140 | - * @param code | |
141 | - * @return | |
142 | - */ | |
143 | - @GetMapping("/queryDictItemsByCode") | |
144 | - List<DictModel> queryDictItemsByCode(@RequestParam("code") String code){ | |
145 | - return sysBaseApi.queryDictItemsByCode(code); | |
146 | - } | |
147 | - | |
148 | - /** | |
149 | - * 获取有效的数据字典 | |
150 | - * @param code | |
151 | - * @return | |
152 | - */ | |
153 | - @GetMapping("/queryEnableDictItemsByCode") | |
154 | - List<DictModel> queryEnableDictItemsByCode(@RequestParam("code") String code){ | |
155 | - return sysBaseApi.queryEnableDictItemsByCode(code); | |
156 | - } | |
157 | - | |
158 | - | |
159 | - /** 查询所有的父级字典,按照create_time排序 */ | |
160 | - @GetMapping("/queryAllDict") | |
161 | - List<DictModel> queryAllDict(){ | |
162 | -// try{ | |
163 | -// //睡10秒,gateway网关5秒超时,会触发熔断降级操作 | |
164 | -// Thread.sleep(10000); | |
165 | -// }catch (Exception e){ | |
166 | -// e.printStackTrace(); | |
167 | -// } | |
168 | - | |
169 | - log.info("--我是jeecg-system服务节点,微服务接口queryAllDict被调用--"); | |
170 | - return sysBaseApi.queryAllDict(); | |
171 | - } | |
172 | - | |
173 | - /** | |
174 | - * 查询所有分类字典 | |
175 | - * @return | |
176 | - */ | |
177 | - @GetMapping("/queryAllSysCategory") | |
178 | - List<SysCategoryModel> queryAllSysCategory(){ | |
179 | - return sysBaseApi.queryAllSysCategory(); | |
180 | - } | |
181 | - | |
182 | - | |
183 | - /** | |
184 | - * 查询所有部门 作为字典信息 id -->value,departName -->text | |
185 | - * @return | |
186 | - */ | |
187 | - @GetMapping("/queryAllDepartBackDictModel") | |
188 | - List<DictModel> queryAllDepartBackDictModel(){ | |
189 | - return sysBaseApi.queryAllDepartBackDictModel(); | |
190 | - } | |
191 | - | |
192 | - /** | |
193 | - * 获取所有角色 带参 | |
194 | - * roleIds 默认选中角色 | |
195 | - * @return | |
196 | - */ | |
197 | - @GetMapping("/queryAllRole") | |
198 | - public List<ComboModel> queryAllRole(@RequestParam(name = "roleIds",required = false)String[] roleIds){ | |
199 | - if(roleIds==null || roleIds.length==0){ | |
200 | - return sysBaseApi.queryAllRole(); | |
201 | - }else{ | |
202 | - return sysBaseApi.queryAllRole(roleIds); | |
203 | - } | |
204 | - } | |
205 | - | |
206 | - /** | |
207 | - * 通过用户账号查询角色Id集合 | |
208 | - * @param username | |
209 | - * @return | |
210 | - */ | |
211 | - @GetMapping("/getRoleIdsByUsername") | |
212 | - public List<String> getRoleIdsByUsername(@RequestParam("username")String username){ | |
213 | - return sysBaseApi.getRoleIdsByUsername(username); | |
214 | - } | |
215 | - | |
216 | - /** | |
217 | - * 通过部门编号查询部门id | |
218 | - * @param orgCode | |
219 | - * @return | |
220 | - */ | |
221 | - @GetMapping("/getDepartIdsByOrgCode") | |
222 | - public String getDepartIdsByOrgCode(@RequestParam("orgCode")String orgCode){ | |
223 | - return sysBaseApi.getDepartIdsByOrgCode(orgCode); | |
224 | - } | |
225 | - | |
226 | - /** | |
227 | - * 查询所有部门 | |
228 | - * @return | |
229 | - */ | |
230 | - @GetMapping("/getAllSysDepart") | |
231 | - public List<SysDepartModel> getAllSysDepart(){ | |
232 | - return sysBaseApi.getAllSysDepart(); | |
233 | - } | |
234 | - | |
235 | - /** | |
236 | - * 根据 id 查询数据库中存储的 DynamicDataSourceModel | |
237 | - * | |
238 | - * @param dbSourceId | |
239 | - * @return | |
240 | - */ | |
241 | - @GetMapping("/getDynamicDbSourceById") | |
242 | - DynamicDataSourceModel getDynamicDbSourceById(@RequestParam("dbSourceId")String dbSourceId){ | |
243 | - return sysBaseApi.getDynamicDbSourceById(dbSourceId); | |
244 | - } | |
245 | - | |
246 | - | |
247 | - | |
248 | - /** | |
249 | - * 根据部门Id获取部门负责人 | |
250 | - * @param deptId | |
251 | - * @return | |
252 | - */ | |
253 | - @GetMapping("/getDeptHeadByDepId") | |
254 | - public List<String> getDeptHeadByDepId(@RequestParam("deptId") String deptId){ | |
255 | - return sysBaseApi.getDeptHeadByDepId(deptId); | |
256 | - } | |
257 | - | |
258 | - /** | |
259 | - * 查找父级部门 | |
260 | - * @param departId | |
261 | - * @return | |
262 | - */ | |
263 | - @GetMapping("/getParentDepartId") | |
264 | - public DictModel getParentDepartId(@RequestParam("departId")String departId){ | |
265 | - return sysBaseApi.getParentDepartId(departId); | |
266 | - } | |
267 | - | |
268 | - /** | |
269 | - * 根据 code 查询数据库中存储的 DynamicDataSourceModel | |
270 | - * | |
271 | - * @param dbSourceCode | |
272 | - * @return | |
273 | - */ | |
274 | - @GetMapping("/getDynamicDbSourceByCode") | |
275 | - public DynamicDataSourceModel getDynamicDbSourceByCode(@RequestParam("dbSourceCode") String dbSourceCode){ | |
276 | - return sysBaseApi.getDynamicDbSourceByCode(dbSourceCode); | |
277 | - } | |
278 | - | |
279 | - /** | |
280 | - * 给指定用户发消息 | |
281 | - * @param userIds | |
282 | - * @param cmd | |
283 | - */ | |
284 | - @GetMapping("/sendWebSocketMsg") | |
285 | - public void sendWebSocketMsg(String[] userIds, String cmd){ | |
286 | - sysBaseApi.sendWebSocketMsg(userIds, cmd); | |
287 | - } | |
288 | - | |
289 | - | |
290 | - /** | |
291 | - * 根据id获取所有参与用户 | |
292 | - * userIds | |
293 | - * @return | |
294 | - */ | |
295 | - @GetMapping("/queryAllUserByIds") | |
296 | - public List<LoginUser> queryAllUserByIds(@RequestParam("userIds") String[] userIds){ | |
297 | - return sysBaseApi.queryAllUserByIds(userIds); | |
298 | - } | |
299 | - | |
300 | - /** | |
301 | - * 查询所有用户 返回ComboModel | |
302 | - * @return | |
303 | - */ | |
304 | - @GetMapping("/queryAllUserBackCombo") | |
305 | - public List<ComboModel> queryAllUserBackCombo(){ | |
306 | - return sysBaseApi.queryAllUserBackCombo(); | |
307 | - } | |
308 | - | |
309 | - /** | |
310 | - * 分页查询用户 返回JSONObject | |
311 | - * @return | |
312 | - */ | |
313 | - @GetMapping("/queryAllUser") | |
314 | - public JSONObject queryAllUser(@RequestParam(name="userIds",required=false)String userIds, @RequestParam(name="pageNo",required=false) Integer pageNo,@RequestParam(name="pageSize",required=false) int pageSize){ | |
315 | - return sysBaseApi.queryAllUser(userIds, pageNo, pageSize); | |
316 | - } | |
317 | - | |
318 | - | |
319 | - | |
320 | - /** | |
321 | - * 将会议签到信息推动到预览 | |
322 | - * userIds | |
323 | - * @return | |
324 | - * @param userId | |
325 | - */ | |
326 | - @GetMapping("/meetingSignWebsocket") | |
327 | - public void meetingSignWebsocket(@RequestParam("userId")String userId){ | |
328 | - sysBaseApi.meetingSignWebsocket(userId); | |
329 | - } | |
330 | - | |
331 | - /** | |
332 | - * 根据name获取所有参与用户 | |
333 | - * userNames | |
334 | - * @return | |
335 | - */ | |
336 | - @GetMapping("/queryUserByNames") | |
337 | - public List<LoginUser> queryUserByNames(@RequestParam("userNames")String[] userNames){ | |
338 | - return sysBaseApi.queryUserByNames(userNames); | |
339 | - } | |
340 | - | |
341 | - /** | |
342 | - * 获取用户的角色集合 | |
343 | - * @param username | |
344 | - * @return | |
345 | - */ | |
346 | - @GetMapping("/getUserRoleSet") | |
347 | - public Set<String> getUserRoleSet(@RequestParam("username")String username){ | |
348 | - return sysBaseApi.getUserRoleSet(username); | |
349 | - } | |
350 | - | |
351 | - /** | |
352 | - * 获取用户的权限集合 | |
353 | - * @param username | |
354 | - * @return | |
355 | - */ | |
356 | - @GetMapping("/getUserPermissionSet") | |
357 | - public Set<String> getUserPermissionSet(@RequestParam("username") String username){ | |
358 | - return sysBaseApi.getUserPermissionSet(username); | |
359 | - } | |
360 | - | |
361 | - //----- | |
362 | - | |
363 | - /** | |
364 | - * 判断是否有online访问的权限 | |
365 | - * @param onlineAuthDTO | |
366 | - * @return | |
367 | - */ | |
368 | - @PostMapping("/hasOnlineAuth") | |
369 | - public boolean hasOnlineAuth(@RequestBody OnlineAuthDTO onlineAuthDTO){ | |
370 | - return sysBaseApi.hasOnlineAuth(onlineAuthDTO); | |
371 | - } | |
372 | - | |
373 | - /** | |
374 | - * 查询用户角色信息 | |
375 | - * @param username | |
376 | - * @return | |
377 | - */ | |
378 | - @GetMapping("/queryUserRoles") | |
379 | - public Set<String> queryUserRoles(@RequestParam("username") String username){ | |
380 | - return sysUserService.getUserRolesSet(username); | |
381 | - } | |
382 | - | |
383 | - | |
384 | - /** | |
385 | - * 查询用户权限信息 | |
386 | - * @param username | |
387 | - * @return | |
388 | - */ | |
389 | - @GetMapping("/queryUserAuths") | |
390 | - public Set<String> queryUserAuths(@RequestParam("username") String username){ | |
391 | - return sysUserService.getUserPermissionsSet(username); | |
392 | - } | |
393 | - | |
394 | - /** | |
395 | - * 通过部门id获取部门全部信息 | |
396 | - */ | |
397 | - @GetMapping("/selectAllById") | |
398 | - public SysDepartModel selectAllById(@RequestParam("id") String id){ | |
399 | - return sysBaseApi.selectAllById(id); | |
400 | - } | |
401 | - | |
402 | - /** | |
403 | - * 根据用户id查询用户所属公司下所有用户ids | |
404 | - * @param userId | |
405 | - * @return | |
406 | - */ | |
407 | - @GetMapping("/queryDeptUsersByUserId") | |
408 | - public List<String> queryDeptUsersByUserId(@RequestParam("userId") String userId){ | |
409 | - return sysBaseApi.queryDeptUsersByUserId(userId); | |
410 | - } | |
411 | - | |
412 | - | |
413 | - /** | |
414 | - * 查询数据权限 | |
415 | - * @return | |
416 | - */ | |
417 | - @GetMapping("/queryPermissionDataRule") | |
418 | - public List<SysPermissionDataRuleModel> queryPermissionDataRule(@RequestParam("component") String component, @RequestParam("requestPath")String requestPath, @RequestParam("username") String username){ | |
419 | - return sysBaseApi.queryPermissionDataRule(component, requestPath, username); | |
420 | - } | |
421 | - | |
422 | - /** | |
423 | - * 查询用户信息 | |
424 | - * @param username | |
425 | - * @return | |
426 | - */ | |
427 | - @GetMapping("/getCacheUser") | |
428 | - public SysUserCacheInfo getCacheUser(@RequestParam("username") String username){ | |
429 | - return sysBaseApi.getCacheUser(username); | |
430 | - } | |
431 | - | |
432 | - /** | |
433 | - * 普通字典的翻译 | |
434 | - * @param code | |
435 | - * @param key | |
436 | - * @return | |
437 | - */ | |
438 | - @GetMapping("/translateDict") | |
439 | - public String translateDict(@RequestParam("code") String code, @RequestParam("key") String key){ | |
440 | - return sysBaseApi.translateDict(code, key); | |
441 | - } | |
442 | - | |
443 | - | |
444 | - /** | |
445 | - * 36根据多个用户账号(逗号分隔),查询返回多个用户信息 | |
446 | - * @param usernames | |
447 | - * @return | |
448 | - */ | |
449 | - @RequestMapping("/queryUsersByUsernames") | |
450 | - List<JSONObject> queryUsersByUsernames(@RequestParam("usernames") String usernames){ | |
451 | - return this.sysBaseApi.queryUsersByUsernames(usernames); | |
452 | - } | |
453 | - | |
454 | - /** | |
455 | - * 37根据多个用户id(逗号分隔),查询返回多个用户信息 | |
456 | - * @param ids | |
457 | - * @return | |
458 | - */ | |
459 | - @RequestMapping("/queryUsersByIds") | |
460 | - List<JSONObject> queryUsersByIds(@RequestParam("ids") String ids){ | |
461 | - return this.sysBaseApi.queryUsersByIds(ids); | |
462 | - } | |
463 | - | |
464 | - /** | |
465 | - * 38根据多个部门编码(逗号分隔),查询返回多个部门信息 | |
466 | - * @param orgCodes | |
467 | - * @return | |
468 | - */ | |
469 | - @GetMapping("/queryDepartsByOrgcodes") | |
470 | - List<JSONObject> queryDepartsByOrgcodes(@RequestParam("orgCodes") String orgCodes){ | |
471 | - return this.sysBaseApi.queryDepartsByOrgcodes(orgCodes); | |
472 | - } | |
473 | - | |
474 | - /** | |
475 | - * 39根据多个部门ID(逗号分隔),查询返回多个部门信息 | |
476 | - * @param ids | |
477 | - * @return | |
478 | - */ | |
479 | - @GetMapping("/queryDepartsByIds") | |
480 | - List<JSONObject> queryDepartsByIds(@RequestParam("ids") String ids){ | |
481 | - return this.sysBaseApi.queryDepartsByIds(ids); | |
482 | - } | |
483 | - | |
484 | - /** | |
485 | - * 40发送邮件消息 | |
486 | - * @param email | |
487 | - * @param title | |
488 | - * @param content | |
489 | - */ | |
490 | - @GetMapping("/sendEmailMsg") | |
491 | - public void sendEmailMsg(@RequestParam("email")String email,@RequestParam("title")String title,@RequestParam("content")String content){ | |
492 | - this.sysBaseApi.sendEmailMsg(email,title,content); | |
493 | - }; | |
494 | - /** | |
495 | - * 41 获取公司下级部门和公司下所有用户信息 | |
496 | - * @param orgCode | |
497 | - */ | |
498 | - @GetMapping("/getDeptUserByOrgCode") | |
499 | - List<Map> getDeptUserByOrgCode(@RequestParam("orgCode")String orgCode){ | |
500 | - return this.sysBaseApi.getDeptUserByOrgCode(orgCode); | |
501 | - } | |
502 | - | |
503 | - /** | |
504 | - * 查询分类字典翻译 | |
505 | - * | |
506 | - * @param ids 分类字典表id | |
507 | - * @return | |
508 | - */ | |
509 | - @GetMapping("/loadCategoryDictItem") | |
510 | - public List<String> loadCategoryDictItem(@RequestParam("ids") String ids) { | |
511 | - return sysBaseApi.loadCategoryDictItem(ids); | |
512 | - } | |
513 | - | |
514 | - /** | |
515 | - * 根据字典code加载字典text | |
516 | - * | |
517 | - * @param dictCode 顺序:tableName,text,code | |
518 | - * @param keys 要查询的key | |
519 | - * @return | |
520 | - */ | |
521 | - @GetMapping("/loadDictItem") | |
522 | - public List<String> loadDictItem(@RequestParam("dictCode") String dictCode, @RequestParam("keys") String keys) { | |
523 | - return sysBaseApi.loadDictItem(dictCode, keys); | |
524 | - } | |
525 | - | |
526 | - /** | |
527 | - * 根据字典code查询字典项 | |
528 | - * | |
529 | - * @param dictCode 顺序:tableName,text,code | |
530 | - * @param dictCode 要查询的key | |
531 | - * @return | |
532 | - */ | |
533 | - @GetMapping("/getDictItems") | |
534 | - public List<DictModel> getDictItems(@RequestParam("dictCode") String dictCode) { | |
535 | - return sysBaseApi.getDictItems(dictCode); | |
536 | - } | |
537 | - | |
538 | - /** | |
539 | - * 根据多个字典code查询多个字典项 | |
540 | - * | |
541 | - * @param dictCodeList | |
542 | - * @return key = dictCode ; value=对应的字典项 | |
543 | - */ | |
544 | - @RequestMapping("/getManyDictItems") | |
545 | - public Map<String, List<DictModel>> getManyDictItems(@RequestParam("dictCodeList") List<String> dictCodeList) { | |
546 | - return sysBaseApi.getManyDictItems(dictCodeList); | |
547 | - } | |
548 | - | |
549 | - /** | |
550 | - * 【下拉搜索】 | |
551 | - * 大数据量的字典表 走异步加载,即前端输入内容过滤数据 | |
552 | - * | |
553 | - * @param dictCode 字典code格式:table,text,code | |
554 | - * @param keyword 过滤关键字 | |
555 | - * @return | |
556 | - */ | |
557 | - @GetMapping("/loadDictItemByKeyword") | |
558 | - public List<DictModel> loadDictItemByKeyword(@RequestParam("dictCode") String dictCode, @RequestParam("keyword") String keyword, @RequestParam(value = "pageSize", required = false) Integer pageSize) { | |
559 | - return sysBaseApi.loadDictItemByKeyword(dictCode, keyword, pageSize); | |
560 | - } | |
561 | - | |
562 | - /** | |
563 | - * 48 普通字典的翻译,根据多个dictCode和多条数据,多个以逗号分割 | |
564 | - * @param dictCodes | |
565 | - * @param keys | |
566 | - * @return | |
567 | - */ | |
568 | - @GetMapping("/translateManyDict") | |
569 | - public Map<String, List<DictModel>> translateManyDict(@RequestParam("dictCodes") String dictCodes, @RequestParam("keys") String keys){ | |
570 | - return this.sysBaseApi.translateManyDict(dictCodes, keys); | |
571 | - } | |
572 | - | |
573 | - | |
574 | - /** | |
575 | - * 获取表数据字典 【接口签名验证】 | |
576 | - * @param table | |
577 | - * @param text | |
578 | - * @param code | |
579 | - * @return | |
580 | - */ | |
581 | - @GetMapping("/queryTableDictItemsByCode") | |
582 | - List<DictModel> queryTableDictItemsByCode(@RequestParam("table") String table, @RequestParam("text") String text, @RequestParam("code") String code){ | |
583 | - return sysBaseApi.queryTableDictItemsByCode(table, text, code); | |
584 | - } | |
585 | - | |
586 | - /** | |
587 | - * 查询表字典 支持过滤数据 【接口签名验证】 | |
588 | - * @param table | |
589 | - * @param text | |
590 | - * @param code | |
591 | - * @param filterSql | |
592 | - * @return | |
593 | - */ | |
594 | - @GetMapping("/queryFilterTableDictInfo") | |
595 | - List<DictModel> queryFilterTableDictInfo(@RequestParam("table") String table, @RequestParam("text") String text, @RequestParam("code") String code, @RequestParam("filterSql") String filterSql){ | |
596 | - return sysBaseApi.queryFilterTableDictInfo(table, text, code, filterSql); | |
597 | - } | |
598 | - | |
599 | - /** | |
600 | - * 【接口签名验证】 | |
601 | - * 查询指定table的 text code 获取字典,包含text和value | |
602 | - * @param table | |
603 | - * @param text | |
604 | - * @param code | |
605 | - * @param keyArray | |
606 | - * @return | |
607 | - */ | |
608 | - @Deprecated | |
609 | - @GetMapping("/queryTableDictByKeys") | |
610 | - public List<String> queryTableDictByKeys(@RequestParam("table") String table, @RequestParam("text") String text, @RequestParam("code") String code, @RequestParam("keyArray") String[] keyArray){ | |
611 | - return sysBaseApi.queryTableDictByKeys(table, text, code, keyArray); | |
612 | - } | |
613 | - | |
614 | - | |
615 | - /** | |
616 | - * 字典表的 翻译【接口签名验证】 | |
617 | - * @param table | |
618 | - * @param text | |
619 | - * @param code | |
620 | - * @param key | |
621 | - * @return | |
622 | - */ | |
623 | - @GetMapping("/translateDictFromTable") | |
624 | - public String translateDictFromTable(@RequestParam("table") String table, @RequestParam("text") String text, @RequestParam("code") String code, @RequestParam("key") String key){ | |
625 | - return sysBaseApi.translateDictFromTable(table, text, code, key); | |
626 | - } | |
627 | - | |
628 | - | |
629 | - /** | |
630 | - * 【接口签名验证】 | |
631 | - * 49 字典表的 翻译,可批量 | |
632 | - * | |
633 | - * @param table | |
634 | - * @param text | |
635 | - * @param code | |
636 | - * @param keys 多个用逗号分割 | |
637 | - * @return | |
638 | - */ | |
639 | - @GetMapping("/translateDictFromTableByKeys") | |
640 | - public List<DictModel> translateDictFromTableByKeys(@RequestParam("table") String table, @RequestParam("text") String text, @RequestParam("code") String code, @RequestParam("keys") String keys) { | |
641 | - return this.sysBaseApi.translateDictFromTableByKeys(table, text, code, keys); | |
642 | - } | |
643 | - | |
644 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/cas/util/CASServiceUtil.java deleted
1 | -package org.jeecg.modules.cas.util; | |
2 | - | |
3 | -import java.io.BufferedReader; | |
4 | -import java.io.IOException; | |
5 | -import java.io.InputStreamReader; | |
6 | -import java.security.cert.X509Certificate; | |
7 | - | |
8 | -import javax.net.ssl.SSLContext; | |
9 | -import javax.net.ssl.TrustManager; | |
10 | -import javax.net.ssl.X509TrustManager; | |
11 | - | |
12 | -import org.apache.http.HttpResponse; | |
13 | -import org.apache.http.client.methods.HttpGet; | |
14 | -import org.apache.http.conn.socket.LayeredConnectionSocketFactory; | |
15 | -import org.apache.http.conn.ssl.SSLConnectionSocketFactory; | |
16 | -import org.apache.http.impl.client.CloseableHttpClient; | |
17 | -import org.apache.http.impl.client.HttpClients; | |
18 | - | |
19 | -/** | |
20 | - * @Description: CASServiceUtil | |
21 | - * @author: jeecg-boot | |
22 | - */ | |
23 | -public class CASServiceUtil { | |
24 | - | |
25 | - public static void main(String[] args) { | |
26 | - String serviceUrl = "https://cas.8f8.com.cn:8443/cas/p3/serviceValidate"; | |
27 | - String service = "http://localhost:3003/user/login"; | |
28 | - String ticket = "ST-5-1g-9cNES6KXNRwq-GuRET103sm0-DESKTOP-VKLS8B3"; | |
29 | - String res = getSTValidate(serviceUrl,ticket, service); | |
30 | - | |
31 | - System.out.println("---------res-----"+res); | |
32 | - } | |
33 | - | |
34 | - | |
35 | - /** | |
36 | - * 验证ST | |
37 | - */ | |
38 | - public static String getSTValidate(String url,String st, String service){ | |
39 | - try { | |
40 | - url = url+"?service="+service+"&ticket="+st; | |
41 | - CloseableHttpClient httpclient = createHttpClientWithNoSsl(); | |
42 | - HttpGet httpget = new HttpGet(url); | |
43 | - HttpResponse response = httpclient.execute(httpget); | |
44 | - String res = readResponse(response); | |
45 | - return res == null ? null : (res == "" ? null : res); | |
46 | - } catch (Exception e) { | |
47 | - e.printStackTrace(); | |
48 | - } | |
49 | - return ""; | |
50 | - } | |
51 | - | |
52 | - | |
53 | - /** | |
54 | - * 读取 response body 内容为字符串 | |
55 | - * | |
56 | - * @param response | |
57 | - * @return | |
58 | - * @throws IOException | |
59 | - */ | |
60 | - private static String readResponse(HttpResponse response) throws IOException { | |
61 | - BufferedReader in = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); | |
62 | - String result = new String(); | |
63 | - String line; | |
64 | - while ((line = in.readLine()) != null) { | |
65 | - result += line; | |
66 | - } | |
67 | - return result; | |
68 | - } | |
69 | - | |
70 | - | |
71 | - /** | |
72 | - * 创建模拟客户端(针对 https 客户端禁用 SSL 验证) | |
73 | - * | |
74 | - * @param cookieStore 缓存的 Cookies 信息 | |
75 | - * @return | |
76 | - * @throws Exception | |
77 | - */ | |
78 | - private static CloseableHttpClient createHttpClientWithNoSsl() throws Exception { | |
79 | - // Create a trust manager that does not validate certificate chains | |
80 | - TrustManager[] trustAllCerts = new TrustManager[]{ | |
81 | - new X509TrustManager() { | |
82 | - @Override | |
83 | - public X509Certificate[] getAcceptedIssuers() { | |
84 | - return null; | |
85 | - } | |
86 | - | |
87 | - @Override | |
88 | - public void checkClientTrusted(X509Certificate[] certs, String authType) { | |
89 | - // don't check | |
90 | - } | |
91 | - | |
92 | - @Override | |
93 | - public void checkServerTrusted(X509Certificate[] certs, String authType) { | |
94 | - // don't check | |
95 | - } | |
96 | - } | |
97 | - }; | |
98 | - | |
99 | - SSLContext ctx = SSLContext.getInstance("TLS"); | |
100 | - ctx.init(null, trustAllCerts, null); | |
101 | - LayeredConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(ctx); | |
102 | - return HttpClients.custom() | |
103 | - .setSSLSocketFactory(sslSocketFactory) | |
104 | - .build(); | |
105 | - } | |
106 | - | |
107 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oss/controller/OSSFileController.java deleted
1 | -package org.jeecg.modules.oss.controller; | |
2 | - | |
3 | -import javax.servlet.http.HttpServletRequest; | |
4 | - | |
5 | -import org.apache.shiro.authz.annotation.RequiresRoles; | |
6 | -import org.jeecg.common.api.vo.Result; | |
7 | -import org.jeecg.common.system.query.QueryGenerator; | |
8 | -import org.jeecg.modules.oss.entity.OSSFile; | |
9 | -import org.jeecg.modules.oss.service.IOSSFileService; | |
10 | -import org.springframework.beans.factory.annotation.Autowired; | |
11 | -import org.springframework.stereotype.Controller; | |
12 | -import org.springframework.web.bind.annotation.*; | |
13 | -import org.springframework.web.multipart.MultipartFile; | |
14 | - | |
15 | -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | |
16 | -import com.baomidou.mybatisplus.core.metadata.IPage; | |
17 | -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | |
18 | - | |
19 | -import lombok.extern.slf4j.Slf4j; | |
20 | - | |
21 | -/** | |
22 | - * 云存储示例 DEMO | |
23 | - * @author: jeecg-boot | |
24 | - */ | |
25 | -@Slf4j | |
26 | -@Controller | |
27 | -@RequestMapping("/sys/oss/file") | |
28 | -public class OSSFileController { | |
29 | - | |
30 | - @Autowired | |
31 | - private IOSSFileService ossFileService; | |
32 | - | |
33 | - @ResponseBody | |
34 | - @GetMapping("/list") | |
35 | - public Result<IPage<OSSFile>> queryPageList(OSSFile file, | |
36 | - @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, | |
37 | - @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { | |
38 | - Result<IPage<OSSFile>> result = new Result<>(); | |
39 | - QueryWrapper<OSSFile> queryWrapper = QueryGenerator.initQueryWrapper(file, req.getParameterMap()); | |
40 | - Page<OSSFile> page = new Page<>(pageNo, pageSize); | |
41 | - IPage<OSSFile> pageList = ossFileService.page(page, queryWrapper); | |
42 | - result.setSuccess(true); | |
43 | - result.setResult(pageList); | |
44 | - return result; | |
45 | - } | |
46 | - | |
47 | - @ResponseBody | |
48 | - @PostMapping("/upload") | |
49 | - //@RequiresRoles("admin") | |
50 | - public Result upload(@RequestParam("file") MultipartFile multipartFile) { | |
51 | - Result result = new Result(); | |
52 | - try { | |
53 | - ossFileService.upload(multipartFile); | |
54 | - result.success("上传成功!"); | |
55 | - } | |
56 | - catch (Exception ex) { | |
57 | - log.info(ex.getMessage(), ex); | |
58 | - result.error500("上传失败"); | |
59 | - } | |
60 | - return result; | |
61 | - } | |
62 | - | |
63 | - @ResponseBody | |
64 | - @DeleteMapping("/delete") | |
65 | - public Result delete(@RequestParam(name = "id") String id) { | |
66 | - Result result = new Result(); | |
67 | - OSSFile file = ossFileService.getById(id); | |
68 | - if (file == null) { | |
69 | - result.error500("未找到对应实体"); | |
70 | - } | |
71 | - else { | |
72 | - boolean ok = ossFileService.delete(file); | |
73 | - if (ok) { | |
74 | - result.success("删除成功!"); | |
75 | - } | |
76 | - } | |
77 | - return result; | |
78 | - } | |
79 | - | |
80 | - /** | |
81 | - * 通过id查询. | |
82 | - */ | |
83 | - @ResponseBody | |
84 | - @GetMapping("/queryById") | |
85 | - public Result<OSSFile> queryById(@RequestParam(name = "id") String id) { | |
86 | - Result<OSSFile> result = new Result<>(); | |
87 | - OSSFile file = ossFileService.getById(id); | |
88 | - if (file == null) { | |
89 | - result.error500("未找到对应实体"); | |
90 | - } | |
91 | - else { | |
92 | - result.setResult(file); | |
93 | - result.setSuccess(true); | |
94 | - } | |
95 | - return result; | |
96 | - } | |
97 | - | |
98 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oss/entity/OSSFile.java deleted
1 | -package org.jeecg.modules.oss.entity; | |
2 | - | |
3 | -import com.baomidou.mybatisplus.annotation.TableName; | |
4 | -import lombok.Data; | |
5 | -import lombok.EqualsAndHashCode; | |
6 | -import lombok.experimental.Accessors; | |
7 | -import org.jeecg.common.system.base.entity.JeecgEntity; | |
8 | -import org.jeecgframework.poi.excel.annotation.Excel; | |
9 | - | |
10 | -/** | |
11 | - * @Description: oss云存储实体类 | |
12 | - * @author: jeecg-boot | |
13 | - */ | |
14 | -@Data | |
15 | -@TableName("oss_file") | |
16 | -@EqualsAndHashCode(callSuper = false) | |
17 | -@Accessors(chain = true) | |
18 | -public class OSSFile extends JeecgEntity { | |
19 | - | |
20 | - private static final long serialVersionUID = 1L; | |
21 | - | |
22 | - @Excel(name = "文件名称") | |
23 | - private String fileName; | |
24 | - | |
25 | - @Excel(name = "文件地址") | |
26 | - private String url; | |
27 | - | |
28 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oss/mapper/OSSFileMapper.java deleted
1 | -package org.jeecg.modules.oss.mapper; | |
2 | - | |
3 | -import com.baomidou.mybatisplus.core.mapper.BaseMapper; | |
4 | -import org.jeecg.modules.oss.entity.OSSFile; | |
5 | - | |
6 | -/** | |
7 | - * @Description: oss云存储Mapper | |
8 | - * @author: jeecg-boot | |
9 | - */ | |
10 | -public interface OSSFileMapper extends BaseMapper<OSSFile> { | |
11 | - | |
12 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oss/service/IOSSFileService.java deleted
1 | -package org.jeecg.modules.oss.service; | |
2 | - | |
3 | -import java.io.IOException; | |
4 | - | |
5 | -import com.baomidou.mybatisplus.extension.service.IService; | |
6 | -import org.jeecg.modules.oss.entity.OSSFile; | |
7 | -import org.springframework.web.multipart.MultipartFile; | |
8 | - | |
9 | -/** | |
10 | - * @Description: OOS云存储service接口 | |
11 | - * @author: jeecg-boot | |
12 | - */ | |
13 | -public interface IOSSFileService extends IService<OSSFile> { | |
14 | - | |
15 | - /** | |
16 | - * oss文件上传 | |
17 | - * @param multipartFile | |
18 | - * @throws IOException | |
19 | - */ | |
20 | - void upload(MultipartFile multipartFile) throws IOException; | |
21 | - | |
22 | - /** | |
23 | - * oss文件删除 | |
24 | - * @param ossFile OSSFile对象 | |
25 | - * @return | |
26 | - */ | |
27 | - boolean delete(OSSFile ossFile); | |
28 | - | |
29 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oss/service/impl/OSSFileServiceImpl.java deleted
1 | -package org.jeecg.modules.oss.service.impl; | |
2 | - | |
3 | -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | |
4 | -import org.jeecg.common.util.CommonUtils; | |
5 | -import org.jeecg.common.util.oss.OssBootUtil; | |
6 | -import org.jeecg.modules.oss.entity.OSSFile; | |
7 | -import org.jeecg.modules.oss.mapper.OSSFileMapper; | |
8 | -import org.jeecg.modules.oss.service.IOSSFileService; | |
9 | -import org.springframework.stereotype.Service; | |
10 | -import org.springframework.web.multipart.MultipartFile; | |
11 | - | |
12 | -import java.io.IOException; | |
13 | - | |
14 | -/** | |
15 | - * @Description: OSS云存储实现类 | |
16 | - * @author: jeecg-boot | |
17 | - */ | |
18 | -@Service("ossFileService") | |
19 | -public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> implements IOSSFileService { | |
20 | - | |
21 | - @Override | |
22 | - public void upload(MultipartFile multipartFile) throws IOException { | |
23 | - String fileName = multipartFile.getOriginalFilename(); | |
24 | - fileName = CommonUtils.getFileName(fileName); | |
25 | - OSSFile ossFile = new OSSFile(); | |
26 | - ossFile.setFileName(fileName); | |
27 | - String url = OssBootUtil.upload(multipartFile,"upload/test"); | |
28 | - //update-begin--Author:scott Date:20201227 for:JT-361【文件预览】阿里云原生域名可以文件预览,自己映射域名kkfileview提示文件下载失败------------------- | |
29 | - // 返回阿里云原生域名前缀URL | |
30 | - ossFile.setUrl(OssBootUtil.getOriginalUrl(url)); | |
31 | - //update-end--Author:scott Date:20201227 for:JT-361【文件预览】阿里云原生域名可以文件预览,自己映射域名kkfileview提示文件下载失败------------------- | |
32 | - this.save(ossFile); | |
33 | - } | |
34 | - | |
35 | - @Override | |
36 | - public boolean delete(OSSFile ossFile) { | |
37 | - try { | |
38 | - this.removeById(ossFile.getId()); | |
39 | - OssBootUtil.deleteUrl(ossFile.getUrl()); | |
40 | - } | |
41 | - catch (Exception ex) { | |
42 | - return false; | |
43 | - } | |
44 | - return true; | |
45 | - } | |
46 | - | |
47 | -} |
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/util/XSSUtils.java deleted
1 | -package org.jeecg.modules.system.util; | |
2 | - | |
3 | -import org.springframework.web.util.HtmlUtils; | |
4 | - | |
5 | -import java.util.regex.Pattern; | |
6 | - | |
7 | -/** | |
8 | - * @Description: 工具类XSSUtils,现在的做法是替换成空字符,CSDN的是进行转义,比如文字开头的"<"转成< | |
9 | - * @author: lsq | |
10 | - * @date: 2021年07月26日 19:13 | |
11 | - */ | |
12 | -public class XSSUtils { | |
13 | - public static String striptXSS(String value) { | |
14 | - if (value != null) { | |
15 | - value = value.replaceAll(" ", ""); | |
16 | - Pattern scriptPattern = Pattern.compile("<script>(.*?)</script>", Pattern.CASE_INSENSITIVE); | |
17 | - value = scriptPattern.matcher(value).replaceAll(""); | |
18 | - scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
19 | - value = scriptPattern.matcher(value).replaceAll(""); | |
20 | - scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\"(.*?)\\\"", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
21 | - value = scriptPattern.matcher(value).replaceAll(""); | |
22 | - scriptPattern = Pattern.compile("</script>", Pattern.CASE_INSENSITIVE); | |
23 | - value = scriptPattern.matcher(value).replaceAll(""); | |
24 | - scriptPattern = Pattern.compile("<script(.*?)>", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
25 | - value = scriptPattern.matcher(value).replaceAll(""); | |
26 | - scriptPattern = Pattern.compile("eval\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
27 | - value = scriptPattern.matcher(value).replaceAll(""); | |
28 | - scriptPattern = Pattern.compile("expression\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
29 | - value = scriptPattern.matcher(value).replaceAll(""); | |
30 | - scriptPattern = Pattern.compile("javascript:", Pattern.CASE_INSENSITIVE); | |
31 | - value = scriptPattern.matcher(value).replaceAll(""); | |
32 | - scriptPattern = Pattern.compile("vbscript:", Pattern.CASE_INSENSITIVE); | |
33 | - value = scriptPattern.matcher(value).replaceAll(""); | |
34 | - scriptPattern = Pattern.compile("onload(.*?)=", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL); | |
35 | - value = scriptPattern.matcher(value).replaceAll(""); | |
36 | - } | |
37 | - return HtmlUtils.htmlEscape(value); | |
38 | - } | |
39 | - | |
40 | - public static void main(String[] args) { | |
41 | - String s = striptXSS("<img src=x onload=alert(111).*?><script></script>javascript:eval()\\\\."); | |
42 | - System.err.println("s======>" + s); | |
43 | - } | |
44 | -} |