diff --git a/modules/i3plus-core-api/i3plus-core-api.iml b/modules/i3plus-core-api/i3plus-core-api.iml
index b27d1a0..5fc3092 100644
--- a/modules/i3plus-core-api/i3plus-core-api.iml
+++ b/modules/i3plus-core-api/i3plus-core-api.iml
@@ -14,89 +14,4 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDepartmentService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDepartmentService.java
index 6f0f6fa..e7477e2 100644
--- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDepartmentService.java
+++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDepartmentService.java
@@ -3,6 +3,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.platform.bean.SysDepartment;
+import io.swagger.annotations.ApiOperation;
import java.util.List;
@@ -68,4 +69,11 @@ public interface ISysDepartmentService {
* @return
*/
ListPager findSysDepartmentByPager(SysDepartment department, Pager pager);
+
+ /**
+ * 获取部门数量
+ * @return
+ */
+ @ApiOperation(value = "获取部门数量")
+ long getSysDepartmentCount();
}
diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogOperateService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogOperateService.java
index 94054fc..1d9576f 100644
--- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogOperateService.java
+++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogOperateService.java
@@ -73,4 +73,12 @@ public interface ISysLogOperateService {
*/
@ApiOperation(value = "操作日志复杂查询,分页,排序",notes = "操作日志复杂查询,分页,排序")
ListPager querySysLogOperateByPager(SysLogOperate logOperate, Pager pager);
+
+ /**
+ * 查询最新的操作日志
+ * @param num
+ * @return
+ */
+ @ApiOperation(value = "查询最新的操作日志")
+ List findNewSysLogOperate(Integer num);
}
diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogSystemService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogSystemService.java
index 82e32b4..2e86efb 100644
--- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogSystemService.java
+++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysLogSystemService.java
@@ -6,6 +6,7 @@ import cn.estsh.i3plus.pojo.platform.bean.SysLogSystem;
import io.swagger.annotations.ApiOperation;
import java.util.List;
+import java.util.Map;
/**
* @Description : 系统日志服务接口
@@ -30,4 +31,13 @@ public interface ISysLogSystemService {
@ApiOperation(value = "系统日志分页复杂查询",notes = "系统日志分页复杂查询")
ListPager querySysLogSystemByPager(SysLogSystem logSystem, Pager pager);
+
+ /**
+ * 查询时间段内平均请求耗时
+ * @param startTime
+ * @param endTime
+ * @return
+ */
+ @ApiOperation(value = "查询时间段内平均请求耗时")
+ Map queryAvgExecuteTime(String startTime,String endTime);
}
diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysOrganizeService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysOrganizeService.java
index ecb7a68..cceb453 100644
--- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysOrganizeService.java
+++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysOrganizeService.java
@@ -9,7 +9,7 @@ import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
- * @Description : 组织业务接口
+ * @Description : 组织业务接口
* @Reference :
* @Author : wei.peng
* @Date : 2018-10-22 16:58:42.941
@@ -72,4 +72,11 @@ public interface ISysOrganizeService {
* @return
*/
SysOrganize getSysOrganizeById(Long id);
+
+ /**
+ * 查询组织个数
+ * @return
+ */
+ @ApiOperation(value = "查询组织个数")
+ long getSysOrganizeCount();
}
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 a1e5cb9..4127d7f 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
@@ -3,6 +3,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.platform.bean.*;
+import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authc.AuthenticationException;
import java.util.List;
@@ -175,4 +176,11 @@ public interface ISysUserService {
* @param user
*/
void checkSysUserOnly(SysUser user);
+
+ /**
+ * 查询账户数量
+ * @return
+ */
+ @ApiOperation(value = "查询账户数量")
+ long getSysUserCount();
}
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
new file mode 100644
index 0000000..7ce95fb
--- /dev/null
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDashboardController.java
@@ -0,0 +1,88 @@
+package cn.estsh.i3plus.core.apiservice.controller.busi;
+
+import cn.estsh.i3plus.core.api.iservice.busi.*;
+import cn.estsh.i3plus.platform.common.tool.TimeTool;
+import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
+import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
+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 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 javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @Description :
+ * @Reference :
+ * @Author : yunhao
+ * @CreateDate : 2018-12-10 17:04
+ * @Modify:
+ **/
+@RestController
+@Api(description = "Dashboard服务")
+@RequestMapping(PlatformConstWords.BASE_URL + "/dashboard")
+public class SysDashboardController {
+
+ @Autowired
+ private ISysUserService sysUserService;
+ @Autowired
+ private ISysOrganizeService sysOrganizeService;
+ @Autowired
+ private ISysDepartmentService sysDepartmentService;
+ @Autowired
+ private ISysMessageService sysMessageService;
+ @Autowired
+ private ISysLogOperateService sysLogOperateService;
+ @Autowired
+ private ISysLogSystemService sysLogSystemService;
+// @Autowired
+// private EurekaServerContext eurekaServerContext;
+ @Resource(name="redisRes")
+ private ImppRedis redisRes;
+
+
+ @GetMapping("/get")
+ @ApiOperation(value = "获取dashboard数据")
+ public ResultBean getDashboardData(){
+ try {
+ Map dashboardData = (Map) redisRes.getObject(PlatformConstWords.DASHBOARD_REDIS_KEY);
+ if(dashboardData == null){
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(new Date());
+
+ String startTime = sdf.format(new Date());
+ cal.add(Calendar.MINUTE,10);
+ String endTime = sdf.format(cal.getTime());
+
+ dashboardData = new HashMap<>();
+ dashboardData.put("userNum",sysUserService.getSysUserCount());
+ dashboardData.put("orgNum",sysOrganizeService.getSysOrganizeCount());
+ dashboardData.put("deptNum",sysDepartmentService.getSysDepartmentCount());
+ dashboardData.put("logOperate",sysLogOperateService.findNewSysLogOperate(10));
+ dashboardData.put("",sysLogSystemService.queryAvgExecuteTime(startTime,endTime));
+
+ redisRes.putHashMap(PlatformConstWords.DASHBOARD_REDIS_KEY,dashboardData,1000*60);
+ }
+ return ResultBean.success("添加成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(dashboardData);
+ } 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/SysMessageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMessageController.java
index 3d24a1c..f5cdf0c 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
@@ -64,8 +64,6 @@ public class SysMessageController extends CoreBaseController {
sysMessage.setMessageSendTime(sdf.format(new Date()));
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
- ConvertBean.modelInitialize(sysMessage,getSessionUser());
-
sysMessageService.doSendSysMessage(sysMessage);
return ResultBean.success("添加成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/dao/ISysLogSystemDao.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/dao/ISysLogSystemDao.java
new file mode 100644
index 0000000..c318ffd
--- /dev/null
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/dao/ISysLogSystemDao.java
@@ -0,0 +1,28 @@
+package cn.estsh.i3plus.core.apiservice.dao;
+
+import io.swagger.annotations.ApiOperation;
+import org.bson.Document;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description : 操作日志
+ * @Reference :
+ * @Author : yunhao
+ * @CreateDate : 2018-12-11 13:22
+ * @Modify:
+ **/
+public interface ISysLogSystemDao {
+
+
+ /**
+ * 查询时间段内平均请求耗时
+ * @param startTime
+ * @param endTime
+ * @return
+ */
+ @ApiOperation(value = "查询时间段内平均请求耗时")
+ Map querySysLogOperateAvgExecuteTime(String startTime, String endTime);
+
+}
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MailQueueReceiver.java
deleted file mode 100644
index 587584a..0000000
--- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MailQueueReceiver.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package cn.estsh.i3plus.core.apiservice.mq;
-
-import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
-import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
-import cn.estsh.i3plus.core.apiservice.util.MailUtil;
-import cn.estsh.i3plus.platform.common.tool.TimeTool;
-import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
-import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
-import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
-import cn.estsh.i3plus.pojo.platform.bean.SysUser;
-import com.rabbitmq.client.Channel;
-import org.apache.commons.lang3.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.amqp.core.Message;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-
-/**
- * @Description : 邮件队列处理
- * @Reference :
- * @Author : yunhao
- * @CreateDate : 2018-11-15 22:15
- * @Modify:
- **/
-@Component
-public class MailQueueReceiver {
- private static final Logger LOGGER = LoggerFactory.getLogger(MailQueueReceiver.class);
-
- @Autowired
- ISysMessageService sysMessageService;
- @Autowired
- ISysUserService sysUserService;
- @Autowired
- MailUtil mailUtil;
- /**
- * 系统邮件处理队列
- * @param msg
- * @param channel
- * @param message
- */
-// @RabbitListener(queues = I3CoreQueueConfig.IMPP_MESSAGE_MAIL_QUEUE)
- public void processImppMail(SysMessage msg, Channel channel, Message message) {
- try {
- LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}",msg);msg = sysMessageService.insertSysMessage(msg);
- mailUtil.init();
-
- // 收件人信息
- String[] messageReceiver = msg.getMessageReceiversId().split(",");
- String[] receiverName = new String[messageReceiver.length];
-
- SysRefUserMessage refUserMessage;
- SysUser sysUser;
-
- for (int i = 0; i < messageReceiver.length; i++) {
- sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i]));
- receiverName[i] = sysUser.getUserName();
-
- refUserMessage = new SysRefUserMessage();
- refUserMessage.setMessageId(msg.getId());
- refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
- refUserMessage.setMessageTypeRdd(msg.getMessageType());
- refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
- refUserMessage.setReceiverId(sysUser.getId());
- refUserMessage.setReceiverNameRdd(sysUser.getUserName());
- refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
- refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
-
- sysMessageService.insertSysRefUserMessage(refUserMessage);
-
- // 发送邮件
- mailUtil.setSubject(msg.getMessageTitle());
- mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType()));
- mailUtil.setBody(msg.getMessageContent());
- mailUtil.setTo(sysUser.getUserEmail());
- mailUtil.send();
- }
-
- msg.setMessageSenderNameRdd(StringUtils.join(receiverName, ","));
- sysMessageService.updateSysMessage(msg);
-
- //信息已处理
- channel.basicAck(message.getMessageProperties().getDeliveryTag(),false);
- } catch (IOException e) {
- LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}",e.getMessage(),e);
- //丢弃这条消息
- try {
- // 未成功处理,重新发送
- channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true);
- } catch (IOException e1) {
- e1.printStackTrace();
- }
- }
- }
-}
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/LetterQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java
similarity index 94%
rename from modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/LetterQueueReceiver.java
rename to modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java
index 8f19e23..39472b8 100644
--- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/LetterQueueReceiver.java
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiver.java
@@ -14,6 +14,7 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.core.Message;
+import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -28,8 +29,8 @@ import java.util.List;
* @Modify:
**/
@Component
-public class LetterQueueReceiver {
- private static final Logger LOGGER = LoggerFactory.getLogger(LetterQueueReceiver.class);
+public class MessageLetterQueueReceiver {
+ private static final Logger LOGGER = LoggerFactory.getLogger(MessageLetterQueueReceiver.class);
@Autowired
ISysMessageService sysMessageService;
@@ -43,7 +44,7 @@ public class LetterQueueReceiver {
* @param message
* 发送:rabbitTemplate.convertAndSend(I3CoreQueueConfig.IMPP_MESSAGE_QUEUE, new SysMessage(....));
*/
-// @RabbitListener(queues = I3CoreQueueConfig.IMPP_MESSAGE_LETTER_QUEUE)
+ @RabbitListener(queues = I3CoreQueueConfig.IMPP_MESSAGE_LETTER_QUEUE)
public void processImppMessage(SysMessage msg, Channel channel, Message message) {
try {
LOGGER.info("【MQ-IMPP_MESSAGE_LETTER_QUEUE】数据接收成功:{}",msg);
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java
new file mode 100644
index 0000000..462acd3
--- /dev/null
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java
@@ -0,0 +1,112 @@
+package cn.estsh.i3plus.core.apiservice.mq;
+
+import cn.estsh.i3plus.core.api.iservice.busi.ISysConfigService;
+import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
+import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
+import cn.estsh.i3plus.core.apiservice.util.MailUtil;
+import cn.estsh.i3plus.platform.common.tool.TimeTool;
+import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
+import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
+import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
+import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
+import cn.estsh.i3plus.pojo.platform.bean.SysUser;
+import com.rabbitmq.client.Channel;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.amqp.core.Message;
+import org.springframework.amqp.rabbit.annotation.RabbitListener;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.io.IOException;
+
+/**
+ * @Description : 邮件队列处理
+ * @Reference :
+ * @Author : yunhao
+ * @CreateDate : 2018-11-15 22:15
+ * @Modify:
+ **/
+@Component
+public class MessageMailQueueReceiver {
+ private static final Logger LOGGER = LoggerFactory.getLogger(MessageMailQueueReceiver.class);
+
+ @Autowired
+ ISysMessageService sysMessageService;
+ @Autowired
+ ISysUserService sysUserService;
+ @Autowired
+ ISysConfigService sysConfigService;
+ @Autowired
+ MailUtil mailUtil;
+ /**
+ * 系统邮件处理队列
+ * @param msg
+ * @param channel
+ * @param message
+ */
+ @RabbitListener(queues = I3CoreQueueConfig.IMPP_MESSAGE_MAIL_QUEUE)
+ public void processImppMail(SysMessage msg, Channel channel, Message message) {
+ try {
+ LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}",msg);msg = sysMessageService.insertSysMessage(msg);
+ mailUtil.init();
+
+ // 系统预警邮件与用户邮件判断
+ if(PlatformConstWords.CONTACT_MAIL.equals(msg.getMessageReceiversId())){
+ // 发送邮件
+ mailUtil.setSubject(msg.getMessageTitle());
+ mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType()));
+ mailUtil.setBody(msg.getMessageContent());
+ mailUtil.setTo(sysConfigService.getSysConfigByCode(PlatformConstWords.CONTACT_MAIL).getConfigValue());
+ mailUtil.send();
+ }else {
+
+ // 收件人信息
+ String[] messageReceiver = msg.getMessageReceiversId().split(",");
+ String[] receiverName = new String[messageReceiver.length];
+
+ SysRefUserMessage refUserMessage;
+ SysUser sysUser;
+
+ for (int i = 0; i < messageReceiver.length; i++) {
+ sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i]));
+ receiverName[i] = sysUser.getUserName();
+
+ refUserMessage = new SysRefUserMessage();
+ refUserMessage.setMessageId(msg.getId());
+ refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
+ refUserMessage.setMessageTypeRdd(msg.getMessageType());
+ refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
+ refUserMessage.setReceiverId(sysUser.getId());
+ refUserMessage.setReceiverNameRdd(sysUser.getUserName());
+ refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
+ refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
+
+ sysMessageService.insertSysRefUserMessage(refUserMessage);
+
+ // 发送邮件
+ mailUtil.setSubject(msg.getMessageTitle());
+ mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType()));
+ mailUtil.setBody(msg.getMessageContent());
+ mailUtil.setTo(sysUser.getUserEmail());
+ mailUtil.send();
+ }
+
+ msg.setMessageSenderNameRdd(StringUtils.join(receiverName, ","));
+ sysMessageService.updateSysMessage(msg);
+ }
+ //信息已处理
+ channel.basicAck(message.getMessageProperties().getDeliveryTag(),false);
+ } catch (IOException e) {
+ LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}",e.getMessage(),e);
+ //丢弃这条消息
+ try {
+ // 未成功处理,重新发送
+ channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true);
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }
+ }
+}
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 c925343..061e70a 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
@@ -202,4 +202,9 @@ public class SysDepartmentService implements ISysDepartmentService {
}
}
+ @Override
+ public long getSysDepartmentCount() {
+ return departmentRDao.listCount();
+ }
+
}
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogOperateService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogOperateService.java
index 4822f16..72b66d2 100644
--- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogOperateService.java
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLogOperateService.java
@@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysLogOperateService;
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.platform.bean.SysLogOperate;
import cn.estsh.i3plus.pojo.platform.repositorymongo.SysLogOperateRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreBsonPack;
@@ -87,4 +88,15 @@ public class SysLogOperateService implements ISysLogOperateService {
return new ListPager(logOperateRDao.findByBsonPager(bson,pager,logOperate.getOrderByParam(),logOperate.getAscOrDesc()),pager);
}
}
+
+ @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 logOperateRDao.findByBsonPager(null,page,sysLogOperate.getOrderByParam(),sysLogOperate.getAscOrDesc());
+ }
}
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 9cc58b8..30245a2 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
@@ -1,7 +1,7 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysLogSystemService;
-import cn.estsh.i3plus.core.api.iservice.busi.ISystemResourceService;
+import cn.estsh.i3plus.core.apiservice.dao.ISysLogSystemDao;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
+import java.util.Map;
/**
* @Description : 系统日志服务接口实现
@@ -31,6 +32,8 @@ public class SysLogSystemService implements ISysLogSystemService {
@Autowired
private SysLogSystemRepository logSystemRDao;
+ @Autowired
+ private ISysLogSystemDao sysLogSystemDao;
@Override
@ApiOperation(value = "添加系统日志",notes = "添加系统日志")
@@ -69,4 +72,9 @@ public class SysLogSystemService implements ISysLogSystemService {
,logSystem.getAscOrDesc()),pager);
}
}
+
+ @Override
+ public Map queryAvgExecuteTime(String startTime, String endTime) {
+ return sysLogSystemDao.querySysLogOperateAvgExecuteTime(startTime,endTime);
+ }
}
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java
index 3b4d9d6..d97589a 100644
--- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMessageService.java
@@ -17,6 +17,7 @@ import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
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 io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -24,6 +25,8 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import java.util.HashMap;
import java.util.List;
/**
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 2a0f762..113b54a 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
@@ -20,7 +20,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
/**
- * @Description : 组织业务接口实现
+ * @Description : 组织业务接口实现
* @Reference :
* @Author : wei.peng
* @Date : 2018-10-22 16:58:42.957
@@ -167,4 +167,9 @@ public class SysOrganizeService implements ISysOrganizeService {
LOGGER.info("组织 ORGANIZE find id:{}", id);
return organizeRDao.getById(id);
}
+
+ @Override
+ public long getSysOrganizeCount() {
+ return organizeRDao.listCount();
+ }
}
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 9b3a663..dd1ce44 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
@@ -410,6 +410,12 @@ public class SysUserService implements ISysUserService {
}
}
+ @Override
+ @ApiOperation(value = "查询账户数量")
+ public long getSysUserCount() {
+ return sysUserRDao.listCount();
+ }
+
/**
* 封装用户登陆信息
*
diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/MailUtil.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/MailUtil.java
index 4acefbc..0441a03 100644
--- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/MailUtil.java
+++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/MailUtil.java
@@ -61,6 +61,17 @@ public class MailUtil {
/**
* 设置收件人地址
*
+ * @param nick
+ * 收件人Email地址
+ */
+ public void setNick(String nick) {
+ this.nick = nick;
+ }
+
+
+ /**
+ * 设置收件人地址
+ *
* @param aEmail
* 收件人Email地址
*/
diff --git a/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestBase.java b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestBase.java
index 379178e..45eac3b 100644
--- a/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestBase.java
+++ b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestBase.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.impp.framework.boot.init.ApplicationProperties;
+import cn.estsh.impp.framework.boot.util.ImppRedis;
import org.junit.After;
import org.junit.Before;
import org.junit.FixMethodOrder;
@@ -12,6 +13,8 @@ import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMock
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
+import javax.annotation.Resource;
+
/**
* @Description :
* @Reference :
@@ -31,10 +34,14 @@ public class TestBase {
@Autowired
private ISysConfigService sysConfigService;
+ @Resource(name="redisRes")
+ private ImppRedis redisRes;
+
@Before
public void init() {
System.out.println("-----------------开始测试-----------------");
app.setProfilesActive("unit-test");
+ redisRes.multi();
}
@After
diff --git a/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestRedis.java b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestRedis.java
new file mode 100644
index 0000000..2efaf9d
--- /dev/null
+++ b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestRedis.java
@@ -0,0 +1,35 @@
+package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
+
+import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
+import cn.estsh.impp.framework.boot.util.ImppRedis;
+import org.junit.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import javax.annotation.Resource;
+import java.beans.Transient;
+import java.util.HashMap;
+
+/**
+ * @Description :
+ * @Reference :
+ * @Author : yunhao
+ * @CreateDate : 2018-12-12 22:06
+ * @Modify:
+ **/
+public class TestRedis extends TestBase {
+
+ @Autowired
+ private ISysMessageService sysMessageService;
+
+ @Test
+ public void testReids(){
+// // 放入缓存
+// HashMap resource = new HashMap();
+// resource.put("test","test110");
+// redisRes.putHashMap("junit3",resource,1000 * 60);
+// System.out.println(redisRes.getHashMap("junit3"));
+// System.out.println(redisRes.commit());
+// System.out.println(redisRes.getHashMap("junit3"));
+ sysMessageService.insertRedis();
+ }
+}