Commit 8ab5258f by wilmiam

1.0.0

parent a9103689
......@@ -105,15 +105,15 @@ public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
"/webSocket/**"
).permitAll()
// swagger 文档
.antMatchers("/swagger-ui.html").permitAll()
.antMatchers("/swagger-resources/**").permitAll()
.antMatchers("/admin/swagger-ui.html").permitAll()
.antMatchers("/admin/swagger-resources/**").permitAll()
.antMatchers("/webjars/**").permitAll()
.antMatchers("/*/api-docs").permitAll()
// 文件
.antMatchers("/avatar/**").permitAll()
.antMatchers("/file/**").permitAll()
.antMatchers("/admin/avatar/**").permitAll()
.antMatchers("/admin/file/**").permitAll()
// 阿里巴巴 druid
.antMatchers("/druid/**").permitAll()
.antMatchers("/admin/druid/**").permitAll()
// 放行OPTIONS请求
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
// 自定义匿名访问所有url放行:允许匿名和带Token访问,细腻化到每个 Request 类型
......
......@@ -31,7 +31,7 @@ import org.springframework.web.bind.annotation.*;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/genConfig")
@RequestMapping("/admin/genConfig")
@Api(tags = "系统:代码生成器配置管理")
public class GenConfigController {
......
......@@ -38,7 +38,7 @@ import java.util.List;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/generator")
@RequestMapping("/admin/generator")
@Api(tags = "系统:代码生成管理")
public class GeneratorController {
......
......@@ -40,7 +40,7 @@ import java.util.Set;
@RestController
@RequiredArgsConstructor
@Api(tags = "运维:应用管理")
@RequestMapping("/api/app")
@RequestMapping("/admin/app")
public class AppController {
private final AppService appService;
......
......@@ -47,7 +47,7 @@ import java.util.Set;
@Api(tags = "运维:数据库管理")
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/database")
@RequestMapping("/admin/database")
public class DatabaseController {
private final String fileSavePath = FileUtil.getTmpDirPath() + "/";
......
......@@ -48,7 +48,7 @@ import java.util.Set;
@RestController
@Api(tags = "运维:部署管理")
@RequiredArgsConstructor
@RequestMapping("/api/deploy")
@RequestMapping("/admin/deploy")
public class DeployController {
private final String fileSavePath = FileUtil.getTmpDirPath() + "/";
......
......@@ -38,7 +38,7 @@ import java.util.Set;
@RestController
@RequiredArgsConstructor
@Api(tags = "运维:部署历史管理")
@RequestMapping("/api/deployHistory")
@RequestMapping("/admin/deployHistory")
public class DeployHistoryController {
private final DeployHistoryService deployhistoryService;
......
......@@ -40,7 +40,7 @@ import java.util.Set;
@RestController
@Api(tags = "运维:服务器管理")
@RequiredArgsConstructor
@RequestMapping("/api/serverDeploy")
@RequestMapping("/admin/serverDeploy")
public class ServerDeployController {
private final ServerDeployService serverDeployService;
......
......@@ -30,7 +30,7 @@ import java.util.concurrent.CopyOnWriteArraySet;
* @author ZhangHouYing
* @date 2019-08-10 15:46
*/
@ServerEndpoint("/webSocket/{sid}")
@ServerEndpoint("/admin/webSocket/{sid}")
@Slf4j
@Component
public class WebSocketServer {
......@@ -57,11 +57,7 @@ public class WebSocketServer {
public void onOpen(Session session, @PathParam("sid") String sid) {
this.session = session;
//如果存在就先删除一个,防止重复推送消息
for (WebSocketServer webSocket : webSocketSet) {
if (webSocket.sid.equals(sid)) {
webSocketSet.remove(webSocket);
}
}
webSocketSet.removeIf(webSocket -> webSocket.sid.equals(sid));
webSocketSet.add(this);
this.sid = sid;
}
......
......@@ -42,7 +42,7 @@ import java.util.Set;
@Slf4j
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/jobs")
@RequestMapping("/admin/jobs")
@Api(tags = "系统:定时任务管理")
public class QuartzJobController {
......
......@@ -62,7 +62,7 @@ import java.util.concurrent.TimeUnit;
*/
@Slf4j
@RestController
@RequestMapping("/auth")
@RequestMapping("/admin/auth")
@RequiredArgsConstructor
@Api(tags = "系统:系统授权接口")
public class AuthorizationController {
......
......@@ -35,7 +35,7 @@ import java.util.Set;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/auth/online")
@RequestMapping("/admin/auth/online")
@Api(tags = "系统:在线用户管理")
public class OnlineController {
......
package com.zq.admin.modules.system.rest;
import com.zq.admin.modules.system.service.UserService;
import com.zq.admin.modules.system.service.dto.UserDto;
import com.zq.common.utils.AssertUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
/**
* @author wilmiam
* @since 2022-05-28 16:50
*/
@Api(tags = "访问图片文件")
@RequiredArgsConstructor
@RestController
@RequestMapping("/admin")
public class AccessController {
private final UserService userService;
// http://localhost:9888/admin/avatar/avatar-20220528044034262.png
@ApiOperation("访问头像")
@GetMapping(value = "/avatar/{username}", produces = MediaType.IMAGE_JPEG_VALUE)
public byte[] avatar(@PathVariable String username) throws IOException {
UserDto userDto = userService.findByName(username);
AssertUtils.isTrue(userDto != null, "用户不存在");
AssertUtils.hasText(userDto.getAvatarPath(), "未设置头像");
File file = new File(userDto.getAvatarPath());
AssertUtils.isTrue(file.exists(), "访问图片不存在");
FileInputStream inputStream = new FileInputStream(file);
byte[] bytes = new byte[inputStream.available()];
inputStream.read(bytes, 0, inputStream.available());
inputStream.close();
return bytes;
}
/*@GetMapping(value = "/images/**", produces = MediaType.IMAGE_JPEG_VALUE)
public BufferedImage getImage(HttpServletRequest request) throws IOException {
try (InputStream is = new FileInputStream(request.getRequestURI())) {
return ImageIO.read(is);
}
}*/
/*@GetMapping(value = "/file/**")
public ResponseEntity<Resource> download(HttpServletRequest request) {
File file = new File(request.getRequestURI());
AssertUtils.isTrue(file.exists(), "访问文件不存在");
String contentDisposition = ContentDisposition
.builder("attachment")
.filename(request.getRequestURI())
.build().toString();
return ResponseEntity.ok()
.header(HttpHeaders.CONTENT_DISPOSITION, contentDisposition)
.contentType(MediaType.APPLICATION_OCTET_STREAM)
.body(new FileSystemResource(file));
}*/
}
......@@ -42,7 +42,7 @@ import java.util.*;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:部门管理")
@RequestMapping("/api/dept")
@RequestMapping("/admin/dept")
public class DeptController {
private final DeptService deptService;
......@@ -116,4 +116,4 @@ public class DeptController {
return new ResponseEntity<>(HttpStatus.OK);
}
}
\ No newline at end of file
}
......@@ -41,7 +41,7 @@ import java.util.Set;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:字典管理")
@RequestMapping("/api/dict")
@RequestMapping("/admin/dict")
public class DictController {
private final DictService dictService;
......@@ -98,4 +98,4 @@ public class DictController {
return new ResponseEntity<>(HttpStatus.OK);
}
}
\ No newline at end of file
}
......@@ -44,7 +44,7 @@ import java.util.Map;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:字典详情管理")
@RequestMapping("/api/dictDetail")
@RequestMapping("/admin/dictDetail")
public class DictDetailController {
private final DictDetailService dictDetailService;
......@@ -98,4 +98,4 @@ public class DictDetailController {
return new ResponseEntity<>(HttpStatus.OK);
}
}
\ No newline at end of file
}
......@@ -41,7 +41,7 @@ import java.util.Set;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:岗位管理")
@RequestMapping("/api/job")
@RequestMapping("/admin/job")
public class JobController {
private final JobService jobService;
......@@ -93,4 +93,4 @@ public class JobController {
return new ResponseEntity<>(HttpStatus.OK);
}
}
\ No newline at end of file
}
......@@ -29,7 +29,7 @@ import java.util.concurrent.atomic.AtomicInteger;
* 接口限流测试类
*/
@RestController
@RequestMapping("/api/limit")
@RequestMapping("/admin/limit")
@Api(tags = "系统:限流测试管理")
public class LimitController {
......
......@@ -37,7 +37,7 @@ import java.io.IOException;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/logs")
@RequestMapping("/admin/logs")
@Api(tags = "系统:日志管理")
public class LogController {
......
......@@ -46,7 +46,7 @@ import java.util.stream.Collectors;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:菜单管理")
@RequestMapping("/api/menus")
@RequestMapping("/admin/menus")
public class MenuController {
private final MenuService menuService;
......
......@@ -33,7 +33,7 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统-服务监控管理")
@RequestMapping("/api/monitor")
@RequestMapping("/admin/monitor")
public class MonitorController {
private final MonitorService serverService;
......
......@@ -48,7 +48,7 @@ import java.util.stream.Collectors;
@RestController
@RequiredArgsConstructor
@Api(tags = "系统:角色管理")
@RequestMapping("/api/roles")
@RequestMapping("/admin/roles")
public class RoleController {
private final RoleService roleService;
......
......@@ -57,7 +57,7 @@ import java.util.stream.Collectors;
*/
@Api(tags = "系统:用户管理")
@RestController
@RequestMapping("/api/users")
@RequestMapping("/admin/users")
@RequiredArgsConstructor
public class UserController {
......
......@@ -35,7 +35,7 @@ import java.util.Objects;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/code")
@RequestMapping("/admin/code")
@Api(tags = "系统:验证码管理")
public class VerifyController {
......
......@@ -45,7 +45,7 @@ import java.util.Map;
@Slf4j
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/aliPay")
@RequestMapping("/admin/aliPay")
@Api(tags = "工具:支付宝管理")
public class AliPayController {
......
......@@ -35,7 +35,7 @@ import org.springframework.web.bind.annotation.*;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("api/email")
@RequestMapping("admin/email")
@Api(tags = "工具:邮件管理")
public class EmailController {
......
......@@ -42,7 +42,7 @@ import java.io.IOException;
@RestController
@RequiredArgsConstructor
@Api(tags = "工具:本地存储管理")
@RequestMapping("/api/localStorage")
@RequestMapping("/admin/localStorage")
public class LocalStorageController {
private final LocalStorageService localStorageService;
......@@ -98,4 +98,4 @@ public class LocalStorageController {
return new ResponseEntity<>(HttpStatus.OK);
}
}
\ No newline at end of file
}
......@@ -45,7 +45,7 @@ import java.util.Map;
@Slf4j
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/qiNiuContent")
@RequestMapping("/admin/qiNiuContent")
@Api(tags = "工具:七牛云存储管理")
public class QiniuController {
......
......@@ -15,6 +15,7 @@
*/
package com.zq.admin.utils;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.poi.excel.BigExcelWriter;
......@@ -188,7 +189,7 @@ public class FileUtil extends cn.hutool.core.io.FileUtil {
String nowStr = "-" + format.format(date);
try {
String fileName = name + nowStr + "." + suffix;
String path = filePath + fileName;
String path = filePath + (DateUtil.format(new Date(), "yyyyMM/dd/")) + fileName;
// getCanonicalFile 可解析正确各种路径
File dest = new File(path).getCanonicalFile();
// 检测是否存在目录
......
......@@ -53,8 +53,9 @@ spring:
enabled: true
stat-view-servlet:
enabled: true
url-pattern: /druid/*
url-pattern: /admin/druid/*
reset-enable: false
allow: ""
filter:
stat:
enabled: true
......@@ -142,11 +143,11 @@ file:
path: ~/file/
avatar: ~/avatar/
linux:
path: /home/eladmin/file/
avatar: /home/eladmin/avatar/
path: /data/file/
avatar: /data/avatar/
windows:
path: C:\eladmin\file\
avatar: C:\eladmin\avatar\
path: D:\data\file\
avatar: D:\data\avatar\
# 文件大小 /M
maxSize: 100
avatarMaxSize: 5
......@@ -38,7 +38,7 @@ import javax.servlet.http.HttpServletResponse;
@RestController
@RequiredArgsConstructor
@Api(tags = "${apiAlias}管理")
@RequestMapping("/api/${changeClassName}")
@RequestMapping("/admin/${changeClassName}")
public class ${className}Controller {
private final ${className}Service ${changeClassName}Service;
......
......@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function add(data) {
return request({
url: 'api/${changeClassName}',
url: 'admin/${changeClassName}',
method: 'post',
data
})
......@@ -10,7 +10,7 @@ data
export function del(ids) {
return request({
url: 'api/${changeClassName}/',
url: 'admin/${changeClassName}/',
method: 'delete',
data: ids
})
......@@ -18,7 +18,7 @@ data: ids
export function edit(data) {
return request({
url: 'api/${changeClassName}',
url: 'admin/${changeClassName}',
method: 'put',
data
})
......
......@@ -135,7 +135,7 @@
cruds() {
return CRUD({
title: '${apiAlias}',
url: 'api/${changeClassName}',
url: 'admin/${changeClassName}',
idField: '${pkChangeColName}',
sort: '${pkChangeColName},desc',
crudMethod: {...crud${className}}
......
......@@ -16,7 +16,7 @@ api.name: API-SERVER
user.port: 8700
user.name: USER-SERVER
gateway.port: 8999
gateway.port: 9888
gateway.name: GATEWAY-SERVER
redis.url: 127.0.0.1
......
......@@ -16,7 +16,7 @@ api.name: API-SERVER
user.port: 8700
user.name: USER-SERVER
gateway.port: 8999
gateway.port: 9888
gateway.name: GATEWAY-SERVER
redis.url: 127.0.0.1
......
......@@ -16,7 +16,7 @@ api.name: API-SERVER
user.port: 8700
user.name: USER-SERVER
gateway.port: 8999
gateway.port: 9888
gateway.name: GATEWAY-SERVER
redis.url: 127.0.0.1
......
......@@ -55,6 +55,7 @@ spring:
enabled: true
url-pattern: /druid/*
reset-enable: false
allow: ""
filter:
stat:
enabled: true
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment