mirror of https://github.com/halo-dev/halo
Refactor AdminController.java.
parent
a10fa0e312
commit
2a503d8550
|
@ -4,16 +4,13 @@ import io.swagger.annotations.ApiOperation;
|
|||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import run.halo.app.cache.lock.CacheLock;
|
||||
import run.halo.app.model.dto.EnvironmentDTO;
|
||||
import run.halo.app.model.dto.StatisticDTO;
|
||||
import run.halo.app.model.params.LoginParam;
|
||||
import run.halo.app.security.token.AuthToken;
|
||||
import run.halo.app.service.AdminService;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.lang.management.ManagementFactory;
|
||||
import java.lang.management.RuntimeMXBean;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Admin controller.
|
||||
|
@ -45,11 +42,8 @@ public class AdminController {
|
|||
|
||||
@GetMapping("environments")
|
||||
@ApiOperation("Gets environments info")
|
||||
public Map<String, Object> getEnvironments() {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
RuntimeMXBean runtimeMXBean = ManagementFactory.getRuntimeMXBean();
|
||||
result.put("startTime", runtimeMXBean.getStartTime());
|
||||
return result;
|
||||
public EnvironmentDTO getEnvironments() {
|
||||
return adminService.getEnvironments();
|
||||
}
|
||||
|
||||
@PostMapping("login")
|
||||
|
|
|
@ -17,6 +17,8 @@ public class StatisticDTO {
|
|||
|
||||
private long attachmentCount;
|
||||
|
||||
private long birthday;
|
||||
|
||||
private long establishDays;
|
||||
|
||||
private long linkCount;
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
import run.halo.app.model.enums.AttachmentType;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package run.halo.app.model.entity;
|
||||
|
||||
import run.halo.app.utils.DateUtils;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
import run.halo.app.model.enums.PostCreateFrom;
|
||||
import run.halo.app.model.enums.PostStatus;
|
||||
import run.halo.app.utils.MarkdownUtils;
|
||||
|
|
|
@ -3,9 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
import org.springframework.core.io.support.ResourcePatternResolver;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
import run.halo.app.model.enums.LogType;
|
||||
import run.halo.app.utils.ServletUtils;
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ import lombok.Data;
|
|||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Date;
|
||||
|
|
|
@ -2,8 +2,6 @@ package run.halo.app.model.entity;
|
|||
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Objects;
|
||||
|
|
|
@ -2,8 +2,6 @@ package run.halo.app.model.entity;
|
|||
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Objects;
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ package run.halo.app.model.entity;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
package run.halo.app.model.entity;
|
||||
|
||||
import run.halo.app.utils.DateUtils;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
import run.halo.app.utils.DateUtils;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package run.halo.app.service;
|
||||
|
||||
import org.springframework.lang.NonNull;
|
||||
import run.halo.app.model.dto.EnvironmentDTO;
|
||||
import run.halo.app.model.dto.StatisticDTO;
|
||||
import run.halo.app.model.params.LoginParam;
|
||||
import run.halo.app.security.token.AuthToken;
|
||||
|
@ -9,6 +10,7 @@ import run.halo.app.security.token.AuthToken;
|
|||
* Admin service.
|
||||
*
|
||||
* @author johnniang
|
||||
* @author ryanwang
|
||||
* @date 19-4-29
|
||||
*/
|
||||
public interface AdminService {
|
||||
|
@ -46,6 +48,13 @@ public interface AdminService {
|
|||
@NonNull
|
||||
StatisticDTO getCount();
|
||||
|
||||
/**
|
||||
* Get system environments
|
||||
* @return environments
|
||||
*/
|
||||
@NonNull
|
||||
EnvironmentDTO getEnvironments();
|
||||
|
||||
/**
|
||||
* Refreshes token.
|
||||
*
|
||||
|
|
|
@ -2,12 +2,14 @@ package run.halo.app.service.impl;
|
|||
|
||||
import cn.hutool.core.lang.Validator;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
import run.halo.app.cache.StringCacheStore;
|
||||
import run.halo.app.exception.BadRequestException;
|
||||
import run.halo.app.exception.NotFoundException;
|
||||
import run.halo.app.model.dto.EnvironmentDTO;
|
||||
import run.halo.app.model.dto.StatisticDTO;
|
||||
import run.halo.app.model.entity.User;
|
||||
import run.halo.app.model.enums.CommentStatus;
|
||||
|
@ -20,12 +22,15 @@ import run.halo.app.security.util.SecurityUtils;
|
|||
import run.halo.app.service.*;
|
||||
import run.halo.app.utils.HaloUtils;
|
||||
|
||||
import java.lang.management.ManagementFactory;
|
||||
import java.lang.management.RuntimeMXBean;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* Admin service implementation.
|
||||
*
|
||||
* @author johnniang
|
||||
* @author ryanwang
|
||||
* @date 19-4-29
|
||||
*/
|
||||
@Slf4j
|
||||
|
@ -52,6 +57,9 @@ public class AdminServiceImpl implements AdminService {
|
|||
|
||||
private final StringCacheStore cacheStore;
|
||||
|
||||
@Value("${spring.datasource.driver-class-name}")
|
||||
private String driverClassName;
|
||||
|
||||
public AdminServiceImpl(PostService postService,
|
||||
SheetService sheetService,
|
||||
AttachmentService attachmentService,
|
||||
|
@ -153,6 +161,7 @@ public class AdminServiceImpl implements AdminService {
|
|||
long birthday = optionService.getBirthday();
|
||||
long days = (System.currentTimeMillis() - birthday) / (1000 * 24 * 3600);
|
||||
statisticDTO.setEstablishDays(days);
|
||||
statisticDTO.setBirthday(birthday);
|
||||
|
||||
statisticDTO.setLinkCount(linkService.count());
|
||||
|
||||
|
@ -161,6 +170,19 @@ public class AdminServiceImpl implements AdminService {
|
|||
return statisticDTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnvironmentDTO getEnvironments() {
|
||||
EnvironmentDTO environmentDTO = new EnvironmentDTO();
|
||||
|
||||
// Get application start time.
|
||||
RuntimeMXBean runtimeMXBean = ManagementFactory.getRuntimeMXBean();
|
||||
environmentDTO.setStartTime(runtimeMXBean.getStartTime());
|
||||
|
||||
environmentDTO.setDatabase("org.h2.Driver".equals(driverClassName) ? "H2" : "MySQL");
|
||||
|
||||
return environmentDTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AuthToken refreshToken(String refreshToken) {
|
||||
Assert.hasText(refreshToken, "Refresh token must not be blank");
|
||||
|
|
|
@ -46,3 +46,13 @@
|
|||
<#t><#else>刚刚
|
||||
</#if>
|
||||
</#macro>
|
||||
|
||||
<#macro globalHeader>
|
||||
<@favicon />
|
||||
<@verification />
|
||||
</#macro>
|
||||
|
||||
<#macro globalFooter>
|
||||
<@statistics />
|
||||
<@footer_info />
|
||||
</#macro>
|
Loading…
Reference in New Issue