From 8e6883b2dfbaa8e2eb63ae8373cf71e1b384d879 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Wed, 19 Dec 2018 09:41:30 +0800 Subject: [PATCH] =?UTF-8?q?bug=E8=A7=A3=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/iservice/busi/ISysDashboardService.java | 3 ++- .../core/api/iservice/busi/ISysUserService.java | 1 - .../apiservice/controller/DemoCloudController.java | 5 +++-- .../controller/busi/SysConfigController.java | 19 ++++++++++++++++--- .../controller/busi/SysDashboardController.java | 22 ++++++++++++++++++---- .../controller/busi/SysMessageController.java | 8 ++++---- .../controller/busi/SysToolTypeController.java | 2 +- .../apiservice/daoimpl/SysLogSystemDaoImpl.java | 6 ++++-- .../serviceimpl/busi/SysDashboardService.java | 14 ++++++++++++-- 9 files changed, 60 insertions(+), 20 deletions(-) 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 5830338..da555a1 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 @@ -1,5 +1,6 @@ package cn.estsh.i3plus.core.api.iservice.busi; +import cn.estsh.i3plus.pojo.platform.bean.SysUser; import io.swagger.annotations.ApiOperation; import java.util.List; @@ -33,7 +34,7 @@ public interface ISysDashboardService { * @return */ @ApiOperation(value = "查询用户登录日志",notes = "查询用户登录日志") - List findSysUserLoginLog(); + List findSysUserLoginLog(Integer size); /** * 查询最近操作日志 diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java index 810d6f6..ca33a7e 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysUserService.java @@ -6,7 +6,6 @@ import cn.estsh.i3plus.pojo.platform.bean.*; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authc.AuthenticationException; -import javax.servlet.http.HttpServletRequest; import java.util.List; /** diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java index fee0cc9..8c08965 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java @@ -41,9 +41,10 @@ public class DemoCloudController { @GetMapping(value="/test") @ApiOperation(value="core测试",notes = "core测试") - public ResultBean testCore(String test) { + public BaseResultBean testCore(String test) { LOGGER.info("{}:{},【impp-core接受数据】{}",ipAddress,serverPort,test); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + //return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + return BaseResultBean.buildBaseResultBean(true,""); } @GetMapping(value="/test-wms") diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java index 150bf5f..99017b1 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysConfigController.java @@ -6,6 +6,7 @@ import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; 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.SessionUser; @@ -14,6 +15,7 @@ import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.auth.AuthUtil; 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 cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; @@ -71,9 +73,20 @@ public class SysConfigController extends CoreBaseController { @DeleteMapping(value = "/delete/{id}") @ApiOperation(value = "根据id删除系统参数", notes = "根据id删除系统参数") - public ResultBean deleteSysConfig(@PathVariable("id") String id) { + public ResultBean deleteSysConfig(@PathVariable("id") String idStr) { try { - sysConfigService.deleteSysConfigById(Long.parseLong(id)); + // 条件验证 + ValidatorBean.checkNotNull(idStr,"id不能为空"); + if(sysConfigService.getSysConfigById(Long.parseLong(idStr)) == null){ + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) + .setErrorDetail("字典不存在") + .setErrorSolution("请重新输入字典id") + .build(); + } + + sysConfigService.deleteSysConfigById(Long.parseLong(idStr)); return ResultBean.success("删除成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -100,7 +113,7 @@ public class SysConfigController extends CoreBaseController { ConvertBean.modelUpdate(sysConfig,user); sysConfigService.updateSysConfig(sysConfig); - return ResultBean.success("删除成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + return ResultBean.success("修改成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); }catch(Exception e){ 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 9e42ca4..b40db50 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 @@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysDashboardService; 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.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.impp.framework.base.controller.CoreBaseController; @@ -40,12 +41,12 @@ public class SysDashboardController extends CoreBaseController { @Autowired private ISysDashboardService sysDashboardService; - @Resource(name="redisCore") - private ImppRedis redisCore; - @Resource(name="imppSessionManager") private DefaultWebSessionManager webSessionManager; + @Resource(name="redisCore") + private ImppRedis redisCore; + @GetMapping("/get") @ApiOperation(value = "获取dashboard数据") public ResultBean getDashboardData(){ @@ -69,9 +70,22 @@ public class SysDashboardController extends CoreBaseController { dashboardData.put("logException",sysDashboardService.findNewSysLogExceptionSize(10)); dashboardData.put("avgExecuteTime",sysDashboardService.querySysLogSystemAvgExecuteTime(startTime,endTime)); dashboardData.put("levelLogNum",sysDashboardService.querySysLogSystemByLevel(startTime,endTime)); + dashboardData.put("userLoginLog",sysDashboardService.findSysUserLoginLog(10)); + + //获取上一分钟 + sdf = new SimpleDateFormat("yyyyMMddHHmm"); + cal.setTime(new Date()); + cal.add(Calendar.MINUTE,-1); + dashboardData.put("serverPressure",redisCore.getHashMap(CommonConstWords.REDIS_DASHBOARD_MINUTE_SOURCE + "_" + sdf.format(cal.getTime()))); + + //获取上一秒 + sdf = new SimpleDateFormat("yyyyMMddHHmmss"); + cal.setTime(new Date()); + cal.add(Calendar.SECOND,-1); + dashboardData.put("serverPressure",redisCore.getHashMap(CommonConstWords.REDIS_DASHBOARD_SECOND_PRESSURE + "_" + sdf.format(cal.getTime()))); redisCore.putObject(PlatformConstWords.DASHBOARD_REDIS_KEY + new Date().getTime(), - SerializeTool.serialization(dashboardData),5); + SerializeTool.serialization(dashboardData),60); return ResultBean.success("添加成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()) .setResultMap(dashboardData); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java index f5cdf0c..d60778a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java @@ -128,9 +128,9 @@ public class SysMessageController extends CoreBaseController { @ApiOperation(value = "根据id查询消息",notes = "根据id查询消息") public ResultBean getSysMessageById(@PathVariable("id") String idStr){ try { - SysMessage sysMessageList = sysMessageService.getSysMessageById(Long.parseLong(idStr)); - if (sysMessageList != null) { - return ResultBean.success("查询成功").setResultObject(sysMessageList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + SysMessage sysMessage = sysMessageService.getSysMessageById(Long.parseLong(idStr)); + if (sysMessage != null) { + return ResultBean.success("查询成功").setResultObject(sysMessage).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }else { return ResultBean.fail("数据不存在").setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode()); } @@ -182,7 +182,7 @@ public class SysMessageController extends CoreBaseController { try { // 设置消息类型为站内信 sysRefUserMessage.setMessageTypeRdd(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue()); - sysRefUserMessage.setReceiverId(getSessionUser().getUser().getId()); + sysRefUserMessage.setReceiverId(getSessionUser().getUserId()); ListPager userMessageList = sysMessageService.querySysRefUserMessageByPager(sysRefUserMessage,pager); return ResultBean.success("查询成功").setListPager(userMessageList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysToolTypeController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysToolTypeController.java index 0336db1..bd2ac32 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysToolTypeController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysToolTypeController.java @@ -92,7 +92,7 @@ public class SysToolTypeController extends CoreBaseController{ @DeleteMapping("/delete/{id}") @ApiOperation(value = "根据id删除硬件类型",notes = "根据id删除硬件类型") - public ResultBean deleteSysToolType(@PathVariable String idStr){ + public ResultBean deleteSysToolType(@PathVariable("id") String idStr){ try { ValidatorBean.checkNotNull(idStr,"id不能为空"); if(toolTypeService.getSysToolTypeById(Long.parseLong(idStr)) == null){ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/daoimpl/SysLogSystemDaoImpl.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/daoimpl/SysLogSystemDaoImpl.java index dbdf46f..afeebf3 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/daoimpl/SysLogSystemDaoImpl.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/daoimpl/SysLogSystemDaoImpl.java @@ -60,8 +60,9 @@ public class SysLogSystemDaoImpl implements ISysLogSystemDao { MongoCursor cursor = findIter.iterator(); Map resultData = new HashMap(); + Document item_doc; while (cursor.hasNext()) { - Document item_doc = cursor.next(); + item_doc = cursor.next(); resultData.put(item_doc.getString("_id"),MathOperation.round(item_doc.getDouble("avg"),0)); } return resultData; @@ -90,8 +91,9 @@ public class SysLogSystemDaoImpl implements ISysLogSystemDao { MongoCursor cursor = findIter.iterator(); Map resultData = new HashMap(); + Document item_doc; while (cursor.hasNext()) { - Document item_doc = cursor.next(); + item_doc = cursor.next(); resultData.put(ImppEnumUtil.LOG_LEVEL.valueOfName(item_doc.getInteger("_id")),MathOperation.round(item_doc.getInteger("count"),0)); } 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 18fed9e..49b8077 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 @@ -4,12 +4,16 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysDashboardService; import cn.estsh.i3plus.core.apiservice.dao.ISysLogSystemDao; 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.SysLogOperate; +import cn.estsh.i3plus.pojo.platform.bean.SysUser; import cn.estsh.i3plus.pojo.platform.repository.SysDepartmentRepository; import cn.estsh.i3plus.pojo.platform.repository.SysLogUserLoginRepository; import cn.estsh.i3plus.pojo.platform.repository.SysOrganizeRepository; +import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository; import cn.estsh.i3plus.pojo.platform.repositorymongo.SysLogExceptionRepository; import cn.estsh.i3plus.pojo.platform.repositorymongo.SysLogOperateRepository; +import com.netflix.discovery.converters.Auto; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -45,6 +49,9 @@ public class SysDashboardService implements ISysDashboardService { @Autowired private ISysLogSystemDao sysLogSystemDao; + @Autowired + private SysUserRepository sysUserRDao; + @Override @ApiOperation(value = "查询组织个数") public long getSysOrganizeCount() { @@ -59,8 +66,11 @@ public class SysDashboardService implements ISysDashboardService { @Override @ApiOperation(value = "查询用户登录日志",notes = "查询用户登录日志") - public List findSysUserLoginLog() { - return null; + public List findSysUserLoginLog(Integer size) { + StringBuffer orderString = new StringBuffer(); + HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()},new String[]{"userLoginLastDateTime"},orderString); + + return sysUserRDao.findByHqlTopWhere(orderString.toString(),size); } @Override