浏览代码

修改token中包含roleId,用于区分学生和教师

郭超 4 年之前
父节点
当前提交
b6811d5096

+ 7 - 4
src/main/java/edu/nju/controller/AnalyzeController.java

@@ -557,7 +557,7 @@ public class AnalyzeController {
 	 * @param token
 	 * @param response
 	 */
-	@RequestMapping(value = "/tokenToDetail")
+	@GetMapping(value = "/tokenToDetail")
 	@ResponseBody
 	public void tokenToDetailUrl(String token ,HttpServletResponse response){
 		try {
@@ -575,6 +575,7 @@ public class AnalyzeController {
 					result.put("examId",shortToken.getExamId());
 					result.put("caseId",shortToken.getCaseId());
 					result.put("userId",shortToken.getUserId());
+					result.put("roleId",shortToken.getRoleId());
 					result.put("beginTime",shortToken.getBeginTime());
 					result.put("endTime",shortToken.getEndTime());
 				}
@@ -601,18 +602,19 @@ public class AnalyzeController {
 	 * @param userId
 	 * @param beginTime
 	 * @param endTime
+	 * @param roleId 0-学生 1-教师
 	 * @return
 	 */
-	@RequestMapping(value = "/detailToToken")
+	@GetMapping(value = "/detailToToken")
 	@ResponseBody
-	public String detailToToken(String examId,String caseId,String userId,String beginTime,String endTime){
+	public String detailToToken(String examId,String caseId,String userId, int roleId, String beginTime,String endTime){
 		JSONObject result = new JSONObject();
 		try {
 			ShortToken shortToken=aservice.findTokenByDetail(examId,caseId,userId);
 			if(shortToken==null){
 //				String token=AESUtil.encrypt(examId+"/"+caseId+"/"+userId);
 				String token= DigestUtils.md5DigestAsHex((UUID.randomUUID().toString()).getBytes());
-				ShortToken newShortToken=new ShortToken(token,beginTime,endTime,caseId,examId,userId,true);
+				ShortToken newShortToken=new ShortToken(token,beginTime,endTime,caseId,examId,userId,roleId,true);
 				aservice.saveShortToken(newShortToken);
 				result.put("result","success");
 				result.put("token",token);
@@ -621,6 +623,7 @@ public class AnalyzeController {
 				shortToken.setToken(token);
 				shortToken.setBeginTime(beginTime);
 				shortToken.setEndTime(endTime);
+				shortToken.setRoleId(roleId);
 				shortToken.setDisabled(true);
 				aservice.saveShortToken(shortToken);
 				result.put("result","success");

+ 12 - 1
src/main/java/edu/nju/entities/ShortToken.java

@@ -31,16 +31,19 @@ public class ShortToken implements Serializable {
 
     private String userId;
 
+    private int roleId;
+
     private boolean disabled;
 
     @PersistenceConstructor
-    public ShortToken(String token, String beginTime, String endTime, String caseId, String examId, String userId,boolean disabled) {
+    public ShortToken(String token, String beginTime, String endTime, String caseId, String examId, String userId,int roleId,boolean disabled) {
         this.token = token;
         this.beginTime = beginTime;
         this.endTime = endTime;
         this.caseId = caseId;
         this.examId = examId;
         this.userId = userId;
+        this.roleId = roleId;
         this.disabled=disabled;
     }
 
@@ -107,4 +110,12 @@ public class ShortToken implements Serializable {
     public void setDisabled(boolean disabled) {
         this.disabled = disabled;
     }
+
+    public int getRoleId() {
+        return roleId;
+    }
+
+    public void setRoleId(int roleId) {
+        this.roleId = roleId;
+    }
 }