public bool CanSendMail(int EmployeeID) { List <CertificationDetails> finalObj = new List <CertificationDetails>(); try { var AllDetails = (from certificate in dbContext.tbl_PM_EmployeeCertificationMatrix where certificate.EmployeeID == EmployeeID orderby certificate.CertificationDate descending select certificate).ToList(); if (AllDetails != null) { foreach (var obj in AllDetails) { var histroy = (from his in dbContext.tbl_PM_EmployeeCertificationMatrixHistory where his.EmployeeCertificationID == obj.EmployeeCertificationID orderby his.EmployeeCertificationHistoryId descending select his).FirstOrDefault(); if (obj != null) { if (histroy != null) { if (histroy.Status != 2 && histroy.Status != 3) { CertificationDetails current = new CertificationDetails(); current.CanSendMail = Convert.ToString(histroy.SendMail); finalObj.Add(current); } } } } } if (finalObj.Any(x => x.CanSendMail == "True")) { return(true); } return(false); } catch (Exception) { throw; } }
//GetCertificationDetails public List <CertificationDetails> GetEmployeeCertificationDetails(int page, int rows, int EmployeeID, out int totalCount) { List <CertificationDetails> finalObj = new List <CertificationDetails>(); try { var AllDetails = (from certificate in dbContext.tbl_PM_EmployeeCertificationMatrix where certificate.EmployeeID == EmployeeID orderby certificate.CertificationDate descending select certificate).ToList(); if (AllDetails != null) { foreach (var obj in AllDetails) { var histroy = (from his in dbContext.tbl_PM_EmployeeCertificationMatrixHistory where his.EmployeeCertificationID == obj.EmployeeCertificationID orderby his.EmployeeCertificationHistoryId descending select his).FirstOrDefault(); if (obj != null) { CertificationDetails current = new CertificationDetails(); current.EmployeeCertificationID = obj.EmployeeCertificationID; current.CertificationID = obj.CertificationID; current.EmployeeID = obj.EmployeeID; if (obj.CertificationID != null) { current.CertificationName = obj.HRMS_tbl_PM_Certifications.CertificationName; current.CertificationNameID = obj.HRMS_tbl_PM_Certifications.CertificationID; } current.CertificationNo = obj.CertificationNo; current.CertificationDate = obj.CertificationDate; current.CertificationGrade = obj.Grade; current.CertificationScore = obj.TotalScore; current.Institution = obj.InstituteName; if (histroy != null) { current.Status = objQual.GetStatusMessage(histroy.ActionType, histroy.Status, false); if (histroy.Status == 2 || histroy.Status == 3) { if ((DateTime.Now - Convert.ToDateTime(histroy.ModifiedDate)).TotalHours < 72) { //show message current.ApprovalStatusFlag = "1"; } else { //hide message current.ApprovalStatusFlag = "0"; } } current.ActionType = histroy.ActionType; } finalObj.Add(current); } } finalObj.Skip((page - 1) * rows).Take(rows).ToList(); } totalCount = dbContext.tbl_PM_EmployeeCertificationMatrix.Where(x => x.EmployeeID == EmployeeID).Count(); return(finalObj); } catch (Exception) { throw; } }
public bool SaveCertificationDetails(CertificationDetails model, bool IsLoggedInEmployee, int?SelectedCertificationID, int?EmployeeId) { bool isAdded = false; tbl_PM_EmployeeCertificationMatrix emp = dbContext.tbl_PM_EmployeeCertificationMatrix.Where(ed => ed.EmployeeCertificationID == model.EmployeeCertificationID).FirstOrDefault(); if (emp == null || emp.EmployeeCertificationID <= 0) { tbl_PM_EmployeeCertificationMatrix certificationDetails = new tbl_PM_EmployeeCertificationMatrix(); certificationDetails.EmployeeCertificationID = model.EmployeeCertificationID; certificationDetails.EmployeeID = EmployeeId; certificationDetails.CertificationID = SelectedCertificationID; if (model.CertificationNo != null && model.CertificationNo != "") { certificationDetails.CertificationNo = model.CertificationNo.Trim(); } else { certificationDetails.CertificationNo = model.CertificationNo; } certificationDetails.CertificationDate = model.CertificationDate; if (model.Institution != null && model.Institution != "") { certificationDetails.InstituteName = model.Institution.Trim(); } else { certificationDetails.InstituteName = model.Institution; } if (model.CertificationScore != null && model.CertificationScore != "") { certificationDetails.TotalScore = model.CertificationScore.Trim(); } else { certificationDetails.TotalScore = model.CertificationScore; } if (model.CertificationGrade != null && model.CertificationGrade != "") { certificationDetails.Grade = model.CertificationGrade.Trim(); } else { certificationDetails.Grade = model.CertificationGrade; } dbContext.tbl_PM_EmployeeCertificationMatrix.AddObject(certificationDetails); dbContext.SaveChanges(); if (IsLoggedInEmployee == true) { tbl_PM_EmployeeCertificationMatrixHistory certificationHistory = new tbl_PM_EmployeeCertificationMatrixHistory(); certificationHistory.EmployeeCertificationID = certificationDetails.EmployeeCertificationID; certificationHistory.EmployeeID = EmployeeId; certificationHistory.CertificationID = SelectedCertificationID; if (model.CertificationNo != null && model.CertificationNo != "") { certificationHistory.CertificationNo = model.CertificationNo.Trim(); } else { certificationHistory.CertificationNo = model.CertificationNo; } certificationHistory.CertificationDate = model.CertificationDate; if (model.Institution != null && model.Institution != "") { certificationHistory.InstituteName = model.Institution.Trim(); } else { certificationHistory.InstituteName = model.Institution; } if (model.CertificationScore != null && model.CertificationScore != "") { certificationHistory.TotalScore = model.CertificationScore.Trim(); } else { certificationHistory.TotalScore = model.CertificationScore; } if (model.CertificationGrade != null && model.CertificationGrade != "") { certificationHistory.Grade = model.CertificationGrade.Trim(); } else { certificationHistory.Grade = model.CertificationGrade; } certificationHistory.ActionType = "Add"; certificationHistory.CreatedBy = EmployeeId.ToString(); certificationHistory.CreatedDate = DateTime.Now; certificationHistory.SendMail = true; dbContext.tbl_PM_EmployeeCertificationMatrixHistory.AddObject(certificationHistory); dbContext.SaveChanges(); } } else { if (emp.EmployeeID != EmployeeId || emp.CertificationID != SelectedCertificationID || emp.CertificationNo != model.CertificationNo || emp.CertificationDate != model.CertificationDate || emp.Grade != model.CertificationGrade || emp.InstituteName != model.Institution || emp.TotalScore != model.CertificationScore) { if (IsLoggedInEmployee == true) { tbl_PM_EmployeeCertificationMatrixHistory Certifications = new tbl_PM_EmployeeCertificationMatrixHistory(); Certifications.EmployeeCertificationID = model.EmployeeCertificationID; Certifications.EmployeeID = emp.EmployeeID; Certifications.CertificationID = emp.CertificationID; if (emp.CertificationNo != null && emp.CertificationNo != "") { Certifications.CertificationNo = emp.CertificationNo.Trim(); } else { Certifications.CertificationNo = emp.CertificationNo; } Certifications.CertificationDate = emp.CertificationDate; if (emp.InstituteName != null && emp.InstituteName != "") { Certifications.InstituteName = emp.InstituteName.Trim(); } else { Certifications.InstituteName = emp.InstituteName; } if (emp.TotalScore != null && emp.TotalScore != "") { Certifications.TotalScore = emp.TotalScore.Trim(); } else { Certifications.TotalScore = emp.TotalScore; } if (emp.Grade != null && emp.Grade != "") { Certifications.Grade = emp.Grade.Trim(); } else { Certifications.Grade = emp.Grade; } Certifications.ActionType = "Edit"; Certifications.ModifiedBy = EmployeeId.ToString(); Certifications.ModifiedDate = DateTime.Now; Certifications.SendMail = true; dbContext.tbl_PM_EmployeeCertificationMatrixHistory.AddObject(Certifications); dbContext.SaveChanges(); } emp.EmployeeID = EmployeeId; emp.CertificationID = SelectedCertificationID; if (model.CertificationNo != null && model.CertificationNo != "") { emp.CertificationNo = model.CertificationNo.Trim(); } else { emp.CertificationNo = model.CertificationNo; } emp.CertificationDate = model.CertificationDate; if (model.CertificationGrade != null && model.CertificationGrade != "") { emp.Grade = model.CertificationGrade.Trim(); } else { emp.Grade = model.CertificationGrade; } if (model.Institution != null && model.Institution != "") { emp.InstituteName = model.Institution.Trim(); } else { emp.InstituteName = model.Institution; } if (model.CertificationScore != null && model.CertificationScore != "") { emp.TotalScore = model.CertificationScore.Trim(); } else { emp.TotalScore = model.CertificationScore; } } } dbContext.SaveChanges(); isAdded = true; return(isAdded); }