From 63f04d92a2376a6272d0ad61358475d527f26a2d Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 27 十一月 2024 15:51:44 +0800 Subject: [PATCH] 1 --- se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java | 11 +++++++---- se-modules/se-system/src/main/java/com/se/system/mapper/IndexMapper.java | 10 ++++++++-- se-modules/se-system/src/main/resources/mapper/system/IndexMapper.xml | 9 +++++++++ se-modules/se-system/src/main/java/com/se/system/service/IndexService.java | 19 ++++++++++++++++--- 4 files changed, 40 insertions(+), 9 deletions(-) diff --git a/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java b/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java index 1df023e..10ffcf1 100644 --- a/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java +++ b/se-modules/se-system/src/main/java/com/se/system/controller/IndexController.java @@ -62,7 +62,7 @@ @Log(title = "鏂板鐢ㄦ埛缁熻", businessType = BusinessType.OTHER) @GetMapping("/newUserCount") public Map<String, Object> newUserCount(Integer day) { - if (null == day || day < 1) day = 7; + if (null == day || day < 1) day = 15; if (day > 365) day = 365; Map<String, Object> map = new HashMap<>(); @@ -84,10 +84,13 @@ // 鈶ょ敤鎴风粺璁℃帓琛岋紙娲昏穬鐢ㄦ埛锛夛細浠ヤ竴瀹氭椂闂存鍐呯殑鐧诲綍鏃堕棿鎴栫櫥褰曟鏁版帓鍚嶏紝灞曠ず鍓嶄簲鍚嶇殑鐢ㄦ埛淇℃伅 @Log(title = "鐢ㄦ埛缁熻鎺掕", businessType = BusinessType.OTHER) @GetMapping("/userCountList") - public Map<String, Object> userCountList() { - Map<String, Object> map = new HashMap<>(); + public List<Map<String, Object>> userCountList(Integer day, Integer amount) { + if (null == day || day < 1) day = 15; + if (day > 365) day = 365; + if (null == amount) amount = 5; + if (amount > 100) amount = 100; - return map; + return indexService.userCountList(day, amount); } // 鈶ュ父鐢ㄧ郴缁熷睍绀�/鍚勭郴缁熻闂俊鎭細鍩轰簬鐢ㄦ埛璁块棶娆℃暟鎺掑悕锛屽睍绀哄墠浜斾釜绯荤粺鐨勬帓鍚� diff --git a/se-modules/se-system/src/main/java/com/se/system/mapper/IndexMapper.java b/se-modules/se-system/src/main/java/com/se/system/mapper/IndexMapper.java index 6c708df..e34f5fb 100644 --- a/se-modules/se-system/src/main/java/com/se/system/mapper/IndexMapper.java +++ b/se-modules/se-system/src/main/java/com/se/system/mapper/IndexMapper.java @@ -1,13 +1,19 @@ package com.se.system.mapper; +import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import java.util.List; +import java.util.Map; + @Mapper @Repository @SuppressWarnings("ALL") -public interface IndexMapper -{ +public interface IndexMapper { public int newUserCount(@Param("createTime") String createTime); + + //@MapKey("username") + public List<Map<String, Object>> userCountList(@Param("createTime") String createTime, @Param("amount") Integer amount); } diff --git a/se-modules/se-system/src/main/java/com/se/system/service/IndexService.java b/se-modules/se-system/src/main/java/com/se/system/service/IndexService.java index 59f172a..6a94801 100644 --- a/se-modules/se-system/src/main/java/com/se/system/service/IndexService.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/IndexService.java @@ -6,6 +6,8 @@ import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.Calendar; +import java.util.List; +import java.util.Map; @Component @SuppressWarnings("ALL") @@ -16,10 +18,21 @@ public static SimpleDateFormat YYYY_MM_DD_HH_MM_SS = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public int newUserCount(int day) { - Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.DAY_OF_MONTH, -day); - String createTime = YYYY_MM_DD_HH_MM_SS.format(calendar.getTime()); + String createTime = getCreateTime(day); return indexMapper.newUserCount(createTime); } + + private String getCreateTime(int day) { + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_MONTH, -day); + + return YYYY_MM_DD_HH_MM_SS.format(calendar.getTime()); + } + + public List<Map<String, Object>> userCountList(Integer day, Integer amount) { + String createTime = getCreateTime(day); + + return indexMapper.userCountList(createTime, amount); + } } diff --git a/se-modules/se-system/src/main/resources/mapper/system/IndexMapper.xml b/se-modules/se-system/src/main/resources/mapper/system/IndexMapper.xml index 68ffaa8..6ca5ab5 100644 --- a/se-modules/se-system/src/main/resources/mapper/system/IndexMapper.xml +++ b/se-modules/se-system/src/main/resources/mapper/system/IndexMapper.xml @@ -6,4 +6,13 @@ <select id="newUserCount" resultType="java.lang.Integer"> select count(*) from sys_user where create_time >= #{createTime}; </select> + + <select id="userCountList" resultType="java.util.Map"> + select user_name userName, count(*) count + from sys_logininfor + where access_time >= #{createTime} + group by user_name + order by count desc + limit ${amount}; + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3