/** * 完成线上任务 * * @param onTaskId 线上任务ID * @param request * @param response POST不要使用@PathVariable * @return */ @RequestMapping(value = "onlinecomplete") public String onlineComplete( String onTaskId, HttpServletRequest request, HttpServletResponse response) { PgOnlineTask onlineTask = pgOnlineTaskService.get(onTaskId); // 线上任务 String onlineCheck = request.getParameter("answerChk"); // 用户选择的答案(ID) PgAnswer answer = pgAnswerService.get(onlineCheck); // 答案对象 if (answer != null && answer.getRightOrNot().equals("1")) { onlineTask.setRightOrNot("1"); // 答案是否正确(1:正确;0:错误) // 答题正确给予积分奖励 PgTaskList taskList = pgTaskListService.get(onlineTask.getTaskId()); PgOnlineQuestion onlineQuestion = pgOnlineQuestionService.get(taskList.getQuestionId()); Integer integral = onlineQuestion.getBaseIntegral(); // 构造方法PgIntegral(String integralDate,String integralType,Integer integral,User user) // 积分类型(integralType):0线上任务/1线下任务/2签到/3日记 PgIntegral pi = new PgIntegral(DateUtils.getDateTime(), "0", integral, UserUtils.getUser()); pi.setRemarks(onlineQuestion.getQuestion()); pgIntegralService.save(pi); } else { onlineTask.setRightOrNot("0"); // 答案是否正确(1:正确;0:错误) } onlineTask.setOnlineTaskStatus("1"); // 状态:1 表示已完成 onlineTask.setAnswerId(onlineCheck); // 用户选择的答案(ID) String answerType = ""; // 答题方式 // 未完成***********************************------------------------------------------- // 更新"是否正确" pgOnlineTaskService.save(onlineTask); // 更新会员在线任务 return "redirect:" + Global.getFrontPath() + "/task"; }
// @RequiresPermissions("sys:user:view") @RequestMapping(value = "view-{taskId}${urlSuffix}") public String context( @PathVariable String taskId, HttpServletRequest request, HttpServletResponse response, Model model) { model.addAttribute("site", site); // "全部任务"对象 PgTaskList taskList = pgTaskListService.get(taskId); if (taskList.getTaskType().equals("0")) { // 线上任务 model.addAttribute("online", pgOnlineQuestionService.get(taskList.getQuestionId())); List answerList = pgAnswerService.findList( new PgAnswer(pgOnlineQuestionService.get(taskList.getQuestionId()))); model.addAttribute("answerList", answerList); } else if (taskList.getTaskType().equals("1")) { // 线下任务 model.addAttribute("offline", pgOfflineQuestionService.get(taskList.getQuestionId())); } model.addAttribute("taskType", taskList.getTaskType()); model.addAttribute("taskId", taskId); return "modules/cms/front/themes/" + site.getTheme() + "/task"; }