表格查询功能完成
parent
cf4506b475
commit
88fe498fea
@ -0,0 +1,177 @@
|
||||
package cn.estsh.i3plus.core.apiservice.serviceimpl.base;
|
||||
|
||||
import cn.estsh.i3plus.core.api.iservice.base.ISysLogService;
|
||||
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
|
||||
import cn.estsh.i3plus.pojo.base.bean.ListPager;
|
||||
import cn.estsh.i3plus.pojo.base.common.Pager;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogException;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogSystem;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogTaskTime;
|
||||
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
||||
import cn.estsh.impp.framework.boot.util.ImppLog;
|
||||
import cn.estsh.impp.framework.boot.util.ImppSwitchUtil;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @Description :
|
||||
* @Reference :
|
||||
* @Author : wei.peng
|
||||
* @CreateDate : 20-2-13 下午4:16
|
||||
* @Modify:
|
||||
**/
|
||||
@Service
|
||||
@Primary
|
||||
public class SysLogFactory implements ISysLogService {
|
||||
|
||||
public static final Logger LOGGER = LoggerFactory.getLogger(SysLogFactory.class);
|
||||
|
||||
@Autowired
|
||||
private SysLogElasticSearchService elasticSearchService;
|
||||
|
||||
@Autowired
|
||||
private SysLogMongoService mongoService;
|
||||
|
||||
@Autowired
|
||||
private ImppLog imppLog;
|
||||
|
||||
private ISysLogService getSysLogService(){
|
||||
ImppEnumUtil.LOG_STORAGE storage = imppLog.getLogStorageCase();
|
||||
|
||||
if(ImppEnumUtil.LOG_STORAGE.MONGO.equals(storage)){
|
||||
if(ImppSwitchUtil.isSwitchMongo() && mongoService != null){
|
||||
return mongoService;
|
||||
}else{
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode())
|
||||
.setErrorDetail("没有开启Mongo储存技术,请联系管理员")
|
||||
.setErrorSolution("请检查配置文件")
|
||||
.build();
|
||||
}
|
||||
}else if(ImppEnumUtil.LOG_STORAGE.ELASTICSEARCH.equals(storage)){
|
||||
if(ImppSwitchUtil.isElasticSearchSwitch() && elasticSearchService != null){
|
||||
return elasticSearchService;
|
||||
}else{
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode())
|
||||
.setErrorDetail("没有开启Elasticsearch储存技术,请联系管理员")
|
||||
.setErrorSolution("请检查配置文件")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
throw ImppExceptionBuilder.newInstance()
|
||||
.setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode())
|
||||
.setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode())
|
||||
.setErrorDetail("没有开启日志储存技术,请联系管理员")
|
||||
.setErrorSolution("请检查日志配置,或者配置文件")
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListPager<SysLogException> queryLogExceptionPager(SysLogException log, Pager pager) {
|
||||
return getSysLogService().queryLogExceptionPager(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysLogException> findLogExceptionList(SysLogException log, Pager pager) {
|
||||
return getSysLogService().findLogExceptionList(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogException insertLogException(SysLogException log) {
|
||||
return getSysLogService().insertLogException(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogException getLogException(SysLogException log) {
|
||||
return getSysLogService().getLogException(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListPager<SysLogOperate> queryLogOperatePager(SysLogOperate log, Pager pager) {
|
||||
return getSysLogService().queryLogOperatePager(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysLogOperate> findLogOperateList(SysLogOperate log, Pager pager) {
|
||||
return getSysLogService().findLogOperateList(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogOperate insertLogOperate(SysLogOperate log) {
|
||||
return getSysLogService().insertLogOperate(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogOperate getLogOperate(SysLogOperate log) {
|
||||
return getSysLogService().getLogOperate(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListPager<SysLogSystem> queryLogSystemPager(SysLogSystem log, Pager pager) {
|
||||
return getSysLogService().queryLogSystemPager(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysLogSystem> findLogSystemList(SysLogSystem log, Pager pager) {
|
||||
return getSysLogService().findLogSystemList(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogSystem insertLogSystem(SysLogSystem log) {
|
||||
return getSysLogService().insertLogSystem(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogSystem getLogSystem(SysLogSystem log) {
|
||||
return getSysLogService().getLogSystem(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListPager<SysLogTaskTime> queryLogTaskTimePager(SysLogTaskTime log, Pager pager) {
|
||||
return getSysLogService().queryLogTaskTimePager(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysLogTaskTime> findLogTaskTimeList(SysLogTaskTime log, Pager pager) {
|
||||
return getSysLogService().findLogTaskTimeList(log,pager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogTaskTime insertLogTaskTime(SysLogTaskTime log) {
|
||||
return getSysLogService().insertLogTaskTime(log);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysLogTaskTime getLogTaskTime(SysLogTaskTime log) {
|
||||
return getSysLogService().getLogTaskTime(log);
|
||||
}
|
||||
|
||||
/******************************************************* 定时任务日志 End *********************************************************/
|
||||
|
||||
|
||||
@Override
|
||||
public Map<String, Object> querySysLogSystemAvgExecuteTime(String startTime, String endTime) {
|
||||
return getSysLogService().querySysLogSystemAvgExecuteTime(startTime, endTime);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> querySysLogSystemByLevel(String startTime, String endTime) {
|
||||
return getSysLogService().querySysLogSystemByLevel(startTime, endTime);
|
||||
}
|
||||
|
||||
/******************************************************* 系统异常日志 End *********************************************************/
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,171 @@
|
||||
package cn.estsh.i3plus.core.apiservice.util;
|
||||
|
||||
import cn.estsh.i3plus.platform.common.tool.TimeTool;
|
||||
import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchPack;
|
||||
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
||||
import cn.estsh.i3plus.pojo.base.tool.BsonPackTool;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogException;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogSystem;
|
||||
import cn.estsh.i3plus.pojo.platform.platbean.SysLogTaskTime;
|
||||
import com.mongodb.BasicDBObject;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.bson.conversions.Bson;
|
||||
|
||||
/**
|
||||
* @Description :
|
||||
* @Reference :
|
||||
* @Author : wei.peng
|
||||
* @CreateDate : 20-3-10 下午4:12
|
||||
* @Modify:
|
||||
**/
|
||||
public class NoSqlPack {
|
||||
/**
|
||||
* Es 查询构建基类
|
||||
* @param bean
|
||||
* @return
|
||||
*/
|
||||
public static ElasticSearchPack packElasticSearchPack(BaseBean bean){
|
||||
ElasticSearchPack result = null;
|
||||
if(StringUtils.isNotBlank(bean.getCreateDatetime())){
|
||||
result = ElasticSearchPack.imppBuild(TimeTool.parseDate(bean.getCreateDatetime()),bean.getClass());
|
||||
}else{
|
||||
result = ElasticSearchPack.imppBuild(bean.getClass());
|
||||
}
|
||||
|
||||
if(StringUtils.isNotBlank(bean.getOrderByParam())){
|
||||
if(CommonEnumUtil.ASC_OR_DESC.ASC.getValue() == bean.getAscOrDesc()){
|
||||
result.asc(bean.getOrderByParam());
|
||||
}else {
|
||||
result.desc(bean.getOrderByParam());
|
||||
}
|
||||
}else{
|
||||
result.orderKeywordDesc("createDatetime");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统异常日志复杂查询
|
||||
*
|
||||
* @param sysLogException
|
||||
* @return
|
||||
*/
|
||||
public static Bson packMongoBySysLogException(SysLogException sysLogException) {
|
||||
Bson bson = new BasicDBObject();
|
||||
|
||||
bson = BsonPackTool.getNumEqualPack(sysLogException.getExcModule(), "excModule", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(sysLogException.getExcMessage(), "excMessage", bson);
|
||||
bson = BsonPackTool.timeBuilder(sysLogException.getCreateDatetime(), "createDatetime", bson, false, false);
|
||||
|
||||
return bson;
|
||||
}
|
||||
|
||||
public static ElasticSearchPack packEsSysLogException(SysLogException bean) {
|
||||
ElasticSearchPack result = packElasticSearchPack(bean);
|
||||
|
||||
result.andTextEquals("excModule",bean.getExcModule());
|
||||
result.andKeywordLike("excMessage",bean.getExcMessage());
|
||||
result.andKeywordDateTimeBetween("createDatetime",bean.getCreateDateTimeStart(),bean.getCreateDateTimeEnd());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统操作日志
|
||||
*
|
||||
* @param logOperate
|
||||
* @return
|
||||
*/
|
||||
public static Bson packMongoByLogOperate(SysLogOperate logOperate) {
|
||||
Bson bson = new BasicDBObject();
|
||||
|
||||
bson = BsonPackTool.getNumEqualPack(logOperate.getId(), "id", bson);
|
||||
bson = BsonPackTool.getNumEqualPack(logOperate.getOperateType(), "operateType", bson);
|
||||
bson = BsonPackTool.getNumEqualPack(logOperate.getOperateModule(), "operateModule", bson);
|
||||
bson = BsonPackTool.timeBuilder(logOperate.getCreateDatetime(), "createDatetime", bson, false, false);
|
||||
bson = BsonPackTool.getStringLikerPack(logOperate.getRemoteIp(), "remoteIp", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(logOperate.getOperateMessage(), "operateMessage", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(logOperate.getCreateUser(), "createUser", bson);
|
||||
|
||||
return bson;
|
||||
}
|
||||
|
||||
public static ElasticSearchPack packEsSysLogOperate(SysLogOperate bean) {
|
||||
ElasticSearchPack result = packElasticSearchPack(bean);
|
||||
|
||||
result.andKeywordEquals("id",bean.getId());
|
||||
result.andKeywordEquals("operateType",bean.getOperateType());
|
||||
result.andKeywordEquals("operateModule",bean.getOperateModule());
|
||||
result.andStringEquals("remoteIp",bean.getRemoteIp());
|
||||
result.andStringEquals("createUser",bean.getCreateUser());
|
||||
result.andTextLike("operateMessage",bean.getOperateMessage());
|
||||
result.andStringDateTimeBetween("createDatetime",bean.getCreateDateTimeStart(),bean.getCreateDateTimeEnd());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 日志复杂查询
|
||||
*
|
||||
* @param logSystem
|
||||
* @return
|
||||
*/
|
||||
public static Bson packMongoByLogSystem(SysLogSystem logSystem) {
|
||||
Bson bson = new BasicDBObject();
|
||||
|
||||
bson = BsonPackTool.getNumEqualPack(logSystem.getId(), "id", bson);
|
||||
bson = BsonPackTool.getNumEqualPack(logSystem.getLogLevel(), "logLevel", bson);
|
||||
bson = BsonPackTool.getNumEqualPack(logSystem.getLogModuleId(), "logModuleId", bson);
|
||||
bson = BsonPackTool.timeBuilder(logSystem.getCreateDatetime(), "createDatetime", bson, false, false);
|
||||
bson = BsonPackTool.getStringLikerPack(logSystem.getRemoteIp(), "remoteIp", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(logSystem.getRequestUrl(), "requestUrl", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(logSystem.getLogMethod(), "logMethod", bson);
|
||||
|
||||
return bson;
|
||||
}
|
||||
|
||||
public static ElasticSearchPack packEsSysLogSystem(SysLogSystem bean) {
|
||||
ElasticSearchPack result = packElasticSearchPack(bean);
|
||||
|
||||
result.andTextEquals("id",bean.getId());
|
||||
result.andTextEquals("logLevel",bean.getLogLevel());
|
||||
result.andTextEquals("logModuleId",bean.getLogModuleId());
|
||||
result.andStringEquals("remoteIp",bean.getRemoteIp());
|
||||
result.andTextLike("requestUrl",bean.getRequestUrl());
|
||||
result.andKeywordDateTimeBetween("createDatetime",bean.getCreateDateTimeStart(),bean.getCreateDateTimeEnd());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 定时任务日志复杂查询
|
||||
*
|
||||
* @param sysLogTaskTime
|
||||
* @return
|
||||
*/
|
||||
public static Bson packMongoByLogTaskTime(SysLogTaskTime sysLogTaskTime) {
|
||||
Bson bson = new BasicDBObject();
|
||||
|
||||
bson = BsonPackTool.getNumEqualPack(sysLogTaskTime.getId(), "id", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(sysLogTaskTime.getName(), "name", bson);
|
||||
bson = BsonPackTool.getStringLikerPack(sysLogTaskTime.getGroupName(), "groupName", bson);
|
||||
bson = BsonPackTool.timeBuilder(sysLogTaskTime.getCreateDatetime(), "createDatetime", bson, false, false);
|
||||
|
||||
return bson;
|
||||
}
|
||||
|
||||
public static ElasticSearchPack packEsSysLogTaskTime(SysLogTaskTime bean) {
|
||||
ElasticSearchPack result = packElasticSearchPack(bean);
|
||||
|
||||
result.andKeywordEquals("id",bean.getId());
|
||||
result.andTextLike("name",bean.getName());
|
||||
result.andStringEquals("groupName",bean.getGroupName());
|
||||
result.andStringEquals("schedulerServerIp",bean.getSchedulerServerIp());
|
||||
result.andKeywordDateTimeBetween("createDatetime",bean.getCreateDateTimeStart(),bean.getCreateDateTimeEnd());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue