diff --git a/modules/i3plus-core-api/pom.xml b/modules/i3plus-core-api/pom.xml index df3df70..18f5d2d 100644 --- a/modules/i3plus-core-api/pom.xml +++ b/modules/i3plus-core-api/pom.xml @@ -5,7 +5,7 @@ i3plus-core i3plus.core - 1.0-SNAPSHOT + 1.0-DEV-SNAPSHOT ../../pom.xml 4.0.0 @@ -62,6 +62,6 @@ - ${project.artifactId}-${profileActive}-${project.version} + ${project.artifactId}-${project.version} \ No newline at end of file diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISysLogService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISysLogService.java index 9f76e08..0de257e 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISysLogService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISysLogService.java @@ -20,107 +20,33 @@ import java.util.Map; **/ public interface ISysLogService { - /********************************************************* 系统异常日志 Start *********************************************************/ - - @ApiOperation(value = "系统异常日志复杂查询,分页,排序") - ListPager querySysLogExceptionByPager(SysLogException sysLogException, Pager pager); - - @ApiOperation(value = "删除指定日期之后的日志") - long deleteSysLogExceptionByDateTimeAfter(String dateTime); - - /******************************************************* 系统异常日志 End *********************************************************/ - - - /********************************************************* 操作日志 Start *********************************************************/ - - @ApiOperation(value = "添加操作日志",notes = "添加操作日志") - SysLogOperate insertSysLogOperate(SysLogOperate logOperate); - - @ApiOperation(value = "根据id删除日志",notes = "根据id删除日志") - void deleteSysLogOperateById(Long id); - - @ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志") - List listSysLogOperate(); - - @ApiOperation(value = "批量删除日志",notes = "批量删除日志") - void deleteSysLogOperateByIds(Long[] ids); - - @ApiOperation(value = "根据id查询操作日志",notes = "根据id查询操作日志") - SysLogOperate getSysLogOperateById(Long id); - - @ApiOperation(value = "根据操作人姓名模糊查询日志",notes = "根据操作人姓名模糊查询日志") - List listSysLogOperateByOperateUserName(String operateUserName); - - @ApiOperation(value = "查询所有日志数量") - long countAllSysLogOperate(); - - @ApiOperation(value = "操作日志复杂查询,分页,排序",notes = "操作日志复杂查询,分页,排序") - ListPager querySysLogOperateByPager(SysLogOperate logOperate, Pager pager); - - @ApiOperation(value = "查询最新的操作日志") - List findNewSysLogOperate(Integer num); - - @ApiOperation(value = "删除指定日期之后的日志") - long deleteSysLogOperateByDateTimeAfter(String dateTime); - - @ApiOperation(value = "操作日志数量") - long countSysLogOperate(); - - /******************************************************* 操作日志 End *********************************************************/ - - - /******************************************************* 系统日志 Start *********************************************************/ - - @ApiOperation(value = "添加系统日志",notes = "添加系统日志") - void insertSysLogSystem(SysLogSystem logSystem); - - @ApiOperation(value = "造数据系统日志",notes = "造数据") - void insertSysLogBatch(int num,int waitTime); - - @ApiOperation(value = "删除日志",notes = "删除日志") - long deleteSysLogSystemById(Long id); - - @ApiOperation(value = "查询全部日志",notes = "查询全部日志") - List listSysLogSystem(); - - @ApiOperation(value = "根据id查询系统日志",notes = "根据id查询系统日志") - SysLogSystem getSysLogSystemById(long id); - - @ApiOperation(value = "系统日志分页复杂查询",notes = "系统日志分页复杂查询") - ListPager querySysLogSystemByPager(SysLogSystem logSystem, Pager pager); - - @ApiOperation(value = "系统日志批量删除",notes = "系统日志批量删除") - long deleteSysLogSystemByIds(Long[] ids); - - @ApiOperation(value = "系统日志按id区间查询",notes = "系统日志按id区间查询") - List findSysLogSystemByIdInterval(long min, long max); - - @ApiOperation(value = "删除指定日期之后的日志",notes = "系统日志按id区间查询") - long deleteSysLogSystemByDateTimeAfter(String dateTime); - - /******************************************************* 系统日志 End *********************************************************/ - - - /******************************************************* 定时任务日志 Start *********************************************************/ - @ApiOperation(value = "添加定时任务日志",notes = "添加定时任务日志") - void insertSysLogTaskTime(SysLogTaskTime sysLogTaskTime); - - @ApiOperation(value = "删除定时任务日志",notes = "删除定时任务日志") - void deleteSysLogTaskTimeById(Long id); - - @ApiOperation(value = "根据id查询定时任务日志",notes = "根据id查询定时任务日志") - SysLogTaskTime getSysLogTaskTimeById(Long id); - - @ApiOperation(value = "定时任务日志分页复杂查询",notes = "定时任务日志分页复杂查询") - ListPager querySysLogTaskTimeByPager(SysLogTaskTime sysLogTaskTime, Pager pager); - - @ApiOperation(value = "删除指定日期之后的日志",notes = "删除指定日期之后的日志") - long deleteSysLogTaskTimeByDateTimeAfter(String dateTime); - - /******************************************************* 定时任务日志 End *********************************************************/ - - - /********************************************************* 操作日志 Start *********************************************************/ + ListPager queryLogExceptionPager(SysLogException log, Pager pager); + List findLogExceptionList(SysLogException log, Pager pager); + List findLogExceptionList(SysLogException log); + SysLogException insertLogException(SysLogException log); + SysLogException getLogException(SysLogException log); + void deleteLogException(SysLogException log); + + ListPager queryLogOperatePager(SysLogOperate log, Pager pager); + List findLogOperateList(SysLogOperate log, Pager pager); + List findLogOperateList(SysLogOperate log); + SysLogOperate insertLogOperate(SysLogOperate log); + SysLogOperate getLogOperate(SysLogOperate log); + void deleteLogOperate(SysLogOperate log); + + ListPager queryLogSystemPager(SysLogSystem log, Pager pager); + List findLogSystemList(SysLogSystem log, Pager pager); + List findLogSystemList(SysLogSystem log); + SysLogSystem insertLogSystem(SysLogSystem log); + SysLogSystem getLogSystem(SysLogSystem log); + void deleteLogSystem(SysLogSystem log); + + ListPager queryLogTaskTimePager(SysLogTaskTime log, Pager pager); + List findLogTaskTimeList(SysLogTaskTime log, Pager pager); + List findLogTaskTimeList(SysLogTaskTime log); + SysLogTaskTime insertLogTaskTime(SysLogTaskTime log); + SysLogTaskTime getLogTaskTime(SysLogTaskTime log); + void deleteLogTaskTime(SysLogTaskTime log); @ApiOperation(value = "查询时间段内平均请求耗时",notes = "查询时间段内平均请求耗时") Map querySysLogSystemAvgExecuteTime(String startTime, String endTime); @@ -128,6 +54,5 @@ public interface ISysLogService { @ApiOperation(value = "查询时间段内各等级日志数量",notes = "查询时间段内各等级日志数量") Map querySysLogSystemByLevel(String startTime, String endTime); - /******************************************************* 系统异常日志 End *********************************************************/ } diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ILicenseClickService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ILicenseClickService.java new file mode 100644 index 0000000..5911842 --- /dev/null +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ILicenseClickService.java @@ -0,0 +1,28 @@ +package cn.estsh.i3plus.core.api.iservice.busi; + +/** + * @Description : + * 授权检查 + * @Reference : + * @Author : wei.peng + * @CreateDate : 20-3-23 下午5:12 + * @Modify: + **/ +public interface ILicenseClickService { + + /** + * 检查用户数量 + */ + void checkLicenseNumberUser(); + + /** + * 检查 组织数量 + */ + void checkLicenseNumberOrganize(); + + /** + * 检查 登录数量 + */ + void checkLicenseNumberLogin(); + +} diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDashboardService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDashboardService.java index e3a1917..eadebb4 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDashboardService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDashboardService.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.api.iservice.busi; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.platform.bean.SysUser; +import cn.estsh.i3plus.pojo.platform.platbean.SysLogException; import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate; import io.swagger.annotations.ApiOperation; @@ -18,20 +19,6 @@ import java.util.Map; public interface ISysDashboardService { /** - * 查询组织个数 - * @return - */ - @ApiOperation(value = "查询组织个数") - long getSysOrganizeCount(); - - /** - * 获取部门数量 - * @return - */ - @ApiOperation(value = "获取部门数量") - long getSysDepartmentCount(); - - /** * 查询用户登录日志 * @return */ @@ -40,28 +27,17 @@ public interface ISysDashboardService { /** * 查询最近操作日志 - * @param size * @return */ @ApiOperation(value = "查询操作日志",notes = "查询最近操作日志") - ListPager findNewSysLogOperateSize(Integer size); + List findNewSysLogOperateSize(); /** * 查询最近异常日志 - * @param size * @return */ @ApiOperation(value = "查询异常日志",notes = "查询最近异常日志") - ListPager findNewSysLogExceptionSize(Integer size); - - /** - * 查询系统日志各级别占比 - * @param startTime - * @param endTime - * @return - */ - @ApiOperation(value = "查询系统日志",notes = "查询系统日志各级别占比") - Map findSysLogSystempByLevel(String startTime,String endTime); + List findNewSysLogExceptionSize(); /** * 查询平均耗时 diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleLanguageService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleLanguageService.java index 6ce7a5c..a7515d2 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleLanguageService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleLanguageService.java @@ -26,7 +26,7 @@ public interface ISysLocaleLanguageService { void deleteSysLocaleLanguageById(Long id); @ApiOperation(value = "查询全部系统语言",notes = "查询全部系统语言") - List listSysLocaleLanguage(); + List listSysLocaleLanguage(); @ApiOperation(value = "系统语言复杂查询,分页,排序",notes = "系统语言复杂查询,分页,排序") ListPager querySysLocaleLanguageByPager(SysLocaleLanguage sysLocaleLanguage, Pager pager); diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleResourceService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleResourceService.java index 8db93f2..40305bd 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleResourceService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLocaleResourceService.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.api.iservice.busi; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.model.platform.MissResourceModel; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource; import cn.estsh.i3plus.pojo.platform.bean.SysMenu; import io.swagger.annotations.ApiOperation; @@ -58,4 +59,17 @@ public interface ISysLocaleResourceService { @ApiOperation(value = "删除所有资源") void deleteSysLocaleResourceAll(); + + /***************************** 缺失资源管理 ******************************/ + + List listMissResourceModel(); + + MissResourceModel saveMissResourceModel(MissResourceModel missResourceModel); + + void updateMissResourceModelIsValidByKeys(String[] keys, Integer isValid); + + void doCleanInValidMissResource(); + + void doConversionMissResourceByKeys(String[] keys); + } diff --git a/modules/i3plus-core-apiservice/pom.xml b/modules/i3plus-core-apiservice/pom.xml index 73c0d0d..f34adbe 100644 --- a/modules/i3plus-core-apiservice/pom.xml +++ b/modules/i3plus-core-apiservice/pom.xml @@ -5,7 +5,7 @@ i3plus-core i3plus.core - 1.0-SNAPSHOT + 1.0-DEV-SNAPSHOT ../../pom.xml 4.0.0 @@ -194,7 +194,11 @@ poi-ooxml - + + org.elasticsearch + elasticsearch + 7.5.1 + @@ -243,7 +247,7 @@ - ${project.artifactId}-${profileActive}-${project.version} + ${project.artifactId}-${project.version} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/auth/ShiroAuthConfiguration.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/auth/ShiroAuthConfiguration.java index cca5f45..c1fe314 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/auth/ShiroAuthConfiguration.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/auth/ShiroAuthConfiguration.java @@ -65,7 +65,7 @@ public class ShiroAuthConfiguration { private CacheManager getEhCacheManage; //平台控制会话 - @Resource(name = "imppSessionManager") + @Resource(name = CommonConstWords.IMPP_BEAN_SESSION_MANAGER) private DefaultWebSessionManager getSessionManage; @Bean diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/configuration/AppStartSystemInit.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/configuration/AppStartSystemInit.java index 544c9d5..93357ed 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/configuration/AppStartSystemInit.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/configuration/AppStartSystemInit.java @@ -5,9 +5,12 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserInfoService; import cn.estsh.i3plus.core.api.iservice.busi.ISystemResourceService; import cn.estsh.i3plus.platform.common.util.CommonConstWords; +import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.impp.framework.boot.configuration.SystemConfig; import cn.estsh.impp.framework.boot.util.ImppRedis; +import cn.estsh.impp.framework.boot.util.ImppSwitchUtil; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -39,7 +42,10 @@ public class AppStartSystemInit implements CommandLineRunner { // 限制账号数量 public static int userInfoCount = 100; - @Resource(name = "redisRes") + @Value("${" + CommonConstWords.PROP_IMPP_ELASTICSEARCH_URL + "}") + public String PROP_IMPP_ELASTICSEARCH_URL; + + @Resource(name = CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; @Autowired @@ -56,8 +62,6 @@ public class AppStartSystemInit implements CommandLineRunner { @Override public void run(String... args) throws Exception { -// checkOrganizeCount(); -// checkUserInfoCount(); LOGGER.info("【IMPP-Core开始绑定资源信息...】"); packIMPPResources(); @@ -68,6 +72,10 @@ public class AppStartSystemInit implements CommandLineRunner { LOGGER.info("【IMPP-Core 加载系统配置文件到缓存中 ...】"); systemConfig.loadSystemConfig(CommonEnumUtil.SOFT_TYPE.CORE.getCode()); LOGGER.info("【IMPP-Core 加载系统配置文件到缓存完成】"); + + LOGGER.info("【IMPP-Core 加载 ElasticSearch中 ...】"); + initImppElasticSearch(); + LOGGER.info("【IMPP-Core 加载 ElasticSearch完成】"); } /** @@ -91,6 +99,24 @@ public class AppStartSystemInit implements CommandLineRunner { } /** + * 初始化 Es 配置 + */ + public void initImppElasticSearch(){ + try { + if(ImppSwitchUtil.isElasticSearchSwitch()){ + if(StringUtils.isNotBlank(PROP_IMPP_ELASTICSEARCH_URL)){ + ElasticSearchTool.init(PROP_IMPP_ELASTICSEARCH_URL); + }else { + LOGGER.info("【启动加载】启动加载 ElasticSearch 组件错误,url 参数缺失"); + } + } + }catch (Exception e){ + e.printStackTrace(); + LOGGER.info("【启动加载】启动加载 ElasticSearch Error Message:{}",e.getMessage()); + } + } + + /** * 初始化资源信息,并缓存 * 调整至cn.estsh.i3plus.core.apiservice.serviceimpl.base.SystemInitService */ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoController.java new file mode 100644 index 0000000..11c9abc --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoController.java @@ -0,0 +1,96 @@ +package cn.estsh.i3plus.core.apiservice.controller; + +import cn.estsh.i3plus.core.apiservice.schedulejob.CoreLogClearJob; +import cn.estsh.i3plus.platform.common.tool.HttpClientTool; +import cn.estsh.i3plus.platform.common.tool.SerializeTool; +import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchPack; +import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; +import cn.estsh.i3plus.platform.plugin.license.ImppLicense; +import cn.estsh.i3plus.platform.plugin.license.ImppLicenseTool; +import cn.estsh.i3plus.platform.plugin.license.serviceimpl.SenseLockUtil; +import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate; +import cn.estsh.impp.framework.base.controller.CoreBaseController; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ResultBean; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Base64; +import java.util.HashMap; +import java.util.List; + +/** + * @Description : + * @Reference : + * @Author : wei.peng + * @CreateDate : 20-3-10 下午1:16 + * @Modify: + **/ +@RestController +@Api(tags = "测试Demo ") +@RequestMapping(PlatformConstWords.BASE_URL + "/demo") +public class DemoController extends CoreBaseController { + + @Autowired + private CoreLogClearJob coreLogClearJob; + + @GetMapping(value = "/query") + @ApiOperation(value = "添加操作日志", notes = "添加操作日志,可用于国际化") + public ResultBean insertLogOperate() { + try { +// org.elasticsearch.common.xcontent.DeprecationHandler handler; + ElasticSearchTool.init("http://192.168.3.40:9200"); + ElasticSearchPack pack = ElasticSearchPack.imppBuild(SysLogOperate.class); + List list = ElasticSearchTool.searchList(pack, SysLogOperate.class); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(list); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep).build(); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + + @GetMapping(value = "/license") + @ApiOperation(value = "添加操作日志", notes = "添加操作日志,可用于国际化") + public ResultBean license() { + try{ + ImppLicense license = ImppLicenseTool.getLicense(); + +// SenseLockUtil lockUtil = SenseLockUtil.getSenseLockUtil(10086); +//// lockUtil.checkAPIKey(); +// String readValue = lockUtil.getReadValue(); +// System.out.println(readValue); +// ImppLicense readLicense = (ImppLicense) SerializeTool.deserializationByte(Base64.getDecoder().decode(readValue)); +// System.out.println(JSON.toJSONString(readLicense)); +// +// String writeValue = lockUtil.getWriteValue(); +// System.out.println(writeValue); +// ImppLicense writeLicense = (ImppLicense) SerializeTool.deserializationByte(Base64.getDecoder().decode(writeValue)); +// System.out.println(JSON.toJSONString(writeLicense)); +// +// String publicValue = lockUtil.getPublicValue(); +// System.out.println(publicValue); +// ImppLicense publicLicense = (ImppLicense) SerializeTool.deserializationByte(Base64.getDecoder().decode(publicValue)); +// System.out.println(JSON.toJSONString(publicLicense)); +// System.out.println("Hello World ~!"); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(license); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep).build(); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoExceptionController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoExceptionController.java deleted file mode 100644 index 4d9f9b1..0000000 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoExceptionController.java +++ /dev/null @@ -1,135 +0,0 @@ -package cn.estsh.i3plus.core.apiservice.controller; - -import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; -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.ResourceEnumUtil; -import cn.estsh.i3plus.pojo.platform.platbean.SysLogException; -import cn.estsh.i3plus.pojo.platform.platbean.SysLogSystem; -import cn.estsh.impp.framework.boot.exception.ImppBusiException; -import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; -import cn.estsh.impp.framework.boot.util.ResultBean; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.sql.SQLException; - -@RestController -@RequestMapping("/impp") -@Api(tags="异常服务测试") -public class DemoExceptionController { - - private static final Logger LOGGER = LoggerFactory.getLogger(DemoExceptionController.class); - - @Autowired - private ISysLogService logService; - - /** - * 测试异常 - * @param type 异常参数 - * @return 处理结果 - * @throws Exception - */ - @GetMapping(value="/test-exception") - @ApiOperation(value="测试异常") - public ResultBean testException(int type) throws Exception{ - try{ - if(type == 1){ - throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()) - .setErrorDetail("手动抛出异常") - .build(); - }else if(type == 2){ - throw new SQLException("测试数据库异常"); - }else { - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - }catch(ImppBusiException busExcep){ - LOGGER.error(busExcep.getErrorMsg() + ":{}",busExcep.getErrorDetail(),busExcep); - return ResultBean.fail(busExcep); - } - } - - - - /** - * 异常日志复杂查询,分页,排序 - * @param sysLogException 查询条件 - * @param pager 分页数据 - * @return 处理结果 - */ - @GetMapping(value = "/query") - @ApiOperation(value = "异常日志复杂查询,分页,排序",notes = "异常日志复杂查询,分页,排序") - public ResultBean querySysLogExceptionByPager(SysLogException sysLogException, Pager pager){ - try { - System.out.println("1==============="); - ListPager logExceptionList = logService.querySysLogExceptionByPager(sysLogException, pager); - System.out.println(logExceptionList.getObjectList().size()); - System.out.println("===============pager:" + pager); - return ResultBean.success("查询成功").setListPager(logExceptionList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - - - /** - * /query-logSystem - * @param sysLog 查询条件 - * @param pager 分页数据 - * @return 处理结果 - */ - @GetMapping(value = "/query-logSystem") - @ApiOperation(value = "异常日志复杂查询,分页,排序",notes = "异常日志复杂查询,分页,排序") - public ResultBean querySysLogSystemByPager(SysLogSystem sysLog, Pager pager){ - try { - System.out.println("2==============="); - ListPager logSystemList = logService.querySysLogSystemByPager(sysLog,pager); - System.out.println(logSystemList.getObjectList().size()); - System.out.println("===============pager:" + pager); - return ResultBean.success("查询成功").setListPager(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 异常日志复杂查询 - * @return 处理结果 - */ - @GetMapping(value = "/query-logSystemtest2") - @ApiOperation(value = "异常日志复杂查询,分页,排序",notes = "异常日志复杂查询,分页,排序") - public ResultBean querySysLogSystemTest(){ - try { - Pager pager = new Pager(); - pager.setStartRow(0); - pager.setPageSize(10); - - SysLogSystem logSystem = new SysLogSystem(); - - System.out.println("2==============="); - ListPager logSystemList = logService.querySysLogSystemByPager(logSystem,pager); - System.out.println(logSystemList.getObjectList().size()); - System.out.println("===============pager:" + pager); - return ResultBean.success("查询成功").setListPager(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } -} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoMongoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoMongoController.java deleted file mode 100644 index fef5216..0000000 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoMongoController.java +++ /dev/null @@ -1,134 +0,0 @@ -package cn.estsh.i3plus.core.apiservice.controller; - -import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; -import cn.estsh.i3plus.platform.common.util.PlatformConstWords; -import cn.estsh.i3plus.pojo.base.common.Pager; -import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; -import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate; -import cn.estsh.impp.framework.base.controller.CoreBaseController; -import cn.estsh.impp.framework.boot.exception.ImppBusiException; -import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; -import cn.estsh.impp.framework.boot.util.ResultBean; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * @Description : 系统资源服务demo - * @Reference : - * @Author : alwaysfrin - * @CreateDate : 2018-09-26 10:34 - * @Modify: - **/ -@RestController -@Api(tags = "系统服务demo") -@RequestMapping(PlatformConstWords.BASE_URL + "/demo-mongo-service") -public class DemoMongoController extends CoreBaseController { - private static final Logger LOGGER = LoggerFactory.getLogger(DemoMongoController.class); - - @Autowired - private ISysLogService logService; - - /** - * 添加操作日志 - * - * @param logOperate 操作日志 - * @return 处理结果 - */ - @PostMapping(value = "/logoperate/insert") - @ApiOperation(value = "添加操作日志", notes = "添加操作日志,可用于国际化") - public ResultBean insertLogOperate(SysLogOperate logOperate) { - try { - logService.insertSysLogOperate(logOperate); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch (ImppBusiException busExcep) { - return ResultBean.fail(busExcep).build(); - } catch (Exception e) { - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 修改系统语言,可用于国际化 - * - * @return 处理结果 - */ - @DeleteMapping(value = "/logoperate/delete/{id}") - @ApiOperation(value = "删除日志", notes = "删除日志") - public ResultBean deleteLog(@PathVariable String id) { - try { - logService.deleteSysLogOperateById(Long.parseLong(id)); - return ResultBean.success("删除日志成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch (ImppBusiException busExcep) { - return ResultBean.fail(busExcep).build(); - } catch (Exception e) { - return ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()); - } - } - - /** - * 查询日志 - * - * @param logOperate 查询条件 - * @param pager 分页信息 - * @return 处理结果 - */ - @GetMapping(value = "/logoperate/query") - @ApiOperation(value = "查询日志", notes = "查询日志") - public ResultBean queryLanguage(SysLogOperate logOperate, Pager pager) { - try { - List logList = logService.listSysLogOperate(); - return ResultBean.success("操作成功").setResultList(logList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch (ImppBusiException busExcep) { - return ResultBean.fail(busExcep).build(); - } catch (Exception e) { - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 查询日志 - * - * @param OperateUserName 操作人名称 - * @return 处理结果 - */ - @GetMapping(value = "/logoperate/operate-user-name") - @ApiOperation(value = "查询日志", notes = "查询日志") - public ResultBean queryLanguage(String OperateUserName) { - try { - List logList = logService.listSysLogOperateByOperateUserName(OperateUserName); - - long count = logService.countAllSysLogOperate(); - LOGGER.info("=log size= " + count); - - return ResultBean.success("操作成功").setResultList(logList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch (ImppBusiException busExcep) { - return ResultBean.fail(busExcep).build(); - } catch (Exception e) { - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * @param id - * @return - */ - @GetMapping(value = "/logoperate/get/{id}") - @ApiOperation(value = "根据id查询日志", notes = "根据id查询日志") - public ResultBean getLogById(@PathVariable String id) { - try { - logService.getSysLogOperateById(Long.parseLong(id)); - return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch (ImppBusiException busExcep) { - return ResultBean.fail(busExcep).build(); - } catch (Exception e) { - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } -} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoUserInfoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoUserInfoController.java new file mode 100644 index 0000000..1cd4714 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoUserInfoController.java @@ -0,0 +1,236 @@ +package cn.estsh.i3plus.core.apiservice.controller; + +import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; +import cn.estsh.i3plus.core.api.iservice.busi.*; +import cn.estsh.i3plus.core.apiservice.controller.busi.PersonnelController; +import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.i3plus.pojo.model.platform.UserDetailModel; +import cn.estsh.i3plus.pojo.platform.bean.SysDepartment; +import cn.estsh.i3plus.pojo.platform.bean.SysPosition; +import cn.estsh.i3plus.pojo.platform.bean.SysRole; +import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate; +import cn.estsh.impp.framework.base.controller.CoreBaseController; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; +import cn.estsh.impp.framework.boot.util.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.RandomUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +/** + * @Description : 系统资源服务demo + * @Reference : + * @Author : alwaysfrin + * @CreateDate : 2018-09-26 10:34 + * @Modify: + **/ +@RestController +@Api(tags = "系统服务demo") +@RequestMapping(PlatformConstWords.BASE_URL + "/test/user-info") +public class DemoUserInfoController extends CoreBaseController { + private static final Logger LOGGER = LoggerFactory.getLogger(DemoUserInfoController.class); + + @Autowired + private IPersonnelService personnelService; + + @Autowired + private ISysOrganizeService organizeService; + + @Autowired + private ISysDepartmentService departmentService; + + @Autowired + private ISysRoleService roleService; + + @Autowired + private ISysPositionService positionService; + + @Autowired + private ISysDictionaryService dictionaryService; + + ExecutorService executorService = Executors.newFixedThreadPool(100); + + private List roleList; + private List departmentList; + private List positionList; + private Random roleListRandom;//默认构造方法 + private Random departmentListRandom;//默认构造方法 + private Random positionListRandom;//默认构造方法 + + private static Random random = new Random(10); + + @Autowired + private PersonnelController personnelController; + + + /** + * 添加操作日志 + * + * @return 处理结果 + */ + @PostMapping(value = "/insert") + @ApiOperation(value = "添加操作日志", notes = "添加操作日志,可用于国际化") + public ResultBean insertLogOperate() { + try { + initData(); + for (int i = 0; i < 350; i++) { + executorService.execute(new Runnable() { + @Override + public void run() { + for (int j = 0; j < 20000; j++) { + try { + System.out.println(Thread.currentThread().getName() + "----> Start insert " + j); + personnelController.insertUserDetailModel(getUserDetailModel()); + System.out.println(Thread.currentThread().getName() + "----> End insert " + j); + }catch (Exception e){ + } + } + } + }); + } + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep).build(); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + public void initData() { + roleList = roleService.findSysRoleAll(); + departmentList = departmentService.findSysDepartmentList(); + positionList = positionService.findSysPositionAll(); + + roleListRandom = new Random(roleList.size() - 1); + departmentListRandom = new Random(departmentList.size() - 1); + positionListRandom = new Random(positionList.size() - 1); + } + + public synchronized UserDetailModel getUserDetailModel() { + UserDetailModel model = new UserDetailModel(); + + model.setInfoName(RandomStringUtils.randomAlphanumeric(RandomUtils.nextInt(20, 50))); + model.setInfoEmpNo(RandomStringUtils.randomAlphanumeric(RandomUtils.nextInt(20, 50))); + model.setInfoEmployeeType(2); + model.setInfoGrade(2); + model.setInfoSex(2); + model.setInfoMarriage(2); + model.setInfoCardType(1); + model.setInfoCardNumber(RandomStringUtils.randomAlphanumeric(18)); + model.setInfoSchoolEducation(1); + model.setInfoSchoolLeaveDate("2020-03-09 19:38:41"); + model.setInfoRace(2); + model.setInfoJoinDate("2020-03-09 19:39:12"); + model.setInfoResignationDate("2020-03-09 19:39:12"); + model.setInfoPoliticalStatus(2); + model.setInfoBornDate("2020-03-09 19:39:59"); + model.setUserLoginName(RandomStringUtils.randomAlphanumeric(RandomUtils.nextInt(15, 20))); + model.setUserLoginPassword("123456"); + model.setUserLanguageCode("CN/zh"); + model.setUserPhone(RandomStringUtils.randomAlphanumeric(11)); + model.setUserEmail(RandomStringUtils.randomAlphanumeric(11) + "qq.com"); + + model.setInfoDepartmentId(getSysDepartment().getId().toString()); + model.setInfoDepartmentIdList(getSysDepartmentList()); + model.setInfoPositionId(getSysPosition().getId().toString()); + model.setInfoPositionIdList(getSysPositionList()); + model.setUserDepartmentId(getSysDepartment().getId().toString()); + model.setUserDepartmentIdList(getSysDepartmentList()); + model.setUserRoleIdList(getSysRoleList()); + + return model; + } + + + public SysRole getSysRole() { + return roleList.get(roleListRandom.nextInt(roleList.size())); + } + + public List getSysRoleList() { + List result = new ArrayList<>(); + int length = random.nextInt(5); + for (int i = 0; i < length; i++) { + result.add(roleList.get(roleListRandom.nextInt(roleList.size())).getId().toString()); + } + return result; + } + + public SysDepartment getSysDepartment() { + return departmentList.get(departmentListRandom.nextInt(departmentList.size())); + } + + public List getSysDepartmentList() { + List result = new ArrayList<>(); + int length = random.nextInt(5); + for (int i = 0; i < length; i++) { + result.add(departmentList.get(departmentListRandom.nextInt(departmentList.size())).getId().toString()); + } + return result; + } + + + public SysPosition getSysPosition() { + do { + return positionList.get(positionListRandom.nextInt(positionList.size())); + } while (true); + } + + public List getSysPositionList() { + List result = new ArrayList<>(); + int length = random.nextInt(5); + for (int i = 0; i < length; i++) { + result.add(positionList.get(positionListRandom.nextInt(positionList.size())).getId().toString()); + } + return result; + } + + + + +//➜ ~ df -h +//文件系统 容量 已用 可用 已用% 挂载点 +//udev 12G 0 12G 0% /dev +//tmpfs 2.4G 4.2M 2.4G 1% /run +///dev/mapper/ubuntu--vg-root 457G 130G 304G 30% / +//tmpfs 12G 206M 12G 2% /dev/shm +//tmpfs 5.0M 4.0K 5.0M 1% /run/lock +//tmpfs 12G 0 12G 0% /sys/fs/cgroup +///dev/loop1 25M 25M 0 100% /snap/snapd/6434 +///dev/loop2 55M 55M 0 100% /snap/core18/1668 +///dev/loop3 397M 397M 0 100% /snap/redis-desktop-manager/332 +///dev/loop4 92M 92M 0 100% /snap/core/8689 +///dev/loop5 25M 25M 0 100% /snap/snapd/6240 +///dev/loop6 398M 398M 0 100% /snap/redis-desktop-manager/335 +///dev/loop11 45M 45M 0 100% /snap/gtk-common-themes/1440 +///dev/loop8 45M 45M 0 100% /snap/gtk-common-themes/1353 +///dev/loop9 225M 225M 0 100% /snap/wine-platform-runtime/89 +///dev/loop10 74M 74M 0 100% /snap/wine-platform-3-stable/6 +///dev/loop12 4.0M 4.0M 0 100% /snap/notepad-plus-plus/225 +///dev/loop13 55M 55M 0 100% /snap/core18/1650 +///dev/loop14 92M 92M 0 100% /snap/core/8592 +///dev/nvme0n1p1 511M 6.1M 505M 2% /boot/efi +///dev/sda1 1.8T 286G 1.5T 17% /works +//tmpfs 2.4G 16K 2.4G 1% /run/user/121 +//tmpfs 2.4G 80K 2.4G 1% /run/user/1001 +///dev/loop15 4.0M 4.0M 0 100% /snap/notepad-plus-plus/227 +///dev/loop16 225M 225M 0 100% /snap/wine-platform-runtime/94 +//➜ ~ +// + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/BackstageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/BackstageController.java index 571f58c..c183bda 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/BackstageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/BackstageController.java @@ -3,17 +3,28 @@ package cn.estsh.i3plus.core.apiservice.controller.base; import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService; import cn.estsh.i3plus.core.api.iservice.busi.ICoreMemTreeService; import cn.estsh.i3plus.core.api.iservice.busi.ISysMenuService; +import cn.estsh.i3plus.core.apiservice.serviceimpl.base.SysLogElasticSearchService; +import cn.estsh.i3plus.core.apiservice.serviceimpl.base.SysLogMongoService; import cn.estsh.i3plus.platform.common.tool.SerializeTool; +import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; +import cn.estsh.i3plus.platform.plugin.license.ImppLicense; +import cn.estsh.i3plus.platform.plugin.license.ImppLicenseTool; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysMenu; +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.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ResultBean; +import cn.estsh.impp.framework.boot.util.ValidatorBean; import com.alibaba.fastjson.JSON; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -25,6 +36,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.Date; import java.util.List; /** @@ -50,6 +62,12 @@ public class BackstageController extends CoreBaseController { @Autowired private ICoreMemTreeService memTreeService; + @Autowired + private SysLogElasticSearchService elasticSearchService; + + @Autowired + private SysLogMongoService mongoService; + @Resource(name= CommonConstWords.IMPP_REDIS_CORE) private ImppRedis redisRes; @@ -105,4 +123,74 @@ public class BackstageController extends CoreBaseController { } } + @GetMapping(value = "/license") + @ApiOperation(value = "重新加载授权数据",notes = "重新加载授权数据") + public ResultBean updateLicense(ImppLicense license){ + try { + ValidatorBean.beginValid(license) + .checkNotZero("licenseMaxOrganize",license.getLicenseMaxOrganize()) + .checkNotZero("licenseMaxWarehouse",license.getLicenseMaxWarehouse()) + .checkNotZero("licenseMaxProductionLine",license.getLicenseMaxProductionLine()) + .checkNotZero("licenseMaxUser",license.getLicenseMaxUser()) + .checkNotZero("licenseMaxUserSession",license.getLicenseMaxUserSession()) + .notNull("licenseUpdateUserName",license.getLicenseUpdateUserName()) + .notNull("licenseUpdateDateTime",license.getLicenseUpdateDateTime()) + .notNull("licenseDescription",license.getLicenseDescription()); + + ImppLicenseTool.updateImppLicense(license); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + + @GetMapping(value = "/clean-log") + @ApiOperation(value = "添加操作日志", notes = "添加操作日志,可用于国际化") + public ResultBean logClean(String time) { + try{ + Date thisTime = TimeTool.parseDate(time); + String startTime = TimeTool.getToday(TimeTool.getDateBefore(thisTime, 0)) + " 00:00:00"; + String endTime = TimeTool.getToday(TimeTool.getDateBefore(thisTime, 0)) + " 23:59:59"; + + SysLogOperate operate = new SysLogOperate(); + operate.setCreateDatetime(startTime); + operate.setCreateDateTimeStart(startTime); + operate.setCreateDateTimeEnd(endTime); + + SysLogSystem system = new SysLogSystem(); + system.setCreateDatetime(startTime); + system.setCreateDateTimeStart(startTime); + system.setCreateDateTimeEnd(endTime); + + SysLogException exception = new SysLogException(); + exception.setCreateDatetime(startTime); + exception.setCreateDateTimeStart(startTime); + exception.setCreateDateTimeEnd(endTime); + + SysLogTaskTime taskTime = new SysLogTaskTime(); + taskTime.setCreateDatetime(startTime); + taskTime.setCreateDateTimeStart(startTime); + taskTime.setCreateDateTimeEnd(endTime); + + ElasticSearchTool.reload(); + elasticSearchService.deleteLogOperate(operate); + elasticSearchService.deleteLogSystem(system); + elasticSearchService.deleteLogException(exception); + elasticSearchService.deleteLogTaskTime(taskTime); + + mongoService.deleteLogOperate(operate); + mongoService.deleteLogSystem(system); + mongoService.deleteLogException(exception); + mongoService.deleteLogTaskTime(taskTime); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep).build(); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java index 37fbb61..34e0081 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java @@ -88,9 +88,12 @@ public class WhiteController extends CoreBaseController { @Autowired private ISysConfigService configService; - @Resource(name="redisRes") + @Resource(name=CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; + @Autowired + private ILicenseClickService licenseClickService; + @GetMapping(value = "/sys-locale-language/list") @ApiOperation(value = "查询可用语言",notes = "查询可用语言") public ResultBean listSysLocaleLanguage(){ @@ -140,6 +143,7 @@ public class WhiteController extends CoreBaseController { @RequestParam(required = false) String deviceId){ Long startTime = System.currentTimeMillis(); startMultiService(); + licenseClickService.checkLicenseNumberLogin(); LOGGER.info("用户登陆 loginName:{} loginPwd:{} languageCode:{}",loginName,loginPwd,languageCode); ResultBean result = null; @@ -514,4 +518,19 @@ public class WhiteController extends CoreBaseController { return ResultBean.fail(e).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()); } } + + @PostMapping(value = "/miss-resource/get") + @ApiOperation(value = "根据条件分页查询账号信息", notes = "根据条件分页查询账号信息") + public ResultBean getMissResourceByKey(String key,String soft){ + try { + LocaleUtils.saveMissResource(key, AuthUtil.getSessionLanguage().toString(), CommonEnumUtil.SOFT_TYPE.descOf(soft), + CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.MISSING.getValue(), + CommonEnumUtil.MiSS_RESOURCE_SOURCE.SERVER.getValue()); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ResultBean.fail(e).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/log.txt b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/log.txt new file mode 100644 index 0000000..e69de29 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java index 7e7387a..b48c330 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; +import cn.estsh.i3plus.core.api.iservice.busi.ILicenseClickService; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; @@ -58,6 +59,9 @@ public class PersonnelController extends CoreBaseController { @Autowired private ISysRoleService sysRoleService; + @Autowired + private ILicenseClickService licenseClickService; + /** * 添加用户信息 * @param model 用户信息 @@ -68,6 +72,7 @@ public class PersonnelController extends CoreBaseController { public ResultBean insertUserDetailModel(UserDetailModel model) { try { startMultiService(); + licenseClickService.checkLicenseNumberUser(); SysUser user = model.getSysUser(); SysUserInfo info = model.getSysUserInfo(); @@ -92,19 +97,14 @@ public class PersonnelController extends CoreBaseController { ConvertBean.modelInitialize(user, AuthUtil.getSessionUser()); SysDepartment infoDepartment = personnelService.getSysDepartmentById(Long.parseLong(model.getInfoDepartmentId())); - if (infoDepartment == null) { - ValidatorBean.checkNotNull(infoDepartment, "用户主部门不存在"); - } + ValidatorBean.checkNotNull(infoDepartment, "用户主部门不存在"); SysOrganize infoOrganize = personnelService.getSysOrganizeById(infoDepartment.getOrganizeId()); + ValidatorBean.checkNotNull(infoOrganize, "用户主组织不存在"); SysPosition position = personnelService.getSysPositionById(Long.parseLong(model.getInfoPositionId())); - if (infoDepartment == null) { - ValidatorBean.checkNotNull(position, "用户主岗位存在"); - } + ValidatorBean.checkNotNull(position, "用户主岗位不存在"); SysDepartment userDepartment = personnelService.getSysDepartmentById(Long.parseLong(model.getUserDepartmentId())); - if (userDepartment == null) { - ValidatorBean.checkNotNull(userDepartment, "账号主部门不存在"); - } + ValidatorBean.checkNotNull(userDepartment, "账号主部门不存在"); SysOrganize userOrganize = personnelService.getSysOrganizeById(userDepartment.getOrganizeId()); info.setDepartmentId(infoDepartment.getId()); @@ -162,20 +162,17 @@ public class PersonnelController extends CoreBaseController { SysUser sysUser = personnelService.getSysUserById(user.getId()); SysDepartment infoDepartment = personnelService.getSysDepartmentById(Long.parseLong(model.getInfoDepartmentId())); - if (infoDepartment == null) { - ValidatorBean.checkNotNull(infoDepartment, "用户主部门不存在"); - } + ValidatorBean.checkNotNull(infoDepartment, "用户主部门不存在"); SysOrganize infoOrganize = personnelService.getSysOrganizeById(infoDepartment.getOrganizeId()); + ValidatorBean.checkNotNull(infoOrganize, "用户主组织不存在"); SysPosition position = personnelService.getSysPositionById(Long.parseLong(model.getInfoPositionId())); - if (infoDepartment == null) { - ValidatorBean.checkNotNull(position, "用户主岗位存在"); - } + ValidatorBean.checkNotNull(position, "用户主岗位不存在"); SysDepartment userDepartment = personnelService.getSysDepartmentById(Long.parseLong(model.getUserDepartmentId())); - if (userDepartment == null) { - ValidatorBean.checkNotNull(userDepartment, "账号主部门不存在"); - } + ValidatorBean.checkNotNull(userDepartment, "账号主部门不存在"); + SysOrganize userOrganize = personnelService.getSysOrganizeById(userDepartment.getOrganizeId()); + ValidatorBean.checkNotNull(userOrganize, "账号主组织不存在"); userInfo.setDepartmentId(infoDepartment.getId()); userInfo.setDepartmentNameRdd(infoDepartment.getName()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDashboardController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDashboardController.java index e952499..29fadb0 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDashboardController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDashboardController.java @@ -1,6 +1,8 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysDashboardService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysDepartmentService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; @@ -11,8 +13,10 @@ import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ResultBean; +import com.google.common.collect.Maps; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections.CollectionUtils; import org.apache.shiro.web.session.mgt.DefaultWebSessionManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -22,10 +26,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; +import java.util.*; /** * @Description : Dashboard服务 @@ -43,14 +44,22 @@ public class SysDashboardController extends CoreBaseController { @Autowired private ISysDashboardService sysDashboardService; - @Resource(name = "imppSessionManager") + @Resource(name = CommonConstWords.IMPP_BEAN_SESSION_MANAGER) private DefaultWebSessionManager webSessionManager; @Resource(name = CommonConstWords.IMPP_REDIS_CORE) private ImppRedis redisCore; + @Autowired + private ISysOrganizeService organizeService; + + @Autowired + private ISysDepartmentService departmentService; + public static final int TIMEOUT = 60 * 60; + + /** * 获取基础数据 * @return 处理结果 @@ -68,8 +77,8 @@ public class SysDashboardController extends CoreBaseController { LOGGER.info("getBasicInforedisKey:{},dashboardData:{}",redisKey,dashboardData); if (dashboardData == null || dashboardData.size() == 0) { dashboardData = new HashMap<>(); - dashboardData.put("orgNum", sysDashboardService.getSysOrganizeCount()); - dashboardData.put("deptNum", sysDashboardService.getSysDepartmentCount()); + dashboardData.put("orgNum", organizeService.getSysOrganizeCount()); + dashboardData.put("deptNum", departmentService.getSysDepartmentCount()); dashboardData.put("onlineUser", webSessionManager.getSessionDAO().getActiveSessions().size()); dashboardData.put("userLoginLog", sysDashboardService.findSysUserLoginLog(10)); @@ -100,8 +109,8 @@ public class SysDashboardController extends CoreBaseController { LOGGER.info("最近操作,异常日志:{}",redisKey); if (dashboardData == null || dashboardData.size() == 0) { dashboardData = new HashMap<>(); - dashboardData.put("logOperate", sysDashboardService.findNewSysLogOperateSize(10)); - dashboardData.put("logException", sysDashboardService.findNewSysLogExceptionSize(10)); + dashboardData.put("logOperate", sysDashboardService.findNewSysLogOperateSize()); + dashboardData.put("logException", sysDashboardService.findNewSysLogExceptionSize()); redisCore.putHashMap(redisKey, dashboardData, TIMEOUT); } @@ -140,6 +149,21 @@ public class SysDashboardController extends CoreBaseController { redisCore.putHashMap(redisKey, dashboardData, TIMEOUT); } + + if(dashboardData != null && dashboardData.size() > 0){ + Map mapSortDesc = new TreeMap<>(new TreeMap<>(new Comparator() { + public int compare(Object o1, Object o2) { + //如果有空值,直接返回0 + if (o1 == null || o2 == null) + return 0; + + return String.valueOf(o2).compareTo(String.valueOf(o1)); + } + })); + mapSortDesc.putAll(dashboardData); + dashboardData = mapSortDesc; + } + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()) .setResultMap(dashboardData); } catch (ImppBusiException busExcep) { @@ -164,6 +188,7 @@ public class SysDashboardController extends CoreBaseController { Map dashboardData = redisCore.getHashMap(redisKey); LOGGER.info("getLevelLogNumredisKey:{},dashboardData:{}",redisKey,dashboardData); + dashboardData = null; if (dashboardData == null || dashboardData.size() == 0) { // 获取前10分钟时间,日志数量 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java index 219f124..d6d63db 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService; import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysLocaleLanguageService; import cn.estsh.i3plus.core.api.iservice.busi.ISysLocaleResourceService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.exception.BaseImppException; @@ -15,7 +16,9 @@ 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.ResourceEnumUtil; +import cn.estsh.i3plus.pojo.model.platform.MissResourceModel; import cn.estsh.i3plus.pojo.platform.bean.SysFile; +import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource; import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.auth.AuthUtil; @@ -41,6 +44,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.*; import java.nio.charset.StandardCharsets; import java.util.*; +import java.util.stream.Collectors; /** * @Description :系统语言资源服务 @@ -62,6 +66,9 @@ public class SysLocaleResourceController extends CoreBaseController { private ISysLocaleResourceService sysLocaleResourceService; @Autowired + private ISysLocaleLanguageService sysLocaleLanguageService; + + @Autowired private ISystemInitService systemInitService; @Autowired @@ -505,7 +512,6 @@ public class SysLocaleResourceController extends CoreBaseController { } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } - } private Long getResourceKey(String resKey, String languageCode) { @@ -518,4 +524,162 @@ public class SysLocaleResourceController extends CoreBaseController { } return null; } + + /************************* 缺失资源管理 **********************/ + + @GetMapping(value = "/miss/list") + @ApiOperation(value = "缺失资源列表") + public ResultBean listMissResource(){ + try { + List missResourceModelList = sysLocaleResourceService.listMissResourceModel(); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(missResourceModelList); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @PutMapping(value = "/miss/update") + @ApiOperation(value = "更新缺失资源信息") + public ResultBean listMissResource(MissResourceModel missResourceModel){ + try { + missResourceModel = sysLocaleResourceService.saveMissResourceModel(missResourceModel); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(missResourceModel); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @PutMapping(value = "/miss/batch-update-valid") + @ApiOperation(value = "更新缺失资源有效状态") + public ResultBean updateMissResourceIsValidByKeys(String[] keys,Integer valid){ + try { + sysLocaleResourceService.updateMissResourceModelIsValidByKeys(keys, valid); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @DeleteMapping(value = "/miss/clean-invalid") + @ApiOperation(value = "更新缺失资源有效状态") + public ResultBean cleanMissResourceByInvalid(){ + try { + sysLocaleResourceService.doCleanInValidMissResource(); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @PostMapping(value = "/miss/batch-conversion") + @ApiOperation(value = "批量转换缺失资源") + public ResultBean doBatchConversionMissResource(String[] keys){ + try { + sysLocaleResourceService.doConversionMissResourceByKeys(keys); + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping(value = "/miss/export") + @ApiOperation(value = "导出缺失资源") + public ResultBean exportMissResource(HttpServletResponse response){ + try { + List missResourceModelList = sysLocaleResourceService.listMissResourceModel(); + Map langCodeMap = sysLocaleLanguageService.listSysLocaleLanguage() + .stream() + .collect( + Collectors.toMap( + SysLocaleLanguage::getLanguageCode, + SysLocaleLanguage::getLanguageName + ) + ); + + List sysLocaleResourceList = new ArrayList<>(missResourceModelList.size()); + SysLocaleResource sysLocaleResource; + for (MissResourceModel resourceModel : missResourceModelList) { + sysLocaleResource = new SysLocaleResource(); + sysLocaleResource.setSoftType(resourceModel.getSoftType()); + sysLocaleResource.setLanguageCode(resourceModel.getLanguageCode()); + sysLocaleResource.setLanguageNameRdd(langCodeMap.get(resourceModel.getLanguageCode())); + sysLocaleResource.setResourceType(resourceModel.getResourceType()); + sysLocaleResource.setResourceKey(resourceModel.getResourceKey()); + sysLocaleResource.setResourceValue(resourceModel.getResourceValue()); + sysLocaleResource.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + + sysLocaleResourceList.add(sysLocaleResource); + } + + ExcelTool excelTool = new ExcelTool(entityManager, redisRes); + String fileName = "locale_" + System.currentTimeMillis() + ".xls"; + + File file = new File(fileName); + if (file.createNewFile()) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.IO_EXCEPTION_FILE.getCode()) + .setErrorDetail("临时文件创建失败!") + .build(); + } + File excle = excelTool.exportData(file, sysLocaleResourceList, SysLocaleResource.class, new String[]{ + "resourceType", "languageCode", "languageNameRdd", "resourceKey", "resourceValue", "softType" + }); + + String userAgent = request.getHeader("User-Agent"); + // 针对IE或者以IE为内核的浏览器: + if (userAgent.contains("MSIE") || userAgent.contains("Trident")) { + fileName = java.net.URLEncoder.encode(fileName, "UTF-8"); + } else { + // 非IE浏览器的处理: + fileName = new String(fileName.getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1); + } + + response.setContentType("application/force-download"); // 设置强制下载不打开 + response.addHeader("Content-Disposition", "attachment;fileName=" + fileName); // 设置文件名 + response.addHeader("Content-type", FileContentTypeTool.getContentType(".xls")); // 设置文件名 + + BufferedInputStream bis = null; + InputStream targetStream = null; + try { + targetStream = new DataInputStream(new FileInputStream(excle)); + bis = new BufferedInputStream(targetStream); + OutputStream os = response.getOutputStream(); + byte[] buffer = new byte[1024]; + int i = bis.read(buffer); + while (i != -1) { + os.write(buffer, 0, i); + i = bis.read(buffer); + } + } finally { + if (bis != null) { + bis.close(); + } + if (targetStream != null) { + targetStream.close(); + } + } + + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogExceptionController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogExceptionController.java index fae9af4..02096b2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogExceptionController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogExceptionController.java @@ -7,6 +7,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; import cn.estsh.i3plus.platform.common.tool.ExcelTool; import cn.estsh.i3plus.platform.common.tool.FileTool; import cn.estsh.i3plus.platform.common.tool.ZipTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -63,7 +64,7 @@ public class SysLogExceptionController extends CoreBaseController { @Autowired private EntityManager entityManager; - @Resource(name="redisRes") + @Resource(name= CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; /** @@ -76,7 +77,7 @@ public class SysLogExceptionController extends CoreBaseController { @ApiOperation(value = "异常日志复杂查询,分页,排序",notes = "异常日志复杂查询,分页,排序") public ResultBean querySysLogExceptionByPager(SysLogException sysLogException, Pager pager){ try { - ListPager logExceptionList = logService.querySysLogExceptionByPager(sysLogException, pager); + ListPager logExceptionList = logService.queryLogExceptionPager(sysLogException, pager); return ResultBean.success("查询成功").setListPager(logExceptionList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -145,7 +146,7 @@ public class SysLogExceptionController extends CoreBaseController { excelDir = new File(System.getProperty("java.io.tmpdir") + File.separator + new Date().getTime()); excelDir.mkdir(); do { - listPager = logService.querySysLogExceptionByPager(sysLogException, pager); + listPager = logService.queryLogExceptionPager(sysLogException, pager); pager = listPager.getObjectPager(); // 将excel导出至临时文件夹并上传 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogOperateController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogOperateController.java index 479394b..f65b2c2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogOperateController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogOperateController.java @@ -8,6 +8,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService; import cn.estsh.i3plus.platform.common.tool.ExcelTool; import cn.estsh.i3plus.platform.common.tool.FileTool; import cn.estsh.i3plus.platform.common.tool.ZipTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -66,89 +67,89 @@ public class SysLogOperateController extends CoreBaseController { @Autowired private EntityManager entityManager; - @Resource(name="redisRes") + @Resource(name= CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; - /** - * 添加操作日志 - * @param logOperate 操作日志 - * @return 处理结果 - */ - @PostMapping(value = "/insert") - @ApiOperation(value = "添加操作日志",notes = "添加操作日志") - public ResultBean insertSysLogOperateController(SysLogOperate logOperate){ - try { - logService.insertSysLogOperate(logOperate); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 根据id删除操作日志 - * @param id 操作日志id - * @return 处理结果 - */ - @DeleteMapping(value = "/delete") - @ApiOperation(value = "根据id删除操作日志",notes = "根据id删除操作日志") - public ResultBean deleteSysLogOperateById(String id){ - try { - // 条件验证 - ValidatorBean.checkNotNull(id,"id不能为空!"); - - logService.deleteSysLogOperateById(Long.parseLong(id)); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 查询全部操作日志 - * @return 处理结果 - */ - @GetMapping(value = "/list") - @ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志") - public ResultBean findSysLogOperateAll(){ - try { - List logOperateList = logService.listSysLogOperate(); - return ResultBean.success("操作成功").setResultList(logOperateList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 根据id查询操作日志 - * @param id 操作日志 - * @return 处理结果 - */ - @GetMapping(value = "/get/{id}") - @ApiOperation(value = "根据id查询操作日志",notes = "根据id查询操作日志") - public ResultBean getSysLogOperateById(@PathVariable("id") String id){ - try{ - SysLogOperate logOperate = logService.getSysLogOperateById(Long.parseLong(id)); - if (logOperate != null) { - return ResultBean.success("操作成功") - .setResultObject(logOperate) - .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }else { - return ResultBean.fail("操作日志不存在") - .setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode()); - } - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } +// /** +// * 添加操作日志 +// * @param logOperate 操作日志 +// * @return 处理结果 +// */ +// @PostMapping(value = "/insert") +// @ApiOperation(value = "添加操作日志",notes = "添加操作日志") +// public ResultBean insertSysLogOperateController(SysLogOperate logOperate){ +// try { +// logService.insertSysLogOperate(logOperate); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } +// +// /** +// * 根据id删除操作日志 +// * @param id 操作日志id +// * @return 处理结果 +// */ +// @DeleteMapping(value = "/delete") +// @ApiOperation(value = "根据id删除操作日志",notes = "根据id删除操作日志") +// public ResultBean deleteSysLogOperateById(String id){ +// try { +// // 条件验证 +// ValidatorBean.checkNotNull(id,"id不能为空!"); +// +// logService.deleteSysLogOperateById(Long.parseLong(id)); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } +// +// /** +// * 查询全部操作日志 +// * @return 处理结果 +// */ +// @GetMapping(value = "/list") +// @ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志") +// public ResultBean findSysLogOperateAll(){ +// try { +// List logOperateList = logService.listSysLogOperate(); +// return ResultBean.success("操作成功").setResultList(logOperateList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } +// +// /** +// * 根据id查询操作日志 +// * @param id 操作日志 +// * @return 处理结果 +// */ +// @GetMapping(value = "/get/{id}") +// @ApiOperation(value = "根据id查询操作日志",notes = "根据id查询操作日志") +// public ResultBean getSysLogOperateById(@PathVariable("id") String id){ +// try{ +// SysLogOperate logOperate = logService.getSysLogOperateById(Long.parseLong(id)); +// if (logOperate != null) { +// return ResultBean.success("操作成功") +// .setResultObject(logOperate) +// .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }else { +// return ResultBean.fail("操作日志不存在") +// .setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode()); +// } +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } /** * 操作日志复杂查询,分页,排序 @@ -160,7 +161,7 @@ public class SysLogOperateController extends CoreBaseController { @ApiOperation(value = "操作日志复杂查询,分页,排序",notes = "操作日志复杂查询,分页,排序") public ResultBean querySysLogOperateByPager(SysLogOperate logOperate, Pager pager){ try { - ListPager logSystemList = logService.querySysLogOperateByPager(logOperate, pager); + ListPager logSystemList = logService.queryLogOperatePager(logOperate, pager); return ResultBean.success("操作成功").setListPager(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -228,7 +229,7 @@ public class SysLogOperateController extends CoreBaseController { ExcelTool excelTool = new ExcelTool(entityManager, redisCore); do { - listPager = logService.querySysLogOperateByPager(sysLogOperate, pager); + listPager = logService.queryLogOperatePager(sysLogOperate, pager); pager = listPager.getObjectPager(); // 将excel导出至临时文件夹并上传 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogSystemController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogSystemController.java index 944f449..2d920a1 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogSystemController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogSystemController.java @@ -19,13 +19,14 @@ import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ResultBean; -import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.persistence.EntityManager; @@ -33,6 +34,7 @@ import java.io.File; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Objects; /** * @Description : 系统日志服务 @@ -65,79 +67,79 @@ public class SysLogSystemController extends CoreBaseController{ @Resource(name="redisRes") private ImppRedis redisRes; - /** - * 新增系统日志 - * @param logSystem 系统日志 - * @return 处理结果 - */ - @PostMapping(value = "/insert") - @ApiOperation(value="新增系统日志",notes = "新增系统日志") - public ResultBean insertSysLogSystem(SysLogSystem logSystem) { - try { - logService.insertSysLogSystem(logSystem); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } +// /** +// * 新增系统日志 +// * @param logSystem 系统日志 +// * @return 处理结果 +// */ +// @PostMapping(value = "/insert") +// @ApiOperation(value="新增系统日志",notes = "新增系统日志") +// public ResultBean insertSysLogSystem(SysLogSystem logSystem) { +// try { +// logService.insertSysLogSystem(logSystem); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } - /** - * 删除系统日志 - * @param id 日志id - * @return 处理结果 - */ - @DeleteMapping(value = "/delete") - @ApiOperation(value = "删除系统日志",notes = "删除系统日志") - public ResultBean deleteSysLogSystemById(String id) { - try { - // 条件校验 - ValidatorBean.checkNotNull(id,"id不能为空"); +// /** +// * 删除系统日志 +// * @param id 日志id +// * @return 处理结果 +// */ +// @DeleteMapping(value = "/delete") +// @ApiOperation(value = "删除系统日志",notes = "删除系统日志") +// public ResultBean deleteSysLogSystemById(String id) { +// try { +// // 条件校验 +// ValidatorBean.checkNotNull(id,"id不能为空"); +// +// logService.deleteSysLogSystemById(Long.parseLong(id)); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } +// +// /** +// * 查询全部系统日志 +// * @return 处理结果 +// */ +// @GetMapping(value = "/list") +// @ApiOperation(value = "查询全部系统日志",notes = "查询全部系统日志") +// public ResultBean findSysLogSystemAll(){ +// try { +// List logSystemList = logService.listSysLogSystem(); +// return ResultBean.success("操作成功").setResultList(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } - logService.deleteSysLogSystemById(Long.parseLong(id)); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 查询全部系统日志 - * @return 处理结果 - */ - @GetMapping(value = "/list") - @ApiOperation(value = "查询全部系统日志",notes = "查询全部系统日志") - public ResultBean findSysLogSystemAll(){ - try { - List logSystemList = logService.listSysLogSystem(); - return ResultBean.success("操作成功").setResultList(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 根据id查询系统日志 - * @param id 系统日志id - * @return 处理结果 - */ - @GetMapping(value = "/get") - @ApiOperation(value = "根据id查询系统日志",notes = "根据id查询系统日志") - public ResultBean getSysLogSystemById(String id){ - try { - SysLogSystem logSystem = logService.getSysLogSystemById(Long.parseLong(id)); - return ResultBean.success("操作成功").setResultObject(logSystem).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } +// /** +// * 根据id查询系统日志 +// * @param id 系统日志id +// * @return 处理结果 +// */ +// @GetMapping(value = "/get") +// @ApiOperation(value = "根据id查询系统日志",notes = "根据id查询系统日志") +// public ResultBean getSysLogSystemById(String id){ +// try { +// SysLogSystem logSystem = logService.getSysLogSystemById(Long.parseLong(id)); +// return ResultBean.success("操作成功").setResultObject(logSystem).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } /** * 系统日志分页复杂查询 @@ -149,7 +151,7 @@ public class SysLogSystemController extends CoreBaseController{ @ApiOperation(value = "系统日志分页复杂查询",notes = "系统日志分页复杂查询") public ResultBean querySysLogSystemByPager(SysLogSystem logSystem, Pager pager){ try { - ListPager logSystemList = logService.querySysLogSystemByPager(logSystem, pager); + ListPager logSystemList = logService.queryLogSystemPager(logSystem, pager); return ResultBean.success("操作成功").setListPager(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -218,7 +220,7 @@ public class SysLogSystemController extends CoreBaseController{ excelDir = new File(System.getProperty("java.io.tmpdir") + File.separator + new Date().getTime()); excelDir.mkdir(); do { - listPager = logService.querySysLogSystemByPager(sysLogSystem, pager); + listPager = logService.queryLogSystemPager(sysLogSystem, pager); pager = listPager.getObjectPager(); // 将excel导出至临时文件夹并上传 @@ -249,7 +251,9 @@ public class SysLogSystemController extends CoreBaseController{ if (zipFile != null) { FileTool.deleteFile(zipFile.getPath()); } - FileTool.deleteFile(excelDir.getPath()); + if(Objects.nonNull(excelDir)){ + FileTool.deleteFile(excelDir.getPath()); + } } } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogTaskTimeController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogTaskTimeController.java index c20bd4b..f9b07b6 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogTaskTimeController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLogTaskTimeController.java @@ -34,66 +34,66 @@ public class SysLogTaskTimeController extends CoreBaseController{ @Autowired private ISysLogService logService; - /** - * 新增定时任务日志 - * @param sysLogTaskTime 定时任务日志 - * @return 处理结果 - */ - @PostMapping(value = "/insert") - @ApiOperation(value="新增定时任务日志",notes = "新增定时任务日志") - public ResultBean insertSyslogTaskTime(SysLogTaskTime sysLogTaskTime) { - try { - logService.insertSysLogTaskTime(sysLogTaskTime); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } +// /** +// * 新增定时任务日志 +// * @param sysLogTaskTime 定时任务日志 +// * @return 处理结果 +// */ +// @PostMapping(value = "/insert") +// @ApiOperation(value="新增定时任务日志",notes = "新增定时任务日志") +// public ResultBean insertSyslogTaskTime(SysLogTaskTime sysLogTaskTime) { +// try { +// logService.insertSysLogTaskTime(sysLogTaskTime); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } - /** - * 删除定时任务 - * @param id 定时任务id - * @return 处理结果 - */ - @DeleteMapping(value = "/delete") - @ApiOperation(value = "删除定时任务日志",notes = "删除定时任务日志") - public ResultBean deleteSysLogTaskTimeById(String id) { - try { - // 条件校验 - ValidatorBean.checkNotNull(id,"id不能为空"); +// /** +// * 删除定时任务 +// * @param id 定时任务id +// * @return 处理结果 +// */ +// @DeleteMapping(value = "/delete") +// @ApiOperation(value = "删除定时任务日志",notes = "删除定时任务日志") +// public ResultBean deleteSysLogTaskTimeById(String id) { +// try { +// // 条件校验 +// ValidatorBean.checkNotNull(id,"id不能为空"); +// +// logService.deleteSysLogTaskTimeById(Long.parseLong(id)); +// return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } - logService.deleteSysLogTaskTimeById(Long.parseLong(id)); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } - - /** - * 根据id查询定时任务日志 - * @param id 定时任务id - * @return 处理结果 - */ - @GetMapping(value = "/get") - @ApiOperation(value = "根据id查询定时任务日志",notes = "根据id查询定时任务日志") - public ResultBean getSysLogTaskTimeById(String id){ - try { - SysLogTaskTime logTaskTime = logService.getSysLogTaskTimeById(Long.parseLong(id)); - if (logTaskTime != null) { - return ResultBean.success("操作成功").setResultObject(logTaskTime).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }else { - return ResultBean.fail("日志不存在").setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode()); - } - }catch(ImppBusiException busExcep){ - return ResultBean.fail(busExcep); - }catch(Exception e){ - return ImppExceptionBuilder.newInstance().buildExceptionResult(e); - } - } +// /** +// * 根据id查询定时任务日志 +// * @param id 定时任务id +// * @return 处理结果 +// */ +// @GetMapping(value = "/get") +// @ApiOperation(value = "根据id查询定时任务日志",notes = "根据id查询定时任务日志") +// public ResultBean getSysLogTaskTimeById(String id){ +// try { +// SysLogTaskTime logTaskTime = logService.getSysLogTaskTimeById(Long.parseLong(id)); +// if (logTaskTime != null) { +// return ResultBean.success("操作成功").setResultObject(logTaskTime).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }else { +// return ResultBean.fail("日志不存在").setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode()); +// } +// }catch(ImppBusiException busExcep){ +// return ResultBean.fail(busExcep); +// }catch(Exception e){ +// return ImppExceptionBuilder.newInstance().buildExceptionResult(e); +// } +// } /** * 定时任务日志分页复杂查询 @@ -105,7 +105,7 @@ public class SysLogTaskTimeController extends CoreBaseController{ @ApiOperation(value = "定时任务日志分页复杂查询",notes = "定时任务日志分页复杂查询") public ResultBean querySysLogSystemByPager(SysLogTaskTime sysLogTaskTime, Pager pager){ try { - ListPager logSystemList = logService.querySysLogTaskTimeByPager(sysLogTaskTime, pager); + ListPager logSystemList = logService.queryLogTaskTimePager(sysLogTaskTime, pager); return ResultBean.success("操作成功").setListPager(logSystemList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java index 0d3e58c..ea3b86f 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java @@ -10,6 +10,7 @@ import cn.estsh.i3plus.platform.common.tool.ExcelTool; import cn.estsh.i3plus.platform.common.tool.FileTool; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.ZipTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -71,7 +72,7 @@ public class SysOrderNoRuleController extends CoreBaseController { @Autowired private EntityManager entityManager; - @Resource(name="redisRes") + @Resource(name= CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; /** diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java index 61172bc..7d45ff3 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService; import cn.estsh.i3plus.core.api.iservice.busi.ICoreMemTreeService; +import cn.estsh.i3plus.core.api.iservice.busi.ILicenseClickService; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; import cn.estsh.i3plus.icloud.wms.sdk.IWmsActionGroupCloud; @@ -14,6 +15,7 @@ import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; 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.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysConfig; import cn.estsh.i3plus.pojo.platform.bean.SysOrganize; @@ -64,6 +66,9 @@ public class SysOrganizeController extends CoreBaseController{ @Autowired private IWmsActionGroupCloud wmsActionGroupCloud; + @Autowired + private ILicenseClickService licenseClickService; + /** * 新增组织 * @param organize 组织 @@ -86,6 +91,10 @@ public class SysOrganizeController extends CoreBaseController{ organize.setParentNameRdd("顶级组织"); } + if(organize.getOrganizeType().equals(ImppEnumUtil.ORGANIZE_YTPE.TYPE_FACTORY.getValue())){ + licenseClickService.checkLicenseNumberOrganize(); + } + organize = organizeService.insertSysOrganize(organize); String resutl = "组织已创建完成"; @@ -125,6 +134,10 @@ public class SysOrganizeController extends CoreBaseController{ sysOrganize.setParentNameRdd("顶级组织"); } + if(organize.getOrganizeType().equals(ImppEnumUtil.ORGANIZE_YTPE.TYPE_FACTORY.getValue())){ + licenseClickService.checkLicenseNumberOrganize(); + } + sysOrganize.setName(organize.getName()); sysOrganize.setOrganizeType(organize.getOrganizeType()); sysOrganize.setOrganizeAddress(organize.getOrganizeAddress()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java index 7dfdd6a..0e3c075 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java @@ -7,6 +7,7 @@ import cn.estsh.i3plus.platform.common.tool.ExcelTool; import cn.estsh.i3plus.platform.common.tool.FileTool; import cn.estsh.i3plus.platform.common.tool.ZipTool; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -51,6 +52,9 @@ public class SysUserInfoController extends CoreBaseController{ public static final Logger LOGGER = LoggerFactory.getLogger(SysUserInfoController.class); @Autowired + private ILicenseClickService licenseClickService; + + @Autowired private ISysUserInfoService sysUserInfoService; @Autowired @@ -77,7 +81,7 @@ public class SysUserInfoController extends CoreBaseController{ @Autowired private IPersonnelService personnelService; - @Resource(name="redisRes") + @Resource(name= CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; /** * 添加用户信息 @@ -89,6 +93,7 @@ public class SysUserInfoController extends CoreBaseController{ public ResultBean insertSysUserInfo(SysUserInfo userInfo){ try { startMultiService(); + licenseClickService.checkLicenseNumberUser(); //登陆用户 SessionUser user = AuthUtil.getSessionUser(); @@ -100,11 +105,8 @@ public class SysUserInfoController extends CoreBaseController{ userInfo.setUserLoginNum(0); sysUserInfoService.checkSysUserInfoOnly(userInfo); - SysUserInfo info = sysUserInfoService.insertSysUserInfo(userInfo); - sysUserInfoService.refreshRefUserOrganize(info.getId(), userInfo.getDepartment().getOrganizeId(),user.getUserName()); - return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(info); } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/CoreLogClearJob.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/CoreLogClearJob.java index 1b479b6..2103ec2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/CoreLogClearJob.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/CoreLogClearJob.java @@ -1,18 +1,24 @@ package cn.estsh.i3plus.core.apiservice.schedulejob; -import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; +import cn.estsh.i3plus.core.apiservice.serviceimpl.base.SysLogElasticSearchService; +import cn.estsh.i3plus.core.apiservice.serviceimpl.base.SysLogMongoService; import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; +import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; +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.base.schedule.BaseImppScheduleJob; import cn.estsh.impp.framework.boot.init.ApplicationProperties; -import com.alibaba.fastjson.JSONObject; +import cn.estsh.impp.framework.boot.util.RedisUtilTool; import org.quartz.DisallowConcurrentExecution; import org.quartz.JobExecutionContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; -import java.util.Calendar; import java.util.Date; /** @@ -22,6 +28,7 @@ import java.util.Date; * @CreateDate : 2019-07-04 19:13 * @Modify: **/ +@Component @DisallowConcurrentExecution public class CoreLogClearJob extends BaseImppScheduleJob { @@ -32,67 +39,49 @@ public class CoreLogClearJob extends BaseImppScheduleJob { super(CoreLogClearJob.class, "日志清除"); } - @Value("${impp.logService.retention-time:-1}") - private Integer retentionTime; - @Autowired - private ISysLogService logService; + private SysLogElasticSearchService elasticSearchService; + @Autowired + private SysLogMongoService mongoService; @Override public void executeImppJob(JobExecutionContext context, ApplicationProperties applicationProperties) { - // 判断日志保留时间 -1 永久 - if (getJobParam() == null) { - return; - } - JSONObject clearParam = JSONObject.parseObject(getJobParam()); - - // 计算保留日期 - String dateTime = TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, -retentionTime,"yyyy-MM-dd HH:mm:ss"); - long count; - // 系统日志 - if (clearParam.containsKey("logSystem") && clearParam.getInteger("logSystem") != -1) { - dateTime = TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, -clearParam.getInteger("logSystem"),"yyyy-MM-dd HH:mm:ss"); - count = logService.deleteSysLogSystemByDateTimeAfter(dateTime); - LOGGER.info("【日志清理】 清理系统日志 {} 条", count); - } - - // 异常日志 - if (clearParam.containsKey("logException") && clearParam.getInteger("logException") != -1) { - dateTime = TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, -clearParam.getInteger("logException"),"yyyy-MM-dd HH:mm:ss"); - count = logService.deleteSysLogExceptionByDateTimeAfter(dateTime); - LOGGER.info("【日志清理】 清理异常日志 {} 条", count); - } - - // 操作日志 - if (clearParam.containsKey("logOperate") && clearParam.getInteger("logOperate") != -1) { - dateTime = TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, -clearParam.getInteger("logException"),"yyyy-MM-dd HH:mm:ss"); - count = logService.deleteSysLogOperateByDateTimeAfter(dateTime); - LOGGER.info("【日志清理】 清理操作日志 {} 条", count); - } - - // 任务日志 - if (clearParam.containsKey("logTask") && clearParam.getInteger("logTask") != -1) { - dateTime = TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, -clearParam.getInteger("logException"),"yyyy-MM-dd HH:mm:ss"); - count = logService.deleteSysLogTaskTimeByDateTimeAfter(dateTime); - LOGGER.info("【日志清理】 清理定时任务日志 {} 条", count); - } + int to = RedisUtilTool.getSysConfigIntVal(CommonConstWords.LOG_STORAGE_DAYS, CommonConstWords.LOG_STORAGE_DAYS_DEFAULT); + Date thisTime = new Date(); + String startTime = TimeTool.getToday(TimeTool.getDateBefore(thisTime, to)) + " 00:00:00"; + String endTime = TimeTool.getToday(TimeTool.getDateBefore(thisTime, to)) + " 23:59:59"; + + SysLogOperate operate = new SysLogOperate(); + operate.setCreateDatetime(startTime); + operate.setCreateDateTimeStart(startTime); + operate.setCreateDateTimeEnd(endTime); + + SysLogSystem system = new SysLogSystem(); + system.setCreateDatetime(startTime); + system.setCreateDateTimeStart(startTime); + system.setCreateDateTimeEnd(endTime); + + SysLogException exception = new SysLogException(); + exception.setCreateDatetime(startTime); + exception.setCreateDateTimeStart(startTime); + exception.setCreateDateTimeEnd(endTime); + + SysLogTaskTime taskTime = new SysLogTaskTime(); + taskTime.setCreateDatetime(startTime); + taskTime.setCreateDateTimeStart(startTime); + taskTime.setCreateDateTimeEnd(endTime); + + ElasticSearchTool.reload(); + elasticSearchService.deleteLogOperate(operate); + elasticSearchService.deleteLogSystem(system); + elasticSearchService.deleteLogException(exception); + elasticSearchService.deleteLogTaskTime(taskTime); + + mongoService.deleteLogOperate(operate); + mongoService.deleteLogSystem(system); + mongoService.deleteLogException(exception); + mongoService.deleteLogTaskTime(taskTime); } - public static void main(String[] args) { - JSONObject clearParam = new JSONObject(); - clearParam.put("logSystem",30); - clearParam.put("logException",30); - clearParam.put("logOperate",30); - clearParam.put("logTask",30); - System.out.println(clearParam.toJSONString()); - - - clearParam = JSONObject.parseObject("{\"logOperate\":10,\"logException\":10,\"logSystem\":10,\"logTask\":10}"); - - // 计算保留日期 - String dateTime = TimeTool.pareDateToString("yyyy-MM-dd HH:mm:ss", - TimeTool.timeCalc(new Date(), Calendar.DAY_OF_MONTH, 1) - ); - } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/SysDashboardDataJob.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/SysDashboardDataJob.java index 1f62b9d..e2dd8b8 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/SysDashboardDataJob.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/SysDashboardDataJob.java @@ -1,6 +1,8 @@ package cn.estsh.i3plus.core.apiservice.schedulejob; import cn.estsh.i3plus.core.api.iservice.busi.ISysDashboardService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysDepartmentService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; import cn.estsh.i3plus.core.apiservice.controller.busi.SysDashboardController; import cn.estsh.i3plus.platform.common.tool.TimeTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; @@ -14,6 +16,7 @@ import org.quartz.JobExecutionContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; + import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -40,10 +43,17 @@ public class SysDashboardDataJob extends BaseImppScheduleJob { @Autowired private ISysDashboardService sysDashboardService; + + @Autowired + private ISysOrganizeService organizeService; + + @Autowired + private ISysDepartmentService departmentService; + @Resource(name = CommonConstWords.IMPP_REDIS_CORE) private ImppRedis redisCore; - @Resource(name = "imppSessionManager") + @Resource(name = CommonConstWords.IMPP_BEAN_SESSION_MANAGER) private DefaultWebSessionManager webSessionManager; @Override @@ -53,8 +63,8 @@ public class SysDashboardDataJob extends BaseImppScheduleJob { // 更新基础信息 获取基础数据,用户,部门,组织等信息 Map dashboardData = new HashMap<>(); - dashboardData.put("orgNum", sysDashboardService.getSysOrganizeCount()); - dashboardData.put("deptNum", sysDashboardService.getSysDepartmentCount()); + dashboardData.put("orgNum", organizeService.getSysOrganizeCount()); + dashboardData.put("deptNum", departmentService.getSysDepartmentCount()); dashboardData.put("onlineUser", webSessionManager.getSessionDAO().getActiveSessions().size()); dashboardData.put("userLoginLog", sysDashboardService.findSysUserLoginLog(10)); @@ -63,8 +73,8 @@ public class SysDashboardDataJob extends BaseImppScheduleJob { // 最近操作,异常日志 dashboardData = new HashMap<>(); - dashboardData.put("logOperate", sysDashboardService.findNewSysLogOperateSize(10)); - dashboardData.put("logException", sysDashboardService.findNewSysLogExceptionSize(10)); + dashboardData.put("logOperate", sysDashboardService.findNewSysLogOperateSize()); + dashboardData.put("logException", sysDashboardService.findNewSysLogExceptionSize()); LOGGER.info("最近操作,异常日志 {}:{}", PlatformConstWords.REDIS_DASHBOARD_LOG_INFO, dashboardData); redisCore.putHashMap(PlatformConstWords.REDIS_DASHBOARD_LOG_INFO, dashboardData, SysDashboardController.TIMEOUT); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogElasticSearchService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogElasticSearchService.java index 7f5b765..b88d1c2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogElasticSearchService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogElasticSearchService.java @@ -1,178 +1,223 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.base; import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; +import cn.estsh.i3plus.core.apiservice.util.NoSqlPack; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchPack; import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; +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.util.ImppLog; +import org.elasticsearch.search.aggregations.Aggregation; +import org.elasticsearch.search.aggregations.bucket.terms.ParsedTerms; +import org.elasticsearch.search.aggregations.bucket.terms.Terms; +import org.elasticsearch.search.aggregations.metrics.ParsedAvg; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Objects; /** * @Description : * @Reference : * @Author : wei.peng - * @CreateDate : 20-2-19 下午9:17 + * @CreateDate : 20-2-13 下午4:16 * @Modify: **/ @Service public class SysLogElasticSearchService implements ISysLogService { + public static final Logger LOGGER = LoggerFactory.getLogger(SysLogElasticSearchService.class); + @Autowired private ImppLog imppLog; @Override - public ListPager querySysLogExceptionByPager(SysLogException sysLogException, Pager pager) { - return null; + public ListPager queryLogExceptionPager(SysLogException log, Pager pager) { + return ElasticSearchTool.searchPager(NoSqlPack.packEsSysLogException(log),pager,SysLogException.class); } @Override - public long deleteSysLogExceptionByDateTimeAfter(String dateTime) { - return 0; + public List findLogExceptionList(SysLogException log, Pager pager) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogException(log),pager,SysLogException.class); } @Override - public SysLogOperate insertSysLogOperate(SysLogOperate logOperate) { - imppLog.insertSysLogOperate(logOperate); - return logOperate; + public List findLogExceptionList(SysLogException log) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogException(log),SysLogException.class); } @Override - public void deleteSysLogOperateById(Long id) { -// ElasticSearchTool.deletePrimaryKey(); + public SysLogException insertLogException(SysLogException log) { + imppLog.insertSysLogException(log); + return log; } @Override - public List listSysLogOperate() { - return null; + public SysLogException getLogException(SysLogException log) { + return ElasticSearchTool.getPrimaryKey(log.getId(),SysLogException.class); } @Override - public void deleteSysLogOperateByIds(Long[] ids) { - + public void deleteLogException(SysLogException log) { + ElasticSearchTool.deleteQuery(NoSqlPack.packEsSysLogException(log)); } @Override - public SysLogOperate getSysLogOperateById(Long id) { -// return ElasticSearchTool.getPrimaryKey(); - return null; + public ListPager queryLogOperatePager(SysLogOperate log, Pager pager) { + return ElasticSearchTool.searchPager(NoSqlPack.packEsSysLogOperate(log),pager,SysLogOperate.class); } @Override - public List listSysLogOperateByOperateUserName(String operateUserName) { - return null; + public List findLogOperateList(SysLogOperate log, Pager pager) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogOperate(log),pager,SysLogOperate.class); } @Override - public long countAllSysLogOperate() { - return 0; + public List findLogOperateList(SysLogOperate log) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogOperate(log),SysLogOperate.class); } @Override - public ListPager querySysLogOperateByPager(SysLogOperate logOperate, Pager pager) { - return null; + public SysLogOperate insertLogOperate(SysLogOperate log) { + imppLog.insertSysLogOperate(log); + return log; } @Override - public List findNewSysLogOperate(Integer num) { - return null; + public SysLogOperate getLogOperate(SysLogOperate log) { + return ElasticSearchTool.getPrimaryKey(log.getId(),SysLogOperate.class); } @Override - public long deleteSysLogOperateByDateTimeAfter(String dateTime) { - return 0; + public void deleteLogOperate(SysLogOperate log) { + ElasticSearchTool.deleteQuery(NoSqlPack.packEsSysLogOperate(log)); } @Override - public long countSysLogOperate() { - return 0; + public ListPager queryLogSystemPager(SysLogSystem log, Pager pager) { + return ElasticSearchTool.searchPager(NoSqlPack.packEsSysLogSystem(log),pager,SysLogSystem.class); } @Override - public void insertSysLogSystem(SysLogSystem logSystem) { - + public List findLogSystemList(SysLogSystem log, Pager pager) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogSystem(log),pager,SysLogSystem.class); } @Override - public void insertSysLogBatch(int num, int waitTime) { - + public List findLogSystemList(SysLogSystem log) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogSystem(log), SysLogSystem.class); } @Override - public long deleteSysLogSystemById(Long id) { - return 0; + public SysLogSystem insertLogSystem(SysLogSystem log) { + imppLog.insertSysLogSystem(log); + return log; } @Override - public List listSysLogSystem() { - return null; + public SysLogSystem getLogSystem(SysLogSystem log) { + return ElasticSearchTool.getPrimaryKey(log.getId(),SysLogSystem.class); } @Override - public SysLogSystem getSysLogSystemById(long id) { - return null; + public void deleteLogSystem(SysLogSystem log) { + ElasticSearchTool.deleteQuery(NoSqlPack.packEsSysLogSystem(log)); } @Override - public ListPager querySysLogSystemByPager(SysLogSystem logSystem, Pager pager) { - return null; + public ListPager queryLogTaskTimePager(SysLogTaskTime log, Pager pager) { + return ElasticSearchTool.searchPager(NoSqlPack.packEsSysLogTaskTime(log),pager,SysLogTaskTime.class); } @Override - public long deleteSysLogSystemByIds(Long[] ids) { - return 0; + public List findLogTaskTimeList(SysLogTaskTime log, Pager pager) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogTaskTime(log),pager,SysLogTaskTime.class); } @Override - public List findSysLogSystemByIdInterval(long min, long max) { - return null; + public List findLogTaskTimeList(SysLogTaskTime log) { + return ElasticSearchTool.searchList(NoSqlPack.packEsSysLogTaskTime(log),SysLogTaskTime.class); } @Override - public long deleteSysLogSystemByDateTimeAfter(String dateTime) { - return 0; + public SysLogTaskTime insertLogTaskTime(SysLogTaskTime log) { + imppLog.insertSysLogTaskTime(log); + return log; } @Override - public void insertSysLogTaskTime(SysLogTaskTime sysLogTaskTime) { - + public SysLogTaskTime getLogTaskTime(SysLogTaskTime log) { + return ElasticSearchTool.getPrimaryKey(log.getId(),SysLogTaskTime.class); } @Override - public void deleteSysLogTaskTimeById(Long id) { - + public void deleteLogTaskTime(SysLogTaskTime log) { + ElasticSearchTool.deleteQuery(NoSqlPack.packEsSysLogTaskTime(log)); } - @Override - public SysLogTaskTime getSysLogTaskTimeById(Long id) { - return null; - } + /******************************************************* 定时任务日志 End *********************************************************/ - @Override - public ListPager querySysLogTaskTimeByPager(SysLogTaskTime sysLogTaskTime, Pager pager) { - return null; - } - - @Override - public long deleteSysLogTaskTimeByDateTimeAfter(String dateTime) { - return 0; - } @Override public Map querySysLogSystemAvgExecuteTime(String startTime, String endTime) { - return null; + Map resultData = new LinkedHashMap(); + ElasticSearchPack pack = ElasticSearchPack.imppBuild(SysLogSystem.class); + pack.pager(CommonConstWords.getDefaultPager()); + pack.andStringDateTimeBetween("createDatetime",startTime,endTime); + pack.group("createDatetime").avg("executeTime").buildAggregation(); + Map aggregationMap = ElasticSearchTool.searchAggregationMap(pack); + + ParsedTerms parsedTerms = (ParsedTerms)aggregationMap.get("group_createDatetime"); + if(Objects.nonNull(parsedTerms)){ + for (Terms.Bucket bucket : parsedTerms.getBuckets()) { + try { + String key = bucket.getKeyAsString(); + Double value = ((ParsedAvg) bucket.getAggregations().get("avg_executeTime")).getValue(); + resultData.put(key,value.intValue()); + }catch (Exception e){ + } + } + } + + return resultData; } @Override public Map querySysLogSystemByLevel(String startTime, String endTime) { - return null; + Map resultData = new LinkedHashMap(); + ElasticSearchPack pack = ElasticSearchPack.imppBuild(SysLogSystem.class); + pack.pager(CommonConstWords.getDefaultPager()); + pack.andStringDateTimeBetween("createDatetime",startTime,endTime); + pack.group("logLevel").count("id").buildAggregation(); + Map aggregationMap = ElasticSearchTool.searchAggregationMap(pack); + + + ParsedTerms parsedTerms = (ParsedTerms)aggregationMap.get("group_logLevel"); + if(Objects.nonNull(parsedTerms)){ + for (Terms.Bucket bucket : parsedTerms.getBuckets()) { + try { + String key = bucket.getKeyAsString(); + resultData.put(ImppEnumUtil.LOG_LEVEL.valueOfName(Integer.parseInt(key)),bucket.getDocCount()); + }catch (Exception e){ + } + } + } + + return resultData; } + + /******************************************************* 系统异常日志 End *********************************************************/ + + } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogFactory.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogFactory.java new file mode 100644 index 0000000..1d3b038 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogFactory.java @@ -0,0 +1,218 @@ +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.List; +import java.util.Map; + +/** + * @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 queryLogExceptionPager(SysLogException log, Pager pager) { + return getSysLogService().queryLogExceptionPager(log,pager); + } + + @Override + public List findLogExceptionList(SysLogException log, Pager pager) { + return getSysLogService().findLogExceptionList(log,pager); + } + + @Override + public List findLogExceptionList(SysLogException log) { + return getSysLogService().findLogExceptionList(log); + } + + @Override + public SysLogException insertLogException(SysLogException log) { + return getSysLogService().insertLogException(log); + } + + @Override + public SysLogException getLogException(SysLogException log) { + return getSysLogService().getLogException(log); + } + + @Override + public void deleteLogException(SysLogException log) { + getSysLogService().deleteLogException(log); + } + + @Override + public ListPager queryLogOperatePager(SysLogOperate log, Pager pager) { + return getSysLogService().queryLogOperatePager(log,pager); + } + + @Override + public List findLogOperateList(SysLogOperate log, Pager pager) { + return getSysLogService().findLogOperateList(log,pager); + } + + @Override + public List findLogOperateList(SysLogOperate log) { + return getSysLogService().findLogOperateList(log); + } + + @Override + public SysLogOperate insertLogOperate(SysLogOperate log) { + return getSysLogService().insertLogOperate(log); + } + + @Override + public SysLogOperate getLogOperate(SysLogOperate log) { + return getSysLogService().getLogOperate(log); + } + + @Override + public void deleteLogOperate(SysLogOperate log) { + getSysLogService().deleteLogOperate(log); + } + + @Override + public ListPager queryLogSystemPager(SysLogSystem log, Pager pager) { + return getSysLogService().queryLogSystemPager(log,pager); + } + + @Override + public List findLogSystemList(SysLogSystem log, Pager pager) { + return getSysLogService().findLogSystemList(log,pager); + } + + @Override + public List findLogSystemList(SysLogSystem log) { + return getSysLogService().findLogSystemList(log); + } + + @Override + public SysLogSystem insertLogSystem(SysLogSystem log) { + return getSysLogService().insertLogSystem(log); + } + + @Override + public SysLogSystem getLogSystem(SysLogSystem log) { + return getSysLogService().getLogSystem(log); + } + + @Override + public void deleteLogSystem(SysLogSystem log) { + getSysLogService().deleteLogSystem(log); + } + + @Override + public ListPager queryLogTaskTimePager(SysLogTaskTime log, Pager pager) { + return getSysLogService().queryLogTaskTimePager(log,pager); + } + + @Override + public List findLogTaskTimeList(SysLogTaskTime log, Pager pager) { + return getSysLogService().findLogTaskTimeList(log,pager); + } + + @Override + public List findLogTaskTimeList(SysLogTaskTime log) { + return getSysLogService().findLogTaskTimeList(log); + } + + @Override + public SysLogTaskTime insertLogTaskTime(SysLogTaskTime log) { + return getSysLogService().insertLogTaskTime(log); + } + + @Override + public SysLogTaskTime getLogTaskTime(SysLogTaskTime log) { + return getSysLogService().getLogTaskTime(log); + } + + @Override + public void deleteLogTaskTime(SysLogTaskTime log) { + getSysLogService().deleteLogTaskTime(log); + } + + /******************************************************* 定时任务日志 End *********************************************************/ + + + @Override + public Map querySysLogSystemAvgExecuteTime(String startTime, String endTime) { + return getSysLogService().querySysLogSystemAvgExecuteTime(startTime, endTime); + } + + @Override + public Map querySysLogSystemByLevel(String startTime, String endTime) { + return getSysLogService().querySysLogSystemByLevel(startTime, endTime); + } + + /******************************************************* 系统异常日志 End *********************************************************/ + + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java index 51f9c8f..dff35ed 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java @@ -1,9 +1,11 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.base; import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; +import cn.estsh.i3plus.core.apiservice.util.NoSqlPack; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.MathOperation; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -17,19 +19,15 @@ import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogExceptionReposito import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogOperateRepository; import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogSystemRepository; import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepository; -import cn.estsh.i3plus.pojo.platform.sqlpack.CoreBsonPack; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ImppSwitchUtil; import cn.estsh.impp.framework.boot.util.SpringContextsUtil; import com.mongodb.client.AggregateIterable; import com.mongodb.client.MongoCursor; -import com.mongodb.client.model.Filters; -import io.swagger.annotations.ApiOperation; import org.bson.Document; import org.bson.conversions.Bson; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.context.annotation.Primary; import org.springframework.data.mongodb.MongoDbFactory; import org.springframework.stereotype.Service; @@ -46,7 +44,6 @@ import java.util.Map; * @Modify: **/ @Service -@Primary public class SysLogMongoService implements ISysLogService { public static final Logger LOGGER = LoggerFactory.getLogger(SysLogMongoService.class); @@ -58,15 +55,15 @@ public class SysLogMongoService implements ISysLogService { private MongoDbFactory mongoDbFactory; - public SysLogTaskTimeRepository getSysLogTaskTimeRepository(){ - if(logTaskTimeRDao == null && ImppSwitchUtil.propSwitchMongo()){ + public SysLogTaskTimeRepository getSysLogTaskTimeRepository() { + if (logTaskTimeRDao == null && ImppSwitchUtil.isSwitchMongo()) { logTaskTimeRDao = SpringContextsUtil.getBean(SysLogTaskTimeRepository.class); } - if(logTaskTimeRDao == null){ + if (logTaskTimeRDao == null) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.LOG_SAVE_MONGO_ERROR.getCode()) + .setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode()) .setErrorDetail("日志Mongo存储错误") .setErrorSolution("请检查是否开启MongoDB存储") .build(); @@ -75,15 +72,15 @@ public class SysLogMongoService implements ISysLogService { return logTaskTimeRDao; } - public SysLogSystemRepository getSysLogSystemRepository(){ - if(logSystemRDao == null && ImppSwitchUtil.propSwitchMongo()){ + public SysLogSystemRepository getSysLogSystemRepository() { + if (logSystemRDao == null && ImppSwitchUtil.isSwitchMongo()) { logSystemRDao = SpringContextsUtil.getBean(SysLogSystemRepository.class); } - if(logSystemRDao == null){ + if (logSystemRDao == null) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.LOG_SAVE_MONGO_ERROR.getCode()) + .setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode()) .setErrorDetail("日志Mongo存储错误") .setErrorSolution("请检查是否开启MongoDB存储") .build(); @@ -92,15 +89,15 @@ public class SysLogMongoService implements ISysLogService { return logSystemRDao; } - public SysLogOperateRepository getSysLogOperateRepository(){ - if(logOperateRDao == null && ImppSwitchUtil.propSwitchMongo()){ + public SysLogOperateRepository getSysLogOperateRepository() { + if (logOperateRDao == null && ImppSwitchUtil.isSwitchMongo()) { logOperateRDao = SpringContextsUtil.getBean(SysLogOperateRepository.class); } - if(logOperateRDao == null){ + if (logOperateRDao == null) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.LOG_SAVE_MONGO_ERROR.getCode()) + .setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode()) .setErrorDetail("日志Mongo存储错误") .setErrorSolution("请检查是否开启MongoDB存储") .build(); @@ -109,15 +106,15 @@ public class SysLogMongoService implements ISysLogService { return logOperateRDao; } - public SysLogExceptionRepository getSysLogExceptionRepository(){ - if(logExceptionRDao == null && ImppSwitchUtil.propSwitchMongo()){ + public SysLogExceptionRepository getSysLogExceptionRepository() { + if (logExceptionRDao == null && ImppSwitchUtil.isSwitchMongo()) { logExceptionRDao = SpringContextsUtil.getBean(SysLogExceptionRepository.class); } - if(logExceptionRDao == null){ + if (logExceptionRDao == null) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.LOG_SAVE_MONGO_ERROR.getCode()) + .setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode()) .setErrorDetail("日志Mongo存储错误") .setErrorSolution("请检查是否开启MongoDB存储") .build(); @@ -126,15 +123,15 @@ public class SysLogMongoService implements ISysLogService { return logExceptionRDao; } - public MongoDbFactory getMongoDbFactory(){ - if(mongoDbFactory == null && ImppSwitchUtil.propSwitchMongo()){ + public MongoDbFactory getMongoDbFactory() { + if (mongoDbFactory == null && ImppSwitchUtil.isSwitchMongo()) { mongoDbFactory = SpringContextsUtil.getBean(MongoDbFactory.class); } - if(mongoDbFactory == null){ + if (mongoDbFactory == null) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.IMPP.getCode()) - .setErrorCode(ImppExceptionEnum.LOG_SAVE_MONGO_ERROR.getCode()) + .setErrorCode(ImppExceptionEnum.LOG_SAVE_STORAGE_ERROR.getCode()) .setErrorDetail("日志Mongo存储错误") .setErrorSolution("请检查是否开启MongoDB存储") .build(); @@ -145,253 +142,151 @@ public class SysLogMongoService implements ISysLogService { - /********************************************************* 系统异常日志 Start *********************************************************/ - @Override - @ApiOperation(value = "系统异常日志复杂查询,分页,排序") - public ListPager querySysLogExceptionByPager(SysLogException sysLogException, Pager pager) { - if(sysLogException == null) { - pager = PagerHelper.getPager(pager, (int) getSysLogExceptionRepository().count()); - return new ListPager(getSysLogExceptionRepository().findAll(),pager); - }else{ - Bson bson = CoreBsonPack.packBsonBySysLogException(sysLogException); - pager = PagerHelper.getPager(pager,getSysLogExceptionRepository().findByBsonCount(bson)); - //分页,排序 - return new ListPager(getSysLogExceptionRepository().findByBsonPager(bson,pager,sysLogException.getOrderByParam() - ,sysLogException.getAscOrDesc()),pager); - } + public ListPager queryLogExceptionPager(SysLogException log, Pager pager) { + Bson bson = NoSqlPack.packMongoBySysLogException(log); + pager = PagerHelper.getPager(pager, getSysLogTaskTimeRepository().findByBsonCount(bson)); + return new ListPager(getSysLogExceptionRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()), pager); } @Override - public long deleteSysLogExceptionByDateTimeAfter(String dateTime) { - return getSysLogExceptionRepository().deleteByProperty(CoreBsonPack.packBsonByDateTimeAfter(dateTime)); + public List findLogExceptionList(SysLogException log, Pager pager) { + Bson bson = NoSqlPack.packMongoBySysLogException(log); + return getSysLogExceptionRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()); } - /******************************************************* 系统异常日志 End *********************************************************/ - - - /********************************************************* 操作日志 Start *********************************************************/ - @Override - @ApiOperation(value = "添加操作日志",notes = "添加操作日志") - public SysLogOperate insertSysLogOperate(SysLogOperate logOperate) { - return getSysLogOperateRepository().insert(logOperate); + public List findLogExceptionList(SysLogException log) { + Bson bson = NoSqlPack.packMongoBySysLogException(log); + return getSysLogExceptionRepository().findByBsonPager(bson, CommonConstWords.getDefaultPager(), log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "根据id删除日志",notes = "根据id删除日志") - public void deleteSysLogOperateById(Long id) { - getSysLogOperateRepository().deleteById(id); + public SysLogException insertLogException(SysLogException log) { + return getSysLogExceptionRepository().save(log); } @Override - @ApiOperation(value = "查询全部操作日志",notes = "查询全部操作日志") - public List listSysLogOperate() { - return getSysLogOperateRepository().listPager(null); + public SysLogException getLogException(SysLogException log) { + return getSysLogExceptionRepository().getById(log.getId()); } @Override - public void deleteSysLogOperateByIds(Long[] ids) { - for(Long id : ids){ - getSysLogOperateRepository().deleteById(id); - } + public void deleteLogException(SysLogException log) { + getSysLogExceptionRepository().deleteByProperty(NoSqlPack.packMongoBySysLogException(log)); } @Override - @ApiOperation(value = "根据id查询操作日志",notes = "根据id查询操作日志") - public SysLogOperate getSysLogOperateById(Long id) { - return getSysLogOperateRepository().getById(id); + public ListPager queryLogOperatePager(SysLogOperate log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogOperate(log); + pager = PagerHelper.getPager(pager, getSysLogTaskTimeRepository().findByBsonCount(bson)); + return new ListPager(getSysLogOperateRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()), pager); } @Override - @ApiOperation(value = "根据操作人姓名模糊查询日志",notes = "根据操作人姓名模糊查询日志") - public List listSysLogOperateByOperateUserName(String operateUserName) { - return getSysLogOperateRepository().findByProperty("operateUserName",operateUserName); + public List findLogOperateList(SysLogOperate log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogOperate(log); + return getSysLogOperateRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "查询所有日志数量") - public long countAllSysLogOperate() { - return getSysLogOperateRepository().listCount(); + public List findLogOperateList(SysLogOperate log) { + Bson bson = NoSqlPack.packMongoByLogOperate(log); + return getSysLogOperateRepository().findByBsonPager(bson, CommonConstWords.getDefaultPager(), log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "操作日志复杂查询,分页,排序",notes = "操作日志复杂查询,分页,排序") - public ListPager querySysLogOperateByPager(SysLogOperate logOperate, Pager pager) { - if(logOperate == null) { - pager = PagerHelper.getPager(pager, (int) getSysLogOperateRepository().count()); - return new ListPager(getSysLogOperateRepository().findAll(),pager); - }else{ - Bson bson = CoreBsonPack.packBsonByLogOperate(logOperate); - pager = PagerHelper.getPager(pager,getSysLogOperateRepository().findByBsonCount(bson)); - //分页,排序 - return new ListPager(getSysLogOperateRepository().findByBsonPager(bson,pager,logOperate.getOrderByParam(),logOperate.getAscOrDesc()),pager); - } + public SysLogOperate insertLogOperate(SysLogOperate log) { + return getSysLogOperateRepository().save(log); } @Override - public List findNewSysLogOperate(Integer num) { - Pager page = new Pager(); - page.setCurrentPage(1); - page.setPageSize(num); - SysLogOperate sysLogOperate = new SysLogOperate(); - sysLogOperate.setOrderByParam("createDatetime"); - sysLogOperate.setAscOrDesc(CommonEnumUtil.ASC_OR_DESC.DESC.getValue()); - return getSysLogOperateRepository().findByBsonPager(null,page,sysLogOperate.getOrderByParam(),sysLogOperate.getAscOrDesc()); + public SysLogOperate getLogOperate(SysLogOperate log) { + return getSysLogOperateRepository().getById(log.getId()); } @Override - public long deleteSysLogOperateByDateTimeAfter(String dateTime) { - return getSysLogOperateRepository().deleteByProperty(CoreBsonPack.packBsonByDateTimeAfter(dateTime)); - } - - @Override - public long countSysLogOperate() { - return getSysLogOperateRepository().listCount(); - } - - /******************************************************* 操作日志 End *********************************************************/ - - - - /******************************************************* 系统日志 Start *********************************************************/ - - @Override - @ApiOperation(value = "添加系统日志",notes = "添加系统日志") - public void insertSysLogSystem(SysLogSystem logSystem) { - getSysLogSystemRepository().insert(logSystem); + public void deleteLogOperate(SysLogOperate log) { + getSysLogOperateRepository().deleteByProperty(NoSqlPack.packMongoByLogOperate(log)); } - @Override - public void insertSysLogBatch(int num,int waitTime){ - long t1 = System.currentTimeMillis(); - SysLogSystem sysLogSystem = null; - for (int i = 0; i < num * 1000; i++) { - sysLogSystem = new SysLogSystem(); - sysLogSystem.setLogClass("新增测试class"); - sysLogSystem.setLogMethod("新增测试method" +System.currentTimeMillis()); - sysLogSystem.setLogArgs("新增测试参数" + System.currentTimeMillis()); - sysLogSystem.setExecuteTime(0L); - sysLogSystem.setArgsCount(1); - sysLogSystem.setLogDetail("2333"); - sysLogSystem.setLogLevel(ImppEnumUtil.LOG_LEVEL.DEBUG.getValue()); - sysLogSystem.setLogModuleId(CommonEnumUtil.SOFT_TYPE.CORE.getValue()); - sysLogSystem.setLogTitle("新增测试"); - - getSysLogSystemRepository().insert(sysLogSystem); - try { - this.wait(waitTime); - } catch (InterruptedException e) { - e.printStackTrace(); - } - LOGGER.info("插入SysLog耗时:" + (System.currentTimeMillis() - t1) + ",idx:" + i); - } + public ListPager queryLogSystemPager(SysLogSystem log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogSystem(log); + pager = PagerHelper.getPager(pager, getSysLogTaskTimeRepository().findByBsonCount(bson)); + return new ListPager(getSysLogSystemRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()), pager); } @Override - @ApiOperation(value = "删除日志",notes = "删除日志") - public long deleteSysLogSystemById(Long id) { - Bson bson = Filters.eq("id",id); - return getSysLogSystemRepository().deleteByProperty(bson); + public List findLogSystemList(SysLogSystem log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogSystem(log); + return getSysLogSystemRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "查询全部日志",notes = "查询全部日志") - public List listSysLogSystem() { - return getSysLogSystemRepository().findAll(); + public List findLogSystemList(SysLogSystem log) { + Bson bson = NoSqlPack.packMongoByLogSystem(log); + return getSysLogSystemRepository().findByBsonPager(bson, CommonConstWords.getDefaultPager(), log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "根据id查询系统日志",notes = "根据id查询系统日志") - public SysLogSystem getSysLogSystemById(long id) { - return getSysLogSystemRepository().getById(id); + public SysLogSystem insertLogSystem(SysLogSystem log) { + return getSysLogSystemRepository().save(log); } @Override - @ApiOperation(value = "系统日志分页复杂查询",notes = "系统日志分页复杂查询") - public ListPager querySysLogSystemByPager(SysLogSystem logSystem, Pager pager) { - if (logSystem == null) { - pager = PagerHelper.getPager(pager,getSysLogSystemRepository().listCount()); - return new ListPager(getSysLogSystemRepository().listPager(pager),pager); - } else { - Bson bson = CoreBsonPack.packBsonByLogSystem(logSystem); - pager = PagerHelper.getPager(pager,getSysLogSystemRepository().findByBsonCount(bson)); - return new ListPager(getSysLogSystemRepository().findByBsonPager(bson,pager,logSystem.getOrderByParam() - ,logSystem.getAscOrDesc()),pager); - } + public SysLogSystem getLogSystem(SysLogSystem log) { + return getSysLogSystemRepository().getById(log.getId()); } @Override - @ApiOperation(value = "系统日志批量删除",notes = "系统日志批量删除") - public long deleteSysLogSystemByIds(Long[] ids) { - return getSysLogSystemRepository().deleteByIds(ids); + public void deleteLogSystem(SysLogSystem log) { + getSysLogSystemRepository().deleteByProperty(NoSqlPack.packMongoByLogSystem(log)); } @Override - @ApiOperation(value = "系统日志按id区间查询",notes = "系统日志按id区间查询") - public List findSysLogSystemByIdInterval(long min, long max) { - return getSysLogSystemRepository().findByBson(CoreBsonPack.packBsonByInterval("_id",min,max)); + public ListPager queryLogTaskTimePager(SysLogTaskTime log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogTaskTime(log); + pager = PagerHelper.getPager(pager, getSysLogTaskTimeRepository().findByBsonCount(bson)); + return new ListPager(getSysLogTaskTimeRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()), pager); } @Override - public long deleteSysLogSystemByDateTimeAfter(String dateTime) { - return getSysLogSystemRepository().deleteByProperty(CoreBsonPack.packBsonByDateTimeAfter(dateTime)); + public List findLogTaskTimeList(SysLogTaskTime log, Pager pager) { + Bson bson = NoSqlPack.packMongoByLogTaskTime(log); + return getSysLogTaskTimeRepository().findByBsonPager(bson, pager, log.getOrderByParam(), log.getAscOrDesc()); } - - /******************************************************* 系统日志 End *********************************************************/ - - - /******************************************************* 定时任务日志 Start *********************************************************/ - @Override - @ApiOperation(value = "添加定时任务日志",notes = "添加定时任务日志") - public void insertSysLogTaskTime(SysLogTaskTime sysLogTaskTime) { - getSysLogTaskTimeRepository().insert(sysLogTaskTime); + public List findLogTaskTimeList(SysLogTaskTime log) { + Bson bson = NoSqlPack.packMongoByLogTaskTime(log); + return getSysLogTaskTimeRepository().findByBsonPager(bson, CommonConstWords.getDefaultPager(), log.getOrderByParam(), log.getAscOrDesc()); } @Override - @ApiOperation(value = "删除定时任务日志",notes = "删除定时任务日志") - public void deleteSysLogTaskTimeById(Long id) { - getSysLogTaskTimeRepository().deleteById(id); + public SysLogTaskTime insertLogTaskTime(SysLogTaskTime log) { + return getSysLogTaskTimeRepository().save(log); } @Override - @ApiOperation(value = "根据id查询定时任务日志",notes = "根据id查询定时任务日志") - public SysLogTaskTime getSysLogTaskTimeById(Long id) { - return getSysLogTaskTimeRepository().getById(id); + public SysLogTaskTime getLogTaskTime(SysLogTaskTime log) { + return getSysLogTaskTimeRepository().getById(log.getId()); } @Override - @ApiOperation(value = "定时任务日志分页复杂查询",notes = "定时任务日志分页复杂查询") - public ListPager querySysLogTaskTimeByPager(SysLogTaskTime sysLogTaskTime, Pager pager) { - if (sysLogTaskTime == null) { - pager = PagerHelper.getPager(pager,getSysLogTaskTimeRepository().listCount()); - return new ListPager(getSysLogTaskTimeRepository().listPager(pager),pager); - } else { - Bson bson = CoreBsonPack.packBsonByLogTaskTime(sysLogTaskTime); - pager = PagerHelper.getPager(pager,getSysLogTaskTimeRepository().findByBsonCount(bson)); - return new ListPager(getSysLogTaskTimeRepository().findByBsonPager(bson,pager,sysLogTaskTime.getOrderByParam() - ,sysLogTaskTime.getAscOrDesc()),pager); - } + public void deleteLogTaskTime(SysLogTaskTime log) { + getSysLogTaskTimeRepository().deleteByProperty(NoSqlPack.packMongoByLogTaskTime(log)); } - @Override - public long deleteSysLogTaskTimeByDateTimeAfter(String dateTime) { - return getSysLogTaskTimeRepository().deleteByProperty(CoreBsonPack.packBsonByDateTimeAfter(dateTime)); - } /******************************************************* 定时任务日志 End *********************************************************/ - /********************************************************* 操作日志 Start *********************************************************/ - @Override public Map querySysLogSystemAvgExecuteTime(String startTime, String endTime) { // 筛选 Document sub_match = new Document(); sub_match.put("createDatetime", new Document("$gte", startTime).append("$lte", endTime)); - // 分组 + // 分组 Document sub_group = new Document(); sub_group.put("_id", "$createDatetime"); sub_group.put("avg", new Document("$avg", "$executeTime")); @@ -415,13 +310,13 @@ public class SysLogMongoService implements ISysLogService { Document item_doc; while (cursor.hasNext()) { item_doc = cursor.next(); - resultData.put(item_doc.getString("_id"),MathOperation.round(item_doc.getDouble("avg"),0)); + resultData.put(item_doc.getString("_id"), MathOperation.round(item_doc.getDouble("avg"), 0)); } return resultData; } @Override - public Map querySysLogSystemByLevel(String startTime, String endTime){ + public Map querySysLogSystemByLevel(String startTime, String endTime) { // 筛选 Document sub_match = new Document(); sub_match.put("createDatetime", new Document("$gte", startTime).append("$lte", endTime)); @@ -446,7 +341,7 @@ public class SysLogMongoService implements ISysLogService { Document item_doc; while (cursor.hasNext()) { item_doc = cursor.next(); - resultData.put(ImppEnumUtil.LOG_LEVEL.valueOfName(item_doc.getInteger("_id")),MathOperation.round(item_doc.getInteger("count"),0)); + resultData.put(ImppEnumUtil.LOG_LEVEL.valueOfName(item_doc.getInteger("_id")), MathOperation.round(item_doc.getInteger("count"), 0)); } return resultData; diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java index ea59f63..56ad305 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java @@ -83,7 +83,7 @@ public class SystemInitService implements ISystemInitService { List list = configRDao.findAll(); if(list != null && list.size() > 0){ list.forEach(config -> { - RedisUtilTool.setSysConfigByConfigCode(redisRes, config); + RedisUtilTool.setSysConfigByConfigCode(config); }); } LOGGER.info("加载系统配置数量:【{}】",list.size()); @@ -101,12 +101,12 @@ public class SystemInitService implements ISystemInitService { for (String key : parentCodeMap.keySet()) { //存放于缓存 - RedisUtilTool.setSysDictionaryListByCode(redisRes, key, parentCodeMap.get(key)); + RedisUtilTool.setSysDictionaryListByCode(key, parentCodeMap.get(key)); } for (long key : parentIdMap.keySet()) { putDataToCache(CommonConstWords.REDIS_PREFIX_CACHE_DICTIONARY + ":" + key, parentIdMap.get(key),Object.class); - RedisUtilTool.setSysDictionaryListByParentId(redisRes,key,parentIdMap.get(key)); + RedisUtilTool.setSysDictionaryListByParentId(key,parentIdMap.get(key)); } } }catch (Exception e){ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/LicenseClickService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/LicenseClickService.java new file mode 100644 index 0000000..68b682b --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/LicenseClickService.java @@ -0,0 +1,60 @@ +package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ILicenseClickService; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; +import cn.estsh.i3plus.platform.plugin.license.ImppLicenseTool; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; +import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; +import cn.estsh.i3plus.pojo.platform.repository.SysOrganizeRepository; +import cn.estsh.i3plus.pojo.platform.repository.SysUserInfoRepository; +import org.apache.shiro.web.session.mgt.DefaultWebSessionManager; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * @Description : + * @Reference : + * @Author : wei.peng + * @CreateDate : 20-3-23 下午5:16 + * @Modify: + **/ +@Service +public class LicenseClickService implements ILicenseClickService { + + private static final Logger LOGGER = LoggerFactory.getLogger(LicenseClickService.class); + + @Autowired + private SysUserInfoRepository userInfoRDao; + + @Autowired + private SysOrganizeRepository organizeRDao; + + @Resource(name = CommonConstWords.IMPP_BEAN_SESSION_MANAGER) + private DefaultWebSessionManager webSessionManager; + + @Override + public void checkLicenseNumberUser() { + int count = userInfoRDao.findByHqlWhereCount(DdlPackBean.getDdlPackBean()); + ImppLicenseTool.checkUser(count); + } + + @Override + public void checkLicenseNumberOrganize() { + DdlPackBean bean = DdlPackBean.getDdlPackBean(); + DdlPreparedPack.getNumEqualPack(ImppEnumUtil.ORGANIZE_YTPE.TYPE_FACTORY.getValue(),"organizeType",bean); + + ImppLicenseTool.checkOrganize(organizeRDao.findByHqlWhereCount(bean)); + } + + @Override + public void checkLicenseNumberLogin() { + int count = webSessionManager.getSessionDAO().getActiveSessions().size(); + ImppLicenseTool.checkUserSession(count); + } + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysConfigService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysConfigService.java index 212954c..25ce846 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysConfigService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysConfigService.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysConfigService; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -74,9 +75,9 @@ public class SysConfigService implements ISysConfigService { pager = PagerHelper.getPager(pager, SysConfigRDao.listCount()); return new ListPager(SysConfigRDao.listPager(pager),pager); }else { - String hqlPack = CoreHqlPack.packHqlSysConfig(sysConfig); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysConfig(sysConfig); pager = PagerHelper.getPager(pager, SysConfigRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(SysConfigRDao.findByHqlWherePage(hqlPack + sysConfig.orderBy(),pager),pager); + return new ListPager(SysConfigRDao.findByHqlWherePage(hqlPack, pager), pager); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDashboardService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDashboardService.java index d3b77c3..869d17a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDashboardService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDashboardService.java @@ -2,12 +2,15 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; import cn.estsh.i3plus.core.api.iservice.busi.ISysDashboardService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.annotation.AnnoIgnoreLog; 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.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.SysUser; +import cn.estsh.i3plus.pojo.platform.platbean.SysLogException; import cn.estsh.i3plus.pojo.platform.platbean.SysLogOperate; import cn.estsh.i3plus.pojo.platform.repository.SysDepartmentRepository; import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository; @@ -35,23 +38,22 @@ public class SysDashboardService implements ISysDashboardService { private SysDepartmentRepository sysDepartmentRDao; @Autowired + private ISysOrganizeService organizeService; + + @Autowired private ISysLogService logService; @Autowired private SysUserRepository sysUserRDao; - @Override - @AnnoIgnoreLog - @ApiOperation(value = "查询组织个数") - public long getSysOrganizeCount() { - return logService.countSysLogOperate(); - } + private static final Pager PAGER; + private static final SysLogOperate SYS_LOG_OPERATE = new SysLogOperate(); + private static final SysLogException SYS_LOG_EXCEPTION = new SysLogException(); - @Override - @AnnoIgnoreLog - @ApiOperation(value = "获取部门数量") - public long getSysDepartmentCount() { - return sysDepartmentRDao.listCount(); + static { + PAGER = new Pager(); + PAGER.setCurrentPage(1); + PAGER.setPageSize(CommonConstWords.DASHBOARD_TABLE_SIZE); } @Override @@ -67,34 +69,15 @@ public class SysDashboardService implements ISysDashboardService { @Override @AnnoIgnoreLog @ApiOperation(value = "查询操作日志",notes = "查询最新的几条操作日志") - public ListPager findNewSysLogOperateSize(Integer size) { - Pager page = new Pager(); - page.setCurrentPage(1); - page.setPageSize(size); - SysLogOperate sysLogOperate = new SysLogOperate(); - sysLogOperate.setOrderByParam("createDatetime"); - sysLogOperate.setAscOrDesc(CommonEnumUtil.ASC_OR_DESC.DESC.getValue()); - return logService.querySysLogOperateByPager(sysLogOperate,page); + public List findNewSysLogOperateSize() { + return logService.findLogOperateList(SYS_LOG_OPERATE); } @Override @AnnoIgnoreLog @ApiOperation(value = "查询操异常日志",notes = "查询最新的几条异常日志") - public ListPager findNewSysLogExceptionSize(Integer size) { - Pager page = new Pager(); - page.setCurrentPage(1); - page.setPageSize(size); - SysLogOperate sysLogOperate = new SysLogOperate(); - sysLogOperate.setOrderByParam("createDatetime"); - sysLogOperate.setAscOrDesc(CommonEnumUtil.ASC_OR_DESC.DESC.getValue()); - return logService.querySysLogOperateByPager(sysLogOperate,page); - } - - @Override - @AnnoIgnoreLog - @ApiOperation(value = "查询系统日志",notes = "查询系统日志各级别占比") - public Map findSysLogSystempByLevel(String startTime, String endTime) { - return null; + public List findNewSysLogExceptionSize() { + return logService.findLogExceptionList(SYS_LOG_EXCEPTION); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java index fb91681..66b26b2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java @@ -287,7 +287,7 @@ public class SysDepartmentService implements ISysDepartmentService { @Override public long getSysDepartmentCount() { - return departmentRDao.listCount(); + return departmentRDao.findByHqlWhereCount(DdlPackBean.getDdlPackBean()); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java index 2007466..20385a5 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java @@ -6,6 +6,7 @@ import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.BeanCopyTool; import cn.estsh.i3plus.platform.common.tool.FileTool; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -121,9 +122,9 @@ public class SysFileServiceImpl implements ISysFileService { pager = PagerHelper.getPager(pager, sysFileRDao.listCount()); return new ListPager(sysFileRDao.listPager(pager), pager); } else { - String hqlPack = CoreHqlPack.packHqlSysFile(sysFile); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysFile(sysFile); pager = PagerHelper.getPager(pager, sysFileRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysFileRDao.findByHqlWherePage(hqlPack + sysFile.orderBy(), pager), pager); + return new ListPager(sysFileRDao.findByHqlWherePage(hqlPack, pager), pager); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java index fc54773..5265500 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysLocaleResourceService; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.BeanCopyTool; +import cn.estsh.i3plus.platform.common.tool.JsonUtilTool; import cn.estsh.i3plus.platform.common.tool.SerializeTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; @@ -10,6 +11,7 @@ import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.model.platform.MissResourceModel; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource; import cn.estsh.i3plus.pojo.platform.bean.SysMenu; @@ -20,6 +22,7 @@ import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ValidatorBean; +import com.alibaba.fastjson.JSON; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -28,8 +31,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; import static cn.estsh.i3plus.platform.common.util.CommonConstWords.RESOURCE_PREFIX_MENU; @@ -228,4 +231,113 @@ public class SysLocaleResourceService implements ISysLocaleResourceService { sysLocaleResourceRDao.deleteAllInBatch(); } + @Override + public List listMissResourceModel() { + List listStr = redisRes.scan(CommonConstWords.REDIS_PREFIX_CACHE_NO_RES + "*"); + MissResourceModel missResourceModel = null; + List missResourceModelList = new ArrayList<>(listStr.size()); + + // 更新状态 + for (Object missResourceStr : listStr) { + if (missResourceStr == null || StringUtils.isBlank(missResourceStr.toString())) { + continue; + } + missResourceModel = JsonUtilTool.decode(missResourceStr.toString(), MissResourceModel.class); + // 转换失败 + if(missResourceModel==null){ + continue; + } + missResourceModelList.add(missResourceModel); + } + return missResourceModelList; + } + + @Override + public MissResourceModel saveMissResourceModel(MissResourceModel missResourceModel) { + redisRes.putObject(missResourceModel.getKey(), JSON.toJSONString(missResourceModel), -1); + return missResourceModel; + } + + @Override + public void updateMissResourceModelIsValidByKeys(String[] keys, Integer valid) { + List missResourceStrList = redisRes.findObject(Arrays.asList(keys)); + MissResourceModel missResourceModel = null; + List missResourceModelList = new ArrayList<>(missResourceStrList.size()); + + // 更新状态 + for (Object missResourceStr : missResourceStrList) { + if (missResourceStr == null || StringUtils.isBlank(missResourceStr.toString())) { + continue; + } + missResourceModel = JsonUtilTool.decode(missResourceStr.toString(), MissResourceModel.class); + missResourceModel.setIsValid(valid); + missResourceModelList.add(missResourceModel); + } + + // 存入redis + for (MissResourceModel resourceModel : missResourceModelList) { + redisRes.putObject(resourceModel.getKey(), JsonUtilTool.encode(resourceModel)); + } + } + + @Override + public void doCleanInValidMissResource() { + List listStr = redisRes.scan(CommonConstWords.REDIS_PREFIX_CACHE_NO_RES + "*"); + MissResourceModel missResourceModel = null; + List cleanKeys = new ArrayList<>(listStr.size()); + + // 更新状态 + for (Object missResourceStr : listStr) { + if (missResourceStr ==null || StringUtils.isBlank(missResourceStr.toString())) { + continue; + } + missResourceModel = JsonUtilTool.decode(missResourceStr.toString(), MissResourceModel.class); + + if (missResourceModel != null && missResourceModel.getIsValid() != null + && CommonEnumUtil.IS_VAILD.INVAILD.getValue() == missResourceModel.getIsValid()) { + cleanKeys.add(missResourceModel.getKey()); + } + } + redisRes.deleteKey(cleanKeys.toArray(new String[cleanKeys.size()])); + } + + @Override + public void doConversionMissResourceByKeys(String[] keys) { + List missResourceStrList = redisRes.findObject(Arrays.asList(keys)); + MissResourceModel missResourceModel = null; + List missResourceModelList = new ArrayList<>(missResourceStrList.size()); + Map langCodeMap = sysLocaleLanguageRDao.list() + .stream() + .collect( + Collectors.toMap( + SysLocaleLanguage::getLanguageCode, + SysLocaleLanguage::getLanguageName + ) + ); + + // 类型转换 + for (Object missResourceStr : missResourceStrList) { + if (missResourceStr == null || StringUtils.isBlank(missResourceStr.toString())) { + continue; + } + missResourceModel = JsonUtilTool.decode(missResourceStr.toString(), MissResourceModel.class); + missResourceModelList.add(missResourceModel); + } + + SysLocaleResource sysLocaleResource; + for (MissResourceModel resourceModel : missResourceModelList) { + sysLocaleResource = new SysLocaleResource(); + sysLocaleResource.setSoftType(resourceModel.getSoftType()); + sysLocaleResource.setLanguageCode(resourceModel.getLanguageCode()); + sysLocaleResource.setLanguageNameRdd(langCodeMap.get(resourceModel.getLanguageCode())); + sysLocaleResource.setResourceType(resourceModel.getResourceType()); + sysLocaleResource.setResourceKey(resourceModel.getResourceKey()); + sysLocaleResource.setResourceValue(resourceModel.getResourceValue()); + sysLocaleResource.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + + insertSysLocaleResource(sysLocaleResource); + redisRes.deleteKey(resourceModel.getKey()); + } + } + } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogExceptionService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogExceptionService.java index 85770db..7ee62ad 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogExceptionService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogExceptionService.java @@ -35,7 +35,7 @@ //// pager = PagerHelper.getPager(pager, (int) sysLogExceptionRDao.count()); //// return new ListPager(sysLogExceptionRDao.findAll(),pager); //// }else{ -//// Bson bson = CoreBsonPack.packBsonBySysLogException(sysLogException); +//// Bson bson = CoreBsonPack.packMongoBySysLogException(sysLogException); //// pager = PagerHelper.getPager(pager,sysLogExceptionRDao.findByBsonCount(bson)); //// //分页,排序 //// return new ListPager(sysLogExceptionRDao.findByBsonPager(bson,pager,sysLogException.getOrderByParam() diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogSystemService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogSystemService.java index 53eea83..8e22f1c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogSystemService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogSystemService.java @@ -96,7 +96,7 @@ //// pager = PagerHelper.getPager(pager,logSystemRDao.listCount()); //// return new ListPager(logSystemRDao.listPager(pager),pager); //// } else { -//// Bson bson = CoreBsonPack.packBsonByLogSystem(logSystem); +//// Bson bson = CoreBsonPack.packMongoByLogSystem(logSystem); //// pager = PagerHelper.getPager(pager,logSystemRDao.findByBsonCount(bson)); //// return new ListPager(logSystemRDao.findByBsonPager(bson,pager,logSystem.getOrderByParam() //// ,logSystem.getAscOrDesc()),pager); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogTaskTimeService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogTaskTimeService.java index 5259959..5853095 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogTaskTimeService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogTaskTimeService.java @@ -55,7 +55,7 @@ //// pager = PagerHelper.getPager(pager,sysLogTaskTimeRDao.listCount()); //// return new ListPager(sysLogTaskTimeRDao.listPager(pager),pager); //// } else { -//// Bson bson = CoreBsonPack.packBsonByLogTaskTime(sysLogTaskTime); +//// Bson bson = CoreBsonPack.packMongoByLogTaskTime(sysLogTaskTime); //// pager = PagerHelper.getPager(pager,sysLogTaskTimeRDao.findByBsonCount(bson)); //// return new ListPager(sysLogTaskTimeRDao.findByBsonPager(bson,pager,sysLogTaskTime.getOrderByParam() //// ,sysLogTaskTime.getAscOrDesc()),pager); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrderNoRuleService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrderNoRuleService.java index 274cd74..0cda5d2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrderNoRuleService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrderNoRuleService.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysOrderNoRuleService; import cn.estsh.i3plus.core.apiservice.util.OrderNoMakeUtil; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -81,9 +82,9 @@ public class SysOrderNoRuleService implements ISysOrderNoRuleService { pager = PagerHelper.getPager(pager, sysOrderNoRuleRDao.listCount()); return new ListPager(sysOrderNoRuleRDao.listPager(pager), pager); } else { - String hqlPack = CoreHqlPack.packHqlSysOrderNoRule(sysOrderNoRule); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysOrderNoRule(sysOrderNoRule); pager = PagerHelper.getPager(pager, sysOrderNoRuleRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysOrderNoRuleRDao.findByHqlWherePage(hqlPack + sysOrderNoRule.orderBy(), pager), pager); + return new ListPager(sysOrderNoRuleRDao.findByHqlWherePage(hqlPack, pager), pager); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java index a6364aa..147c9b1 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java @@ -234,7 +234,7 @@ public class SysOrganizeService implements ISysOrganizeService { @Override public long getSysOrganizeCount() { - return organizeRDao.listCount(); + return organizeRDao.findByHqlWhereCount(DdlPackBean.getDdlPackBean()); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java index 9021245..6cee1e2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java @@ -2,7 +2,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.base.ISysLogService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService; -import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -11,11 +11,9 @@ import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysRefTaskCyclePlan; import cn.estsh.i3plus.pojo.platform.bean.SysTaskPlan; import cn.estsh.i3plus.pojo.platform.platbean.SysLogTaskTime; -import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRefTaskCyclePlanRepository; import cn.estsh.i3plus.pojo.platform.repository.SysTaskPlanRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; -import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -160,9 +158,9 @@ public class SysTaskPlanService implements ISysTaskPlanService { pager = PagerHelper.getPager(pager, sysTaskPlanRDao.listCount()); return new ListPager(sysTaskPlanRDao.listPager(pager), pager); } else { - String hqlPack = CoreHqlPack.packHqlSysTaskPlan(sysTaskPlan); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysTaskPlan(sysTaskPlan); pager = PagerHelper.getPager(pager, sysTaskPlanRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysTaskPlanRDao.findByHqlWherePage(hqlPack + sysTaskPlan.orderBy(), pager), pager); + return new ListPager(sysTaskPlanRDao.findByHqlWherePage(hqlPack, pager), pager); } } @@ -178,6 +176,6 @@ public class SysTaskPlanService implements ISysTaskPlanService { @Override @ApiOperation(value = "添加定时任务执行日志", notes = "添加定时任务执行日志") public void logInsertSysLogTaskTime(SysLogTaskTime sysLogTaskTime) { - logService.insertSysLogTaskTime(sysLogTaskTime); + logService.insertLogTaskTime(sysLogTaskTime); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskService.java index 5110f43..181178e 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskService.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -126,13 +127,13 @@ public class SysTaskService implements ISysTaskService { @Override @ApiOperation(value = "任务管理复杂查询,分页,排序",notes = "任务管理复杂查询,分页,排序") public ListPager querySysTaskByPager(SysTask sysTask, Pager pager) { - if(sysTask == null) { + if (sysTask == null) { pager = PagerHelper.getPager(pager, sysTaskRDao.listCount()); - return new ListPager(sysTaskRDao.listPager(pager),pager); - }else { - String hqlPack = CoreHqlPack.packHqlSysTask(sysTask); + return new ListPager(sysTaskRDao.listPager(pager), pager); + } else { + DdlPackBean hqlPack = CoreHqlPack.packHqlSysTask(sysTask); pager = PagerHelper.getPager(pager, sysTaskRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysTaskRDao.findByHqlWherePage(hqlPack + sysTask.orderBy(),pager),pager); + return new ListPager(sysTaskRDao.findByHqlWherePage(hqlPack, pager), pager); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java index fc365ef..9cea4ad 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java @@ -609,7 +609,7 @@ public class SysUserService implements ISysUserService { @Override public SessionUser packPageSessionUser(SessionUser sessionUser, SysUser user) { - SysConfig configPageList = RedisUtilTool.getSysConfigByConfigCode(redisRes, CommonConstWords.CONFIG_PAGE_SIZE_LIST); + SysConfig configPageList = RedisUtilTool.getSysConfigByConfigCode(CommonConstWords.CONFIG_PAGE_SIZE_LIST); try { if(configPageList != null && StringUtils.isNotBlank(configPageList.getConfigValue())){ String[] split = configPageList.getConfigValue().split(","); @@ -623,7 +623,7 @@ public class SysUserService implements ISysUserService { sessionUser.setPageSizeArray(CommonConstWords.CONFIG_PAGE_SIZE_LIST_DEFAULT); } - SysConfig configPageSize = RedisUtilTool.getSysConfigByConfigCode(redisRes, CommonConstWords.CONFIG_PAGE_DEFAULT_SIZE); + SysConfig configPageSize = RedisUtilTool.getSysConfigByConfigCode(CommonConstWords.CONFIG_PAGE_DEFAULT_SIZE); try { if(configPageSize != null && StringUtils.isNotBlank(configPageSize.getConfigValue())){ sessionUser.setPageDefaultSize(Integer.parseInt(configPageSize.getConfigValue())); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SystemResourceService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SystemResourceService.java index 0bbad47..796a39e 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SystemResourceService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SystemResourceService.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISystemResourceService; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -32,7 +33,7 @@ import java.util.Map; @Service public class SystemResourceService implements ISystemResourceService { - @Resource(name="redisRes") + @Resource(name= CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; @Autowired diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/NoSqlPack.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/NoSqlPack.java new file mode 100644 index 0000000..2e8bb6e --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/NoSqlPack.java @@ -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("createDatetime", bson, sysLogException.getCreateDateTimeStart(),sysLogException.getCreateDateTimeEnd()); + + 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("createDatetime", bson, logOperate.getCreateDateTimeStart(),logOperate.getCreateDateTimeEnd()); + 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.andStringLike("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("createDatetime", bson, logSystem.getCreateDateTimeStart(),logSystem.getCreateDateTimeEnd()); + 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("createDatetime", bson, sysLogTaskTime.getCreateDateTimeStart(),sysLogTaskTime.getCreateDateTimeEnd()); + + 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; + } + +} diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestSysLocaleResourceService.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestSysLocaleResourceService.java index 3bc7df8..23f9954 100644 --- a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestSysLocaleResourceService.java +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestSysLocaleResourceService.java @@ -3,6 +3,7 @@ package test.cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysLocaleResourceService; import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase; import cn.estsh.i3plus.platform.common.tool.ExcelTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource; import cn.estsh.impp.framework.boot.util.ImppRedis; import org.junit.Test; @@ -29,7 +30,7 @@ public class TestSysLocaleResourceService extends TestBase { @Autowired private EntityManager entityManager; - @Resource(name = "redisRes") + @Resource(name = CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/ExcelReadData.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/ExcelReadData.java index de397f5..88121c0 100644 --- a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/ExcelReadData.java +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/ExcelReadData.java @@ -1,6 +1,7 @@ package test.cn.estsh.i3plus.core.apiservice.util; import cn.estsh.i3plus.platform.common.tool.ExcelTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.platform.bean.SysMenu; import cn.estsh.impp.framework.boot.util.ImppRedis; import com.alibaba.fastjson.JSON; @@ -29,7 +30,7 @@ public class ExcelReadData { private static ImppRedis redisRes; - @Resource(name = "redisRes") + @Resource(name = CommonConstWords.IMPP_REDIS_RES) public void setRedisRes(ImppRedis redisRes) { this.redisRes = redisRes; } diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/JavaTest.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/JavaTest.java index 49af183..af61f70 100644 --- a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/JavaTest.java +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/JavaTest.java @@ -2,6 +2,7 @@ package test.cn.estsh.i3plus.core.apiservice.util; import cn.estsh.i3plus.platform.common.tool.ExcelTool; import cn.estsh.i3plus.platform.common.tool.StringTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.platform.bean.SysMenu; import cn.estsh.impp.framework.boot.util.ImppRedis; import lombok.Data; @@ -945,7 +946,7 @@ public class JavaTest { private static ImppRedis redisRes; - @Resource(name = "redisRes") + @Resource(name = CommonConstWords.IMPP_REDIS_RES) public void setRedisRes(ImppRedis redisRes) { this.redisRes = redisRes; } diff --git a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/TestExcelUtil.java b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/TestExcelUtil.java index c575a78..623ee8b 100644 --- a/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/TestExcelUtil.java +++ b/modules/i3plus-core-apiservice/src/test/java/test/cn/estsh/i3plus/core/apiservice/util/TestExcelUtil.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.util; import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase; import cn.estsh.i3plus.platform.common.tool.ExcelTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysTool; import cn.estsh.impp.framework.boot.util.ImppRedis; @@ -37,7 +38,7 @@ public class TestExcelUtil extends TestBase { @Autowired private EntityManager entityManager; - @Resource(name = "redisRes") + @Resource(name = CommonConstWords.IMPP_REDIS_RES) private ImppRedis redisRes; @Test diff --git a/pom.xml b/pom.xml index 4c46f27..fc3bc70 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ i3plus.core i3plus-core pom - 1.0-SNAPSHOT + 1.0-DEV-SNAPSHOT modules/i3plus-core-api modules/i3plus-core-apiservice @@ -273,6 +273,11 @@ 1.1.6 + + org.elasticsearch + elasticsearch + 7.5.1 + @@ -344,7 +349,7 @@ - ${project.artifactId}-${profileActive}-${project.version} + ${project.artifactId}-${project.version}