From d7fe8ae3888c8e2b1eea3c1e3769be0d42a21cc9 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 16 十月 2023 09:03:47 +0800 Subject: [PATCH] Merge branch '1.0.3' of http://139.186.142.91:10010/r/productDev/dmMes into 1.0.3 --- server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java | 108 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 91 insertions(+), 17 deletions(-) diff --git a/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java b/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java index fa6505f..af8d0cf 100644 --- a/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java +++ b/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java @@ -1,10 +1,17 @@ package doumeemes.service.system.impl; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import doumeemes.core.model.PageData; import doumeemes.core.model.PageWrap; import doumeemes.core.utils.Utils; +import doumeemes.dao.business.model.Company; +import doumeemes.dao.business.model.CompanyUser; +import doumeemes.dao.ext.dto.ActivityLoginDTO; +import doumeemes.dao.ext.vo.ActivityLoginVO; +import doumeemes.dao.ext.vo.StagingLoginVO; import doumeemes.dao.system.SystemLoginLogMapper; import doumeemes.dao.system.dto.QuerySystemLoginLogDTO; +import doumeemes.dao.system.join.SystemLoginLogJoinMapper; import doumeemes.dao.system.model.SystemLoginLog; import doumeemes.dao.system.model.SystemTraceLog; import doumeemes.service.system.SystemLoginLogService; @@ -30,6 +37,8 @@ @Autowired private SystemLoginLogMapper systemLoginLogMapper; + @Autowired + private SystemLoginLogJoinMapper systemLoginLogJoinMapper; @Override public Integer create(SystemLoginLog systemLoginLog) { @@ -83,45 +92,47 @@ Wrapper<SystemLoginLog> wrapper = new QueryWrapper<>(systemLoginLog); return systemLoginLogMapper.selectList(wrapper); } - + @Override public PageData<SystemLoginLog> findPage(PageWrap<QuerySystemLoginLogDTO> pageWrap) { IPage<SystemLoginLog> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); - QueryWrapper<SystemLoginLog> queryWrapper = new QueryWrapper<>(); + MPJLambdaWrapper<SystemLoginLog> mpjLambdaWrapper = new MPJLambdaWrapper<>(); + mpjLambdaWrapper.selectAll(SystemLoginLog.class); + mpjLambdaWrapper.leftJoin(Company.class,Company::getId,SystemLoginLog::getCompanyId); + mpjLambdaWrapper.leftJoin(CompanyUser.class,CompanyUser::getId,SystemLoginLog::getCompanyUserId); + mpjLambdaWrapper.selectAs(Company::getName, SystemLoginLog::getCompanyName); + mpjLambdaWrapper.selectAs(CompanyUser::getName, SystemLoginLog::getCompanyUserName); // 鐧诲綍鐢ㄦ埛鍚� if (StringUtils.isNotBlank(pageWrap.getModel().getLoginUsername())) { - queryWrapper.lambda().like(SystemLoginLog::getLoginUsername, pageWrap.getModel().getLoginUsername()); + mpjLambdaWrapper.like(SystemLoginLog::getLoginUsername, pageWrap.getModel().getLoginUsername()); } // 鐧诲綍IP if (StringUtils.isNotBlank(pageWrap.getModel().getIp())) { - queryWrapper.lambda().eq(SystemLoginLog::getIp, pageWrap.getModel().getIp()); + mpjLambdaWrapper.eq(SystemLoginLog::getIp, pageWrap.getModel().getIp()); + } + if ( pageWrap.getModel().getOrgin() !=null) { + mpjLambdaWrapper.eq(SystemLoginLog::getOrgin, pageWrap.getModel().getOrgin()); } // 鏈嶅姟鍣↖P if (StringUtils.isNotBlank(pageWrap.getModel().getServerIp())) { - queryWrapper.lambda().eq(SystemLoginLog::getServerIp, pageWrap.getModel().getServerIp()); + mpjLambdaWrapper.eq(SystemLoginLog::getServerIp, pageWrap.getModel().getServerIp()); } // 鐧诲綍鐘舵�� if (pageWrap.getModel().getSuccess() != null) { - queryWrapper.lambda().eq(SystemLoginLog::getSuccess, pageWrap.getModel().getSuccess()); + mpjLambdaWrapper.eq(SystemLoginLog::getSuccess, pageWrap.getModel().getSuccess()); } // 鐧诲綍寮�濮嬫椂闂� if (pageWrap.getModel().getStartTime() != null) { - queryWrapper.lambda().ge(SystemLoginLog::getLoginTime, pageWrap.getModel().getStartTime()); + mpjLambdaWrapper.ge(SystemLoginLog::getLoginTime, pageWrap.getModel().getStartTime()); } // 鐧诲綍缁撴潫鏃堕棿 if (pageWrap.getModel().getStartTime() != null) { - queryWrapper.lambda().lt(SystemLoginLog::getLoginTime, pageWrap.getModel().getEndTime()); + mpjLambdaWrapper.lt(SystemLoginLog::getLoginTime, pageWrap.getModel().getEndTime()); } - // 瀛楁鎺掑簭 - for(PageWrap.SortData sortData: pageWrap.getSorts()) { - if (sortData.getDirection().equalsIgnoreCase("DESC")) { - queryWrapper.orderByDesc(sortData.getProperty()); - } else { - queryWrapper.orderByAsc(sortData.getProperty()); - } - } - return PageData.from(systemLoginLogMapper.selectPage(page, queryWrapper)); + + mpjLambdaWrapper.orderByDesc(SystemLoginLog::getLoginTime); + return PageData.from(systemLoginLogJoinMapper.selectJoinPage(page, SystemLoginLog.class,mpjLambdaWrapper)); } @Override @@ -129,4 +140,67 @@ Wrapper<SystemLoginLog> wrapper = new QueryWrapper<>(systemLoginLog); return systemLoginLogMapper.selectCount(wrapper); } + + + @Override + public StagingLoginVO getStagingLoginVO(){ + StagingLoginVO stagingLoginVO = new StagingLoginVO(); + //浠婃棩娲昏穬鐢ㄦ埛锛氱粺璁″綋澶╃櫥褰曠敤鎴锋暟锛屼竴涓郴缁熺敤鎴峰湪涓嶅悓鐨勪紒涓氱櫥褰曪紝绠椾袱涓敤鎴凤紱涓�涓敤鎴峰湪涓�涓紒涓氬唴澶氭鐧诲綍锛岀畻涓�涓敤鎴� + stagingLoginVO.setDayActiveUserNum( + systemLoginLogMapper.selectList(new QueryWrapper<SystemLoginLog>() + .select(" COMPANY_USER_ID ") + .isNotNull(" COMPANY_ID ") + .isNotNull(" COMPANY_USER_ID ") + .apply(" LOGIN_TIME like concat(CURDATE(),'%') ") + .groupBy(" COMPANY_ID , COMPANY_USER_ID ") + ).size() + ); + //浠婃棩娲昏穬浼佷笟锛氱粺璁″綋澶╃櫥褰曠殑浼佷笟鏁帮紝涓�涓紒涓氱殑涓嶅悓鐢ㄦ埛鐧诲綍锛岀畻涓�涓紒涓氭暟锛� + stagingLoginVO.setDayActiveCompanyNum( + systemLoginLogMapper.selectList(new QueryWrapper<SystemLoginLog>() + .select(" COMPANY_ID ") + .isNotNull(" COMPANY_ID ") + .isNotNull(" COMPANY_USER_ID ") + .apply(" LOGIN_TIME like concat(CURDATE(),'%') ") + .groupBy(" COMPANY_ID ") + ).size() + ); + //缁熻鏈湀锛堣嚜鐒舵湀锛夌櫥褰曠殑浼佷笟鏁帮紝閫昏緫鍚屼笂锛� + stagingLoginVO.setMonthActiveCompanyNum( + systemLoginLogMapper.selectList(new QueryWrapper<SystemLoginLog>() + .select(" COMPANY_ID ") + .isNotNull(" COMPANY_ID ") + .isNotNull(" COMPANY_USER_ID ") + .apply(" LOGIN_TIME like concat(date_format(NOW(), '%Y-%m'),'%') ") + .groupBy(" COMPANY_ID ") + ).size() + ); + //鏈湀鐧诲綍2娆″強浠ヤ笂浼佷笟鏁帮細缁熻鏈湀锛堣嚜鐒舵湀锛夌櫥褰�2娆″強浠ヤ笂鐨勪紒涓氭暟锛岄�昏緫鍚屼笂锛� + stagingLoginVO.setMonthTwoCompanyNum( + systemLoginLogMapper.selectList(new QueryWrapper<SystemLoginLog>() + .select(" COMPANY_ID ") + .isNotNull(" COMPANY_ID ") + .isNotNull(" COMPANY_USER_ID ") + .apply(" LOGIN_TIME like concat(date_format(NOW(), '%Y-%m'),'%') ") + .groupBy(" COMPANY_ID ") + .having(" count(1) > 1 ") + ).size() + ); + //鏈湀鐧诲綍2娆″強浠ヤ笂浼佷笟鏁�(缇氱緤)锛氱粺璁℃湰鏈堬紙鑷劧鏈堬級鐧诲綍2娆″強浠ヤ笂锛堢櫥褰曟潵婧愪簬缇氱緤骞冲彴锛夌殑浼佷笟鏁帮紝閫昏緫鍚屼笂锛� + stagingLoginVO.setMonthTwoCompanyLYNum( + systemLoginLogMapper.selectList(new QueryWrapper<SystemLoginLog>() + .select(" COMPANY_ID ") + .isNotNull(" COMPANY_ID ") + .isNotNull(" COMPANY_USER_ID ") + .apply(" LOGIN_TIME like concat(date_format(NOW(), '%Y-%m'),'%') ") + .eq("ORGIN",2) + .groupBy(" COMPANY_ID ") + .having(" count(1) > 1 ") + ).size() + ); + return stagingLoginVO; + } + + + } -- Gitblit v1.9.3