public void InsertTechnicalSkill(int Id, int EmployeeId, int TechID)
 {
     if (TechID == 0)
     {
         Employee_Skills skils = new Employee_Skills();
         skils.TechnicalSkillsName     = Id.ToString();
         skils.GeneralSkillsName       = null;
         skils.TechnicalSkillsArchived = false;
         skils.GeneralSkillsArchived   = false;
         skils.SkillType   = "Technical Skills";
         skils.CreatedDate = DateTime.Now;
         skils.EmployeeId  = EmployeeId;
         _db.Employee_Skills.Add(skils);
     }
     else
     {
         string          techID = TechID.ToString();
         Employee_Skills skills = (from record in _db.Employee_Skills where record.TechnicalSkillsName == techID select record).FirstOrDefault();
         skills.TechnicalSkillsName  = Id.ToString();
         skills.LastModified         = DateTime.Now;
         skills.UserIDLastModifiedBy = EmployeeId;
         _db.Entry(skills).State     = System.Data.Entity.EntityState.Modified;
     }
     _db.SaveChanges();
 }
Ejemplo n.º 2
0
 //Código para editar produto↓
 public void EditarProduto(Modelo.Produto produto)
 {
     this.mensagem = "";
     Produto.Entry(produto).State = System.Data.EntityState.Modified;
     Produto.SaveChanges();
     this.mensagem = "Produto editada com sucesso !!!!!";
 }
Ejemplo n.º 3
0
 //Codigo para Editar o Cliente ↓
 public void EditarCliente(Modelo.Cliente cliente)
 {
     this.mensagem = "";
     Cliente.Entry(cliente).State = System.Data.EntityState.Modified;
     Cliente.SaveChanges();
     this.mensagem = "Pessoa editada com sucesso !!!!!";
 }
Ejemplo n.º 4
0
 //Código para editar o usuario↓
 public void EditarUsuario(Modelo.Usuario usuario)
 {
     this.mensagem = "";
     Usuario.Entry(usuario).State = System.Data.EntityState.Modified;
     Usuario.SaveChanges();
     this.mensagem = "Usuário editado com sucesso !!!!!";
 }
Ejemplo n.º 5
0
 //Código da comunicação do banco de dados para Editar o funcionário ↓
 public void EditarFuncionario(Modelo.Funcionario funcionario)
 {
     this.mensagem = "";
     Funcionario.Entry(funcionario).State = System.Data.EntityState.Modified;
     Funcionario.SaveChanges();
     this.mensagem = "Funcionário editado com sucesso !!!!!";
 }
        public bool SaveEmployeePerformace(EmployeePerformanceViewModel model)
        {
            var checkperfomance         = _db.EmployeePerformances.Where(x => x.ReviewId == model.ReviewId && x.Archived == false && x.EmployeeId == model.EmployeeId).ToList();
            var checkPerformanceSetting = _db.PerformanceSettings.Where(x => x.Id == model.ReviewId && x.Archived == false).FirstOrDefault();

            if (checkPerformanceSetting.CompletionDate == null)
            {
                model.CompletionDateTime = model.CompletionDateTime.Replace("-", "/");
                model.CompletionDate     = DateTime.ParseExact(model.CompletionDateTime, "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentUICulture.DateTimeFormat);
                checkPerformanceSetting.CompletionDate   = model.CompletionDate;
                _db.Entry(checkPerformanceSetting).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            if (checkperfomance.Count > 0)
            {
                return(false);
            }
            else
            {
                EmployeePerformance EmpPer = new EmployeePerformance();
                EmpPer.ProjectId            = model.ProjectId;
                EmpPer.EmployeeId           = model.EmployeeId;
                EmpPer.ReviewId             = model.ReviewId;
                EmpPer.ReviewDate           = DateTime.Now;
                EmpPer.RevviewByEmpID       = SessionProxy.UserId;
                EmpPer.ReviewStatus         = "Open";
                EmpPer.Archived             = false;
                EmpPer.UserIDCreatedBy      = SessionProxy.UserId;
                EmpPer.UserIDLastModifiedBy = SessionProxy.UserId;
                EmpPer.CreatedDate          = DateTime.Now;
                EmpPer.LastModifiedDate     = DateTime.Now;
                _db.EmployeePerformances.Add(EmpPer);
                _db.SaveChanges();
                return(true);
            }
        }
Ejemplo n.º 7
0
        public PartialViewResult GetNotificationDetailsByKey(int EmployeeID, string Header, int?DetailsId)
        {
            NotificationMethod _NotificationMethod = new NotificationMethod();

            NotificationDetail _NotificationDetail = new NotificationDetail();

            if (Header == "TimeSheet Request")
            {
                var data = _NotificationMethod.GetTimeSheetNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId   = data.EmployeeId;
                    _NotificationDetail.HeaderType   = data.HeaderType;
                    _NotificationDetail.Hours        = data.Hours;
                    _NotificationDetail.ProjectName  = data.ProjectName;
                    _NotificationDetail.Day          = data.Day;
                    _NotificationDetail.Date         = data.Date;
                    _NotificationDetail.CustomerName = data.CustomerName;
                    _NotificationDetail.CostCode     = data.CostCode;
                    _NotificationDetail.AssetName    = data.AssetName;
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    Employee_TimeSheet_Detail TimeSheetDetails = new Employee_TimeSheet_Detail();
                    TimeSheetDetails = _db.Employee_TimeSheet_Detail.Find(DetailsId);
                    if (TimeSheetDetails != null && TimeSheetDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = TimeSheetDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && TimeSheetDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            TimeSheetDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            TimeSheetDetails.IsReadAddRep = true;
                        }
                        if (TimeSheetDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            TimeSheetDetails.IsRead = true;
                        }
                        _db.Entry(TimeSheetDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            if (Header == "Training Request Worker")
            {
                var data = _NotificationMethod.getEmployeeTrainingById(Convert.ToInt32(DetailsId)).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId          = data.EmployeeId;
                    _NotificationDetail.HeaderType          = "Training Request Worker";
                    _NotificationDetail.StartDate           = Convert.ToString(data.StartDate);
                    _NotificationDetail.EndDate             = Convert.ToString(data.EndDate);
                    _NotificationDetail.TrainingDescription = data.Description;

                    EmployeeTraining trainingDetails = new EmployeeTraining();
                    trainingDetails = _db.EmployeeTrainings.Find(DetailsId);
                    trainingDetails.IsReadWorker     = true;
                    _db.Entry(trainingDetails).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "Skill Added")
            {
                var data = _NotificationMethod.getEmployeeSkillById(Convert.ToInt32(DetailsId)).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId = data.EmployeeId;
                    _NotificationDetail.HeaderType = "Skill Added";
                    if (data.GeneralSkillsName != "" && data.GeneralSkillsName != null)
                    {
                        int GenralSkillName = Convert.ToInt32(data.GeneralSkillsName);
                        _NotificationDetail.generalSkill = _db.SkillSets.Where(x => x.Id == GenralSkillName).FirstOrDefault().Name;
                    }
                    else
                    {
                        _NotificationDetail.generalSkill = null;
                    }
                    if (data.TechnicalSkillsName != "" && data.TechnicalSkillsName != null)
                    {
                        int TechnSkillName = Convert.ToInt32(data.TechnicalSkillsName);
                        _NotificationDetail.technicalskill = _db.SkillSets.Where(x => x.Id == TechnSkillName).FirstOrDefault().Name;
                    }
                    else
                    {
                        _NotificationDetail.technicalskill = null;
                    }
                    _NotificationDetail.StartDate = Convert.ToString(data.CreatedDate);

                    Employee_Skills EmpSkillDetails = new Employee_Skills();
                    EmpSkillDetails                  = _db.Employee_Skills.Find(DetailsId);
                    EmpSkillDetails.IsRead           = true;
                    _db.Entry(EmpSkillDetails).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "Scheduling Request")
            {
                var data = _NotificationMethod.GetScheduleNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId   = data.EmployeeId;
                    _NotificationDetail.HeaderType   = data.HeaderType;
                    _NotificationDetail.Hours        = data.Hours;
                    _NotificationDetail.ProjectName  = data.Project;
                    _NotificationDetail.CustomerName = data.Customer;
                    _NotificationDetail.CostCode     = data.AssetName;
                    _NotificationDetail.StartDate    = data.StartDate;
                    _NotificationDetail.EndDate      = data.EndDate;
                    _NotificationDetail.Duration     = data.duration;
                    _NotificationDetail.AssetName    = data.AssetName;
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    Employee_ProjectPlanner_Scheduling SchedulingDetails = new Employee_ProjectPlanner_Scheduling();
                    SchedulingDetails = _db.Employee_ProjectPlanner_Scheduling.Find(DetailsId);
                    if (SchedulingDetails != null && SchedulingDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = SchedulingDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && SchedulingDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            SchedulingDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            SchedulingDetails.IsReadAddRes = true;
                        }
                        if (SchedulingDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            SchedulingDetails.IsRead = true;
                        }
                        _db.Entry(SchedulingDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Travel Request")
            {
                var data = _NotificationMethod.GetTravelNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId   = data.EmployeeId;
                    _NotificationDetail.HeaderType   = data.HeaderType;
                    _NotificationDetail.TravelType   = data.Type;
                    _NotificationDetail.FromCountry  = data.FromCountry;
                    _NotificationDetail.FromTown     = data.FromCity;
                    _NotificationDetail.FromPlace    = data.FromPlace;
                    _NotificationDetail.ToCountry    = data.ToCountry;
                    _NotificationDetail.ToTown       = data.ToCity;
                    _NotificationDetail.Toplace      = data.ToPlace;
                    _NotificationDetail.StartDate    = data.StartDate;
                    _NotificationDetail.EndDate      = data.EndDate;
                    _NotificationDetail.Duration     = data.Duration;
                    _NotificationDetail.Hours        = data.Hour;
                    _NotificationDetail.CustomerName = data.CustomerName;
                    _NotificationDetail.ProjectName  = data.ProjectName;
                    _NotificationDetail.CostCode     = data.CostCode;
                    _NotificationDetail.Function     = "";
                    _NotificationDetail.Link         = "";
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();

                    Employee_TravelLeave TravelLeaveDetails = new Employee_TravelLeave();
                    TravelLeaveDetails = _db.Employee_TravelLeave.Find(DetailsId);
                    if (TravelLeaveDetails != null && TravelLeaveDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = TravelLeaveDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && TravelLeaveDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            TravelLeaveDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            TravelLeaveDetails.IsReadAddReport = true;
                        }
                        if (TravelLeaveDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            TravelLeaveDetails.IsRead = true;
                        }
                        _db.Entry(TravelLeaveDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Annual Leave Request")
            {
                var data = _NotificationMethod.GetAnnualLeaveNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId = data.EmployeeId;
                    _NotificationDetail.StartDate  = data.StartDate;
                    _NotificationDetail.EndDate    = data.EndDate;
                    _NotificationDetail.HeaderType = "Annual Leave Request";
                    _NotificationDetail.Duration   = data.Duration;
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    Employee_AnualLeave AnualLeaveDetails = new Employee_AnualLeave();
                    AnualLeaveDetails = _db.Employee_AnualLeave.Find(DetailsId);
                    if (AnualLeaveDetails != null && AnualLeaveDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = AnualLeaveDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && AnualLeaveDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            AnualLeaveDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            AnualLeaveDetails.IsReadAddRep = true;
                        }
                        if (AnualLeaveDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            AnualLeaveDetails.IsRead = true;
                        }
                        _db.Entry(AnualLeaveDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Other Leave Request")
            {
                var data = _NotificationMethod.GetOtherLeaveNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId = data.EmployeeId;
                    _NotificationDetail.HeaderType = data.HeaderType;
                    _NotificationDetail.StartDate  = data.StartDate;
                    _NotificationDetail.EndDate    = data.EndDate;
                    _NotificationDetail.Duration   = data.Duration;
                    _NotificationDetail.Reason     = data.Reason;
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    Employee_OtherLeave OtherLeaveDetails = new Employee_OtherLeave();
                    OtherLeaveDetails = _db.Employee_OtherLeave.Find(DetailsId);
                    if (OtherLeaveDetails != null && OtherLeaveDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = OtherLeaveDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && OtherLeaveDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            OtherLeaveDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            OtherLeaveDetails.IsReadAddRep = true;
                        }
                        if (OtherLeaveDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            OtherLeaveDetails.IsRead = true;
                        }
                        _db.Entry(OtherLeaveDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Maternity/Paternity Leave")
            {
                var data = _NotificationMethod.GetMaternityPatLeaveByKey(Convert.ToInt32(DetailsId)).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId = data.EmployeeID;
                    _NotificationDetail.HeaderType = "Maternity/Paternity Leave";
                    _NotificationDetail.StartDate  = Convert.ToString(data.ActualStartDate);
                    _NotificationDetail.EndDate    = Convert.ToString(data.ActualEndDate);
                    _NotificationDetail.dueDate    = Convert.ToString(data.DueDate);
                    _NotificationDetail.Link       = data.Link;
                    var reportTodata      = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    Employee_MaternityOrPaternityLeaves MatPatLeaveDetails = new Employee_MaternityOrPaternityLeaves();
                    MatPatLeaveDetails = _db.Employee_MaternityOrPaternityLeaves.Find(DetailsId);
                    if (MatPatLeaveDetails != null && MatPatLeaveDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = MatPatLeaveDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && MatPatLeaveDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            MatPatLeaveDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            MatPatLeaveDetails.IsReadAddRes = true;
                        }
                        if (MatPatLeaveDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            MatPatLeaveDetails.IsRead = true;
                        }
                        _db.Entry(MatPatLeaveDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Sick Leave")
            {
                var data = _NotificationMethod.getSickLeaveByKey(Convert.ToInt32(DetailsId)).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId    = data.EmployeeId;
                    _NotificationDetail.HeaderType    = "Sick Leave Request";
                    _NotificationDetail.StartDate     = Convert.ToString(data.StartDate);
                    _NotificationDetail.EndDate       = Convert.ToString(data.EndDate);
                    _NotificationDetail.Duration      = Convert.ToDecimal(data.DurationDays);
                    _NotificationDetail.DoctConsulted = data.DoctorConsulted;
                    _NotificationDetail.Paid          = data.IsPaid;
                    var reportTodata = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    Employee_SickLeaves SickLeaveDetails = new Employee_SickLeaves();
                    SickLeaveDetails = _db.Employee_SickLeaves.Find(DetailsId);
                    if (SickLeaveDetails != null && SickLeaveDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = SickLeaveDetails.ApprovalStatus;
                    }
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Archived == false && x.Id == EmployeeID).FirstOrDefault();
                    if (aspnetUserDetails != null && SickLeaveDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            SickLeaveDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            SickLeaveDetails.IsReadAddRep = true;
                        }
                        if (SickLeaveDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            SickLeaveDetails.IsRead = true;
                        }

                        _db.Entry(SickLeaveDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Training Request")
            {
                var data = _NotificationMethod.GetTrainingNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId   = data.EmployeeId;
                    _NotificationDetail.StartDate    = data.StartDate;
                    _NotificationDetail.EndDate      = data.EndDate;
                    _NotificationDetail.TrainingName = data.TrainingName;
                    _NotificationDetail.Provider     = data.Provider;
                    if (data.Importance == 1)
                    {
                        _NotificationDetail.Importance = "Mandatory";
                    }
                    else
                    {
                        _NotificationDetail.Importance = "Optional";
                    }

                    _NotificationDetail.Cost       = data.Cost;
                    _NotificationDetail.Day        = Convert.ToString(data.Days);
                    _NotificationDetail.HeaderType = "Training Request";

                    EmployeeTraining EmployeeTraining = new EmployeeTraining();
                    EmployeeTraining                  = _db.EmployeeTrainings.Find(DetailsId);
                    EmployeeTraining.IsRead           = true;
                    _db.Entry(EmployeeTraining).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "New Vacancy")
            {
                var data = _NotificationMethod.GetNewVacancyNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId          = null;
                    _NotificationDetail.HeaderType          = "New Vacancy";
                    _NotificationDetail.Vacancy             = data.Title;
                    _NotificationDetail.ClosingDate         = data.ClosingDate;
                    _NotificationDetail.RecruitementProcess = data.RecruitmentProcesses;
                    _NotificationDetail.SalaryRange         = data.Salary;
                    _NotificationDetail.Location            = data.Location;
                    _NotificationDetail.Business            = data.Business;
                    _NotificationDetail.Division            = data.Division;
                    _NotificationDetail.Pool     = data.Pool;
                    _NotificationDetail.Function = data.Functions;

                    Vacancy VacancyDetails = new Vacancy();
                    VacancyDetails                  = _db.Vacancies.Find(DetailsId);
                    VacancyDetails.IsRead           = true;
                    _db.Entry(VacancyDetails).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "Uplift Submission")
            {
                var data = _NotificationMethod.GetUpLiftNotificationByKey(EmployeeID, DetailsId).FirstOrDefault();
                if (data != null)
                {
                    _NotificationDetail.EmployeeId           = data.EmployeeId;
                    _NotificationDetail.HeaderType           = data.HeaderType;
                    _NotificationDetail.Day                  = data.day;
                    _NotificationDetail.Date                 = data.Date;
                    _NotificationDetail.UpliftPosition       = data.UpliftPostionId;
                    _NotificationDetail.Hours                = data.Hours;
                    _NotificationDetail.ProjectName          = data.Project;
                    _NotificationDetail.CustomerName         = data.Customer;
                    _NotificationDetail.ChangeInWorkRate     = data.WorkerRate;
                    _NotificationDetail.ChangeInCustomerRate = data.CustomerRate;

                    Employee_ProjectPlanner_Uplift_Detail UpliftDetails = new Employee_ProjectPlanner_Uplift_Detail();
                    var reportTodata = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    UpliftDetails = _db.Employee_ProjectPlanner_Uplift_Detail.Find(DetailsId);
                    var aspnetUserDetails = _db.AspNetUsers.Where(x => x.Id == EmployeeID && x.Archived == false).FirstOrDefault();
                    if (UpliftDetails != null && UpliftDetails.ApprovalStatus == "Pending")
                    {
                        _NotificationDetail.AppStatus = UpliftDetails.ApprovalStatus;
                    }
                    if (aspnetUserDetails != null && UpliftDetails != null)
                    {
                        if (aspnetUserDetails.HRResponsible == SessionProxy.UserId && aspnetUserDetails.HRResponsible != null)
                        {
                            UpliftDetails.IsReadHR = true;
                        }
                        if (aspnetUserDetails.AdditionalReportsto == SessionProxy.UserId)
                        {
                            UpliftDetails.IsReadAddRep = true;
                        }
                        if (UpliftDetails != null && reportTodata.Reportsto == SessionProxy.UserId)
                        {
                            UpliftDetails.IsRead = true;
                        }
                        _db.Entry(UpliftDetails).State = System.Data.Entity.EntityState.Modified;
                        _db.SaveChanges();
                    }
                }
            }
            else if (Header == "Skill Endorsement")
            {
                Employee_AddEndrosementSkills EndrosementSkillseDetails = new Employee_AddEndrosementSkills();
                EndrosementSkillseDetails                  = _db.Employee_AddEndrosementSkills.Find(DetailsId);
                EndrosementSkillseDetails.IsRead           = true;
                _db.Entry(EndrosementSkillseDetails).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            else if (Header == "New Resource")
            {
                var data = _NotificationMethod.getNewResourceDetails(EmployeeID);
                if (data != null)
                {
                    _NotificationDetail.EmployeeId = data.Id;
                    _NotificationDetail.HeaderType = "New Resource";
                    _NotificationDetail.StartDate  = Convert.ToString(data.StartDate);
                    _NotificationDetail.email      = Convert.ToString(data.UserName);

                    AspNetUser aspDetails   = new AspNetUser();
                    var        reportTodata = _db.EmployeeRelations.Where(x => x.IsActive == true && x.UserID == EmployeeID).FirstOrDefault();
                    aspDetails = _db.AspNetUsers.Find(EmployeeID);
                    if (aspDetails.HRResponsible == SessionProxy.UserId)
                    {
                        aspDetails.IsReadHRRespo = true;
                    }
                    if (aspDetails.AdditionalReportsto == SessionProxy.UserId)
                    {
                        aspDetails.IsReadAddReport = true;
                    }
                    if (reportTodata != null && reportTodata.Reportsto == SessionProxy.UserId)
                    {
                        aspDetails.IsReadNewResource = true;
                    }
                    _db.Entry(aspDetails).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "Delete employee")
            {
                var data = _NotificationMethod.getDeleteResourceDetails(EmployeeID);
                if (data != null)
                {
                    _NotificationDetail.EmployeeId   = data.Id;
                    _NotificationDetail.HeaderType   = "Delete employee";
                    _NotificationDetail.EmployeeName = data.FirstName + " " + data.LastName;
                    _NotificationDetail.StartDate    = Convert.ToString(data.StartDate);
                    _NotificationDetail.email        = Convert.ToString(data.UserName);

                    AspNetUser aspDetails = new AspNetUser();
                    aspDetails = _db.AspNetUsers.Find(EmployeeID);
                    aspDetails.IsReadArchived   = true;
                    _db.Entry(aspDetails).State = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            else if (Header == "New Document")
            {
                var data = _NotificationMethod.getEmployeeDocumentByKey(Convert.ToInt32(DetailsId));
                _NotificationDetail.EmployeeId   = data.Id;
                _NotificationDetail.HeaderType   = "New Document";
                _NotificationDetail.DocumentName = data.DocumentPath;
                _NotificationDetail.Description  = data.Description;
                _NotificationDetail.DocLink      = data.LinkURL;
                Employee_Document aspDetails = new Employee_Document();
                aspDetails                  = _db.Employee_Document.Find(DetailsId);
                aspDetails.IsRead           = true;
                _db.Entry(aspDetails).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            else if (Header == "Document Signature")
            {
                var data = _NotificationMethod.getEmployeeDocumentForSignatureByKey(Convert.ToInt32(DetailsId));
                _NotificationDetail.EmployeeId   = data.Id;
                _NotificationDetail.HeaderType   = "Document Signature";
                _NotificationDetail.DocumentName = data.DocumentPath;
                _NotificationDetail.Description  = data.Description;
                _NotificationDetail.DocLink      = data.LinkURL;
                Employee_Document aspDetails = new Employee_Document();
                aspDetails = _db.Employee_Document.Find(DetailsId);
                aspDetails.IsReadSignature  = true;
                _db.Entry(aspDetails).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            else if (Header == "New Vacancy Posted")
            {
                var data = _NotificationMethod.getVacancyByKey(Convert.ToInt32(DetailsId));

                _NotificationDetail.EmployeeId = data.Id;
                _NotificationDetail.HeaderType = "New Vacancy Posted";
                Vacancy vacDetails = new Vacancy();
                vacDetails = _db.Vacancies.Find(DetailsId);
                vacDetails.IsReadVacancy    = true;
                _db.Entry(vacDetails).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            else if (Header == "New Applicant")
            {
                var data = _NotificationMethod.getTMSApplicantDetailByKey(Convert.ToInt32(EmployeeID));

                _NotificationDetail.EmployeeId = data.Id;
                _NotificationDetail.HeaderType = "New Applicant";
                TMS_Applicant aspDetails = new TMS_Applicant();
                aspDetails = _db.TMS_Applicant.Find(EmployeeID);
                aspDetails.IsReadHiringLead = true;
                _db.Entry(aspDetails).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
            }
            return(PartialView("_GetNotificationDetails", _NotificationDetail));
        }