public async Task <IHttpActionResult> Putfaq(int id, faq faq) { var findFAQs = await db.faqs.Where(a => a.id == id).FirstOrDefaultAsync(); if (findFAQs != null) { findFAQs.title = faq.title; findFAQs.body = faq.body; db.Entry(findFAQs).State = EntityState.Modified; int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await db.faqs.ToListAsync())); } else { return(BadRequest("Update fails.")); } } else { return(BadRequest("FAQs not found.")); } }
public static async Task <bool> UpdateAvatar(HttpPostedFile postedFile, int id) { try { var details = (from a in db.accounts from b in db.details where a.id == b.account_id && a.id == id select b).FirstOrDefault(); if (details == null) { return(false); } else { string fullPath = await ImageServices.UploadImageAsync(postedFile); //return url image details.avatar = fullPath; int check = await db.SaveChangesAsync(); if (check > 0) { return(true); } else { return(false); } } }catch (Exception e) { return(false); } }
public async Task <IHttpActionResult> RestoreSurvey(int id) { try { var find = db.surveys.Where(a => a.id == id).FirstOrDefault(); if (find != null) { find.deleted = false; int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await FetchListSurveysDeleted.GetAllSurveys(1, 10))); } else { return(BadRequest("Restore this survey fails.")); } } else { return(BadRequest("Survey not found.")); } } catch { return(BadRequest("Error.")); } }
public static async Task <bool> FuncDeleteAccount(int id) { try { var account = db.accounts.Where(a => a.id == id).FirstOrDefault(); if (account != null) { //check details id == account id var details = db.details.Where(a => a.account_id == account.id).FirstOrDefault(); if (details != null) { db.details.Remove(details); await db.SaveChangesAsync(); } db.accounts.Remove(account); int check = await db.SaveChangesAsync(); if (check > 0) { return(true); } else { return(false); } } else { return(false); } }catch { return(false); } }
public async Task <IHttpActionResult> Register([FromBody] RegisterForm form) { try { var check = db.accounts.Where(a => a.username == form.username).FirstOrDefault(); if (check == null) { var pa1 = HashPassword.hashPassword(form.password); var pa2 = HashPassword.hashPassword(form.password2); var role = 2; if (form.section.ToLower() == "teacher") { role = 1; } if (pa1 == pa2) { var user = new account { card_id = form.card_id, username = form.username, password = pa1, password2 = pa2, section = form.section, status = false, role_id = role, date_join = form.date_join, create_at = DateTime.Now }; db.accounts.Add(user); int val = await db.SaveChangesAsync(); if (val > 0) { var msg = new ResponseMsg { message = "Register success. please wait check from admin." }; return(Created("ok", msg)); } else { return(BadRequest("Register fails.")); } } else { return(BadRequest("Passwords are not the same.")); } } else { return(BadRequest("username have changes.")); } } catch (Exception e) { string message = e.Message; return(BadRequest(message)); } }
public async Task <IHttpActionResult> CreateFaculty([FromBody] faculty form) { try { //find duplicate faculty code var faculty = db.faculties.Where(a => a.faculty_code.ToString().ToUpper() == form.faculty_code.ToString().ToUpper()).FirstOrDefault(); if (faculty == null) { form.create_at = DateTime.Now; db.Entry(form).State = System.Data.Entity.EntityState.Added; int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await ListFaculty())); } else { return(BadRequest("Create faculty error")); } } else { return(BadRequest("Duplicate faculty")); } } catch { return(BadRequest("Error")); } }
public static async Task <bool> Deleted(int id) { try { var findSurvey = db.surveys.Where(a => a.id == id && a.deleted == false).FirstOrDefault(); if (findSurvey != null) { findSurvey.deleted = true; int check = await db.SaveChangesAsync(); if (check > 0) { return(true); } else { return(false); } } else { return(false); } } catch { return(false); } }
public async Task <IHttpActionResult> CreateQuestion([FromBody] question form) { try { var findSurvey = db.surveys.Where(a => a.id == form.surveys_id).FirstOrDefault(); if (findSurvey != null) { //check title duplicate var check_title = db.questions .Where(a => a.text.ToString().ToLower() == form.text.ToString().ToLower() && a.surveys_id == findSurvey.id).FirstOrDefault(); if (check_title == null) { if (form.priority <= 0) { form.priority = 1; } form.create_at = DateTime.Now; db.questions.Add(form); int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(findSurvey.id))); } else { return(BadRequest("Create question error.")); } } else { return(BadRequest("Title question dupticate")); } } else { return(BadRequest("Survey not found.")); } } catch { return(BadRequest("Error question.")); } }
public async Task <IHttpActionResult> CreateAskChoice(int idQuestion, [FromBody] question_choice form) { try { //find question null or not null var findQuestion = (from a in db.questions from b in db.surveys where a.surveys_id == b.id && a.id == idQuestion && b.surveys_type_id == 1 select a).FirstOrDefault(); if (findQuestion != null) { //find check answer duplicate var answer_title = db.question_choice .Where(a => a.description.ToString().ToLower() == form.description.ToString().ToLower()).FirstOrDefault(); if (answer_title == null) { form.question_id = findQuestion.id; form._checked = false; form.create_at = DateTime.Now; db.question_choice.Add(form); int check = await db.SaveChangesAsync(); //save if (check > 0) { return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(Convert.ToInt32(findQuestion.surveys_id)))); } else { return(BadRequest("Create Answer fails")); } } else { return(BadRequest("Answer duplicate.")); } } else { return(BadRequest("Question not found.")); } } catch { return(BadRequest("Error")); } }
public async Task <IHttpActionResult> SubmitFeedBack(feedback form) { try { var identity = (ClaimsIdentity)User.Identity; var username = identity.Claims.Where(a => a.Type == ClaimTypes.Name).Select(c => c.Value).FirstOrDefault(); var findUser = db.accounts.Where(a => a.username == username).FirstOrDefault(); if (findUser != null) { form.username = username; form._checked = false; form.create_at = DateTime.Now; db.feedbacks.Add(form); int check = await db.SaveChangesAsync(); if (check > 0) { var msg = new ResponseMsg(); msg.message = "Your request has been sent"; return(Ok(msg)); } else { return(BadRequest("Feedback fails.")); } } else { return(BadRequest("Account not found.")); } } catch (Exception e) { return(BadRequest("Error.")); } }
//get details for user public static async Task <AccountDetails> GetDetailsAccount(int id) { try { var find = (from a in db.admins from b in db.details_admin where a.id == b.id && a.id == id select a).FirstOrDefault(); if (find != null) { return(await WithProfile(id)); } else { var details = new details_admin { admin_id = id, first_name = "", last_name = "", gender = null, birthday = null, description = "", avatar = "", phone_number = "", modify_date = DateTime.Now }; db.details_admin.Add(details); int check = await db.SaveChangesAsync(); if (check > 0) { return(await WithProfile(id)); } else { return(await WithOutProfile(id)); } } } catch (Exception e) { return(null); } }
public async Task <IHttpActionResult> CreateSurveysResponse(int idSurvey) { //find and check username var identity = (ClaimsIdentity)User.Identity; var username = identity.Claims.Where(a => a.Type == ClaimTypes.Name).Select(c => c.Value).FirstOrDefault(); var findUser = db.accounts.Where(a => a.username == username).FirstOrDefault(); if (findUser != null) { //find survey with date start less than current date var findSurvey = db.surveys.Where(a => a.id == idSurvey && a.date_start <= DateTime.Now && a.deleted == false && a.publish == true).FirstOrDefault(); if (findSurvey != null) { //find this user joined if not join create else update var findMessage = db.surveys_response.Where(a => a.surveys_id == idSurvey && a.accounts_id == findUser.id).FirstOrDefault(); if (findMessage == null) { surveys_response form = new surveys_response(); form.surveys_id = findSurvey.id; form.accounts_id = findUser.id; form.create_at = DateTime.Now; form.username = username; db.surveys_response.Add(form); int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(findSurvey.id))); } else { return(BadRequest("Create fails.")); } } else { findMessage.create_at = DateTime.Now; db.Entry(findMessage).State = System.Data.Entity.EntityState.Modified; int check = await db.SaveChangesAsync(); if (check > 0) { return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(findSurvey.id))); } else { return(BadRequest("update fails.")); } } } else { return(BadRequest("Survey not found.")); } } else { return(BadRequest("Account not found.")); } }