|
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.qmth.boot.api.annotation.Aac;
|
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
|
import com.qmth.boot.api.exception.ApiException;
|
|
|
+import com.qmth.boot.core.enums.Platform;
|
|
|
import com.qmth.distributed.print.business.bean.params.LoginParam;
|
|
|
import com.qmth.distributed.print.business.bean.result.DictionaryResult;
|
|
|
import com.qmth.distributed.print.business.bean.result.EditResult;
|
|
@@ -16,8 +17,10 @@ import com.qmth.distributed.print.business.service.PrintCommonService;
|
|
|
import com.qmth.distributed.print.business.service.TBSyncTaskService;
|
|
|
import com.qmth.distributed.print.business.service.TeachClazzService;
|
|
|
import com.qmth.distributed.print.business.util.PdfUtil;
|
|
|
+import com.qmth.distributed.print.config.SysProperty;
|
|
|
import com.qmth.teachcloud.common.annotation.OperationLogDetail;
|
|
|
import com.qmth.teachcloud.common.bean.auth.AuthBean;
|
|
|
+import com.qmth.teachcloud.common.bean.auth.ExpireTimeBean;
|
|
|
import com.qmth.teachcloud.common.bean.result.LoginResult;
|
|
|
import com.qmth.teachcloud.common.bean.result.UserLoginCheckResult;
|
|
|
import com.qmth.teachcloud.common.config.DictionaryConfig;
|
|
@@ -28,10 +31,15 @@ import com.qmth.teachcloud.common.enums.log.CustomizedOperationTypeEnum;
|
|
|
import com.qmth.teachcloud.common.enums.log.SystemEnum;
|
|
|
import com.qmth.teachcloud.common.enums.userPush.SpecialPrivilegeEnum;
|
|
|
import com.qmth.teachcloud.common.service.*;
|
|
|
+import com.qmth.teachcloud.common.util.AuthUtil;
|
|
|
import com.qmth.teachcloud.common.util.FileUtil;
|
|
|
+import com.qmth.teachcloud.common.util.RedisUtil;
|
|
|
import com.qmth.teachcloud.common.util.Result;
|
|
|
import com.qmth.teachcloud.common.util.ResultUtil;
|
|
|
import com.qmth.teachcloud.common.util.ServletUtil;
|
|
|
+import com.qmth.teachcloud.mark.bean.sys.ActiveTimeVo;
|
|
|
+import com.qmth.teachcloud.mark.bean.sys.ApiStatusVo;
|
|
|
+
|
|
|
import io.swagger.annotations.*;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
@@ -43,6 +51,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import javax.validation.Valid;
|
|
|
import java.io.File;
|
|
@@ -50,6 +59,7 @@ import java.io.IOException;
|
|
|
import java.io.InputStream;
|
|
|
import java.security.NoSuchAlgorithmException;
|
|
|
import java.util.*;
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
import java.util.stream.Stream;
|
|
|
|
|
@@ -61,7 +71,8 @@ import java.util.stream.Stream;
|
|
|
@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_COMMON)
|
|
|
public class SysController {
|
|
|
private final static Logger log = LoggerFactory.getLogger(SysController.class);
|
|
|
-
|
|
|
+ @Resource
|
|
|
+ SysProperty sysProperty;
|
|
|
@Resource
|
|
|
SysUserService sysUserService;
|
|
|
|
|
@@ -115,7 +126,8 @@ public class SysController {
|
|
|
|
|
|
@Resource
|
|
|
ConditionService conditionService;
|
|
|
-
|
|
|
+ @Resource
|
|
|
+ RedisUtil redisUtil;
|
|
|
/**
|
|
|
* 登录
|
|
|
*
|
|
@@ -861,4 +873,27 @@ public class SysController {
|
|
|
// 导出
|
|
|
FileUtil.outputFile(response, inputStream, importTemplateEnum.getFileName());
|
|
|
}
|
|
|
+
|
|
|
+ @Aac(auth = false)
|
|
|
+ @ApiOperation(value = "服务端状态")
|
|
|
+ @RequestMapping("status")
|
|
|
+ public ApiStatusVo status(HttpServletRequest request) {
|
|
|
+ ApiStatusVo vo = new ApiStatusVo();
|
|
|
+ vo.setFileUriPrefix(sysProperty.getFileUriPrefix());
|
|
|
+ vo.setVersion(sysProperty.getVersion());
|
|
|
+ vo.setTime(System.currentTimeMillis());
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "心跳接口")
|
|
|
+ @PostMapping("heartbeat")
|
|
|
+ public ActiveTimeVo heartbeat() {
|
|
|
+ Platform platform = ServletUtil.getRequestPlatform();
|
|
|
+ ExpireTimeBean expireTime = AuthUtil.getExpireTime(platform);
|
|
|
+ TBSession ts=(TBSession)ServletUtil.getRequestSession();
|
|
|
+ redisUtil.expire(ts.getId(), expireTime.getExpireSeconds(),TimeUnit.SECONDS);
|
|
|
+ ActiveTimeVo vo = new ActiveTimeVo();
|
|
|
+ vo.setActiveTime(System.currentTimeMillis());
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
}
|