|
@@ -28,10 +28,10 @@ public class ExtraService {
|
|
|
BugDao bugDao;
|
|
|
|
|
|
@Autowired
|
|
|
- JobDao jobDao;
|
|
|
+ ReviewJobDao jobDao;
|
|
|
|
|
|
@Autowired
|
|
|
- ItemDao itemDao;
|
|
|
+ ReviewItemDao itemDao;
|
|
|
|
|
|
@Autowired
|
|
|
ItemService itemService;
|
|
@@ -142,68 +142,70 @@ public class ExtraService {
|
|
|
JSONObject jsonObject=new JSONObject(jobJson);
|
|
|
String description=jsonObject.getString("description");
|
|
|
String name=jsonObject.getString("name");
|
|
|
-// String create_time_millis=Long.toString(System.currentTimeMillis());
|
|
|
+ String time=jsonObject.getString("time");
|
|
|
+ String type=jsonObject.getString("type");
|
|
|
+ String application_location=jsonObject.getString("application_location");
|
|
|
+ String requirement_location=jsonObject.getString("requirement_location");
|
|
|
+ String report_num=jsonObject.getString("report_num");
|
|
|
+ String worker_num=jsonObject.getString("worker_num");
|
|
|
|
|
|
- String job_id=jobDao.save(new Job(description,name,"","",""));
|
|
|
+ String job_id=jobDao.save(new ReviewJob(description,name,time,type,application_location,requirement_location,report_num,worker_num));
|
|
|
|
|
|
- JSONArray itemArray=jsonObject.getJSONArray("itemList");
|
|
|
+ JSONArray itemArray=jsonObject.getJSONArray("item_list");
|
|
|
//save item
|
|
|
//item index-id
|
|
|
HashMap<String,String> item_index_to_id=new HashMap<>();
|
|
|
- HashMap<String,Integer>item_id_to_optionNum=new HashMap<>();
|
|
|
+ HashMap<String,Integer>item_id_to_problem_num=new HashMap<>();
|
|
|
for(int i=0;i<itemArray.length();i++) {
|
|
|
JSONObject itemObject = itemArray.getJSONObject(i);
|
|
|
- String item_id=saveItem(itemObject,job_id,item_id_to_optionNum);
|
|
|
+ String item_id=saveItem(itemObject,job_id,item_id_to_problem_num);
|
|
|
String item_index=itemObject.getString("index");
|
|
|
item_index_to_id.put(item_index,item_id);
|
|
|
}
|
|
|
|
|
|
//worker_id-item_id_list
|
|
|
- JSONArray groupArray=jsonObject.getJSONArray("groupList");
|
|
|
- createWorkerToItem(item_index_to_id,groupArray,job_id,item_id_to_optionNum);
|
|
|
+ JSONArray groupArray=jsonObject.getJSONArray("group_list");
|
|
|
+ createWorkerToItem(item_index_to_id,groupArray,job_id,item_id_to_problem_num);
|
|
|
|
|
|
return job_id;
|
|
|
|
|
|
}
|
|
|
|
|
|
- private String saveItem(JSONObject itemObject,String job_id,HashMap<String,Integer>item_id_to_optionNum){
|
|
|
+ private String saveItem(JSONObject itemObject,String job_id,HashMap<String,Integer>item_id_to_problem_num){
|
|
|
|
|
|
// JSONObject itemObject=itemArray.getJSONObject(i);
|
|
|
- String name=itemObject.getString("name");
|
|
|
- String description=itemObject.getString("description");
|
|
|
- List<String> img_urls=new ArrayList<>();
|
|
|
- JSONArray imgUrlArray=itemObject.getJSONArray("img_urls");
|
|
|
- for (int j=0;j<imgUrlArray.length();j++){
|
|
|
- JSONObject imgUrlObject=imgUrlArray.getJSONObject(j);
|
|
|
- img_urls.add(imgUrlObject.getString("url"));
|
|
|
- }
|
|
|
- boolean isRequired=Boolean.parseBoolean(itemObject.getString("isRequired"));
|
|
|
- boolean isMultiple=Boolean.parseBoolean(itemObject.getString("isMultiple"));
|
|
|
- List<String> file_urls=new ArrayList<>();
|
|
|
- JSONArray fileArray=itemObject.getJSONArray("file_urls");
|
|
|
-// System.out.println(fileArray);
|
|
|
- for (int j=0;j<fileArray.length();j++){
|
|
|
- JSONObject fileObject=fileArray.getJSONObject(j);
|
|
|
-// System.out.println(fileObject.getString("url"));
|
|
|
- file_urls.add(fileObject.getString("url"));
|
|
|
- }
|
|
|
-
|
|
|
- List<String> options=new ArrayList<>();
|
|
|
- JSONArray optionArray=itemObject.getJSONArray("options");
|
|
|
-// System.out.println(optionArray);
|
|
|
- for (int j=0;j<optionArray.length();j++){
|
|
|
- JSONObject optionObject=optionArray.getJSONObject(j);
|
|
|
-// System.out.println(optionObject.getString("option"));
|
|
|
- options.add(optionObject.getString("option"));
|
|
|
- }
|
|
|
- Item item=new Item(name,description,img_urls,isRequired,isMultiple,file_urls,options,job_id);
|
|
|
- String item_id = itemDao.saveItem(item);
|
|
|
- item_id_to_optionNum.put(item_id,optionArray.length());
|
|
|
- return item_id;
|
|
|
+ List<String> urls=new ArrayList<>();
|
|
|
+ JSONArray urlArray=itemObject.getJSONArray("attachment_urls");
|
|
|
+ for (int j=0;j<urlArray.length();j++){
|
|
|
+ JSONObject imgUrlObject=urlArray.getJSONObject(j);
|
|
|
+ urls.add(imgUrlObject.getString("url"));
|
|
|
+ }
|
|
|
+ JSONArray reportArray=itemObject.getJSONArray("report_list");
|
|
|
+ List<String> reports=new ArrayList<>();
|
|
|
+ for (int j=0;j<reportArray.length();j++){
|
|
|
+ JSONObject reportIdObject=reportArray.getJSONObject(j);
|
|
|
+ urls.add(reportIdObject.getString("report_id"));
|
|
|
+ }
|
|
|
+ List<String> isRequired=new ArrayList<>();
|
|
|
+ List<String> isMultiple=new ArrayList<>();
|
|
|
+ List<String> options=new ArrayList<>();
|
|
|
+ List<String> descriptions=new ArrayList<>();
|
|
|
+ JSONArray problemArray=itemObject.getJSONArray("problem_list");
|
|
|
+ for (int j=0;j<problemArray.length();j++){
|
|
|
+ JSONObject problemObject=reportArray.getJSONObject(j);
|
|
|
+ isMultiple.add(problemObject.getString("is_multiple"));
|
|
|
+ isRequired.add(problemObject.getString("is_required"));
|
|
|
+ descriptions.add(problemObject.getString("description"));
|
|
|
+ options.add(problemObject.getString("options"));
|
|
|
+ }
|
|
|
+ ReviewItem item=new ReviewItem(job_id,isRequired,isMultiple,options,descriptions,urls,reports);
|
|
|
+ String item_id = itemDao.saveItem(item);
|
|
|
+ item_id_to_problem_num.put(item_id,problemArray.length());
|
|
|
+ return item_id;
|
|
|
|
|
|
}
|
|
|
|
|
|
- private void createWorkerToItem(HashMap<String,String> item_index_to_id,JSONArray groupArray,String job_id,HashMap<String,Integer>item_id_to_optionNum){
|
|
|
+ private void createWorkerToItem(HashMap<String,String> item_index_to_id,JSONArray groupArray,String job_id,HashMap<String,Integer>item_id_to_problem_num){
|
|
|
for(int i=0;i<groupArray.length();i++){
|
|
|
JSONObject groupObject=groupArray.getJSONObject(i);
|
|
|
String description=groupObject.getString("description");
|
|
@@ -214,7 +216,7 @@ public class ExtraService {
|
|
|
JSONObject workerObject=workerArray.getJSONObject(j);
|
|
|
workerList.add(workerObject.getString("worker_id"));
|
|
|
}
|
|
|
- JSONArray itemIndexArray=groupObject.getJSONArray("item_index_list");
|
|
|
+ JSONArray itemIndexArray=groupObject.getJSONArray("report_list");
|
|
|
List<String> itemIdList=new ArrayList<>();
|
|
|
for (int j=0;j<itemIndexArray.length();j++){
|
|
|
JSONObject itemIndexObject=itemIndexArray.getJSONObject(j);
|
|
@@ -226,12 +228,26 @@ public class ExtraService {
|
|
|
// itemService.saveUserToItem(worker_id,itemIdList,job_id,"","","","");
|
|
|
for(int k=0;k<itemIdList.size();k++){
|
|
|
String item_id=itemIdList.get(k);
|
|
|
- int optionNum=item_id_to_optionNum.get(item_id);
|
|
|
- String answer_id=itemService.saveAnswer(item_id,worker_id,job_id,optionNum);
|
|
|
+ int optionNum=item_id_to_problem_num.get(item_id);
|
|
|
+ List<String>reports=itemService.getReportsByItem(item_id);
|
|
|
+ for(int l=0;l<reports.size();l++) {
|
|
|
+ String report_id=reports.get(l);
|
|
|
+ String answer_id = itemService.saveAnswer(item_id,report_id, worker_id, job_id, optionNum);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ public String checkExam(String jobJson){
|
|
|
+ String result="";
|
|
|
+ JSONObject jsonObject=new JSONObject(jobJson);
|
|
|
+ String name=jsonObject.getString("name");
|
|
|
+ if(name==null){
|
|
|
+ return "标题为空";
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
// public static void main(String[] args) {
|