public bool AcceptAndContactLater(AcceptAndSendEmail_ViewModel mode) { try { string token = Request.Headers.GetValues("Authorization").First(); int idEmployer = profilectrl.GetID(token); if (idEmployer != 0) { // Xác thực employer thuộc quyền sở hữu job //----- var existJob = db.Jobs.Where(j => j.IDJob == mode.IDJob && j.IDCompany == idEmployer).FirstOrDefault(); if (existJob != null) { var apply = db.ApplyWorks.Where(a => a.IDLaborer == mode.IDLaborer && a.IDJob == mode.IDJob).FirstOrDefault(); if (apply != null) { //Insert contact to database here //Set status here apply.status = Const.AWStatus.AcceptContactLater; db.SaveChanges(); return(true); } } } return(false); } catch (Exception e) { Console.WriteLine(e); throw e; } }
public bool AcceptAndSendEmail(AcceptAndSendEmail_ViewModel mode) { try { string token = Request.Headers.GetValues("Authorization").First(); int idEmployer = profilectrl.GetID(token); if (idEmployer != 0) { // Xác thực employer thuộc quyền sở hữu job //----- var result = (from a in db.ApplyWorks join b in db.Jobs on a.IDJob equals b.IDJob join c in db.Employers on b.IDCompany equals c.IDCompany where a.IDJob == mode.IDJob && a.IDLaborer == mode.IDLaborer select new { companyName = c.companyName, jobName = b.jobName }).FirstOrDefault(); if (result != null) { var apply = db.ApplyWorks.Where(a => a.IDLaborer == mode.IDLaborer && a.IDJob == mode.IDJob).FirstOrDefault(); var laborer = db.LaborerandAdmins.Where(a => a.IDLaborer == mode.IDLaborer).FirstOrDefault(); if (apply != null && laborer != null) { //Send email here new MailHelper().SendMail(laborer.email, "Feedback from the " + result.companyName + " Employer about the " + result.jobName + " job which you are applying", mode.contentEmail); //Set status here apply.status = Const.AWStatus.AcceptSentEmail; db.SaveChanges(); return(true); } } } return(false); } catch (Exception e) { Console.WriteLine(e); throw e; } }