|
|
@@ -1,5 +1,7 @@
|
|
|
package vip.xiaonuo.exam.controller.student;
|
|
|
|
|
|
+import cn.hutool.json.JSONUtil;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
@@ -75,21 +77,58 @@ public class DashboardController extends BaseApiController {
|
|
|
public CommonResult<List<TaskItemVm>> task() {
|
|
|
SaBaseLoginUser user = getCurrentUser();
|
|
|
List<TaskExam> taskExams = taskExamService.getByGradeLevel(user.getSortCode());
|
|
|
+
|
|
|
if (taskExams.size() == 0) {
|
|
|
return CommonResult.data(new ArrayList<>());
|
|
|
}
|
|
|
List<Integer> tIds = taskExams.stream().map(taskExam -> taskExam.getId()).collect(Collectors.toList());
|
|
|
List<TaskExamCustomerAnswer> taskExamCustomerAnswers = taskExamCustomerAnswerService.selectByTUid(tIds, user.getId());
|
|
|
- List<TaskItemVm> vm = taskExams.stream().map(t -> {
|
|
|
+
|
|
|
+
|
|
|
+ List<TaskItemVm> vm = new ArrayList<TaskItemVm>();
|
|
|
+ for(TaskExam t : taskExams){
|
|
|
TaskItemVm itemVm = new TaskItemVm();
|
|
|
itemVm.setId(t.getId());
|
|
|
itemVm.setTitle(t.getTitle());
|
|
|
- TaskExamCustomerAnswer taskExamCustomerAnswer = taskExamCustomerAnswers.stream()
|
|
|
- .filter(tc -> tc.getTaskExamId().equals(t.getId())).findFirst().orElse(null);
|
|
|
- List<TaskItemPaperVm> paperItemVMS = getTaskItemPaperVm(t.getFrameTextContentId(), taskExamCustomerAnswer);
|
|
|
- itemVm.setPaperItems(paperItemVMS);
|
|
|
- return itemVm;
|
|
|
- }).collect(Collectors.toList());
|
|
|
+ TaskExamCustomerAnswer taskExamCustomerAnswer = null;
|
|
|
+ for(TaskExamCustomerAnswer tec : taskExamCustomerAnswers){
|
|
|
+ System.out.println(tec.getTaskExamId().intValue());
|
|
|
+ System.out.println(t.getId().intValue());
|
|
|
+ if(tec.getTaskExamId().intValue() == t.getId().intValue()){
|
|
|
+ taskExamCustomerAnswer = tec;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(taskExamCustomerAnswer != null){
|
|
|
+ List<TaskItemPaperVm> paperItemVMS = getTaskItemPaperVm(t.getFrameTextContentId(), taskExamCustomerAnswer);
|
|
|
+ if(paperItemVMS != null){
|
|
|
+ itemVm.setPaperItems(paperItemVMS);
|
|
|
+ }
|
|
|
+ vm.add(itemVm);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+// List<TaskItemVm> vm = taskExams.stream().map(t -> {
|
|
|
+// TaskItemVm itemVm = new TaskItemVm();
|
|
|
+// itemVm.setId(t.getId());
|
|
|
+// itemVm.setTitle(t.getTitle());
|
|
|
+// TaskExamCustomerAnswer taskExamCustomerAnswer = null;
|
|
|
+// for(TaskExamCustomerAnswer tec : taskExamCustomerAnswers){
|
|
|
+// System.out.println(tec.getTaskExamId().intValue());
|
|
|
+// System.out.println(t.getId().intValue());
|
|
|
+// if(tec.getTaskExamId().intValue() == t.getId().intValue()){
|
|
|
+// taskExamCustomerAnswer = tec;
|
|
|
+// }
|
|
|
+// }
|
|
|
+// if(taskExamCustomerAnswer != null){
|
|
|
+// System.out.println("taskExamCustomerAnswertaskExamCustomerAnswer "+taskExamCustomerAnswer);
|
|
|
+// List<TaskItemPaperVm> paperItemVMS = getTaskItemPaperVm(t.getFrameTextContentId(), taskExamCustomerAnswer);
|
|
|
+// itemVm.setPaperItems(paperItemVMS);
|
|
|
+// return itemVm;
|
|
|
+// }
|
|
|
+//
|
|
|
+// }).collect(Collectors.toList());
|
|
|
return CommonResult.data(vm);
|
|
|
}
|
|
|
|
|
|
@@ -103,24 +142,46 @@ public class DashboardController extends BaseApiController {
|
|
|
TextContent answerTextContent = textContentService.selectById(taskExamCustomerAnswers.getTextContentId());
|
|
|
answerPaperItems = JsonUtil.toJsonListObject(answerTextContent.getContent(), TaskItemAnswerObject.class);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
- List<TaskItemAnswerObject> finalAnswerPaperItems = answerPaperItems;
|
|
|
- return paperItems.stream().map(p -> {
|
|
|
- TaskItemPaperVm ivm = new TaskItemPaperVm();
|
|
|
- ivm.setExamPaperId(p.getExamPaperId());
|
|
|
- ivm.setExamPaperName(p.getExamPaperName());
|
|
|
- if (null != finalAnswerPaperItems) {
|
|
|
- finalAnswerPaperItems.stream()
|
|
|
- .filter(a -> a.getExamPaperId().equals(p.getExamPaperId()))
|
|
|
- .findFirst()
|
|
|
- .ifPresent(a -> {
|
|
|
- ivm.setExamPaperAnswerId(a.getExamPaperAnswerId());
|
|
|
- ivm.setStatus(a.getStatus());
|
|
|
- });
|
|
|
+ if(answerPaperItems != null){
|
|
|
+ List<TaskItemAnswerObject> finalAnswerPaperItems = answerPaperItems;
|
|
|
+
|
|
|
+ List<TaskItemPaperVm> results = new ArrayList<TaskItemPaperVm>();
|
|
|
+ for(TaskItemObject p : paperItems){
|
|
|
+ TaskItemPaperVm ivm = new TaskItemPaperVm();
|
|
|
+ ivm.setExamPaperId(p.getExamPaperId());
|
|
|
+ ivm.setExamPaperName(p.getExamPaperName());
|
|
|
+ if (null != finalAnswerPaperItems) {
|
|
|
+ for(TaskItemAnswerObject a :finalAnswerPaperItems){
|
|
|
+ if(a != null && a.getExamPaperId() !=null && a.getExamPaperId().equals(p.getExamPaperId())){
|
|
|
+ ivm.setExamPaperAnswerId(a.getExamPaperAnswerId());
|
|
|
+ ivm.setStatus(a.getStatus());
|
|
|
+ }
|
|
|
}
|
|
|
- return ivm;
|
|
|
}
|
|
|
- ).collect(Collectors.toList());
|
|
|
+ if(ivm.getExamPaperAnswerId() == null){
|
|
|
+ results.add(ivm);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return results;
|
|
|
+
|
|
|
+// return paperItems.stream().map(p -> {
|
|
|
+// TaskItemPaperVm ivm = new TaskItemPaperVm();
|
|
|
+// ivm.setExamPaperId(p.getExamPaperId());
|
|
|
+// ivm.setExamPaperName(p.getExamPaperName());
|
|
|
+// if (null != finalAnswerPaperItems) {
|
|
|
+// finalAnswerPaperItems.stream()
|
|
|
+// .filter(a -> a.getExamPaperId().equals(p.getExamPaperId()))
|
|
|
+// .findFirst()
|
|
|
+// .ifPresent(a -> {
|
|
|
+// ivm.setExamPaperAnswerId(a.getExamPaperAnswerId());
|
|
|
+// ivm.setStatus(a.getStatus());
|
|
|
+// });
|
|
|
+// }
|
|
|
+// return ivm;
|
|
|
+// }
|
|
|
+// ).collect(Collectors.toList());
|
|
|
+ }else{
|
|
|
+ return null;
|
|
|
+ }
|
|
|
}
|
|
|
}
|