Merge remote-tracking branch 'remotes/origin/dev' into test

yun-zuoyi
wei.peng 6 years ago
commit 6fa8189fc6

@ -20,6 +20,9 @@ public interface ISysLogSystemService {
@ApiOperation(value = "添加系统日志",notes = "添加系统日志")
void insertSysLogSystem(SysLogSystem logSystem);
@ApiOperation(value = "造数据系统日志",notes = "造数据")
void insertSysLogBatch(int num,int waitTime);
@ApiOperation(value = "删除日志",notes = "删除日志")
void deleteSysLogSystemById(Long id);
@ -31,4 +34,7 @@ public interface ISysLogSystemService {
@ApiOperation(value = "系统日志分页复杂查询",notes = "系统日志分页复杂查询")
ListPager querySysLogSystemByPager(SysLogSystem logSystem, Pager pager);
@ApiOperation(value = "系统日志批量删除",notes = "系统日志批量删除")
void deleteSysLogSystemByIds(Long[] ids);
}

@ -105,6 +105,9 @@ public interface ISysRoleService {
@ApiOperation(value = "查信角色信息",notes = "查询指定角色信息")
List<SysRole> findSysRoleByInId(Long[] ids);
@ApiOperation(value = "查信用户的所有角色信息",notes = "查信用户的所有角色信息")
List<SysRole> findSysRoleByUser(SysUser user);
/**
* id
*

@ -32,6 +32,12 @@ public interface ISysToolService {
void updateSysTool(SysTool tool);
/**
*
*/
@ApiOperation(value = "造数据")
void insertBatch(int num,int waitTime);
/**
*
* @return
*/
@ -84,4 +90,10 @@ public interface ISysToolService {
*/
@ApiOperation(value = "更新设备信息",notes = "根据 ID 批量修改硬件状态信息")
void updateSysToolStatusByIds(Long[] ids,Integer status);
/**
*
*/
@ApiOperation(value = "查询指定数量设备信息",notes = "查询指定数量设备信息")
List<SysTool> findSysToolByTop(int topNum);
}

@ -0,0 +1,19 @@
package cn.estsh.i3plus.core.api.iservice.busi;
import cn.estsh.i3plus.pojo.base.common.Pager;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-20 21:23
* @Modify:
**/
public interface ITestService {
@ApiOperation(value = "多表查询")
List<Object> queryToolAndToolType(Pager pager);
}

@ -119,12 +119,12 @@ public class AuthController extends CoreBaseController {
if(menus != null){
// 封装模块信息
for (SysMenu menu : menus) {
if(menu.getMenuType().equals(CommonEnumUtil.METHOD_LEVEL.MODULE.getValue())
if(menu != null && menu.getMenuType().equals(CommonEnumUtil.METHOD_LEVEL.MODULE.getValue())
&& parentId.equals(menu.getParentId().toString())){
// 封装 功能信息
for (SysMenu sysMenu : menus) {
if(sysMenu.getMenuType().equals(CommonEnumUtil.METHOD_LEVEL.METHOD.getValue())
if (sysMenu != null && sysMenu.getMenuType().equals(CommonEnumUtil.METHOD_LEVEL.METHOD.getValue())
&& menu.getId().longValue() == sysMenu.getParentId().longValue()){
if(!menu.getChildList().contains(sysMenu)){
menu.getChildList().add(sysMenu);

@ -104,7 +104,7 @@ public class WhiteController extends CoreBaseController {
e.printStackTrace();
}
SessionUser user = userService.queryUserLogin(loginName,loginPwd,languageCode);
SessionUser user = userService.queryUserLogin(loginName,loginPwd.trim(),languageCode);
String redisKey = CommonConstWords.USER_LOGIN_ERROR + "_" + user.getUser().getId();
redisCore.deleteKey(redisKey);

@ -0,0 +1,101 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import java.math.BigDecimal;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-22 17:40
* @Modify:
**/
public class ComputePi {
/**
* π   π/4=1-1/3+1/5-1/7+1/9
*   π/2=2*2/3*4/3*4/5*6/5*6/7*8/7*8/9
*/
/**
* constants used in pi computation
*/
private static final BigDecimal FOUR = BigDecimal.valueOf(4);
/**
* rounding mode to use during pi computation
*/
private static final int roundingMode = BigDecimal.ROUND_HALF_EVEN;
/**
* Compute the value of pi to the specified number of
* digits after the decimal point. The value is
* computed using Machin's formula:
* <p>
* pi/4 = 4*arctan(1/5) - arctan(1/239)
* <p>
* and a power series expansion of arctan(x) to
* sufficient precision.
*/
public static void main(String[] args) {
int digits = 8; //精度10万位
String pi = computePi(digits).toString();
System.out.println("length: " + pi.length());
System.out.println(pi);
}
public static void computePiByLBNZ() {
}
public static void computePiByWLMS() {
}
public static BigDecimal computePi(int digits) {
int scale = digits + 5;
BigDecimal arctan1_5 = arctan(5, scale);
BigDecimal arctan1_239 = arctan(239, scale);
BigDecimal pi = arctan1_5.multiply(FOUR).subtract(arctan1_239).multiply(FOUR);
return pi.setScale(digits, BigDecimal.ROUND_HALF_UP);
}
/**
* Compute the value, in radians, of the arctangent of
* the inverse of the supplied integer to the specified
* number of digits after the decimal point. The value
* is computed using the power series expansion for the
* arc tangent:
* <p>
* arctan(x) = x - (x^3)/3 + (x^5)/5 - (x^7)/7 +
* (x^9)/9 ...
*/
public static BigDecimal arctan(int inverseX, int scale) {
BigDecimal result, numer, term;
BigDecimal invX = BigDecimal.valueOf(inverseX);
BigDecimal invX2 = BigDecimal.valueOf(inverseX * inverseX);
numer = BigDecimal.ONE.divide(invX, scale, roundingMode);
result = numer;
int i = 1;
do {
numer =
numer.divide(invX2, scale, roundingMode);
int denom = 2 * i + 1;
term =
numer.divide(BigDecimal.valueOf(denom),
scale, roundingMode);
if ((i % 2) != 0) {
result = result.subtract(term);
} else {
result = result.add(term);
}
i++;
} while (term.compareTo(BigDecimal.ZERO) != 0);
return result;
}
}

@ -51,7 +51,6 @@ public class PersonnelController extends CoreBaseController {
@Autowired
private ISysFileService fileService;
@PostMapping(value="/user-detail/insert")
@ApiOperation(value="添加用户信息",notes="返回内容添加用户信息")
public ResultBean insertUserDetailModel(UserDetailModel model) {
@ -470,7 +469,7 @@ public class PersonnelController extends CoreBaseController {
* @param isCheckId
* @throws Exception
*/
private void checkUserDetailModel(UserDetailModel model,boolean isCheckId)throws Exception{
public void checkUserDetailModel(UserDetailModel model,boolean isCheckId)throws Exception{
if(isCheckId){
ValidatorBean.beginValid(model)
.notNull("userInfoId", model.getUserInfoId())
@ -495,7 +494,7 @@ public class PersonnelController extends CoreBaseController {
* @param model
* @throws Exception
*/
private void checkUserModel(UserDetailModel model)throws Exception{
public void checkUserModel(UserDetailModel model)throws Exception{
ValidatorBean.beginValid(model)
.notNull("userInfoId", model.getUserInfoId())
.notNull("userId", model.getUserId())
@ -513,7 +512,7 @@ public class PersonnelController extends CoreBaseController {
* @param user
* @throws Exception
*/
private void initUser(UserDetailModel model ,SysUser user)throws Exception{
public void initUser(UserDetailModel model ,SysUser user)throws Exception{
if(user != null && model != null){
user.setUserLoginName(model.getUserLoginName());
user.setDepartmentId(Long.parseLong(model.getUserDepartmentId()));
@ -532,7 +531,7 @@ public class PersonnelController extends CoreBaseController {
* @param info
* @param model
*/
private void refreshRef(SysUser user,SysUserInfo info,UserDetailModel model){
public void refreshRef(SysUser user,SysUserInfo info,UserDetailModel model){
if(user != null){
// 刷新账号 部门关系
personnelService.refreshRefSysUserDepartment(user.getId(), StringTool.getArrayLong(model.getUserDepartmentIdList()));
@ -552,17 +551,17 @@ public class PersonnelController extends CoreBaseController {
*
* @param user
*/
private void refreshSysUserPassword(SysUser user)throws Exception{
public void refreshSysUserPassword(SysUser user)throws Exception{
if(user != null){
if(user.getId() != null){ // 更新密码
if(!StringUtils.isAnyBlank(user.getUserLoginPassword())){ // 使用新密码
user.setUserLoginPassword(EncryptTool.hexMD5(user.getUserLoginPassword()));
user.setUserLoginPassword(EncryptTool.hexMD5(user.getUserLoginPassword().trim()));
}else{ //使用旧密码
SysUser sysUser = personnelService.getSysUserById(user.getId());
user.setUserLoginPassword(sysUser.getUserLoginPassword());
}
}else { // 创建密码
user.setUserLoginPassword(EncryptTool.hexMD5(user.getUserLoginPassword()));
user.setUserLoginPassword(EncryptTool.hexMD5(user.getUserLoginPassword().trim()));
}
}
}

@ -145,7 +145,7 @@ public class SysDashboardController extends CoreBaseController {
LOGGER.info("getLevelLogNum:{}",redisCore);
try {
// 保持时间,key统一
String redisKey = PlatformConstWords.REDIS_DASHBOARD_LOG_NUM + "_" + TimeTool.getNowTime("yyyyMMddhhmmss");
String redisKey = PlatformConstWords.REDIS_DASHBOARD_LOG_NUM + "_" + TimeTool.getNowTime("yyyyMMddhhmms");
Map<Object, Object> dashboardData = redisCore.getHashMap(redisKey);
LOGGER.info("getLevelLogNumredisKey:{},dashboardData:{}",redisKey,dashboardData);

@ -102,7 +102,7 @@ public class SysOrganizeController extends CoreBaseController{
ValidatorBean.checkIsNumber(idStr.toString(), "您要删除的组织不存在");
organizeService.deleteSysOrganizeById(Long.parseLong(idStr));
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) {

@ -225,7 +225,7 @@ public class SysUserController extends CoreBaseController{
personnelService.checkSysUserPassword(newPwd);
sysUserService.updateSysUserPassword(sessionUser.getUser().getId(),password,newPwd);
sysUserService.updateSysUserPassword(sessionUser.getUser().getId(),password,newPwd.trim());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch(ImppBusiException busExcep){

@ -0,0 +1,31 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-19 18:13
* @Modify:
**/
public class TestThread implements Runnable {
private Thread t;
private int piLength = 0;
public TestThread (int piLength){
this.piLength = piLength;
}
@Override
public void run() {
ComputePi.computePi(piLength);
}
public void start () {
if (t == null) {
t = new Thread (this);
t.start ();
}
}
}

@ -0,0 +1,52 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import java.lang.management.ManagementFactory;
import java.util.Random;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-19 11:41
* @Modify:
**/
public class Text {
public static void main(String[] args) {
String name = ManagementFactory.getRuntimeMXBean().getName();
System.out.println(name);
// get pid
String pid = name.split("@")[0];
System.out.println("Pid is:" + pid);
for (int i = 0; i < 1; i++) {
TestThread th1 = new TestThread(i);
th1.start();
}
// System.out.println("Please input times: ");
// caculatePI(100000000);
}
public static void caculatePI(int countInSquarel) {
int countInCircle = 0, i, resulttimes;
double x, y; /* 坐标 */
Random s = new Random();
for (resulttimes = 0; resulttimes < 10; resulttimes++) { /* 输出十次结果 */
for (i = 1; i <= countInSquarel; i++) {
x = s.nextDouble(); /* 在0~1之间产生一个随机x坐标 */
y = s.nextDouble(); /* 在0~1之间产生一个随机y坐标 */
if (caculateAcreage(x, y) <= 1.0)
countInCircle++; /* 统计落入单位圆中的点数 */
}
System.out.println("The result of pai is " + (double) countInCircle / countInSquarel * 4); /* 计算出π的值 */
countInCircle = 0;
}
}
private static double caculateAcreage(double xPosition, double yPosition) {
return xPosition * xPosition + yPosition * yPosition;
}
}

@ -12,7 +12,9 @@ import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.model.common.ClassFieldModel;
import cn.estsh.i3plus.pojo.model.common.ClassModel;
import cn.estsh.i3plus.pojo.model.report.TemplateModel;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysRole;
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;
@ -35,7 +37,7 @@ import java.util.List;
@RestController
@RequestMapping(PlatformConstWords.BASE_URL + "/cloud/report")
@Api(description="报表服务")
public class CoreReportController {
public class CoreReportController extends CoreBaseController {
private static final Logger LOGGER = LoggerFactory.getLogger(CoreReportController.class);
@ -50,7 +52,7 @@ public class CoreReportController {
@GetMapping(value = "/role/list")
@ApiOperation(value = "查询所有角色", notes = "查询所有系统角色")
public ResultBean findAll() {
public ResultBean findRoleAll() {
try {
List<SysRole> list = roleService.findSysRoleAll();
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(list);
@ -74,6 +76,23 @@ public class CoreReportController {
}
}
@GetMapping(value = "/role/user/list")
@ApiOperation(value = "查询登录用户所有角色")
public ResultBean findSysRoleByUser() {
try {
SessionUser sessionUser = getSessionUser();
if(sessionUser != null && sessionUser.getUser() != null){
List<SysRole> list = roleService.findSysRoleByUser(getSessionUser().getUser());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(list);
}
return ResultBean.fail("操作失败").setCode(ResourceEnumUtil.MESSAGE.FAIL.getCode()).setErrorMsg("获取用户信息失败");
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PostMapping(value="/template-model/run")
@ApiOperation(value="查询管理后台所有类",notes = "根据核心包路径列出所有类")
public ResultBean runTemplateModel(@RequestBody TemplateModel model){

@ -0,0 +1,33 @@
package cn.estsh.i3plus.core.apiservice.dao;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import cn.estsh.i3plus.pojo.platform.platbean.SysLogSystem;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-20 21:15
* @Modify:
**/
public interface ITestDao {
/**
*
* @param num
* @param waitTime
*/
void insertBatch(int num,int waitTime);
/**
* mongodb
* @param num
* @param waitTime
*/
void insertMongoDBBatch(int num,int waitTime);
List<Object> queryToolAndToolType(Pager pager);
}

@ -0,0 +1,73 @@
package cn.estsh.i3plus.core.apiservice.daoimpl;
import cn.estsh.i3plus.core.apiservice.dao.ITestDao;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import org.apache.commons.lang3.RandomStringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.persistence.EntityManager;
import java.util.List;
import java.util.Random;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-20 21:17
* @Modify:
**/
@Service
public class TestDaoImpl implements ITestDao {
public static final Logger LOGGER = LoggerFactory.getLogger(UserPermissionDaoImpl.class);
@Autowired
private EntityManager entityManager;
public static final String TEXT = "党的十八大提出倡导富强、民主、文明、和谐倡导自由、平等、公正、法治倡导爱国、敬业、诚信、友善积极培育和践行社会主义核心价值观。富强、民主、文明、和谐是国家层面的价值目标自由、平等、公正、法治是社会层面的价值取向爱国、敬业、诚信、友善是公民个人层面的价值准则这24个字是社会主义核心价值观的基本内容。";
@Override
public void insertBatch(int num, int waitTime) {
long t1 = System.currentTimeMillis();
SysTool sysTool = new SysTool();
StringBuffer sb = new StringBuffer();
SnowflakeIdMaker snf = new SnowflakeIdMaker();
for (int i = 0; i < num * 1000; i++) {
sysTool = new SysTool();
sysTool.setId(snf.nextId() + System.currentTimeMillis());
sysTool.setName(RandomStringUtils.random(10, TEXT));
sysTool.setToolTypeNameRdd(RandomStringUtils.random(10, TEXT));
sysTool.setToolTypeId(System.currentTimeMillis());
sysTool.setToolIp(RandomStringUtils.random(10, TEXT));
sysTool.setToolPort((int) (Math.random() * i));
sysTool.setToolDescription(RandomStringUtils.random(10, TEXT));
sb.append("insert into sys_tool (id,name,tool_type_name_rdd,tool_type_id,tool_ip,tool_port,tool_description) ");
sb.append(" values("+sysTool.getId()+",'"+sysTool.getName()+"','"+sysTool.getToolTypeNameRdd()+"',"+sysTool.getToolTypeId()+",'"
+sysTool.getToolIp()+"',"+sysTool.getToolPort()+",'"+sysTool.getToolDescription()+"')");
}
entityManager.createNativeQuery(sb.toString());
LOGGER.info("插入耗时:" + (System.currentTimeMillis() - t1) );
}
@Override
public void insertMongoDBBatch(int num, int waitTime) {
}
@Override
public List<Object> queryToolAndToolType(Pager pager) {
String hql = "select t,tt from SysTool as t " +
" left join SysToolType as tt on t.toolTypeId = tt.id " +
" where 1=1";
return entityManager.createQuery(hql).setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize()).getResultList();
}
}

@ -51,44 +51,46 @@ public class ScheduleQueueReceiver {
LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功{}",logTaskTime);
// 跟新最后执行时间 及 任务状态
SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(),logTaskTime.getGroupName());
taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime());
taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNum() + 1);
taskPlan.setTaskPlanStatus(logTaskTime.getTaskStatus());
// 更新任务状态以及最后执行时间
sysTaskPlanService.updateSysTaskPlan(taskPlan);
if (taskPlan != null) {
taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime());
taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNum() + 1);
taskPlan.setTaskPlanStatus(logTaskTime.getTaskStatus());
// 更新任务状态以及最后执行时间
sysTaskPlanService.updateSysTaskPlan(taskPlan);
// 添加定时任务日志
logTaskTime.setTaskPlanId(taskPlan.getId());
logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd());
logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd());
sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime);
// 添加定时任务日志
logTaskTime.setTaskPlanId(taskPlan.getId());
logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd());
logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd());
sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime);
// 定时任务失败通知
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == logTaskTime.getTaskStatus()
&& CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) {
// 设置通知邮件内容
SysMessage sysMessage = new SysMessage();
sysMessage.setMessageSenderNameRdd("系统管理员");
sysMessage.setMessageTitle("任务计划失败通知");
sysMessage.setMessageContent(
String.format("<p>管理员 您好:</p><div style=\"text-align:center\">任务计划(Name: %s,GroupName: %s执行失败,详细信息请查看定时任务日志(ID: %s).</div>",
taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId())
);
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
// 定时任务失败通知
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == logTaskTime.getTaskStatus()
&& CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) {
// 设置通知邮件内容
SysMessage sysMessage = new SysMessage();
sysMessage.setMessageSenderNameRdd("系统管理员");
sysMessage.setMessageTitle("任务计划失败通知");
sysMessage.setMessageContent(
String.format("<p>管理员 您好:</p><div style=\"text-align:center\">任务计划(Name: %s,GroupName: %s执行失败,详细信息请查看定时任务日志(ID: %s).</div>",
taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId())
);
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
// 是否内部成员
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) {
sysMessage.setMessageReceiversId(PlatformConstWords.EXTERNAL_MAIL);
sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel());
}
// 是否内部成员
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) {
sysMessage.setMessageReceiversId(PlatformConstWords.EXTERNAL_MAIL);
sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel());
}
// 发送到对应处理队列
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
}else{
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
// 发送到对应处理队列
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
}else{
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
}
}
}

@ -7,6 +7,7 @@ import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.impp.framework.base.schedule.BaseImppScheduleJob;
import cn.estsh.impp.framework.boot.init.ApplicationProperties;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.ApiOperation;
import org.quartz.JobExecutionContext;
import org.slf4j.Logger;

@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ICoreTreeService;
import cn.estsh.i3plus.core.apiservice.dao.ISysMenuDao;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ModelEnumUtil;
@ -17,13 +18,16 @@ import cn.estsh.i3plus.pojo.platform.repository.SysOrganizeRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysPositionRepository;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -55,6 +59,12 @@ public class CoreTreeService implements ICoreTreeService {
@Autowired
private ISysMenuDao sysMenuDao;
/**
*
*/
@Resource(name="redisCore")
protected ImppRedis redisCore;
@Override
@ApiOperation(value = "获取岗位树",notes = "根据父节点获取岗位树集合")
public List<SysPosition> findSysPositionTreeByParentId(long parentId) {
@ -216,7 +226,7 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer orgHQL = new StringBuffer();
HqlPack.getNumEqualPack(parentId,"parentId",orgHQL);
HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"organizeSort"}, orgHQL);
List<SysOrganize> result = organizeRDao.findByHqlWhere(orgHQL.toString());
List<SysOrganize> result = findSysOrganizeCacheByHqlWhere(orgHQL.toString());
// 循环设置子集
if(result != null && result.size() > 0){
@ -263,7 +273,7 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer orgHQL = new StringBuffer();
HqlPack.getNumEqualPack(parent.getId(),"parentId",orgHQL);
HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"organizeSort"}, orgHQL);
List<SysOrganize> childList = organizeRDao.findByHqlWhere(orgHQL.toString());
List<SysOrganize> childList = findSysOrganizeCacheByHqlWhere(orgHQL.toString());
if (childList.size() > 0) { //说明有子集
for (SysOrganize child : childList) {
@ -406,7 +416,7 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer hql = new StringBuffer();
HqlPack.getNumEqualPack(parentId,"parentId",hql);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"organizeSort"}, hql);
List<SysOrganize> list = organizeRDao.findByHqlWhere(hql.toString());
List<SysOrganize> list = findSysOrganizeCacheByHqlWhere(hql.toString());
// 循环设置子集
if(list != null && list.size() > 0){
@ -455,7 +465,7 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer hql = new StringBuffer();
HqlPack.getNumEqualPack(organize.getId(),"parentId",hql);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"organizeSort"}, hql);
List<SysOrganize> organizeList = organizeRDao.findByHqlWhere(hql.toString());
List<SysOrganize> organizeList = findSysOrganizeCacheByHqlWhere(hql.toString());
if(organizeList != null && organizeList.size() > 0){
for (SysOrganize org : organizeList) {
@ -472,7 +482,7 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer depHQL = new StringBuffer();
HqlPack.getNumEqualPack(organize.getId(),"organizeId",depHQL);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"departmentSort"}, depHQL);
List<SysDepartment> departmentList = departmentRDao.findByHqlWhere(depHQL.toString());
List<SysDepartment> departmentList = findSysDepartmentCacheByHqlWhere(depHQL.toString());
if(departmentList != null && departmentList.size() > 0){
for (SysDepartment department : departmentList) {
@ -494,7 +504,8 @@ public class CoreTreeService implements ICoreTreeService {
StringBuffer depHQL = new StringBuffer();
HqlPack.getNumEqualPack(department.getId(),"parentId",depHQL);
HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"departmentSort"}, depHQL);
List<SysDepartment> departmentList = departmentRDao.findByHqlWhere(depHQL.toString());
List<SysDepartment> departmentList = findSysDepartmentCacheByHqlWhere(depHQL.toString());
if(departmentList != null && departmentList.size() > 0){
for (SysDepartment dep : departmentList) {
@ -584,4 +595,36 @@ public class CoreTreeService implements ICoreTreeService {
}
}
private List<SysDepartment> findSysDepartmentCacheByHqlWhere(String hql){
if(!StringUtils.isBlank(hql)){
String redisKey = CommonConstWords.REDIS_PREFIX_CACHE_DEPARTMENT+ "_findCacheByHqlWhere" + "_" + hql.hashCode();
List list = redisCore.getList(redisKey, 0, -1);
if(list == null){
list = departmentRDao.findByHqlWhere(hql);
if(list != null){
redisCore.putList(redisKey,list,CommonConstWords.REDIS_TIME_DAY_ONE);
}
}
return list;
}else {
return null;
}
}
private List<SysOrganize> findSysOrganizeCacheByHqlWhere(String hql){
if(!StringUtils.isBlank(hql)){
String redisKey = CommonConstWords.REDIS_PREFIX_CACHE_ORGANIZE+ "_findCacheByHqlWhere" + "_" + hql.hashCode();
List list = redisCore.getList(redisKey, 0, -1);
if(list == null){
list = organizeRDao.findByHqlWhere(hql);
if(list != null){
redisCore.putList(redisKey,list,CommonConstWords.REDIS_TIME_DAY_ONE);
}
}
return list;
}else {
return null;
}
}
}

@ -544,7 +544,7 @@ public class PersonnelServiceService implements IPersonnelService {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.NOT_CONFIG_EXCEPTION.getCode())
.setErrorDetail("密码长度不")
.setErrorDetail("密码长度不够"+config.getConfigValue()+"位")
.setErrorSolution("请重新输入")
.build();
}

@ -199,6 +199,6 @@ public class SysLocaleLanguageService implements ISysLocaleLanguageService {
@Override
@ApiOperation(value = "根据语言状态查询语言信息")
public List<SysLocaleLanguage> findSysLocaleLanguageByStatus(Integer status) {
return sysLocaleLanguageRDao.findByProperty("isDefault",status);
return sysLocaleLanguageRDao.findByProperty("languageStatus",status);
}
}

@ -5,6 +5,9 @@ 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;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import cn.estsh.i3plus.pojo.platform.platbean.SysLogSystem;
import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogSystemRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreBsonPack;
@ -39,6 +42,33 @@ public class SysLogSystemService implements ISysLogSystemService {
logSystemRDao.insert(logSystem);
}
@Override
public void insertSysLogBatch(int num,int waitTime){
long t1 = System.currentTimeMillis();
SysLogSystem sysLogSystem = null;
for (int i = 0; i < num * 1000; i++) {
sysLogSystem = new SysLogSystem();
sysLogSystem.setLogClass("新增测试class");
sysLogSystem.setLogMethod("新增测试method" +System.currentTimeMillis());
sysLogSystem.setLogArgs("新增测试参数" + System.currentTimeMillis());
sysLogSystem.setExecuteTime(0L);
sysLogSystem.setArgsCount(1);
sysLogSystem.setLogDetail("2333");
sysLogSystem.setLogLevel(ImppEnumUtil.LOG_LEVEL.DEBUG.getValue());
sysLogSystem.setLogModuleId(CommonEnumUtil.SOFT_TYPE.CORE.getValue());
sysLogSystem.setLogTitle("新增测试");
logSystemRDao.insert(sysLogSystem);
try {
this.wait(waitTime);
} catch (InterruptedException e) {
e.printStackTrace();
}
LOGGER.info("插入SysLog耗时" + (System.currentTimeMillis() - t1) + ",idx" + i);
}
}
@Override
@ApiOperation(value = "删除日志",notes = "删除日志")
public void deleteSysLogSystemById(Long id) {
@ -70,4 +100,9 @@ public class SysLogSystemService implements ISysLogSystemService {
,logSystem.getAscOrDesc()),pager);
}
}
@Override
public void deleteSysLogSystemByIds(Long[] ids) {
logSystemRDao.deleteByIds(ids);
}
}

@ -2,15 +2,13 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService;
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
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.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysRefRoleMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysRole;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysRefRoleMenuRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysRoleRepository;
@ -51,6 +49,9 @@ public class SysRoleService implements ISysRoleService {
@Autowired
private IPersonnelService personnelService;
@Autowired
private IUserPermissionDao userPermissionDao;
@Override
@ApiOperation(value = "更新角色信息",notes = "更新角色信息")
public void updateSysRole(SysRole sysRole) {
@ -227,6 +228,13 @@ public class SysRoleService implements ISysRoleService {
}
@Override
@ApiOperation(value = "查信用户的所有角色信息",notes = "查信用户的所有角色信息")
public List<SysRole> findSysRoleByUser(SysUser user) {
LOGGER.info("系统角色 查询用户所有角色");
return userPermissionDao.findSysRoleByUser(user);
}
@Override
@ApiOperation(value = "查信角色信息",notes = "根据 ID 查询角色信息")
public SysRole getSysRoleById(Long id) {
LOGGER.info("系统角色 SYS_ROLE find id:{}", id);

@ -1,6 +1,7 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysToolService;
import cn.estsh.i3plus.core.apiservice.dao.ITestDao;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
@ -38,6 +39,9 @@ public class SysToolService implements ISysToolService {
@Autowired
private SysToolTypeRepository toolTypeRDao;
@Autowired
private ITestDao testDao;
@Override
@ApiOperation(value = "新增硬件信息")
public SysTool insertSysTool(SysTool tool) {
@ -74,6 +78,11 @@ public class SysToolService implements ISysToolService {
}
@Override
public void insertBatch(int num,int waitTime){
testDao.insertBatch(num,waitTime);
}
@Override
@ApiOperation(value = "查询设备信息",notes = "查询所有设备信息")
public List<SysTool> listSysTool() {
LOGGER.info("硬件 TOOL list");
@ -124,4 +133,8 @@ public class SysToolService implements ISysToolService {
toolRDao.updateByHqlWhere(where.toString(), "toolStatus", status);
}
public List<SysTool> findSysToolByTop(int topNum) {
return toolRDao.findByHqlTopWhere("",topNum);
}
}

@ -0,0 +1,30 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ITestService;
import cn.estsh.i3plus.core.apiservice.dao.ITestDao;
import cn.estsh.i3plus.pojo.base.common.Pager;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-02-20 21:24
* @Modify:
**/
@Service
public class TestService implements ITestService {
@Autowired
ITestDao testDao;
@Override
@ApiOperation(value = "多表查询")
public List<Object> queryToolAndToolType(Pager pager) {
return testDao.queryToolAndToolType(pager);
}
}
Loading…
Cancel
Save