123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- package com.mooctest.controller;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.mooctest.data.ResponseDTO;
- import com.mooctest.service.JobService;
- import com.mooctest.service.PaperService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.ui.Model;
- import java.sql.Timestamp;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.Comparator;
- import java.util.List;
- @Controller
- @RequestMapping(value = "/review")
- public class JobController {
- /**
- * 用于reviewJob 众包审核系统的review
- */
- @Value("${report.host}")
- String reportHost;
- @Autowired
- PaperService paperService;
- @Autowired
- JobService jobService;
- @GetMapping(value = "job")
- public String getJob ( Model model, @RequestParam("paperId") String paperId){
- // paperId 是这次Job任务所采用的paper的id
- JSONObject jsonObject = paperService.getSinglePaper(paperId);
- model.addAttribute("paperId",paperId);
- model.addAttribute("paperName",jsonObject.getString("name")); // name of paper, for show
- return "addReviewJob";
- }
- //添加一个JOB
- @PostMapping(value = "job")
- @ResponseBody
- public JSONObject postJon ( @RequestParam("paperId")String paperId,@RequestParam("time")String time,
- @RequestParam("name") String name, @RequestParam("description") String descriptioin,
- @RequestParam("workNum") int workNum,
- @RequestParam("itemGroupList") String itemGroupList, @RequestParam("crossCertify") String crossCertify,
- @RequestParam("crossCertifyNum") int crossCertifyNum){
- JSONObject data = jobService.addJob(name,descriptioin,time,paperId,new ArrayList<String>(),itemGroupList,workNum,crossCertify,crossCertifyNum);
- return data;
- }
- //修改现有的JOB
- @PostMapping(value = "/changejob")
- @ResponseBody
- public JSONObject putJob ( @RequestParam("jobId") String jobId,
- @RequestParam("paperId") String paperId,@RequestParam("time")String time,
- @RequestParam("name") String name, @RequestParam("description") String descriptioin,
- @RequestParam("workers")List<String> workers , @RequestParam("workNum") int workNum,
- @RequestParam("itemGroupList") String itemGroupList, @RequestParam("crossCertify") String crossCertify,
- @RequestParam("crossCertifyNum") int crossCertifyNum){
- JSONObject data = jobService.changeJob(jobId,name,descriptioin,time,paperId,workers,itemGroupList,workNum,crossCertify,crossCertifyNum);
- return data;
- }
- @GetMapping(value = "/jobs")
- public String jobs (Model model){
- JSONArray jsonArray = jobService.getJobs(); // 所有的数据
- for (Object single : jsonArray){
- JSONObject temp = (JSONObject) single;
- temp.put("create_time",new Timestamp(Long.parseLong(temp.get("create_time").toString()))); // 修改创建时间的格式 以便前段展示
- }
- // Collections.sort(jsonArray, new Comparator<Object>() {
- // @Override
- // public int compare(Object o1, Object o2) {
- // JSONObject jso1 = (JSONObject) o1;
- // JSONObject jso2 = (JSONObject) o2;
- // return ((Timestamp)jso1.get("create_time")).compareTo((Timestamp)jso2.get("create_time"));
- // }
- // });
- model.addAttribute("tasks",jsonArray);
- model.addAttribute("reportHost",reportHost);
- return "jobList";
- }
- @GetMapping(value = "jobDetail")
- public String detail ( Model model , @RequestParam("id") String id){
- JSONObject res = jobService.getSinglePaper(id); // 获取job的详细信息
- model.addAttribute("data",res);
- return "jobDetail";
- }
- @GetMapping(value = "/changeJob")
- public String change ( Model model , @RequestParam("id") String id){
- //参数为对应JOB的id
- try {
- JSONObject detail = jobService.getSinglePaper(id);
- model.addAttribute("job",detail);
- JSONObject paper = paperService.getSinglePaper((String)detail.get("paper_id"));
- model.addAttribute("paper",paper);
- String distribute = jobService.getDistribution(id);
- model.addAttribute("distribute" , distribute);
- String workerStr = jobService.getWrokers(id).toString();
- model.addAttribute("workers",workerStr.substring(1,workerStr.length()-1));
- model.addAttribute("reportHost",reportHost);
- return "changeReviewJob";
- }catch (Exception e){
- //返回异常,
- return "error";
- }
- }
- @GetMapping(value = "/export")
- public String export ( Model model , @RequestParam("id") String id ){
- JSONArray array = jobService.export(id);
- model.addAttribute("datas",array);
- return "exportExcel";
- }
- // @PostMapping(value = "jobDistribute")
- // public ResponseDTO jobDistribute (@RequestParam("id")String jobId){
- // //huoqu fenpei xinxi
- //
- // }
- private List<String> getUserList(int i ){
- List<String > res = new ArrayList<>();
- while(i-->0){
- res.add(i+"");
- }
- return res;
- }
- private boolean isEdu(JSONObject job ){
- // is the job form edu
- try {
- return true;
- }catch (Exception x){
- return false;
- }
- }
- }
|