添加TableName注解,Db模块更改返回类型

This commit is contained in:
Mdai
2022-12-16 11:47:05 +08:00
parent c4f024cfad
commit 3b993205fb
41 changed files with 215 additions and 179 deletions

View File

@@ -6,7 +6,6 @@ import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.http.Method;
import com.zyplayer.doc.api.controller.ApiPoxyRequestController;
import com.zyplayer.doc.api.controller.param.ProxyRequestParam;
import com.zyplayer.doc.api.controller.vo.HttpCookieVo;
import com.zyplayer.doc.api.controller.vo.HttpHeaderVo;
@@ -44,15 +43,15 @@ import java.util.stream.Stream;
@Service
public class SwaggerHttpRequestService {
private static Logger logger = LoggerFactory.getLogger(SwaggerHttpRequestService.class);
@Resource
private ApiGlobalParamService apiGlobalParamService;
private static final Map<String, Method> requestMethodMap = Stream.of(Method.values()).collect(Collectors.toMap(val -> val.name().toLowerCase(), val -> val));
List<String> domainHeaderKeys = Arrays.asList("referer", "origin");
List<String> needRequestHeaderKeys = Arrays.asList("user-agent");
/**
* 请求真实的swagger文档内容
*
@@ -81,7 +80,7 @@ public class SwaggerHttpRequestService {
.timeout(10000).execute().body();
return resultStr;
}
/**
* 执行代理请求
*
@@ -102,7 +101,7 @@ public class SwaggerHttpRequestService {
e.printStackTrace();
}
}
/**
* 执行代理请求
*
@@ -141,7 +140,7 @@ public class SwaggerHttpRequestService {
resultVo.setUseTime(System.currentTimeMillis() - startTime);
return resultVo;
}
private HttpResponse getHttpResponse(HttpServletRequest request, ProxyRequestParam requestParam) {
// 执行请求
Method method = requestMethodMap.get(requestParam.getMethod());
@@ -195,13 +194,13 @@ public class SwaggerHttpRequestService {
httpRequest.body(requestParam.getBodyParam());
}
// 强制设置类型貌似不用刻意设置如果写的application/json参数是表单传过去收不到值先注释这个
// if (StringUtils.isNotBlank(requestParam.getContentType())) {
// httpRequest.contentType(requestParam.getContentType());
// }
// if (StringUtils.isNotBlank(requestParam.getContentType())) {
// httpRequest.contentType(requestParam.getContentType());
// }
// 执行请求
return httpRequest.timeout(10000).execute();
}
/**
* 获取http的cookie
*
@@ -228,7 +227,7 @@ public class SwaggerHttpRequestService {
}
return httpCookies;
}
/**
* 获取http的header
*

View File

@@ -2,7 +2,7 @@ package com.zyplayer.doc.core.json;
/**
* json视图
*
*
* @author 暮光:城中城
* @since 2018年8月21日
*/

View File

@@ -39,15 +39,4 @@ public class DocUserDetails {
this.enabled = enabled;
this.userAuthList = userAuthList;
}
@Override
public String toString() {
return "DocUserDetails{" +
"userId=" + userId +
", username='" + username + '\'' +
", password='" + password + '\'' +
", enabled=" + enabled +
", userAuthList=" + userAuthList +
'}';
}
}

View File

@@ -20,8 +20,6 @@ import java.util.Date;
@TableName("api_custom_node")
public class ApiCustomNode implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键自增ID
*/

View File

@@ -20,8 +20,6 @@ import java.util.Date;
@TableName("api_custom_params")
public class ApiCustomParams implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键自增ID
*/

View File

@@ -20,8 +20,6 @@ import java.util.Date;
@TableName("api_custom_request")
public class ApiCustomRequest implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键自增ID
*/

View File

@@ -20,8 +20,6 @@ import java.util.Date;
@TableName("api_request_param")
public class ApiRequestParam implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键自增ID
*/

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2018-12-05
*/
@Data
@TableName("auth_info")
public class AuthInfo implements Serializable {
/**

View File

@@ -2,20 +2,20 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
*
* </p>
* 数据源对象
*
* @author 暮光:城中城
* @since 2019-07-04
*/
@Data
@TableName("db_datasource")
public class DbDatasource implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-08-21
*/
@Data
@TableName("db_favorite")
public class DbFavorite implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-08-21
*/
@Data
@TableName("db_history")
public class DbHistory implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-04-26
*/
@Data
@TableName("db_proc_log")
public class DbProcLog implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-06-07
*/
@Data
@TableName("db_table_relation")
public class DbTableRelation implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-09-30
*/
@Data
@TableName("db_transfer_task")
public class DbTransferTask implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-07-27
*/
@Data
@TableName("es_datasource")
public class EsDatasource implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-05-31
*/
@Data
@TableName("user_auth")
public class UserAuth implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-02-08
*/
@Data
@TableName("user_group")
public class UserGroup implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-02-09
*/
@Data
@TableName("user_group_auth")
public class UserGroupAuth implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-02-08
*/
@Data
@TableName("user_group_relation")
public class UserGroupRelation implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2018-12-05
*/
@Data
@TableName("user_info")
public class UserInfo implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2020-06-23
*/
@Data
@TableName("user_message")
public class UserMessage implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-02-09
*/
@Data
@TableName("user_setting")
public class UserSetting implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-06-06
*/
@Data
@TableName("wiki_page")
public class WikiPage implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-02-24
*/
@Data
@TableName("wiki_page_comment")
public class WikiPageComment implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-02-24
*/
@Data
@TableName("wiki_page_content")
public class WikiPageContent implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-03-06
*/
@Data
@TableName("wiki_page_file")
public class WikiPageFile implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2020-09-05
*/
@Data
@TableName("wiki_page_history")
public class WikiPageHistory implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-03-05
*/
@Data
@TableName("wiki_page_zan")
public class WikiPageZan implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2019-03-11
*/
@Data
@TableName("wiki_space")
public class WikiSpace implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2021-02-09
*/
@Data
@TableName("wiki_space_favorite")
public class WikiSpaceFavorite implements Serializable {
/**

View File

@@ -2,6 +2,7 @@ package com.zyplayer.doc.data.repository.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@@ -16,6 +17,7 @@ import java.util.Date;
* @since 2018-11-27
*/
@Data
@TableName("zyplayer_storage")
public class ZyplayerStorage implements Serializable {
@TableId(value = "id", type = IdType.AUTO)

View File

@@ -1,16 +1,21 @@
package com.zyplayer.doc.data.service.manage;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
import java.util.List;
/**
* <p>
* 服务类
* </p>
* 数据源业务接口
*
* @author 暮光:城中城
* @since 2019-07-04
*/
public interface DbDatasourceService extends IService<DbDatasource> {
/**
* 获取数据源列表(管理员返回所有数据源,用户返回有权限的数据源)
* @return List<DbDatasource>
*/
List<DbDatasource> getDataSourceList();
}

View File

@@ -1,14 +1,27 @@
package com.zyplayer.doc.data.service.manage.impl;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
import com.zyplayer.doc.data.repository.manage.mapper.DbDatasourceMapper;
import com.zyplayer.doc.data.service.manage.DbDatasourceService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
import com.zyplayer.doc.data.repository.manage.entity.UserAuth;
import com.zyplayer.doc.data.repository.manage.mapper.DbDatasourceMapper;
import com.zyplayer.doc.data.repository.support.consts.DocAuthConst;
import com.zyplayer.doc.data.repository.support.consts.DocSysModuleType;
import com.zyplayer.doc.data.repository.support.consts.DocSysType;
import com.zyplayer.doc.data.service.manage.DbDatasourceService;
import com.zyplayer.doc.data.service.manage.UserAuthService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* <p>
* 服务实现类
* 服务实现类
* </p>
*
* @author 暮光:城中城
@@ -17,4 +30,31 @@ import org.springframework.stereotype.Service;
@Service
public class DbDatasourceServiceImpl extends ServiceImpl<DbDatasourceMapper, DbDatasource> implements DbDatasourceService {
@Resource
UserAuthService userAuthService;
@Override
public List<DbDatasource> getDataSourceList() {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
QueryWrapper<DbDatasource> wrapper = new QueryWrapper<>();
wrapper.eq("yn", 1);
// 没管理权限只返回有权限的数据源
if (!DocUserUtil.haveAuth(DocAuthConst.DB_DATASOURCE_MANAGE)) {
QueryWrapper<UserAuth> updateWrapper = new QueryWrapper<>();
updateWrapper.eq("sys_type", DocSysType.DB.getType());
updateWrapper.eq("sys_module_type", DocSysModuleType.Db.DATASOURCE.getType());
updateWrapper.eq("del_flag", 0);
updateWrapper.eq("user_id", currentUser.getUserId());
List<UserAuth> userAuthList = userAuthService.list(updateWrapper);
if (userAuthList == null || userAuthList.isEmpty()) {
return new ArrayList<>();
}
List<Long> userAuthDbIds = userAuthList.stream()
.map(UserAuth::getSysModuleId)
.collect(Collectors.toList());
wrapper.in("id", userAuthDbIds);
}
wrapper.select("id", "name", "group_name");
return list(wrapper);
}
}

View File

@@ -1,18 +1,13 @@
package com.zyplayer.doc.db.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.exception.ConfirmException;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
import com.zyplayer.doc.data.repository.manage.entity.UserAuth;
import com.zyplayer.doc.data.repository.support.consts.DocAuthConst;
import com.zyplayer.doc.data.repository.support.consts.DocSysModuleType;
import com.zyplayer.doc.data.repository.support.consts.DocSysType;
import com.zyplayer.doc.data.service.manage.DbDatasourceService;
import com.zyplayer.doc.data.service.manage.UserAuthService;
import com.zyplayer.doc.db.controller.vo.DatabaseExportVo;
import com.zyplayer.doc.db.controller.vo.TableColumnVo;
import com.zyplayer.doc.db.controller.vo.TableColumnVo.TableInfoVo;
@@ -28,7 +23,6 @@ import com.zyplayer.doc.db.framework.utils.PoiUtil;
import com.zyplayer.doc.db.service.database.DatabaseServiceFactory;
import com.zyplayer.doc.db.service.database.DbBaseService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -49,40 +43,24 @@ import java.util.stream.Stream;
@RestController
@RequestMapping("/zyplayer-doc-db/doc-db")
public class DatabaseDocController {
@Resource
DatabaseRegistrationBean databaseRegistrationBean;
@Resource
DbDatasourceService dbDatasourceService;
@Resource
UserAuthService userAuthService;
@Resource
DatabaseServiceFactory databaseServiceFactory;
@PostMapping(value = "/getDataSourceList")
public ResponseJson getDataSourceList() {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
QueryWrapper<DbDatasource> wrapper = new QueryWrapper<>();
wrapper.eq("yn", 1);
// 没管理权限只返回有权限的数据源
if (!DocUserUtil.haveAuth(DocAuthConst.DB_DATASOURCE_MANAGE)) {
QueryWrapper<UserAuth> updateWrapper = new QueryWrapper<>();
updateWrapper.eq("sys_type", DocSysType.DB.getType());
updateWrapper.eq("sys_module_type", DocSysModuleType.Db.DATASOURCE.getType());
updateWrapper.eq("del_flag", 0);
updateWrapper.eq("user_id", currentUser.getUserId());
List<UserAuth> userAuthList = userAuthService.list(updateWrapper);
if (userAuthList == null || userAuthList.isEmpty()) {
return DocDbResponseJson.ok();
}
List<Long> userAuthDbIds = userAuthList.stream().map(UserAuth::getSysModuleId).collect(Collectors.toList());
wrapper.in("id", userAuthDbIds);
}
wrapper.select("id", "name", "group_name");
List<DbDatasource> datasourceList = dbDatasourceService.list(wrapper);
return DocDbResponseJson.ok(datasourceList);
/**
* 获取数据源列表(管理员返回所有数据源,用户返回有权限的数据源)
* @return ResponseJson
*/
@PostMapping("/getDataSourceList")
public DocDbResponseJson getDataSourceList() {
List<DbDatasource> dataSourceList = dbDatasourceService.getDataSourceList();
return DocDbResponseJson.ok(dataSourceList);
}
/**
* 获取数据源基本信息
*
@@ -90,50 +68,50 @@ public class DatabaseDocController {
* @return 基本信息
*/
@PostMapping(value = "/getSourceBaseInfo")
public ResponseJson getSourceBaseInfo(Long sourceId) {
public DocDbResponseJson getSourceBaseInfo(Long sourceId) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
Map<String, Object> dbResultMap = new HashMap<>();
dbResultMap.put("product", dbBaseService.getDatabaseProduct().name().toLowerCase());
return DocDbResponseJson.ok(dbResultMap);
}
@PostMapping(value = "/getTableDdl")
public ResponseJson getTableDdl(Long sourceId, String dbName, String tableName) {
public DocDbResponseJson getTableDdl(Long sourceId, String dbName, String tableName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
TableDdlVo tableDdlVo = dbBaseService.getTableDdl(sourceId, dbName, tableName);
return DocDbResponseJson.ok(tableDdlVo);
}
@PostMapping(value = "/getDatabaseList")
public ResponseJson getDatabaseList(Long sourceId) {
public DocDbResponseJson getDatabaseList(Long sourceId) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
List<DatabaseInfoDto> databaseList = dbBaseService.getDatabaseList(sourceId);
return DocDbResponseJson.ok(databaseList);
}
@PostMapping(value = "/getTableStatus")
public ResponseJson getTableStatus(Long sourceId, String dbName, String tableName) {
public DocDbResponseJson getTableStatus(Long sourceId, String dbName, String tableName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
TableStatusVo tableStatusVo = dbBaseService.getTableStatus(sourceId, dbName, tableName);
return DocDbResponseJson.ok(tableStatusVo);
}
@PostMapping(value = "/getTableList")
public ResponseJson getTableList(Long sourceId, String dbName) {
public DocDbResponseJson getTableList(Long sourceId, String dbName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
List<TableInfoDto> tableList = dbBaseService.getTableList(sourceId, dbName);
return DocDbResponseJson.ok(tableList);
}
@PostMapping(value = "/getTableColumnList")
public ResponseJson getTableColumnList(Long sourceId, String dbName, String tableName) {
public DocDbResponseJson getTableColumnList(Long sourceId, String dbName, String tableName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
TableColumnVo tableColumnVo = dbBaseService.getTableColumnList(sourceId, dbName, tableName);
return DocDbResponseJson.ok(tableColumnVo);
}
@PostMapping(value = "/getTableAndColumnBySearch")
public ResponseJson getTableAndColumnBySearch(Long sourceId, String dbName, String searchText) {
public DocDbResponseJson getTableAndColumnBySearch(Long sourceId, String dbName, String searchText) {
if (StringUtils.isBlank(searchText)) {
return DocDbResponseJson.ok();
}
@@ -141,32 +119,32 @@ public class DatabaseDocController {
List<QueryTableColumnDescDto> columnDescDto = dbBaseService.getTableAndColumnBySearch(sourceId, dbName, searchText);
return DocDbResponseJson.ok(columnDescDto);
}
@PostMapping(value = "/getTableDescList")
public ResponseJson getTableDescList(Long sourceId, String dbName, String tableName) {
public DocDbResponseJson getTableDescList(Long sourceId, String dbName, String tableName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
List<TableDescDto> tableDescList = dbBaseService.getTableDescList(sourceId, dbName, tableName);
return DocDbResponseJson.ok(tableDescList);
}
@PostMapping(value = "/updateTableDesc")
public ResponseJson updateTableDesc(Long sourceId, String dbName, String tableName, String newDesc) {
public DocDbResponseJson updateTableDesc(Long sourceId, String dbName, String tableName, String newDesc) {
this.judgeAuth(sourceId, DbAuthType.DESC_EDIT.getName(), "没有修改该表注释的权限");
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
dbBaseService.updateTableDesc(sourceId, dbName, tableName, newDesc);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/updateTableColumnDesc")
public ResponseJson updateTableColumnDesc(Long sourceId, String dbName, String tableName, String columnName, String newDesc) {
public DocDbResponseJson updateTableColumnDesc(Long sourceId, String dbName, String tableName, String columnName, String newDesc) {
this.judgeAuth(sourceId, DbAuthType.DESC_EDIT.getName(), "没有修改该表字段注释的权限");
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
dbBaseService.updateTableColumnDesc(sourceId, dbName, tableName, columnName, newDesc);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/exportDatabase")
public ResponseJson exportDatabase(HttpServletResponse response, Long sourceId, String dbName, String tableNames, Integer exportType, Integer exportFormat) {
public DocDbResponseJson exportDatabase(HttpServletResponse response, Long sourceId, String dbName, String tableNames, Integer exportType, Integer exportFormat) {
if (StringUtils.isBlank(tableNames)) {
return DocDbResponseJson.warn("请选择需要导出的表");
}
@@ -178,7 +156,7 @@ public class DatabaseDocController {
}
return DocDbResponseJson.ok();
}
private DocDbResponseJson exportForTableDdl(HttpServletResponse response, Long sourceId, String dbName, List<String> tableNameList, Integer exportFormat) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
Map<String, String> ddlSqlMap = new HashMap<>();
@@ -196,7 +174,7 @@ public class DatabaseDocController {
}
return DocDbResponseJson.ok();
}
private DocDbResponseJson exportForTableDoc(HttpServletResponse response, Long sourceId, String dbName, List<String> tableNameList, Integer exportFormat) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
// 数据组装
@@ -222,7 +200,7 @@ public class DatabaseDocController {
return DocDbResponseJson.error("导出失败:" + e.getMessage());
}
}
/**
* 权限判断
*
@@ -235,4 +213,3 @@ public class DatabaseDocController {
}
}
}

View File

@@ -6,7 +6,6 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.util.TypeUtils;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.db.controller.download.FormatDownloadConst;
import com.zyplayer.doc.db.controller.download.FormatDownloadService;
import com.zyplayer.doc.db.controller.param.DataViewParam;
@@ -45,7 +44,7 @@ import java.util.*;
@RequestMapping("/zyplayer-doc-db/data-view")
public class DbDataViewController {
private static Logger logger = LoggerFactory.getLogger(DbDataViewController.class);
@Resource
ExecuteAuthService executeAuthService;
@Resource
@@ -57,7 +56,7 @@ public class DbDataViewController {
// 最大允许导出的行数设置的过大有可能会导致内存溢出默认10W条
@Value("${zyplayer.doc.db.download-max-row:100000}")
Integer downloadMaxRow;
/**
* 数据查询接口
*
@@ -65,7 +64,7 @@ public class DbDataViewController {
* @since 2021-08-14
*/
@PostMapping(value = "/query")
public ResponseJson query(DataViewParam param) {
public DocDbResponseJson query(DataViewParam param) {
// 数据查询
ExecuteType executeType = executeAuthService.getExecuteType(param.getSourceId());
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(param.getSourceId());
@@ -84,20 +83,20 @@ public class DbDataViewController {
}
return responseJson;
}
/**
* 删除表数据
*
* @author 暮光:城中城
*/
@PostMapping(value = "/deleteTableLineData")
public ResponseJson deleteTableLineData(Long sourceId, String dbName, String tableName, String lineJson) {
public DocDbResponseJson deleteTableLineData(Long sourceId, String dbName, String tableName, String lineJson) {
JSONArray lineJsonArr = JSON.parseArray(lineJson);
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
dbBaseService.deleteTableLineData(sourceId, dbName, tableName, lineJsonArr);
return DocDbResponseJson.ok();
}
/**
* 多表下载
*
@@ -107,7 +106,7 @@ public class DbDataViewController {
* @author 暮光:城中城
*/
@PostMapping(value = "/downloadMultiple")
public ResponseJson downloadMultiple(HttpServletResponse response, DataViewParam param) {
public DocDbResponseJson downloadMultiple(HttpServletResponse response, DataViewParam param) {
if (StringUtils.isBlank(param.getTableNames())) {
return DocDbResponseJson.warn("请选择导出的表");
}
@@ -130,7 +129,7 @@ public class DbDataViewController {
}
return DocDbResponseJson.ok();
}
/**
* 获取数据总条数
*
@@ -148,7 +147,7 @@ public class DbDataViewController {
}
return 0L;
}
/**
* 执行数据查询
*
@@ -174,4 +173,3 @@ public class DbDataViewController {
}
}
}

View File

@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.exception.ConfirmException;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbDatasource;
@@ -36,14 +35,14 @@ import java.util.stream.Collectors;
@AuthMan(DocAuthConst.DB_DATASOURCE_MANAGE)
@RequestMapping("/zyplayer-doc-db/datasource")
public class DbDatasourceController {
@Resource
DatabaseRegistrationBean databaseRegistrationBean;
@Resource
DbDatasourceService dbDatasourceService;
@PostMapping(value = "/list")
public ResponseJson list(Integer pageNum, Integer pageSize, String name, String groupName) {
public DocDbResponseJson list(Integer pageNum, Integer pageSize, String name, String groupName) {
QueryWrapper<DbDatasource> wrapper = new QueryWrapper<>();
wrapper.eq("yn", 1);
wrapper.eq(StringUtils.isNotBlank(groupName), "group_name", groupName);
@@ -55,9 +54,9 @@ public class DbDatasourceController {
}
return DocDbResponseJson.ok(page);
}
@PostMapping(value = "/groups")
public ResponseJson groups() {
public DocDbResponseJson groups() {
QueryWrapper<DbDatasource> wrapper = new QueryWrapper<>();
wrapper.eq("yn", 1);
wrapper.isNotNull("group_name");
@@ -70,9 +69,9 @@ public class DbDatasourceController {
Set<String> groupNameSet = datasourceList.stream().map(DbDatasource::getGroupName).filter(StringUtils::isNotBlank).collect(Collectors.toSet());
return DocDbResponseJson.ok(groupNameSet);
}
@PostMapping(value = "/test")
public ResponseJson test(DbDatasource dbDatasource) {
public DocDbResponseJson test(DbDatasource dbDatasource) {
// 验证新的数据源
try {
// 获取原始密码
@@ -92,9 +91,9 @@ public class DbDatasourceController {
}
return DocDbResponseJson.ok();
}
@PostMapping(value = "/update")
public ResponseJson update(DbDatasource dbDatasource) {
public DocDbResponseJson update(DbDatasource dbDatasource) {
if (StringUtils.isBlank(dbDatasource.getName())) {
return DocDbResponseJson.warn("名字必填");
} else if (StringUtils.isBlank(dbDatasource.getDriverClassName())) {
@@ -129,4 +128,3 @@ public class DbDatasourceController {
return DocDbResponseJson.ok();
}
}

View File

@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.exception.ConfirmException;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbProcLog;
@@ -42,12 +41,12 @@ import java.util.List;
@RequestMapping("/zyplayer-doc-db/procedure")
public class DbProcedureController {
private static Logger logger = LoggerFactory.getLogger(DbProcedureController.class);
@Resource
DatabaseServiceFactory databaseServiceFactory;
@Resource
DbProcLogService dbProcLogService;
/**
* 存储过程列表
*
@@ -55,7 +54,7 @@ public class DbProcedureController {
* @return 列表
*/
@PostMapping(value = "/list")
public ResponseJson list(ProcedureListParam procedureParam) {
public DocDbResponseJson list(ProcedureListParam procedureParam) {
try {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(procedureParam.getSourceId());
procedureParam.setOffset((procedureParam.getPageNum() - 1) * procedureParam.getPageSize());
@@ -70,7 +69,7 @@ public class DbProcedureController {
return DocDbResponseJson.error(e.getMessage());
}
}
/**
* 获取函数详情
*
@@ -81,7 +80,7 @@ public class DbProcedureController {
* @return 详情
*/
@PostMapping(value = "/detail")
public ResponseJson detail(Long sourceId, String dbName, String typeName, String procName) {
public DocDbResponseJson detail(Long sourceId, String dbName, String typeName, String procName) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(sourceId);
try {
ProcedureDto procedureDto = dbBaseService.getProcedureDetail(sourceId, dbName, typeName, procName);
@@ -91,7 +90,7 @@ public class DbProcedureController {
return DocDbResponseJson.error(e.getMessage());
}
}
/**
* 删除函数
*
@@ -102,7 +101,7 @@ public class DbProcedureController {
* @return 结果
*/
@PostMapping(value = "/delete")
public ResponseJson delete(Long sourceId, String dbName, String typeName, String procName) {
public DocDbResponseJson delete(Long sourceId, String dbName, String typeName, String procName) {
this.judgeAuth(sourceId, DbAuthType.PROC_EDIT.getName(), "没有修改该库函数的权限");
DbProcLog dbProcLog = this.createDbProcLog(sourceId, dbName, typeName, procName, "删除函数操作");
try {
@@ -117,7 +116,7 @@ public class DbProcedureController {
dbProcLogService.save(dbProcLog);
}
}
/**
* 保存函数
*
@@ -129,7 +128,7 @@ public class DbProcedureController {
* @return 结果
*/
@PostMapping(value = "/save")
public ResponseJson save(Long sourceId, String dbName, String typeName, String procName, String procSql) {
public DocDbResponseJson save(Long sourceId, String dbName, String typeName, String procName, String procSql) {
this.judgeAuth(sourceId, DbAuthType.PROC_EDIT.getName(), "没有修改该库函数的权限");
DbProcLog dbProcLog = this.createDbProcLog(sourceId, dbName, typeName, procName, procSql);
try {
@@ -147,7 +146,7 @@ public class DbProcedureController {
dbProcLogService.save(dbProcLog);
}
}
/**
* 存储过程修改日志列表
*
@@ -158,7 +157,7 @@ public class DbProcedureController {
* @return 列表
*/
@PostMapping(value = "/log/list")
public ResponseJson logList(Integer pageNum, Integer pageSize, Long sourceId, String dbName, String typeName, String procName) {
public DocDbResponseJson logList(Integer pageNum, Integer pageSize, Long sourceId, String dbName, String typeName, String procName) {
QueryWrapper<DbProcLog> wrapper = new QueryWrapper<>();
wrapper.eq("datasource_id", sourceId);
wrapper.eq("proc_db", dbName);
@@ -170,7 +169,7 @@ public class DbProcedureController {
dbProcLogService.page(page, wrapper);
return DocDbResponseJson.ok(page);
}
/**
* 存储过程修改日志详情
*
@@ -178,11 +177,11 @@ public class DbProcedureController {
* @return 详情
*/
@PostMapping(value = "/log/detail")
public ResponseJson logDetail(Long logId) {
public DocDbResponseJson logDetail(Long logId) {
DbProcLog dbProcLog = dbProcLogService.getById(logId);
return DocDbResponseJson.ok(dbProcLog);
}
/**
* 权限判断
*
@@ -194,7 +193,7 @@ public class DbProcedureController {
throw new ConfirmException(noAuthInfo);
}
}
/**
* 创建日志对象
*
@@ -220,4 +219,3 @@ public class DbProcedureController {
return dbProcLog;
}
}

View File

@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbFavorite;
@@ -46,7 +45,7 @@ import java.util.*;
@RequestMapping("/zyplayer-doc-db/executor")
public class DbSqlExecutorController {
private static Logger logger = LoggerFactory.getLogger(DbSqlExecutorController.class);
@Resource
SqlExecutor sqlExecutor;
@Resource
@@ -55,9 +54,9 @@ public class DbSqlExecutorController {
DbFavoriteService dbFavoriteService;
@Resource
DatabaseServiceFactory databaseServiceFactory;
@PostMapping(value = "/execute")
public ResponseJson execute(Long sourceId, String executeId, String dbName, String sql, String params) {
public DocDbResponseJson execute(Long sourceId, String executeId, String dbName, String sql, String params) {
if (StringUtils.isBlank(sql)) {
return DocDbResponseJson.warn("执行的SQL不能为空");
}
@@ -107,24 +106,24 @@ public class DbSqlExecutorController {
}
return DocDbResponseJson.ok(resultList);
}
@PostMapping(value = "/cancel")
public ResponseJson cancel(String executeId) {
public DocDbResponseJson cancel(String executeId) {
sqlExecutor.cancel(executeId);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/history/list")
public ResponseJson historyList(Long sourceId) {
public DocDbResponseJson historyList(Long sourceId) {
UpdateWrapper<DbHistory> wrapper = new UpdateWrapper<>();
wrapper.eq(sourceId != null, "datasource_id", sourceId);
wrapper.orderByDesc("id");
List<DbHistory> favoriteList = dbHistoryService.list(wrapper);
return DocDbResponseJson.ok(favoriteList);
}
@PostMapping(value = "/favorite/list")
public ResponseJson favoriteList(Long sourceId) {
public DocDbResponseJson favoriteList(Long sourceId) {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
UpdateWrapper<DbFavorite> wrapper = new UpdateWrapper<>();
wrapper.eq(sourceId != null, "datasource_id", sourceId);
@@ -134,9 +133,9 @@ public class DbSqlExecutorController {
List<DbFavorite> favoriteList = dbFavoriteService.list(wrapper);
return DocDbResponseJson.ok(favoriteList);
}
@PostMapping(value = "/favorite/add")
public ResponseJson addFavorite(DbFavorite dbFavorite) {
public DocDbResponseJson addFavorite(DbFavorite dbFavorite) {
Integer yn = Optional.ofNullable(dbFavorite.getYn()).orElse(1);
if (yn == 1) {
if (StringUtils.isBlank(dbFavorite.getContent())) {
@@ -156,6 +155,5 @@ public class DbSqlExecutorController {
}
return DocDbResponseJson.ok();
}
}
}

View File

@@ -2,7 +2,6 @@ package com.zyplayer.doc.db.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.repository.manage.entity.DbTableRelation;
import com.zyplayer.doc.data.repository.manage.param.TableRelationParam;
import com.zyplayer.doc.data.repository.manage.vo.TableRelationVo;
@@ -34,22 +33,22 @@ import java.util.*;
@RequestMapping("/zyplayer-doc-db/table-relation")
public class DbTableRelationController {
private static Logger logger = LoggerFactory.getLogger(DbTableRelationController.class);
@Resource
DatabaseServiceFactory databaseServiceFactory;
@Resource
DbTableRelationService dbTableRelationService;
@PostMapping(value = "/update")
public ResponseJson update(TableRelationParam param) {
public DocDbResponseJson update(TableRelationParam param) {
DbBaseService dbBaseService = databaseServiceFactory.getDbBaseService(param.getSourceId());
dbBaseService.judgeAuth(param.getSourceId(), DbAuthType.UPDATE.getName(), "没有该库的执行权限");
dbTableRelationService.update(param);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/getRelation")
public ResponseJson getRelation(TableRelationParam param) {
public DocDbResponseJson getRelation(TableRelationParam param) {
TableRelationVo relationVo = new TableRelationVo();
relationVo.setDbName(param.getDbName());
relationVo.setName(param.getTableName());
@@ -73,7 +72,7 @@ public class DbTableRelationController {
}
return DocDbResponseJson.ok(relationVo);
}
public List<TableRelationVo> getRelation(Long sourceId, String dbName, String tableName, String columnName, Set<String> drillPath, int recursion) {
// 最大支持5层关系链展示
if (recursion >= 5) {
@@ -137,4 +136,3 @@ public class DbTableRelationController {
return resultRelationList;
}
}

View File

@@ -2,7 +2,6 @@ package com.zyplayer.doc.db.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zyplayer.doc.core.annotation.AuthMan;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.data.config.security.DocUserDetails;
import com.zyplayer.doc.data.config.security.DocUserUtil;
import com.zyplayer.doc.data.repository.manage.entity.DbTransferTask;
@@ -28,26 +27,26 @@ import java.util.List;
@RestController
@RequestMapping("/zyplayer-doc-db/transfer")
public class DbTransferDataController {
@Resource
TransferDataServer transferDataServer;
@Resource
DbTransferTaskService dbTransferTaskService;
@PostMapping(value = "/start")
public ResponseJson doTransfer(Long id) {
public DocDbResponseJson doTransfer(Long id) {
transferDataServer.transferData(id);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/cancel")
public ResponseJson cancel(Long id) {
public DocDbResponseJson cancel(Long id) {
transferDataServer.cancel(id);
return DocDbResponseJson.ok();
}
@PostMapping(value = "/list")
public ResponseJson list() {
public DocDbResponseJson list() {
QueryWrapper<DbTransferTask> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("del_flag", 0);
queryWrapper.select(
@@ -57,15 +56,15 @@ public class DbTransferDataController {
List<DbTransferTask> taskList = dbTransferTaskService.list(queryWrapper);
return DocDbResponseJson.ok(taskList);
}
@PostMapping(value = "/detail")
public ResponseJson detail(Long id) {
public DocDbResponseJson detail(Long id) {
DbTransferTask transferTask = dbTransferTaskService.getById(id);
return DocDbResponseJson.ok(transferTask);
}
@PostMapping(value = "/update")
public ResponseJson update(DbTransferTask transferTask) {
public DocDbResponseJson update(DbTransferTask transferTask) {
DbTransferTask transferTaskUp = new DbTransferTask();
if (transferTask.getId() == null) {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
@@ -86,9 +85,9 @@ public class DbTransferDataController {
dbTransferTaskService.saveOrUpdate(transferTaskUp);
return DocDbResponseJson.ok();
}
@PostMapping("/sqlColumns")
public ResponseJson sqlColumns(String sql) {
public DocDbResponseJson sqlColumns(String sql) {
List<String> selectNames = SqlParseUtil.getSelectNames(sql);
return DocDbResponseJson.ok(selectNames);
}

View File

@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializeConfig;
import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zyplayer.doc.core.json.ResponseJson;
import lombok.Data;
import javax.servlet.http.HttpServletResponse;
@@ -18,7 +17,7 @@ import java.util.Date;
* @since 2018年8月8日
*/
@Data
public class DocDbResponseJson implements ResponseJson {
public class DocDbResponseJson {
private static SerializeConfig mapping = new SerializeConfig();
static {
mapping.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));