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