public JsonResult AssignMe(long id) { long specialistId = -1; try { if (!long.TryParse(Session["SpecialistId"].ToString(), out specialistId)) { return(Json(new { rs = -1, msg = "Error: Can't get specialist's profile" }, JsonRequestBehavior.AllowGet)); } var can = db.Candidates.FirstOrDefault(s => s.CandidateId == id); if (can == null) { return(Json(new { rs = -1, msg = "Can not get candiate's profile" }, JsonRequestBehavior.AllowGet)); } if (can.SpecialistId == -1) { can.SpecialistId = specialistId; db.Entry(can).State = EntityState.Modified; var r = db.SaveChanges(); return(Json(new { rs = 1, msg = "Error: Can't get specialist's profile" }, JsonRequestBehavior.AllowGet)); } return(Json(new { rs = -1, msg = "Can not assign this candiate" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { rs = -1, msg = e.Message }, JsonRequestBehavior.AllowGet)); } }
// Create specialist public JsonResult CreateSpecialist(Specialist spec, UserLogin user) { try { if (int.Parse(Session["Role"].ToString()) != (int)UserRole.ADMIN) { return(Json(new { rs = -1, msg = "Permission Denied" }, JsonRequestBehavior.AllowGet)); } var userLogin = new UserLogin() { //UserName = Util.Helper.getRandomAlphaNumeric(6).ToUpper(), UserName = user.UserName, PasswordRaw = user.PasswordRaw, //PasswordRaw = Util.Helper.getRandomAlphaNumeric(8), SecurityStamp = Util.Helper.getRandomAlphaNumeric(100), Role = (int)UserRole.SPECIALIST, AccessFailedCount = 0, LockoutEnabled = user.LockoutEnabled, //LockoutDateUtc = DateTime.UtcNow.AddDays(7) }; // create user name pass word while (db.UserLogins.Any(s => s.UserName == userLogin.UserName)) { userLogin.UserName = Util.Helper.getRandomAlphaNumeric(6).ToUpper(); } userLogin.PasswordHash = Util.Helper.createMD5Hash(userLogin.PasswordRaw, userLogin.UserName, userLogin.SecurityStamp); db.UserLogins.Add(userLogin); db.SaveChanges(); // create specialist var specialist = new Specialist() { UserLoginId = userLogin.UserLoginId, FirstName = spec.FirstName, MiddleName = spec.MiddleName, LastName = spec.LastName, Email = spec.Email, PhoneNumber = spec.PhoneNumber, Role = (int)UserRole.SPECIALIST, }; db.Specialists.Add(specialist); db.SaveChanges(); return(Json(new { rs = specialist.SpecialistId, msg = "" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { rs = -1, msg = "Permission Denied" }, JsonRequestBehavior.AllowGet)); } }
public JsonResult UpdateCandidateInfo(Candidate candidate) { long candidateId = -1; try { if (long.TryParse(Session["CandidateId"].ToString(), out candidateId)) { var can = db.Candidates.FirstOrDefault(s => s.CandidateId == candidateId); if (can.Gender != candidate.Gender || can.Email != candidate.Email || can.PhoneNumber != candidate.PhoneNumber || can.DOB != candidate.DOB || can.IDNumber != candidate.IDNumber || can.Address != candidate.Address) { can.Gender = candidate.Gender; can.Email = candidate.Email; can.PhoneNumber = candidate.PhoneNumber; can.DOB = candidate.DOB; can.IDNumber = candidate.IDNumber; can.Address = candidate.Address; if (can.Status == "Initial") { can.Status = "Ready"; } db.Entry(can).State = EntityState.Modified; var result = db.SaveChanges(); return(Json(new { rs = result, msg = "Successfully" }, JsonRequestBehavior.AllowGet)); } } return(Json(new { rs = 1, msg = "1" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { rs = -1, msg = e.Message }, JsonRequestBehavior.AllowGet)); } }
public JsonResult CreateCandidate(CandidateSimpleInfo can) { try { // return link file of Candidate report long recruiterId = -1; if (!long.TryParse(Session["RecruiterId"].ToString(), out recruiterId)) { return(Json(new { rs = -1, msg = "Permission Denied." }, JsonRequestBehavior.AllowGet)); } var recruiter = db.Recruiters.FirstOrDefault(s => s.RecruiterId == recruiterId); if (recruiter == null) { return(Json(new { rs = -1, msg = "Permission Denied." }, JsonRequestBehavior.AllowGet)); } var userLogin = new UserLogin() { UserName = Util.Helper.getRandomAlphaNumeric(6).ToUpper(), PasswordRaw = Util.Helper.getRandomAlphaNumeric(8), SecurityStamp = Util.Helper.getRandomAlphaNumeric(100), Role = (int)UserRole.CANDIDATE, AccessFailedCount = 0, LockoutEnabled = true, LockoutDateUtc = DateTime.UtcNow.AddDays(7) };// create user name pass word while (db.UserLogins.Any(s => s.UserName == userLogin.UserName)) { userLogin.UserName = Util.Helper.getRandomAlphaNumeric(6).ToUpper(); } userLogin.PasswordHash = Util.Helper.createMD5Hash(userLogin.PasswordRaw, userLogin.UserName, userLogin.SecurityStamp); db.UserLogins.Add(userLogin); db.SaveChanges(); // create candidate var candidate = new Candidate() { UserLoginId = userLogin.UserLoginId, FirstName = can.FirstName, MiddleName = can.MiddleName, LastName = can.LastName, Email = can.Email, PhoneNumber = can.PhoneNumber, JobTitle = can.JobTitle, JobLevel = can.JobLevel, RecruiterId = recruiter.RecruiterId, ClientId = recruiter.ClientId, CreatedTime = DateTime.Now, Status = "Initial", CompleteTime = DateTime.Now, SpecialistId = -1, }; db.Candidates.Add(candidate); db.SaveChanges(); var log = new ClientLog() { RecruiterId = recruiter.RecruiterId, LogType = "Create Candidate", LogTime = DateTime.Now, ClientId = recruiter.ClientId, LogContent = "Create candidate " + can.FirstName + " " + can.MiddleName + " " + can.LastName }; db.ClientLogs.Add(log); db.SaveChanges(); return(Json(new { rs = candidate.CandidateId, msg = "" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { rs = -1, msg = e.Message }, JsonRequestBehavior.AllowGet)); } }