public HttpResponseMessage ListReviewingHistoryPaperText(int paperId, int conferenceId, int reviewTime = 1) { var paper = db.PAPER_TEXT.Find(paperId); var model = new PaperTextModel(); if (paper == null) { return(ResponseFail(StringResource.Paper_text_do_not_exist)); } else { var paperText = model.getMyPaperText(paperId, reviewTime); var listReviewing = (from r in db.REVIEWER_PAPER_TEXT_RELATIONSHIP join b in db.CONFERENCE_BOARD_OF_REVIEW on r.CONFERENCE_BOARD_OF_REVIEW_ID equals b.CONFERENCE_BOARD_OF_REVIEW_ID join p in db.People on r.PERSON_ID equals p.PERSON_ID where r.PAPER_ID == paperId && r.CONFERENCE_ID == conferenceId && r.PAPER_TEXT_SUBMISSION_DEADLINE_ORDER_NUMBER == reviewTime && r.REVIEWED_DATE != null select new { r, b, p }) .AsEnumerable() .Select(x => new { x.r.PERSON_ID, x.r.CONFERENCE_BOARD_OF_REVIEW_ID, x.r.CONFERENCE_ID, x.r.PAPER_ID, REVIEW_CURRENT_FIRST_NAME = x.p.CURRENT_FIRST_NAME, REVIEW_CURRENT_MIDDLE_NAME = x.p.CURRENT_MIDDLE_NAME, REVIEW_CURRENT_LAST_NAME = x.p.CURRENT_LAST_NAME, REVIEW_FULL_NAME = Utils.GetFullName(x.p.CURRENT_FIRST_NAME, x.p.CURRENT_MIDDLE_NAME, x.p.CURRENT_LAST_NAME), paperText.PAPER_TEXT_TITLE, paperText.PAPER_TEXT_TITLE_EN, paperText.FIRST_SUBMITTED_DATE, paperText.LAST_REVISED_DATE, x.b.CONFERENCE_BOARD_OF_REVIEW_NAME, x.b.CONFERENCE_BOARD_OF_REVIEW_NAME_EN, x.r.PAPER_TEXT_SUBMISSION_DEADLINE_ORDER_NUMBER, x.r.REVIEWED_DATE, x.r.PROPOSED_REVISED_CONFERENCE_SESSION_TOPIC_ID, x.r.PROPOSED_REVISED_CONFERENCE_SESSION_TOPIC_NAME, x.r.PROPOSED_REVISED_CONFERENCE_SESSION_TOPIC_NAME_EN, x.r.PROPOSED_TYPE_OF_STUDY_ID, x.r.PROPOSED_TYPE_OF_STUDY_NAME, x.r.PROPOSED_TYPE_OF_STUDY_NAME_EN, x.r.PROPOSED_CONFERENCE_PRESENTATION_TYPE_ID, x.r.PROPOSED_CONFERENCE_PRESENTATION_TYPE_NAME, x.r.PROPOSED_CONFERENCE_PRESENTATION_TYPE_NAME_EN, x.r.PAPER_TEXT_REVIEW_RATING_POINT, x.r.SIGNIFICANT_REVISION_OR_MINIMAL_REVISION_OR_REVISION_NEEDED_OR_NO_REVISION_NEEDED, x.r.REVIEW_TEXT, x.r.REVIEW_TEXT_EN, x.r.APPROVAL_OR_REJECTION_OF_PAPER_TEXT, x.r.APPROVAL_OR_REJECTION_OF_PAPER_TEXT_DATE, }).Distinct().OrderByDescending(x => x.REVIEWED_DATE); return(ResponseSuccess(StringResource.Success, listReviewing)); } }
public HttpResponseMessage CheckSubmitDeadlinePaperText(int conferenceId) { var model = new PaperTextModel(); var result = model.checkConferencePaperTextSubmitExpired(conferenceId); if (result == true) { return(ResponseSuccess(StringResource.Success)); } return(ResponseFail(StringResource.Expired_submit_paper_text)); }
public HttpResponseMessage GetPaperText(int paperId) { var paper = db.PAPER_TEXT.Find(paperId); var model = new PaperTextModel(); if (paper == null) { return(ResponseFail(StringResource.Paper_text_do_not_exist)); } else { var paperAbstract = model.getMyPaperText(paper); return(ResponseSuccess(StringResource.Success, paperAbstract)); } }
public HttpResponseMessage WithDrawPaperText([FromBody] WithDrawForm body) { var paper = db.PAPER_TEXT.Find(body.PAPER_ID); var model = new PaperTextModel(); if (paper == null) { return(ResponseFail(StringResource.Paper_text_do_not_exist)); } else { paper.PAPER_TEXT_WITHDRAWN = true; paper.PAPER_TEXT_WITHDRAWN_DATE = DateTime.Now; paper.PAPER_TEXT_WITHDRAWN_NOTE = body.NOTE; db.SaveChanges(); return(ResponseSuccess(StringResource.Success)); } }
public HttpResponseMessage SubmitPaperText([FromBody] PaperTextSubmit body) { var person = db.People.Find(body.PERSON_ID); var conference = db.CONFERENCEs.Find(body.CONFERENCE_ID); var model = new PaperTextModel(); if (person == null) { return(ResponseFail(StringResource.Person_do_not_exist)); } else if (conference == null) { return(ResponseFail(StringResource.Conference_do_not_exist)); } else if (!model.checkConferencePaperTextSubmitExpired(body.CONFERENCE_ID)) { return(ResponseFail(StringResource.Out_of_time)); } else { var paperText = new PAPER_TEXT(); paperText.PAPER_ID = body.PAPER_ID; paperText.PAPER_NUMBER_OR_CODE = "PA" + paperText.PAPER_ID; paperText.PAPER_TEXT_TITLE_1 = body.PAPER_TEXT_TITLE; paperText.PAPER_TEXT_TITLE_EN_1 = body.PAPER_TEXT_TITLE_EN; paperText.PAPER_TEXT_1 = body.PAPER_TEXT; paperText.PAPER_TEXT_EN_1 = body.PAPER_TEXT_EN; paperText.PAPER_TEXT_ATTACHED_FILENAME_1 = body.PAPER_TEXT_ATTACHED_FILENAME; paperText.NUMBER_OF_PAGES_OF_PAPER_TEXT_1 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paperText.FIRST_SUBMITTED_DATE_1 = DateTime.Now; paperText.LAST_REVISED_DATE_1 = DateTime.Now; db.PAPER_TEXT.Add(paperText); db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; model.addAuthorPaperText(item, body.CONFERENCE_ID, paperText.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } }
public HttpResponseMessage CheckPaperTextSubmitionNumber(int paperId) { var model = new PaperTextModel(); var paperText = db.PAPER_TEXT.Find(paperId); if (paperText == null) { return(ResponseFail(StringResource.Paper_text_do_not_exist)); } else { var result = model.getTimesSent(paperText); if (paperText.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT != null) { if (result >= 5) { return(ResponseFail(StringResource.The_number_of_submition_after_review_has_out)); } } return(ResponseSuccess(StringResource.Success)); } }
public HttpResponseMessage UpdatePaperText([FromBody] PaperTextSubmit body) { var paper = db.PAPER_TEXT.Find(body.PAPER_ID); var person = db.People.Find(body.PERSON_ID); var conference = db.CONFERENCEs.Find(body.CONFERENCE_ID); var model = new PaperTextModel(); if (paper == null) { return(ResponseFail(StringResource.Paper_abstract_do_not_exist)); } else if (person == null) { return(ResponseFail(StringResource.Person_do_not_exist)); } else if (conference == null) { return(ResponseFail(StringResource.Conference_do_not_exist)); } else if (!model.checkConferencePaperTextSubmitExpired(body.CONFERENCE_ID)) { return(ResponseFail(StringResource.Out_of_time)); } else if (model.getTimesSent(paper) >= 5) { return(ResponseFail(StringResource.The_number_of_submition_after_review_has_out)); } else { if (model.checkPaperTextReviewed(body.PAPER_ID, body.CONFERENCE_ID, model.getTimesSent(paper)) == false)//Chưa ai review { int number = model.getTimesSent(paper); if (number == 1)//Cập nhật lại nhóm 1 { paper.PAPER_TEXT_TITLE_1 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_1 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_1 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_1 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_1 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_1 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.LAST_REVISED_DATE_1 = DateTime.Now; db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 2)//Cập nhật lại nhóm 2 { paper.PAPER_TEXT_TITLE_2 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_2 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_2 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_2 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_2 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_2 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.LAST_REVISED_DATE_2 = DateTime.Now; db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 3)//Cập nhật lại nhóm 3 { paper.PAPER_TEXT_TITLE_3 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_3 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_3 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_3 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_3 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_3 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.LAST_REVISED_DATE_3 = DateTime.Now; db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 4)//Cập nhật lại nhóm 4 { paper.PAPER_TEXT_TITLE_4 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_4 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_4 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_4 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_4 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_4 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.LAST_REVISED_DATE_4 = DateTime.Now; db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 5)//Cập nhật lại nhóm 5 { paper.PAPER_TEXT_TITLE_5 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_5 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_5 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_5 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_5 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_5 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.LAST_REVISED_DATE_5 = DateTime.Now; db.SaveChanges(); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else { return(ResponseFail(StringResource.The_number_of_submition_after_review_has_out)); } } else//Đã có người review { if (paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT == null)//Chưa được duyệt cuối { return(ResponseFail(StringResource.Paper_Text_is_being_reviewed_please_wait_for_results)); } else if (paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT == true) { return(ResponseFail(StringResource.Paper_Text_accepted)); } else//Bài được duyệt cuối { //Thêm nhóm (2 hoặc 3,4,5), phân tự động review lại int number = model.getTimesSent(paper); if (number == 1)//Thêm nhóm 2 { paper.PAPER_TEXT_TITLE_2 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_2 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_2 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_2 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_2 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_2 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.FIRST_SUBMITTED_DATE_2 = DateTime.Now; paper.LAST_REVISED_DATE_2 = DateTime.Now; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_DATE = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_REVIEWER_PERSON_ID = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_SCRIPT = null; db.SaveChanges(); model.assignedBoardOfReviewerUpdate(paper.PAPER_ID, (Int16)2); model.assignedReviewerUpdate(paper.PAPER_ID, (Int16)2); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 2)//Thêm nhóm 3 { paper.PAPER_TEXT_TITLE_3 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_3 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_3 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_3 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_3 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_3 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.FIRST_SUBMITTED_DATE_3 = DateTime.Now; paper.LAST_REVISED_DATE_3 = DateTime.Now; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_DATE = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_REVIEWER_PERSON_ID = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_SCRIPT = null; db.SaveChanges(); model.assignedBoardOfReviewerUpdate(paper.PAPER_ID, (Int16)3); model.assignedReviewerUpdate(paper.PAPER_ID, (Int16)3); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 3)//Thêm nhóm 4 { paper.PAPER_TEXT_TITLE_4 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_4 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_4 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_4 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_4 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_4 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.FIRST_SUBMITTED_DATE_4 = DateTime.Now; paper.LAST_REVISED_DATE_4 = DateTime.Now; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_DATE = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_REVIEWER_PERSON_ID = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_SCRIPT = null; db.SaveChanges(); model.assignedBoardOfReviewerUpdate(paper.PAPER_ID, (Int16)4); model.assignedReviewerUpdate(paper.PAPER_ID, (Int16)4); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else if (number == 4)//Thêm nhóm 5 { paper.PAPER_TEXT_TITLE_5 = body.PAPER_TEXT_TITLE; paper.PAPER_TEXT_TITLE_EN_5 = body.PAPER_TEXT_TITLE_EN; paper.PAPER_TEXT_5 = body.PAPER_TEXT; paper.PAPER_TEXT_EN_5 = body.PAPER_TEXT_EN; paper.PAPER_TEXT_ATTACHED_FILENAME_5 = body.PAPER_TEXT_ATTACHED_FILENAME; paper.NUMBER_OF_PAGES_OF_PAPER_TEXT_5 = body.NUMBER_OF_PAGES_OF_PAPER_TEXT; paper.FIRST_SUBMITTED_DATE_5 = DateTime.Now; paper.LAST_REVISED_DATE_5 = DateTime.Now; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_DATE = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_REVIEWER_PERSON_ID = null; paper.FINAL_APPROVAL_OR_REJECTION_OF_PAPER_TEXT_SCRIPT = null; db.SaveChanges(); model.assignedBoardOfReviewerUpdate(paper.PAPER_ID, (Int16)5); model.assignedReviewerUpdate(paper.PAPER_ID, (Int16)5); for (int i = 0; i < body.ListAuthor.Count; i++) { var item = body.ListAuthor[i]; if (!model.checkIsAuthor(item.PERSON_ID)) { return(ResponseFail(StringResource.Account_does_not_author)); } model.addAuthorPaperText(item, body.CONFERENCE_ID, paper.PAPER_ID, i); } return(ResponseSuccess(StringResource.Success)); } else { return(ResponseFail(StringResource.The_number_of_submition_after_review_has_out)); } } } } }
public HttpResponseMessage ListPaperText(int personId, int conferenceId) { var model = new PaperTextModel(); return(ResponseSuccess(StringResource.Success, model.getListPaperText(personId, conferenceId))); }