From 28450f858db096d02dab8e4d0c7041e3225a1be2 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 16 Jun 2022 17:08:24 +0800
Subject: [PATCH] fix
---
src/main/resources/templates/febs/views/index.html | 111 ++++++------------------------------
src/main/resources/mapper/modules/MallAchieveRecordMapper.xml | 11 +++
src/main/java/cc/mrbird/febs/system/controller/LoginController.java | 24 ++++++--
src/main/java/cc/mrbird/febs/mall/mapper/MallAchieveRecordMapper.java | 6 ++
4 files changed, 54 insertions(+), 98 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallAchieveRecordMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallAchieveRecordMapper.java
index 85e4ca9..314d2e1 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallAchieveRecordMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallAchieveRecordMapper.java
@@ -2,6 +2,12 @@
import cc.mrbird.febs.mall.entity.MallAchieveRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
+import java.util.Date;
public interface MallAchieveRecordMapper extends BaseMapper<MallAchieveRecord> {
+
+ BigDecimal selectAchieveTotal(@Param("type") String type, @Param("date") Date date);
}
diff --git a/src/main/java/cc/mrbird/febs/system/controller/LoginController.java b/src/main/java/cc/mrbird/febs/system/controller/LoginController.java
index f084c2d..0ea9f5c 100644
--- a/src/main/java/cc/mrbird/febs/system/controller/LoginController.java
+++ b/src/main/java/cc/mrbird/febs/system/controller/LoginController.java
@@ -6,10 +6,13 @@
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.service.ValidateCodeService;
import cc.mrbird.febs.common.utils.Md5Util;
+import cc.mrbird.febs.mall.mapper.MallAchieveRecordMapper;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
import cc.mrbird.febs.monitor.entity.LoginLog;
import cc.mrbird.febs.monitor.service.ILoginLogService;
import cc.mrbird.febs.system.entity.User;
import cc.mrbird.febs.system.service.IUserService;
+import cn.hutool.core.date.DateUtil;
import lombok.RequiredArgsConstructor;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.springframework.validation.annotation.Validated;
@@ -23,6 +26,7 @@
import javax.servlet.http.HttpSession;
import javax.validation.constraints.NotBlank;
import java.io.IOException;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -38,6 +42,8 @@
private final IUserService userService;
private final ValidateCodeService validateCodeService;
private final ILoginLogService loginLogService;
+ private final MallMemberMapper mallMemberMapper;
+ private final MallAchieveRecordMapper mallAchieveRecordMapper;
@PostMapping("login")
@Limit(key = "login", period = 60, count = 10, name = "登录接口", prefix = "limit")
@@ -78,12 +84,18 @@
this.userService.updateLoginTime(username);
Map<String, Object> data = new HashMap<>(5);
// 获取系统访问记录
- Long totalVisitCount = this.loginLogService.findTotalVisitCount();
- data.put("totalVisitCount", totalVisitCount);
- Long todayVisitCount = this.loginLogService.findTodayVisitCount();
- data.put("todayVisitCount", todayVisitCount);
- Long todayIp = this.loginLogService.findTodayIp();
- data.put("todayIp", todayIp);
+// Long totalVisitCount = this.loginLogService.findTotalVisitCount();
+// data.put("totalVisitCount", totalVisitCount);
+// Long todayVisitCount = this.loginLogService.findTodayVisitCount();
+// data.put("todayVisitCount", todayVisitCount);
+// Long todayIp = this.loginLogService.findTodayIp();
+// data.put("todayIp", todayIp);
+
+ data.put("lastDay", mallAchieveRecordMapper.selectAchieveTotal("D", DateUtil.offsetDay(new Date(), -1)));
+ data.put("today", mallAchieveRecordMapper.selectAchieveTotal("D", new Date()));
+ data.put("lastMonth", mallAchieveRecordMapper.selectAchieveTotal("M", DateUtil.offsetMonth(new Date(), -1)));
+ data.put("thisMonth", mallAchieveRecordMapper.selectAchieveTotal("M", new Date()));
+
// 获取近期系统访问记录
List<Map<String, Object>> lastSevenVisitCount = this.loginLogService.findLastSevenDaysVisitCount(null);
data.put("lastSevenVisitCount", lastSevenVisitCount);
diff --git a/src/main/resources/mapper/modules/MallAchieveRecordMapper.xml b/src/main/resources/mapper/modules/MallAchieveRecordMapper.xml
index 8a51fdc..53af5db 100644
--- a/src/main/resources/mapper/modules/MallAchieveRecordMapper.xml
+++ b/src/main/resources/mapper/modules/MallAchieveRecordMapper.xml
@@ -2,4 +2,15 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cc.mrbird.febs.mall.mapper.MallAchieveRecordMapper">
+ <select id="selectAchieveTotal" resultType="java.math.BigDecimal">
+ select IFNULL(sum(IFNULL(amount,0)),0) from mall_achieve_record
+ where 1=1
+ <if test='type == "D"'>
+ and date_format(achieve_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d');
+ </if>
+ <if test='type == "M"'>
+ and date_format(achieve_time, '%Y-%m') = date_format(#{date}, '%Y-%m');
+ </if>
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/index.html b/src/main/resources/templates/febs/views/index.html
index 79778cd..81e787d 100644
--- a/src/main/resources/templates/febs/views/index.html
+++ b/src/main/resources/templates/febs/views/index.html
@@ -96,21 +96,25 @@
</div>
</div>
<div class="layui-col-md6 layui-col-sm12 layui-col-xs12">
- <div class="layui-col-md-offset5">
+ <div class="layui-col-md-offset4">
<table class="login-count-table">
<tr>
- <td>今日IP</td>
- <td>今日访问</td>
- <td>总访问量</td>
+ <td>今日业绩</td>
+ <td>昨日业绩</td>
+ <td>本月业绩</td>
+ <td>上月业绩</td>
</tr>
<tr>
- <td class="count" id="today-ip">
+ <td class="count" id="today">
0
</td>
- <td class="count" id="today-visit-count">
+ <td class="count" id="lastDay">
0
</td>
- <td class="count" id="total-visit-count">
+ <td class="count" id="thisMonth">
+ 0
+ </td>
+ <td class="count" id="lastMonth">
0
</td>
</tr>
@@ -122,11 +126,10 @@
</div>
</div>
<div class="layui-col-md6 layui-col-sm6 layui-col-xs12">
- <div class="layui-card">
- <div class="layui-card-body">
- <div id="chart" style="height: 350px"></div>
- </div>
- </div>
+<!-- <div class="layui-card">-->
+<!-- <div class="layui-card-body">-->
+<!-- </div>-->
+<!-- </div>-->
</div>
</div>
</div>
@@ -157,9 +160,10 @@
];
var index = Math.floor((Math.random() * welcomeArr.length));
var welcomeMessage = time + ',<a id="febs-index-user">' + currentUser.username + '</a>,' + welcomeArr[index];
- $view.find('#today-ip').text(data.todayIp).end()
- .find('#today-visit-count').text(data.todayVisitCount).end()
- .find('#total-visit-count').text(data.totalVisitCount).end()
+ $view.find('#today').text(data.today).end()
+ .find('#lastDay').text(data.lastDay).end()
+ .find('#thisMonth').text(data.thisMonth).end()
+ .find('#lastMonth').text(data.lastMonth).end()
.find('#user-dept').text(currentUser.deptName ? currentUser.deptName : '暂无所属部门').end()
.find('#user-role').text(currentUser.roleName ? currentUser.roleName : '暂无角色').end()
.find('#last-login-time').text(currentUser.lastLoginTime ? currentUser.lastLoginTime : '第一次访问系统').end()
@@ -201,83 +205,6 @@
});
if (!contain) totalVisitCount.push(0);
});
-
- var options = {
- chart: {
- height: 350,
- type: 'area',
- toolbar: {
- show: false
- }
- },
- colors: ['#1890ff', '#0acf97'],
- plotOptions: {
- bar: {
- horizontal: false,
- columnWidth: '32rem'
- }
- },
- dataLabels: {
- enabled: false
- },
- stroke: {
- width: [3, 3],
- curve: 'smooth'
- },
- series: [{
- name: '总数',
- data: totalVisitCount
- }, {
- name: '您',
- data: yourVisitCount
- }],
- xaxis: {
- categories: lastTenDays,
- axisTicks: {
- show: true
- },
- axisBorder: {
- show: true,
- color: '#f1f1f1'
- }
- },
- fill: {
- type: 'gradient',
- gradient: {
- shadeIntensity: 1,
- inverseColors: false,
- opacityFrom: 0.5,
- opacityTo: 0,
- stops: [0, 90, 100]
- }
- },
- title: {
- text: '近10天系统访问记录',
- align: 'left',
- style: {
- color: 'rgba(0, 0, 0, .65)'
- }
- },
- tooltip: {
- y: {
- formatter: function (val) {
- return "访问次数 " + val + " 次"
- }
- }
- },
- grid: {
- row: {
- colors: ['transparent', 'transparent'],
- opacity: 0.2
- },
- borderColor: '#f1f1f1'
- }
- };
-
- new ApexCharts(
- document.querySelector("#chart"),
- options
- ).render();
}
$view.on('click', '#febs-index-user',function () {
--
Gitblit v1.9.1