Exemplo n.º 1
0
        public void SaveCommentRecords(AdminNewsViewModel model)
        {
            if (model.Id > 0)
            {
                News_Comments _skills = _db.News_Comments.Where(x => x.Id == model.Id).FirstOrDefault();
                _skills.NewsId               = model.NewsId;
                _skills.Archived             = false;
                _skills.UserIDLastModifiedBy = model.CurrentUserId;
                _skills.Comments             = model.Comments;
                _skills.LastModified         = DateTime.Now;
                _db.SaveChanges();
            }
            else
            {
                News_Comments _skills = new News_Comments();
                _skills.NewsId          = model.NewsId;
                _skills.Archived        = false;
                _skills.UserIDCreatedBy = model.CurrentUserId;
                _skills.Comments        = model.Comments;
                _skills.CreatedDate     = DateTime.Now;
                _db.News_Comments.Add(_skills);
                _db.SaveChanges();

                if (model.NotifyEmployeeViaEmail == true)
                {
                    Mail.NewsCommentNotificationSendEmailAsync(model.NewsId, model.Comments);
                }
            }
        }
Exemplo n.º 2
0
        public ActionResult AddComments(int Id)
        {
            AdminNewsViewModel model = new AdminNewsViewModel();

            model.NewsId = Id;
            return(PartialView("_PartialAddNewsCommentViewSet", model));
        }
Exemplo n.º 3
0
        public ActionResult getWorker_CustomerList()
        {
            AdminNewsViewModel model = new AdminNewsViewModel();

            foreach (var item in _employeeMethod.GetAllResourceEmployeeList().Where(x => x.AspNetUserRoles.Count() > 0 ? x.AspNetUserRoles.FirstOrDefault().RoleId != (int)Roles.SuperAdmin ? x.CreatedBy == SessionProxy.UserId : true : x.CreatedBy == SessionProxy.UserId).ToList())
            {
                if (_RolesManagementMethod.GetLoginUserRoleType(item.Id) != "Manager")
                {
                    model.WorkerList.Add(new SelectListItem()
                    {
                        Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                    });
                }
            }
            foreach (var item in _RolesManagementMethod.GetManagersList())
            {
                model.ManagerList.Add(new SelectListItem()
                {
                    Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                });
            }
            foreach (var item in _employeeMethod.GetAllCoustomerEmployeeList().Where(x => x.AspNetUserRoles.Count() > 0 ? x.AspNetUserRoles.FirstOrDefault().RoleId != (int)Roles.SuperAdmin ? x.CreatedBy == SessionProxy.UserId : true : x.CreatedBy == SessionProxy.UserId).ToList())
            {
                if (_RolesManagementMethod.GetLoginUserRoleType(item.Id) != "Manager")
                {
                    model.CustomerList.Add(new SelectListItem()
                    {
                        Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                    });
                }
            }
            return(Json(model, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 4
0
 public ActionResult SaveCommentsRecvords(AdminNewsViewModel model)
 {
     model.CurrentUserId = SessionProxy.UserId;
     _adminNewsMethod.SaveCommentRecords(model);
     return(List());
     //List<AdminNewsViewModel> modellist = modelList();
     //return PartialView("_partialAdminNewsList", modellist);
 }
Exemplo n.º 5
0
        public void DeleteNewsrecord(int Id, int Users)
        {
            AdminNewsViewModel model = new AdminNewsViewModel();
            News _skills             = _db.News.Where(x => x.Id == Id).FirstOrDefault();

            _skills.Archived         = true;
            _skills.LastModifiedDate = DateTime.Now;
            _skills.LastModifiedBy   = Users;
            _db.SaveChanges();
        }
Exemplo n.º 6
0
        //  public IList<News> getActiveListbyUserId(string UserId)
        // {

        // }

        public void saveData(AdminNewsViewModel model, int userId)
        {
            if (model.Id > 0)
            {
                News news = _db.News.Where(x => x.Id == model.Id).FirstOrDefault();
                news.Subject                = model.Subject;
                news.Description            = model.Description;
                news.EmployeeAccess         = model.EmployeeAccess;
                news.ManagerAccess          = model.ManagerAccess;
                news.CustomerAccess         = model.CustomerAccess;
                news.CustomerID             = model.CustomerID;
                news.ManagerID              = model.ManagerID;
                news.WorkerID               = model.WorkerID;
                news.SpecificWorker         = model.SpecificWorker;
                news.SpecificManager        = model.SpecificManager;
                news.SpecificCustomer       = model.SpecificCustomer;
                news.NotifyEmployeeViaEmail = model.NotifyEmployeeViaEmail;
                news.AllowCustomer          = model.AllowCustomer;
                news.LastModifiedBy         = userId;
                news.LastModifiedDate       = DateTime.Now;
                _db.SaveChanges();
            }
            else
            {
                News news = new News();
                news.Subject                = model.Subject;
                news.Description            = model.Description;
                news.EmployeeAccess         = model.EmployeeAccess;
                news.ManagerAccess          = model.ManagerAccess;
                news.CustomerAccess         = model.CustomerAccess;
                news.NotifyEmployeeViaEmail = model.NotifyEmployeeViaEmail;
                news.AllowCustomer          = model.AllowCustomer;
                news.CustomerID             = model.CustomerID;
                news.ManagerID              = model.ManagerID;
                news.WorkerID               = model.WorkerID;
                news.SpecificWorker         = model.SpecificWorker;
                news.SpecificManager        = model.SpecificManager;
                news.SpecificCustomer       = model.SpecificCustomer;
                news.Archived               = false;
                news.CreatedBy              = userId;
                news.CreatedDate            = DateTime.Now;
                news.LastModifiedBy         = userId;
                news.LastModifiedDate       = DateTime.Now;
                _db.News.Add(news);
                _db.SaveChanges();

                if (news.NotifyEmployeeViaEmail == true)
                {
                    Mail.NewsNotificationSendEmailAsync(model);
                }
            }
        }
Exemplo n.º 7
0
        public ActionResult EditCommentsRecord(int Id)
        {
            int Users = SessionProxy.UserId;
            AdminNewsViewModel model = new AdminNewsViewModel();

            model.Id = Id;
            var record = _adminNewsMethod.Editcomments(Id);

            foreach (var item in record)
            {
                model.Id       = item.Id;
                model.Comments = item.Comments;
                model.NewsId   = (int)item.NewsId;
            }
            return(PartialView("_PartialAddNewsCommentViewSet", model));
        }
Exemplo n.º 8
0
        internal static Task NewsCommentNotificationSendEmailAsync(int Id, string Comment)
        {
            EvolutionEntities _db = new EvolutionEntities();
            var data = _db.News.Where(x => x.Id == Id).FirstOrDefault();
            AdminNewsViewModel model = new AdminNewsViewModel();

            model.EmployeeAccess   = data.EmployeeAccess;
            model.ManagerAccess    = data.ManagerAccess;
            model.CustomerAccess   = data.CustomerAccess;
            model.SpecificWorker   = data.SpecificWorker;
            model.SpecificManager  = data.SpecificManager;
            model.SpecificCustomer = data.SpecificCustomer;
            model.WorkerID         = data.WorkerID;
            model.ManagerID        = data.ManagerID;
            model.CustomerID       = data.CustomerID;
            model.Description      = Comment;
            return(NewsCommentNotification(model));
        }
Exemplo n.º 9
0
        private static Task NewsNotification(AdminNewsViewModel model)
        {
            try
            {
                EvolutionEntities _db = new EvolutionEntities();
                var emaildetails      = _db.Email_Setting.ToList();
                if (emaildetails.Count > 0)
                {
                    MailMessage msg = new MailMessage();
                    msg.From    = new MailAddress(emaildetails[0].From_Email);
                    msg.Subject = "There is news for you!";
                    string EmpEmail = AllEmployeeEmailString();
                    string MngEmail = AllManagerEmailString();
                    string CumEmail = AllCustomerEmailString();
                    if (model.EmployeeAccess == true)
                    {
                        foreach (var address in EmpEmail.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries))
                        {
                            msg.To.Add(address);
                        }
                    }
                    if (model.ManagerAccess == true)
                    {
                        foreach (var address in MngEmail.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries))
                        {
                            msg.To.Add(address);
                        }
                    }
                    if (model.CustomerAccess == true)
                    {
                        foreach (var address in CumEmail.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries))
                        {
                            msg.To.Add(address);
                        }
                    }
                    if (model.SpecificWorker == true)
                    {
                        var data = _db.AspNetUsers.Where(x => x.Id == model.WorkerID).FirstOrDefault();
                        if (data != null)
                        {
                            msg.To.Add(data.UserName);
                        }
                    }
                    if (model.SpecificManager == true)
                    {
                        var data = _db.AspNetUsers.Where(x => x.Id == model.ManagerID).FirstOrDefault();
                        if (data != null)
                        {
                            msg.To.Add(data.UserName);
                        }
                    }
                    if (model.SpecificCustomer == true)
                    {
                        var data = _db.AspNetUsers.Where(x => x.Id == model.CustomerID).FirstOrDefault();
                        if (data != null)
                        {
                            msg.To.Add(data.UserName);
                        }
                    }

                    msg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(StripHTML(model.Description), null, MediaTypeNames.Text.Html));
                    SmtpClient smtpClient = new SmtpClient(emaildetails[0].Server, Convert.ToInt32(25));
                    //System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["mailAccount"], ConfigurationManager.AppSettings["secretPassword"]);
                    System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(emaildetails[0].From_Email, emaildetails[0].Email_Password);
                    smtpClient.Credentials = credentials;
                    msg.IsBodyHtml         = true;
                    msg.Body             = StripHTML(model.Description);
                    smtpClient.EnableSsl = (bool)emaildetails[0].Enable_SSL;
                    System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return(true); };
                    smtpClient.Send(msg);
                }
            }
            catch (Exception ex)
            {
                return(Task.FromResult(0));
            }
            return(Task.FromResult(0));
        }
Exemplo n.º 10
0
 internal static Task NewsNotificationSendEmailAsync(AdminNewsViewModel model)
 {
     return(NewsNotification(model));
 }
Exemplo n.º 11
0
 public ActionResult SaveData(AdminNewsViewModel model)
 {
     _adminNewsMethod.saveData(model, SessionProxy.UserId);
     //List<AdminNewsViewModel> returnModel = modelList();
     return(List()); //PartialView("_partialAdminNewsList", returnModel);
 }
Exemplo n.º 12
0
        public List <AdminNewsViewModel> modelList()
        {
            List <AdminNewsViewModel> model = new List <AdminNewsViewModel>();
            int  CurrentUser = SessionProxy.UserId;
            int  SuperAdmin  = _RolesManagementMethod.GetSuperAdminId();
            var  details     = _RolesManagementMethod.GetLoginUserRoleType(CurrentUser);
            bool Super       = false;

            if (Convert.ToInt32(CurrentUser) == SuperAdmin)
            {
                Super = true;
            }
            var data = _adminNewsMethod.getActiveList();

            foreach (var item in data)
            {
                AdminNewsViewModel m = new AdminNewsViewModel();
                m.Super = Super;
                m.Id    = item.Id;
                var detail = _db.AspNetUsers.Where(x => x.Id == item.CreatedBy).FirstOrDefault();
                if (detail.SSOID.Contains('W'))
                {
                    m.Emp = true;
                }
                if (detail.SSOID.Contains('C'))
                {
                    m.Cus = true;
                }
                if (_RolesManagementMethod.GetLoginUserRoleType(detail.Id) == "Manager")
                {
                    m.Man = true;
                }
                m.CurrentImage           = detail.image;
                m.Subject                = item.Subject;
                m.Description            = item.Description;
                m.EmployeeAccess         = item.EmployeeAccess;
                m.ManagerAccess          = item.ManagerAccess;
                m.CustomerAccess         = item.CustomerAccess;
                m.SpecificWorker         = item.SpecificWorker;
                m.WorkerID               = item.WorkerID;
                m.SpecificCustomer       = item.SpecificCustomer;
                m.CustomerID             = item.CustomerID;
                m.SpecificManager        = item.SpecificManager;
                m.ManagerID              = item.ManagerID;
                m.NotifyEmployeeViaEmail = item.NotifyEmployeeViaEmail;
                m.AllowCustomer          = item.AllowCustomer;
                var employee = _employeeMethod.getEmployeeById(item.CreatedBy);
                m.CreateUserId = item.CreatedBy;
                m.CreatedBy    = string.Format("{0} {1} - {2}", employee.FirstName, employee.LastName, employee.SSOID);
                m.CreatedDate  = String.Format("{0:dd-MMM-yyy}", item.CreatedDate);
                m.CommentCount = _adminNewsMethod.GetCommentCount(item.Id);
                var listComment = _adminNewsMethod.GetCommentList(item.Id);
                foreach (var itemComment in listComment)
                {
                    NewCommentViewModel modelComment = new NewCommentViewModel();
                    if (itemComment.Comments != null)
                    {
                        //string noHTML = Regex.Replace(itemComment.Comments, @"<[^>]+>| ", "").Trim();
                        modelComment.Comments = itemComment.Comments;
                    }
                    modelComment.Id         = itemComment.Id;
                    modelComment.UserCreate = itemComment.UserIDCreatedBy;
                    modelComment.SuperAdmin = SuperAdmin;
                    var diff = DateTimeSpan.CompareDates((DateTime)itemComment.CreatedDate, DateTime.Now);
                    if (diff.Years != 0)
                    {
                        modelComment.Time = diff.Years + " " + "a year ago";
                    }
                    else
                    {
                        if (diff.Months != 0)
                        {
                            modelComment.Time = diff.Months + " " + "Months ago";
                        }
                        else
                        {
                            if (diff.Days != 0)
                            {
                                modelComment.Time = diff.Days + " " + "Days ago";
                            }
                            else
                            {
                                if (diff.Hours != 0)
                                {
                                    modelComment.Time = diff.Hours + " " + "Hours ago";
                                }
                                else
                                {
                                    if (diff.Minutes > 1)
                                    {
                                        modelComment.Time = diff.Minutes + " " + "Minutes ago";
                                    }
                                    else
                                    {
                                        modelComment.Time = diff.Minutes + " " + "Few Minutes ago";
                                    }
                                }
                            }
                        }
                    }
                    m.NewCommantsList.Add(modelComment);
                }
                model.Add(m);
            }

            return(model.OrderByDescending(x => x.CreatedDate).ToList());
        }
Exemplo n.º 13
0
        public ActionResult AddEditAdminNews(int Id)
        {
            AdminNewsViewModel model = new AdminNewsViewModel();
            int CurrentUser          = SessionProxy.UserId;
            var SuperAdmin           = _RolesManagementMethod.GetSuperAdminId();

            foreach (var item in _employeeMethod.GetAllResourceEmployeeList().Where(x => x.AspNetUserRoles.Count() > 0 ? x.AspNetUserRoles.FirstOrDefault().RoleId != (int)Roles.SuperAdmin ? x.CreatedBy == SessionProxy.UserId : true : x.CreatedBy == SessionProxy.UserId).ToList())
            {
                if (_RolesManagementMethod.GetLoginUserRoleType(item.Id) != "Manager")
                {
                    model.WorkerList.Add(new SelectListItem()
                    {
                        Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                    });
                }
            }
            foreach (var item in _RolesManagementMethod.GetManagersList())
            {
                model.ManagerList.Add(new SelectListItem()
                {
                    Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                });
            }
            foreach (var item in _employeeMethod.GetAllCoustomerEmployeeList().Where(x => x.AspNetUserRoles.Count() > 0 ? x.AspNetUserRoles.FirstOrDefault().RoleId != (int)Roles.SuperAdmin ? x.CreatedBy == SessionProxy.UserId : true : x.CreatedBy == SessionProxy.UserId).ToList())
            {
                if (_RolesManagementMethod.GetLoginUserRoleType(item.Id) != "Manager")
                {
                    model.CustomerList.Add(new SelectListItem()
                    {
                        Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString()
                    });
                }
            }
            if (Id > 0)
            {
                var record = _adminNewsMethod.GetNewsRecordById(Id);
                if (record.CreatedBy == CurrentUser || CurrentUser == SuperAdmin)
                {
                    model.Id                     = record.Id;
                    model.Subject                = record.Subject;
                    model.Description            = record.Description;
                    model.EmployeeAccess         = record.EmployeeAccess;
                    model.ManagerAccess          = record.ManagerAccess;
                    model.CustomerAccess         = record.CustomerAccess;
                    model.CustomerID             = record.CustomerID;
                    model.ManagerID              = record.ManagerID;
                    model.WorkerID               = record.WorkerID;
                    model.SpecificCustomer       = record.SpecificCustomer;
                    model.SpecificManager        = record.SpecificManager;
                    model.SpecificWorker         = record.SpecificWorker;
                    model.NotifyEmployeeViaEmail = record.NotifyEmployeeViaEmail;
                    model.AllowCustomer          = record.AllowCustomer;
                    if (record.WorkerID != 0 && record.WorkerID != null)
                    {
                        int CmpId = Convert.ToInt32(record.WorkerID);
                        if (CmpId != 0)
                        {
                            var Employee = _db.AspNetUsers.Where(x => x.Id == CmpId && x.Archived == false).FirstOrDefault();
                            if (Employee != null)
                            {
                                model.SpecificWorkerName = Employee.FirstName + " " + Employee.LastName + "-" + Employee.SSOID;
                                model.WorkerID           = record.WorkerID;
                            }
                        }
                    }
                    if (record.ManagerID != 0 && record.ManagerID != null)
                    {
                        int ManId = Convert.ToInt32(record.ManagerID);
                        if (ManId != 0)
                        {
                            var Employee = _db.AspNetUsers.Where(x => x.Id == ManId && x.Archived == false).FirstOrDefault();
                            if (Employee != null)
                            {
                                model.SpecificManagerName = Employee.FirstName + " " + Employee.LastName + " " + Employee.SSOID;
                                model.ManagerID           = record.ManagerID;
                            }
                        }
                    }
                    if (record.CustomerID != 0 && record.CustomerID != null)
                    {
                        int CustId = Convert.ToInt32(record.CustomerID);
                        if (CustId != 0)
                        {
                            var Employee = _db.AspNetUsers.Where(x => x.Id == CustId && x.Archived == false).FirstOrDefault();
                            if (Employee != null)
                            {
                                model.SpecificCustomerName = Employee.FirstName + " " + Employee.LastName + " " + Employee.SSOID;
                                model.CustomerID           = record.CustomerID;
                            }
                        }
                    }



                    return(PartialView("_partialAddAdminNews", model));
                }
                else
                {
                    return(Json("Error", JsonRequestBehavior.AllowGet));
                }
            }
            else
            {
                return(PartialView("_partialAddAdminNews", model));
            }

            //foreach (var item in _RolesManagementMethod.GetEmployeesList())
            //{
            //    model.WorkerList.Add(new SelectListItem() { Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString() });
            //}
            //foreach (var item in _RolesManagementMethod.GetManagersList())
            //{
            //    model.ManagerList.Add(new SelectListItem() { Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString() });
            //}
            //foreach (var item in _RolesManagementMethod.GetCustomerList())
            //{
            //    model.CustomerList.Add(new SelectListItem() { Text = item.FirstName + item.LastName + "-" + item.SSOID, Value = item.Id.ToString() });
            //}
        }