deason 9 hónapja
szülő
commit
90ea0892b5

+ 34 - 3
src/main/java/cn/com/qmth/scancentral/controller/SystemController.java

@@ -4,12 +4,14 @@ import cn.com.qmth.scancentral.bean.User;
 import cn.com.qmth.scancentral.config.SysProperty;
 import cn.com.qmth.scancentral.entity.AnswerCardEntity;
 import cn.com.qmth.scancentral.entity.ExamEntity;
+import cn.com.qmth.scancentral.entity.SystemConfigEntity;
 import cn.com.qmth.scancentral.enums.Role;
-import cn.com.qmth.scancentral.enums.SystemMode;
 import cn.com.qmth.scancentral.exception.ParameterExceptions;
 import cn.com.qmth.scancentral.service.*;
+import cn.com.qmth.scancentral.service.impl.SystemConfigServiceImpl;
 import cn.com.qmth.scancentral.vo.ActiveTimeVo;
 import cn.com.qmth.scancentral.vo.AnswerCardVo;
+import cn.com.qmth.scancentral.vo.apistatus.ApiStatusClient;
 import cn.com.qmth.scancentral.vo.apistatus.ApiStatusVo;
 import com.qmth.boot.api.annotation.Aac;
 import com.qmth.boot.api.constant.ApiConstant;
@@ -21,6 +23,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 @RestController
 @Api(tags = "系统接口")
@@ -46,6 +52,9 @@ public class SystemController extends BaseController {
     @Autowired
     private AnswerCardSubjectService answerCardSubjectService;
 
+    @Autowired
+    private SystemConfigServiceImpl systemConfigService;
+
     @ApiOperation(value = "心跳接口")
     @PostMapping("/heartbeat")
     public ActiveTimeVo heartbeat() {
@@ -55,7 +64,6 @@ public class SystemController extends BaseController {
         return vo;
     }
 
-
     @Aac(auth = false)
     @ApiOperation(value = "服务端状态")
     @RequestMapping(value = "/status", method = {RequestMethod.GET, RequestMethod.POST})
@@ -65,10 +73,33 @@ public class SystemController extends BaseController {
         vo.setVersion(sysProperty.getVersion());
         vo.setTime(System.currentTimeMillis());
         vo.setClientIP(RequestUtil.getIpAddress(request));
-        vo.setSystemMode(SystemMode.current());
+
+        ApiStatusClient client = new ApiStatusClient();
+        SystemConfigEntity config = systemConfigService.find();
+        if (config != null) {
+            client.setVersion(config.getClientVersion());
+            client.setMd5(config.getClientMd5());
+            client.setUpdateTime(config.getClientUpdateTime());
+            client.setUri(config.getClientUri());
+        }
+        vo.setClient(client);
         return vo;
     }
 
+    @Aac(auth = false)
+    @ApiOperation(value = "用户角色类型")
+    @PostMapping("/role/list")
+    public List<Map<String, String>> roles() {
+        List<Map<String, String>> roles = new ArrayList<>();
+        for (Role r : Role.values()) {
+            Map<String, String> map = new HashMap<>();
+            map.put("code", r.name());
+            map.put("name", r.getName());
+            roles.add(map);
+        }
+        return roles;
+    }
+
     @ApiOperation(value = "答题卡卡格式查询")
     @PostMapping("/card/answer")
     public AnswerCardVo cardAnswer(HttpServletRequest request, @RequestParam Long examId,

+ 5 - 7
src/main/java/cn/com/qmth/scancentral/vo/apistatus/ApiStatusVo.java

@@ -1,7 +1,5 @@
 package cn.com.qmth.scancentral.vo.apistatus;
 
-import cn.com.qmth.scancentral.enums.SystemMode;
-
 public class ApiStatusVo {
 
     private String fileUriPrefix;
@@ -12,7 +10,7 @@ public class ApiStatusVo {
 
     private String clientIP;
 
-    private SystemMode systemMode;
+    private ApiStatusClient client;
 
     public String getFileUriPrefix() {
         return fileUriPrefix;
@@ -46,12 +44,12 @@ public class ApiStatusVo {
         this.clientIP = clientIP;
     }
 
-    public SystemMode getSystemMode() {
-        return systemMode;
+    public ApiStatusClient getClient() {
+        return client;
     }
 
-    public void setSystemMode(SystemMode systemMode) {
-        this.systemMode = systemMode;
+    public void setClient(ApiStatusClient client) {
+        this.client = client;
     }
 
 }