From 1f4e7d0f73a73e7350cf5a1df279d5f30904c5d5 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 06 十二月 2023 08:41:32 +0800
Subject: [PATCH] bug

---
 server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java |   71 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 1 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 8e83f1b..af8d0cf 100644
--- a/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/system/impl/SystemLoginLogServiceImpl.java
@@ -5,6 +5,10 @@
 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;
@@ -88,7 +92,7 @@
         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());
@@ -96,7 +100,9 @@
         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())) {
             mpjLambdaWrapper.like(SystemLoginLog::getLoginUsername, pageWrap.getModel().getLoginUsername());
@@ -134,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