Beispiel #1
0
        public ActionResult Update(Service x)
        {
            if (ModelState.IsValid)
            {
                Service xdb = db.Service.Include("ServiceToInfo").Include(w => w.ServiceBenefits).FirstOrDefault(w => w.Id == x.Id);

                xdb.Content         = x.Content;
                xdb.Title           = x.Title;
                xdb.Description     = x.Description;
                xdb.ModifiedDate    = DateTime.Now;
                xdb.AdminModifiedId = (int)Session["AdminId"];

                if (x.ServiceImageFirstFile != null)
                {
                    string imageName = DateTime.Now.ToString("ssfff") + Regex.Replace(x.ServiceImageFirstFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    string oldImagePath = Path.Combine(Server.MapPath("~/Uploads/"), xdb.ServiceImageFirst);
                    System.IO.File.Delete(oldImagePath);

                    x.ServiceImageFirstFile.SaveAs(imagePath);
                    xdb.ServiceImageFirst = imageName;
                }

                if (x.ServiceImageSecondFile != null)
                {
                    string imageName = DateTime.Now.ToString("ssfff") + Regex.Replace(x.ServiceImageSecondFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    string oldImagePath = Path.Combine(Server.MapPath("~/Uploads/"), xdb.ServiceImageSecond);
                    System.IO.File.Delete(oldImagePath);

                    x.ServiceImageSecondFile.SaveAs(imagePath);
                    xdb.ServiceImageSecond = imageName;
                }
                if (x.ServiceIconFile != null)
                {
                    string imageName = DateTime.Now.ToString("ssfff") + Regex.Replace(x.ServiceIconFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    string oldImagePath = Path.Combine(Server.MapPath("~/Uploads/"), xdb.ServiceIcon);
                    System.IO.File.Delete(oldImagePath);

                    x.ServiceIconFile.SaveAs(imagePath);
                    xdb.ServiceIcon = imageName;
                }


                db.Entry(xdb).State = EntityState.Modified;
                db.SaveChanges();

                using (DBContext db = new DBContext())
                {
                    foreach (var item in db.ServiceToInfo.Where(c => c.ServiceId == xdb.Id))
                    {
                        db.ServiceToInfo.Remove(item);
                    }

                    db.SaveChanges();
                }

                if (x.ServiceInfoId != null)
                {
                    foreach (var item in x.ServiceInfoId)
                    {
                        ServiceToInfo w = new ServiceToInfo();
                        w.ServiceId     = xdb.Id;
                        w.ServiceInfoId = item;

                        db.ServiceToInfo.Add(w);
                        db.SaveChanges();
                    }
                }


                using (DBContext db = new DBContext())
                {
                    foreach (var item in db.ServiceBenefits.Where(c => c.ServiceId == xdb.Id))
                    {
                        db.ServiceBenefits.Remove(item);
                    }

                    db.SaveChanges();
                }

                if (x.Benefits != null)
                {
                    foreach (var item in x.Benefits)
                    {
                        ServiceBenefit w = new ServiceBenefit();

                        w.Content   = item;
                        w.ServiceId = xdb.Id;

                        db.ServiceBenefits.Add(w);
                        db.SaveChanges();
                    }
                }
                int    AdminId      = (int)Session["AdminId"];
                string ConnectionId = db.Admin.FirstOrDefault(c => c.Id == AdminId).ConnectionId;
                GlobalHost.ConnectionManager.GetHubContext <NotifyHub>().Clients.AllExcept(ConnectionId).modelUpdate(((Models.Admin)Session["Admin"]).FullName, DateTime.Now.ToString("HH:mm"), xdb.Title, "Service");

                TempData["Update"] = "Update";
                return(RedirectToAction("Index", "Service"));
            }


            TempData["Update-Error"] = "Update-Error";

            Service xdb2 = db.Service.Include("ServiceToInfo").Include(w => w.ServiceBenefits).FirstOrDefault(w => w.Id == x.Id);


            ViewBag.Benefits = db.ServiceBenefits.Where(c => c.ServiceId == xdb2.Id).ToList();

            ViewBag.ServicePage = true;
            ViewBag.Infos       = db.ServiceInfo.ToList();
            return(View(x));
        }
Beispiel #2
0
        public ActionResult Create(Service x)
        {
            int AdminId = (int)Session["AdminId"];

            if (ModelState.IsValid)
            {
                Service xdb = new Service();

                xdb.Content     = x.Content;
                xdb.Title       = x.Title;
                xdb.AdminId     = x.AdminId;
                xdb.PostDate    = DateTime.Now;
                xdb.Description = x.Description;

                if (db.AdminSettings.FirstOrDefault(c => c.AdminId == AdminId).alwaysActive)
                {
                    xdb.isActive = true;
                }
                else
                {
                    xdb.isActive = false;
                }


                if (x.ServiceImageFirstFile == null)
                {
                    xdb.ServiceImageFirst = "Default2";
                }
                else
                {
                    string imageName = DateTime.Now.ToString("ddMMyyyyHHmmssfff") + Regex.Replace(x.ServiceImageFirstFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    x.ServiceImageFirstFile.SaveAs(imagePath);
                    xdb.ServiceImageFirst = imageName;
                }

                if (x.ServiceImageSecondFile == null)
                {
                    xdb.ServiceImageSecond = "Default2";
                }
                else
                {
                    string imageName = DateTime.Now.ToString("ddMMyyyyHHmmssfff") + Regex.Replace(x.ServiceImageSecondFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    x.ServiceImageSecondFile.SaveAs(imagePath);
                    xdb.ServiceImageSecond = imageName;
                }

                if (x.ServiceIconFile == null)
                {
                    xdb.ServiceIcon = "Default2";
                }
                else
                {
                    string imageName = DateTime.Now.ToString("ddMMyyyyHHmmssfff") + Regex.Replace(x.ServiceIconFile.FileName, "[^A-Za-z0-9.]", "");
                    string imagePath = Path.Combine(Server.MapPath("~/Uploads/"), imageName);

                    x.ServiceIconFile.SaveAs(imagePath);
                    xdb.ServiceIcon = imageName;
                }



                db.Service.Add(xdb);

                db.SaveChanges();



                if (x.Benefits != null)
                {
                    foreach (var item in x.Benefits)
                    {
                        ServiceBenefit w = new ServiceBenefit();

                        w.Content   = item;
                        w.ServiceId = xdb.Id;

                        db.ServiceBenefits.Add(w);
                    }
                }

                db.SaveChanges();

                if (db.ServiceInfo.FirstOrDefault() != null && x.ServiceInfoId != null)
                {
                    foreach (var item in x.ServiceInfoId)
                    {
                        ServiceToInfo w = new ServiceToInfo();
                        w.ServiceId     = xdb.Id;
                        w.ServiceInfoId = item;

                        db.ServiceToInfo.Add(w);
                    }
                }

                db.SaveChanges();


                string ConnectionId = db.Admin.FirstOrDefault(c => c.Id == AdminId).ConnectionId;
                GlobalHost.ConnectionManager.GetHubContext <NotifyHub>().Clients.AllExcept(ConnectionId).modelCreate(((Models.Admin)Session["Admin"]).FullName, DateTime.Now.ToString("HH:mm"), xdb.Title, "Service");
                TempData["Create"] = "Create";


                return(RedirectToAction("Index", "Service"));
            }
            ViewBag.ServicePage      = true;
            ViewBag.Admin            = (int)Session["AdminId"];
            TempData["Create-Error"] = "Create-Error";
            ViewBag.Infos            = db.ServiceInfo.ToList();

            return(View(x));
        }