Browse Source

添加身份证隐私模式代码

lideyin 5 years ago
parent
commit
a86dac4aec

+ 13 - 2
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamAuditController.java

@@ -23,6 +23,7 @@ import cn.com.qmth.examcloud.core.oe.admin.service.ExamAuditService;
 import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.*;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.*;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
+import cn.com.qmth.examcloud.support.helper.IdentityNumberHelper;
 import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
 import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.Naked;
 import cn.com.qmth.examcloud.web.support.Naked;
@@ -63,7 +64,12 @@ public class ExamAuditController extends ControllerSupport {
     public Page<ExamAuditInfo> getExamAuditList(@RequestBody ExamAuditQuery query) {
     public Page<ExamAuditInfo> getExamAuditList(@RequestBody ExamAuditQuery query) {
         User user = getAccessUser();
         User user = getAccessUser();
         query.setRootOrgId(user.getRootOrgId());
         query.setRootOrgId(user.getRootOrgId());
-        return examAuditService.getExamAuditList(query);
+        Page<ExamAuditInfo> examAuditList = examAuditService.getExamAuditList(query);
+
+        examAuditList.getContent().forEach(p -> {
+            p.setIdentityNumber(IdentityNumberHelper.conceal(user.getRootOrgId(), p.getIdentityNumber()));
+        });
+        return examAuditList;
     }
     }
 
 
     @PostMapping("/discipline/list")
     @PostMapping("/discipline/list")
@@ -72,7 +78,12 @@ public class ExamAuditController extends ControllerSupport {
         query.setStatus(AuditStatus.UN_PASS.name());
         query.setStatus(AuditStatus.UN_PASS.name());
         User user = getAccessUser();
         User user = getAccessUser();
         query.setRootOrgId(user.getRootOrgId());
         query.setRootOrgId(user.getRootOrgId());
-        return examAuditService.getExamAuditList(query);
+        Page<ExamAuditInfo> examAuditList = examAuditService.getExamAuditList(query);
+
+        examAuditList.getContent().forEach(p -> {
+            p.setIdentityNumber(IdentityNumberHelper.conceal(user.getRootOrgId(), p.getIdentityNumber()));
+        });
+        return examAuditList;
     }
     }
 
 
     @Naked
     @Naked

+ 8 - 1
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamCaptureController.java

@@ -9,6 +9,7 @@ package cn.com.qmth.examcloud.core.oe.admin.api.controller;
 
 
 import java.util.List;
 import java.util.List;
 
 
+import cn.com.qmth.examcloud.support.helper.IdentityNumberHelper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -38,7 +39,13 @@ public class ExamCaptureController extends ControllerSupport {
     @PostMapping("/audit/detail")
     @PostMapping("/audit/detail")
     @ApiOperation(value = "抓拍详情-审核详细信息")
     @ApiOperation(value = "抓拍详情-审核详细信息")
     public ExamCaptureAuditInfo getAuditDetail(@RequestParam Long examRecordDataId) {
     public ExamCaptureAuditInfo getAuditDetail(@RequestParam Long examRecordDataId) {
-        return examCaptureService.getExamCaptureAuditDetail(examRecordDataId);
+        ExamCaptureAuditInfo examCaptureAuditDetail = examCaptureService.getExamCaptureAuditDetail(examRecordDataId);
+
+        if (null != examCaptureAuditDetail) {
+            examCaptureAuditDetail.setIdentityNumber(IdentityNumberHelper.conceal(getRootOrgId(),
+                    examCaptureAuditDetail.getIdentityNumber()));
+        }
+        return examCaptureAuditDetail;
     }
     }
 
 
     @PostMapping("/list")
     @PostMapping("/list")

+ 37 - 28
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamRecordController.java

@@ -19,6 +19,7 @@ import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamRecordInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamRecordInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamRecordQuery;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamRecordQuery;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamStudentQuestionScoreInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examrecord.ExamStudentQuestionScoreInfo;
+import cn.com.qmth.examcloud.support.helper.IdentityNumberHelper;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.Naked;
 import cn.com.qmth.examcloud.web.support.Naked;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
@@ -44,43 +45,51 @@ import java.util.List;
 public class ExamRecordController extends ControllerSupport {
 public class ExamRecordController extends ControllerSupport {
     @Autowired
     @Autowired
     private ExamRecordService examRecordService;
     private ExamRecordService examRecordService;
-    
+
     @Autowired
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
     private ExamRecordDataRepo examRecordDataRepo;
-    
+
     @Autowired
     @Autowired
     private ExamRecordForMarkingRepo examRecordForMarkingRepo;
     private ExamRecordForMarkingRepo examRecordForMarkingRepo;
-    
+
 
 
     @PostMapping("/waiting/audit/list")
     @PostMapping("/waiting/audit/list")
     @ApiOperation(value = "查询“监考待审”列表(分页)")
     @ApiOperation(value = "查询“监考待审”列表(分页)")
     public Page<ExamRecordInfo> getExamRecordWaitingAuditList(@RequestBody ExamRecordQuery query) {
     public Page<ExamRecordInfo> getExamRecordWaitingAuditList(@RequestBody ExamRecordQuery query) {
-        return examRecordService.getExamRecordWaitingAuditList(query);
+        Page<ExamRecordInfo> examRecordWaitingAuditList = examRecordService.getExamRecordWaitingAuditList(query);
+        examRecordWaitingAuditList.getContent().forEach(p -> {
+            p.setIdentityNumber(IdentityNumberHelper.conceal(p.getRootOrgId(), p.getIdentityNumber()));
+        });
+        return examRecordWaitingAuditList;
     }
     }
-    
+
     @PostMapping("/detail/check")
     @PostMapping("/detail/check")
     @ApiOperation(value = "查询“考试明细” 是否存在待审数据")
     @ApiOperation(value = "查询“考试明细” 是否存在待审数据")
     public Long existsWarnExamRecordDetail(@RequestBody ExamRecordQuery query) {
     public Long existsWarnExamRecordDetail(@RequestBody ExamRecordQuery query) {
         return examRecordService.existsWarnExamRecordDetail(query);
         return examRecordService.existsWarnExamRecordDetail(query);
     }
     }
-    
+
     @PostMapping("/detail/list")
     @PostMapping("/detail/list")
     @ApiOperation(value = "查询“考试明细”列表(分页)")
     @ApiOperation(value = "查询“考试明细”列表(分页)")
     public Page<ExamRecordInfo> getExamRecordDetailList(@RequestBody ExamRecordQuery query) {
     public Page<ExamRecordInfo> getExamRecordDetailList(@RequestBody ExamRecordQuery query) {
-    	Page<ExamRecordInfo> examRecordInfoPage = examRecordService.getExamRecordDetailListForPage(query);
-    	List<ExamRecordInfo> examRecordInfoList = examRecordInfoPage.getContent();
-    	if(examRecordInfoList!=null && examRecordInfoList.size() > 0){
-    		String examType = examRecordInfoList.get(0).getExamType();
-    		if(ExamType.OFFLINE.name() == examType){
-    			for(ExamRecordInfo examRecordInfo:examRecordInfoList){
-    				long examRecordDataId = examRecordInfo.getDataId();
-        			ExamRecordForMarkingEntity examRecordForMarkingEntity = examRecordForMarkingRepo.findByExamRecordDataId(examRecordDataId);
-        			if(examRecordForMarkingEntity!=null){
-        				examRecordInfo.setOfflineFileUrl(examRecordForMarkingEntity.getOfflineFileUrl());
-        			}
-    			}
-    		}
-    	}
+        Page<ExamRecordInfo> examRecordInfoPage = examRecordService.getExamRecordDetailListForPage(query);
+        List<ExamRecordInfo> examRecordInfoList = examRecordInfoPage.getContent();
+        if (examRecordInfoList != null && examRecordInfoList.size() > 0) {
+            String examType = examRecordInfoList.get(0).getExamType();
+
+            for (ExamRecordInfo examRecordInfo : examRecordInfoList) {
+                examRecordInfo.setIdentityNumber((IdentityNumberHelper.conceal(examRecordInfo.getRootOrgId(),
+                        examRecordInfo.getIdentityNumber())));
+
+                if (ExamType.OFFLINE.name() == examType) {
+                    long examRecordDataId = examRecordInfo.getDataId();
+                    ExamRecordForMarkingEntity examRecordForMarkingEntity = examRecordForMarkingRepo.findByExamRecordDataId(examRecordDataId);
+                    if (examRecordForMarkingEntity != null) {
+                        examRecordInfo.setOfflineFileUrl(examRecordForMarkingEntity.getOfflineFileUrl());
+                    }
+                }
+            }
+        }
         return examRecordInfoPage;
         return examRecordInfoPage;
     }
     }
 
 
@@ -92,7 +101,7 @@ public class ExamRecordController extends ControllerSupport {
         Check.isNull(newQuery, "请求参数不能为空!");
         Check.isNull(newQuery, "请求参数不能为空!");
         Check.isNull(newQuery.getExamId(), "请先选择考试批次!");
         Check.isNull(newQuery.getExamId(), "请先选择考试批次!");
         List<ExamRecordInfo> examRecordInfoList = examRecordService.getExamRecordDetailList(newQuery);
         List<ExamRecordInfo> examRecordInfoList = examRecordService.getExamRecordDetailList(newQuery);
-        ExportUtils.exportEXCEL("考试明细列表", ExamRecordInfo.class,examRecordInfoList,response);
+        ExportUtils.exportEXCEL("考试明细列表", ExamRecordInfo.class, examRecordInfoList, response);
     }
     }
 
 
     @PostMapping(value = "/refresh/capture/statistic")
     @PostMapping(value = "/refresh/capture/statistic")
@@ -112,17 +121,17 @@ public class ExamRecordController extends ControllerSupport {
 
 
     @GetMapping("/select/byExamStudentId")
     @GetMapping("/select/byExamStudentId")
     @ApiOperation(value = "根据考生ID查询考试记录")
     @ApiOperation(value = "根据考生ID查询考试记录")
-    public List<ExamRecordDataEntity> getExamRecordByExamStudentId(@RequestParam Long examStudentId){
-    	List<ExamRecordDataEntity> examRecordEntityList = examRecordDataRepo.findByExamStudentId(examStudentId);
-    	return 	examRecordEntityList;	
+    public List<ExamRecordDataEntity> getExamRecordByExamStudentId(@RequestParam Long examStudentId) {
+        List<ExamRecordDataEntity> examRecordEntityList = examRecordDataRepo.findByExamStudentId(examStudentId);
+        return examRecordEntityList;
     }
     }
-    
+
     @GetMapping("/detail/examStudentQuestionScoreList")
     @GetMapping("/detail/examStudentQuestionScoreList")
     @ApiOperation(value = "导出考生作答分数明细列表(Excel)", notes = "参数examId和examId必传")
     @ApiOperation(value = "导出考生作答分数明细列表(Excel)", notes = "参数examId和examId必传")
-    public void getExamStudentQuestionScoreList(@RequestParam Long examId,@RequestParam String courseCode, HttpServletResponse response) throws Exception {
+    public void getExamStudentQuestionScoreList(@RequestParam Long examId, @RequestParam String courseCode, HttpServletResponse response) throws Exception {
         Check.isNull(examId, "考试id不能为空!");
         Check.isNull(examId, "考试id不能为空!");
         Check.isBlank(courseCode, "课程代码不能空!");
         Check.isBlank(courseCode, "课程代码不能空!");
-        List<ExamStudentQuestionScoreInfo> examRecordInfoList = examRecordService.getExamStudentQuestionScoreList(examId,courseCode);
-        ExportUtils.exportEXCEL("考试明细列表", ExamStudentQuestionScoreInfo.class,examRecordInfoList,response);
+        List<ExamStudentQuestionScoreInfo> examRecordInfoList = examRecordService.getExamStudentQuestionScoreList(examId, courseCode);
+        ExportUtils.exportEXCEL("考试明细列表", ExamStudentQuestionScoreInfo.class, examRecordInfoList, response);
     }
     }
 }
 }

+ 7 - 1
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamScoreController.java

@@ -22,6 +22,7 @@ import cn.com.qmth.examcloud.support.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.support.examing.ExamBoss;
 import cn.com.qmth.examcloud.support.examing.ExamBoss;
 import cn.com.qmth.examcloud.support.examing.ExamRecordData;
 import cn.com.qmth.examcloud.support.examing.ExamRecordData;
 import cn.com.qmth.examcloud.support.helper.ExamCacheTransferHelper;
 import cn.com.qmth.examcloud.support.helper.ExamCacheTransferHelper;
+import cn.com.qmth.examcloud.support.helper.IdentityNumberHelper;
 import cn.com.qmth.examcloud.support.redis.RedisKeyHelper;
 import cn.com.qmth.examcloud.support.redis.RedisKeyHelper;
 import cn.com.qmth.examcloud.web.redis.RedisClient;
 import cn.com.qmth.examcloud.web.redis.RedisClient;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
@@ -57,7 +58,12 @@ public class ExamScoreController extends ControllerSupport {
     @PostMapping("/statistic/list")
     @PostMapping("/statistic/list")
     @ApiOperation(value = "查询“成绩统计”列表(分页)")
     @ApiOperation(value = "查询“成绩统计”列表(分页)")
     public Page<ExamScoreInfo> getExamAuditList(@RequestBody ExamScoreQuery query) {
     public Page<ExamScoreInfo> getExamAuditList(@RequestBody ExamScoreQuery query) {
-        return examScoreService.getExamScoreList(query);
+        Page<ExamScoreInfo> examScoreList = examScoreService.getExamScoreList(query);
+
+        examScoreList.getContent().forEach(p->{
+            p.setIdentityNumber(IdentityNumberHelper.conceal(getRootOrgId(),p.getIdentityNumber()));
+        });
+        return examScoreList;
     }
     }
 
 
     @Naked
     @Naked

+ 18 - 3
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamStudentController.java

@@ -16,6 +16,7 @@ import cn.com.qmth.examcloud.core.oe.admin.service.ExamStudentService;
 import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examstudent.*;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examstudent.*;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
+import cn.com.qmth.examcloud.support.helper.IdentityNumberHelper;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.web.support.Naked;
 import cn.com.qmth.examcloud.web.support.Naked;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
@@ -73,7 +74,13 @@ public class ExamStudentController extends ControllerSupport {
     public Page<ExamStudentInfo> getExamScheduling(@RequestBody ExamStudentQuery query) {
     public Page<ExamStudentInfo> getExamScheduling(@RequestBody ExamStudentQuery query) {
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
-        return examStudentService.getExamStudentListPage(query);
+        Page<ExamStudentInfo> examStudentListPage = examStudentService.getExamStudentListPage(query);
+
+        examStudentListPage.getContent().forEach(p->{
+            p.setIdentityNumber(IdentityNumberHelper.conceal(p.getRootOrgId(),p.getIdentityNumber()));
+        });
+
+        return examStudentListPage;
     }
     }
 
 
     @GetMapping("/examScheduling/list/export")
     @GetMapping("/examScheduling/list/export")
@@ -93,7 +100,11 @@ public class ExamStudentController extends ControllerSupport {
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
         query.setFinished(0);
         query.setFinished(0);
-        return examStudentService.getExamStudentListPage(query);
+        Page<ExamStudentInfo> examStudentListPage = examStudentService.getExamStudentListPage(query);
+        examStudentListPage.getContent().forEach(p->{
+            p.setIdentityNumber(IdentityNumberHelper.conceal(p.getRootOrgId(),p.getIdentityNumber()));
+        });
+        return examStudentListPage;
     }
     }
 
 
     @Naked
     @Naked
@@ -114,7 +125,11 @@ public class ExamStudentController extends ControllerSupport {
     public Page<ExamStudentInfo> getReExamineStudentList(@RequestBody ExamStudentQuery query) {
     public Page<ExamStudentInfo> getReExamineStudentList(@RequestBody ExamStudentQuery query) {
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query, "查询参数不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
         Check.isNull(query.getExamId(), "考试批次不能为空!");
-        return examStudentService.getReExamineStudentList(query);
+        Page<ExamStudentInfo> reExamineStudentList = examStudentService.getReExamineStudentList(query);
+        reExamineStudentList.getContent().forEach(p->{
+            p.setIdentityNumber(IdentityNumberHelper.conceal(p.getRootOrgId(),p.getIdentityNumber()));
+        });
+        return reExamineStudentList;
     }
     }
 
 
     @PostMapping("/reexamine")
     @PostMapping("/reexamine")