public GameSiteModel()
 {
     if (_db == null)
     {
         _db = new WGHotelsEntities();
     }
 }
Example #2
0
        public void Create()
        {
            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    var Venue_ZH = new VenueZH();

                    Venue_ZH.Sport   = SportZH;
                    Venue_ZH.Type    = TypeZH;
                    Venue_ZH.Venue   = VenueZH;
                    Venue_ZH.Deleted = Deleted;
                    _db.VenueZH.Add(Venue_ZH);
                    //_db.SaveChanges();

                    var Venue_EN = new VenueEN();
                    Venue_EN.Sport   = SportEN;
                    Venue_EN.Type    = VenueViewModel.GetTypeEN(TypeZH);
                    Venue_EN.Venue   = VenueEN;
                    Venue_ZH.Deleted = Deleted;
                    _db.VenueEN.Add(Venue_EN);
                    _db.SaveChanges();
                    scope.Complete();
                }
            }
        }
Example #3
0
        public List <SelectListItem> Facility(List <int> Selected = null)
        {
            var lang       = HttpContext.Current.Request.Cookies["lang"].Value.ToLower();
            var FacilityZH = new List <FacilityZH>();
            var SelectList = new List <SelectListItem>();

            var    _db   = new WGHotelsEntities();
            object model = _db.FacilityZH.ToList();
            //if (lang.Equals("us"))
            //{
            //    model = _db.FacilityEN.ToList();
            //}else
            //{
            //    model = _db.FacilityZH.ToList();
            //}

            var Facilities = (List <FacilityZH>)model;

            SelectList = new List <SelectListItem>();
            foreach (var i in Facilities)
            {
                SelectList.Add(item: new SelectListItem
                {
                    Text     = i.Name,
                    Value    = i.ID.ToString(),
                    Selected = Selected == null
                           ? false
                           : Selected.Contains(i.ID)
                });
            }

            return(SelectList);
        }
Example #4
0
        public List <SelectListItem> SelectList(List <int> Selected = null)
        {
            var    lang  = HttpContext.Current.Request.Cookies["lang"].Value.ToLower();
            var    _db   = new WGHotelsEntities();
            object model = null;

            if (lang == "us")
            {
                model = _db.CodeFileEN.Where(o => o.ItemType == "Bed").ToList();
            }
            else
            {
                model = _db.CodeFileZH.Where(o => o.ItemType == "Bed").ToList();
            }


            var Beds       = (List <CodeFileZH>)model;
            var SelectList = new List <SelectListItem>();

            foreach (var i in Beds)
            {
                SelectList.Add(item: new SelectListItem
                {
                    Text     = i.ItemDescription,
                    Value    = i.ID.ToString(),
                    Selected = Selected == null
                       ? false
                       : Selected.Contains(i.ID)
                });
            }

            _db.Dispose();

            return(SelectList);
        }
Example #5
0
        public List <SelectListItem> SelectList(List <int> Selected = null)
        {
            var Items = new List <GameSiteViewModel>();
            var _db   = new WGHotelsEntities();


            object Games = null;

            Games = _db.VenueZH.Where(o => o.Deleted != true).ToList();


            var SelectList = new List <SelectListItem>();

            foreach (var i in (List <VenueZH>)Games)
            {
                SelectList.Add(item: new SelectListItem
                {
                    Text     = string.Format("{0}/{1}/{2}", i.Type, i.Venue, i.Sport),
                    Value    = i.ID.ToString(),
                    Selected = Selected == null
                           ? false
                           : Selected.Contains(i.ID)
                });
            }



            _db.Dispose();

            return(SelectList);
        }
Example #6
0
        public void Create()
        {
            var Today = DateTime.Now;

            using (var scope = new TransactionScope())
            {
                var _db = new WGHotelsEntities();

                var CodeFileZH = new CodeFileZH();
                CodeFileZH.ItemCode        = "Bed";
                CodeFileZH.ItemType        = "Bed";
                CodeFileZH.ItemDescription = NameZH;
                CodeFileZH.Created         = Today;
                CodeFileZH.Creator         = Creator;
                CodeFileZH.Modified        = Today;
                CodeFileZH.Modify          = Creator;
                CodeFileZH.Remark          = "Bed Type";
                _db.CodeFileZH.Add(CodeFileZH);
                _db.SaveChanges();

                var CodeFileEN = new CodeFileEN();
                CodeFileEN.ItemCode        = "Bed";
                CodeFileEN.ItemType        = "Bed";
                CodeFileEN.ItemDescription = NameEN;
                CodeFileEN.Created         = Today;
                CodeFileEN.Creator         = Creator;
                CodeFileEN.Modified        = Today;
                CodeFileEN.Modify          = Creator;
                CodeFileEN.ParentId        = CodeFileZH.ID;
                CodeFileEN.Remark          = "Bed Type";
                _db.CodeFileEN.Add(CodeFileEN);
                _db.SaveChanges();
                scope.Complete();
            }
        }
Example #7
0
 public RoomController()
 {
     if (_db == null)
     {
         _db = new WGHotelsEntities();
     }
 }
        public object HotelImageDelete(ImageViewModel data)
        {
            if (HttpContext.Current.Session[data.SessionKey] != null)
            {
                var images = (List <ImageViewModel>)HttpContext.Current.Session[data.SessionKey];
                var img    = new ImageViewModel();
                if (images.Count > 0)
                {
                    img = images.Where(o => o.Name == data.Name).FirstOrDefault();
                    if (img != null)
                    {
                        images.Remove(images.Where(o => o.Name == img.Name).FirstOrDefault());
                        new ImageDAO().Delete(img.Name);

                        using (var db = new WGHotelsEntities())
                        {
                            var dbimg = db.ImageStore.Where(o => o.Name == img.Name).FirstOrDefault();
                            if (dbimg != null)
                            {
                                db.ImageStore.Remove(dbimg);
                                db.SaveChanges();
                            }
                        }
                    }
                }



                HttpContext.Current.Session[data.SessionKey] = images;
            }

            return(Json(new { success = true }));
        }
Example #9
0
 public CodeFiles()
     : base()
 {
     if (_db == null)
     {
         _db = new WGHotelsEntities();
     }
 }
Example #10
0
 private void SetDefault()
 {
     using (var db = new WGHotelsEntities())
     {
         var data = db.SysSetting.Where(o => o.Code.Equals("RoomCanEditDate")).ToList();
         Begin = data.Where(o => o.Name == "Begin").FirstOrDefault().Value;
         End   = data.Where(o => o.Name == "End").FirstOrDefault().Value;
     }
 }
Example #11
0
        // GET: Base
        public BaseController()
            : base()
        {
            if (_db == null)
            {
                _db = new WGHotelsEntities();
            }

            ViewBag.Language = new LanguageModel().ListItems;
        }
Example #12
0
        public void Edit()
        {
            using (var db = new WGHotelsEntities())
            {
                var data      = db.SysSetting.Where(o => o.Code.Equals("RoomCanEditDate")).ToList();
                var BeginId   = data.Where(o => o.Name == "Begin").FirstOrDefault().ID;
                var EndId     = data.Where(o => o.Name == "End").FirstOrDefault().ID;
                var BeginDate = db.SysSetting.Where(o => o.ID == BeginId).FirstOrDefault();
                BeginDate.Value = Begin;

                var EndDate = db.SysSetting.Where(o => o.ID == EndId).FirstOrDefault();
                EndDate.Value = End;
                db.SaveChanges();
            }
        }
Example #13
0
        public RoomViewModel()
        {
            if (_db == null)
            {
                _db = new WGHotelsEntities();
            }
            RoomTypes();
            Facility();
            BedTypes();

            if (!Directory.Exists(HttpContext.Current.Server.MapPath("/UserFolder")))
            {
                Directory.CreateDirectory(HttpContext.Current.Server.MapPath("/UserFolder"));
            }
            ;
        }
Example #14
0
 public void Edit()
 {
     using (var _db = new WGHotelsEntities())
     {
         var zh = _db.GameSiteZH.Find(IDZH);
         var us = _db.GameSiteEN.Where(o => o.ParentId == zh.ID).FirstOrDefault();
         zh.Remark = RemarkZH;
         zh.Sports = SportZH;
         zh.Type   = TypeZH;
         zh.Venue  = VenueZH;
         _db.SaveChanges();
         us.Venue  = VenueUS;
         us.Remark = RemarkUS;
         us.Sports = SportUS;
         us.Type   = TypeUS;
         _db.SaveChanges();
     }
 }
Example #15
0
        public List <SelectListItem> SelectListItem(List <int> Selected = null)
        {
            using (var db = new WGHotelsEntities())
            {
                var SelectListItem = new List <SelectListItem>();
                var items          = db.Language.ToList();

                foreach (var item in items)
                {
                    SelectListItem.Add(new SelectListItem
                    {
                        Text     = item.LanguZH,
                        Value    = item.ID.ToString(),
                        Selected = Selected == null ? false : Selected.Contains(item.ID)
                    });
                }
                return(SelectListItem);
            }
        }
Example #16
0
 public void Edit()
 {
     using (var db = new WGHotelsEntities())
     {
         if (ID > 0)
         {
             var model = db.Language.Find(ID);
             model.LanguZH = LanguZH;
             model.LanguEN = LanguEN;
             db.SaveChanges();
         }
         else
         {
             db.Language.Add(new Language {
                 LanguZH = LanguZH, LanguEN = LanguEN, Deleted = false
             });
             db.SaveChanges();
         }
     }
 }
Example #17
0
        public void Edit()
        {
            var FactitlyZH = new FacilityZH();
            var FactitlyEN = new FacilityEN();

            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    FactitlyZH         = _db.FacilityZH.Find(ID);
                    FactitlyZH.Name    = NameZH;
                    FactitlyZH.Enabled = Enabled;
                    FactitlyEN         = _db.FacilityEN.Where(o => o.ParentId == FactitlyZH.ID).First();
                    FactitlyEN.Name    = NameUS;
                    FactitlyEN.Enabled = Enabled;
                    _db.SaveChanges();
                    scope.Complete();
                }
            }
        }
Example #18
0
        public void Create()
        {
            using (var _db = new WGHotelsEntities())
            {
                var Model = new Report();
                Model.Created = Created;
                Model.Creator = Creator;
                //Model.CountryID = CountryID;
                var country_id = int.Parse(Country);
                var country    = _db.Country.Find(country_id);
                Model.CountryID   = country.ID;
                Model.Country     = country.Name;
                Model.CheckInDate = CheckInDate;
                Model.HotelID     = HotelID;
                Model.NumOfPeople = NumOfPeople;
                Model.Price       = Price;
                Model.RoomID      = RoomID;
                Model.Modified    = Modified;
                Model.Modify      = Modify;
                Model.Room        = Room;
                Model.Food        = Food;
                Model.FoodCost    = FoodCost;
                Model.Other       = Other;
                Model.OtherCost   = OtherCost;
                Model.UserType    = UserType;

                var ReportRooms = new List <ReportRooms>();

                for (var i = 0; i < RoomIds.Count; i++)
                {
                    ReportRooms.Add(new ReportRooms {
                        Amount = Amount[i], Quantity = Quantity[i], RoomID = RoomIds[i], RoomName = RoomName[i], Deleted = false
                    });
                }

                Model.ReportRooms = ReportRooms;

                _db.Report.Add(Model);
                _db.SaveChanges();
            }
        }
Example #19
0
        //public string RemarkUS { get; set; }

        public List <VenueModel> List()
        {
            var VenueZH = new List <VenueZH>();

            using (var db = new WGHotelsEntities())
            {
                VenueZH = db.VenueZH.ToList();
            }

            var VenueEN = new List <VenueEN>();

            using (var db = new WGHotelsEntities())
            {
                VenueEN = db.VenueEN.ToList();
            }

            var Venues = new List <VenueModel>();

            for (var i = 0; i < VenueEN.Count; i++)
            {
                Venues.Add(new VenueModel
                {
                    //RemarkZH = GameZH[i].Remark,
                    //RemarkUS = GameUS[i].Remark,
                    SportEN = VenueEN[i].Sport,
                    SportZH = VenueZH[i].Sport,
                    TypeEN  = VenueEN[i].Type,
                    TypeZH  = VenueZH[i].Type,
                    VenueEN = VenueEN[i].Venue,
                    VenueZH = VenueZH[i].Venue,
                    IDZH    = VenueZH[i].ID,
                    IDEN    = VenueEN[i].ID,
                    Deleted = !VenueZH[i].Deleted.HasValue ? false : VenueZH[i].Deleted.Value
                });
            }

            return(Venues);
        }
Example #20
0
        public List <GameSiteListModel> List()
        {
            var GameZH = new List <GameSiteZH>();

            using (var db = new WGHotelsEntities())
            {
                GameZH = db.GameSiteZH.ToList();
            }

            var GameUS = new List <GameSiteEN>();

            using (var db = new WGHotelsEntities())
            {
                GameUS = db.GameSiteEN.ToList();
            }

            var Games = new List <GameSiteListModel>();

            for (var i = 0; i < GameZH.Count; i++)
            {
                Games.Add(new GameSiteListModel
                {
                    RemarkZH = GameZH[i].Remark,
                    RemarkUS = GameUS[i].Remark,
                    SportUS  = GameUS[i].Sports,
                    SportZH  = GameZH[i].Sports,
                    TypeUS   = GameUS[i].Type,
                    TypeZH   = GameZH[i].Type,
                    VenueUS  = GameUS[i].Venue,
                    VenueZH  = GameZH[i].Venue,
                    IDZH     = GameZH[i].ID,
                    IDEN     = GameUS[i].ID
                });
            }

            return(Games);
        }
Example #21
0
 public void Create()
 {
     using (var scope = new TransactionScope())
     {
         using (var _db = new WGHotelsEntities())
         {
             var GameZH = new GameSiteZH();
             GameZH.Remark = RemarkZH;
             GameZH.Sports = SportZH;
             GameZH.Type   = TypeZH;
             GameZH.Venue  = VenueZH;
             _db.GameSiteZH.Add(GameZH);
             _db.SaveChanges();
             var GameUS = new GameSiteEN();
             GameUS.ParentId = GameZH.ID;
             GameUS.Remark   = RemarkUS;
             GameUS.Sports   = SportUS;
             GameUS.Type     = TypeUS;
             GameUS.Venue    = VenueUS;
             _db.GameSiteEN.Add(GameUS);
             _db.SaveChanges();
         }
     }
 }
Example #22
0
        private List <SelectListItem> GetSelectListItem(List <int> Selected = null)
        {
            using (var db = new WGHotelsEntities())
            {
                var SelectListItem = new List <SelectListItem>();
                var items          = db.Language.ToList();
                var lang           = "zh";
                if (HttpContext.Current.Request.Cookies["lang"] != null)
                {
                    lang = HttpContext.Current.Request.Cookies["lang"].Value.ToLower();
                }

                foreach (var item in items)
                {
                    if (lang == "us")
                    {
                        SelectListItem.Add(new SelectListItem
                        {
                            Text     = item.LanguEN,
                            Value    = item.ID.ToString(),
                            Selected = Selected == null ? false : Selected.Contains(item.ID)
                        });
                    }
                    else if (lang == "zh")
                    {
                        SelectListItem.Add(new SelectListItem
                        {
                            Text     = item.LanguZH,
                            Value    = item.ID.ToString(),
                            Selected = Selected == null ? false : Selected.Contains(item.ID)
                        });
                    }
                }
                return(SelectListItem);
            }
        }
Example #23
0
        public void Create()
        {
            var FactitlyZH = new FacilityZH();
            var FacilityEN = new FacilityEN();

            FactitlyZH.Name    = NameZH;
            FactitlyZH.Enabled = true;

            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    _db.FacilityZH.Add(FactitlyZH);

                    FacilityEN.Name     = NameUS;
                    FacilityEN.Enabled  = true;
                    FacilityEN.ParentId = FactitlyZH.ID;

                    _db.SaveChanges();

                    scope.Complete();
                }
            }
        }
Example #24
0
        public void Edit()
        {
            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    var Today = DateTime.Now;

                    var ZH = _db.CodeFileZH.Where(o => o.ID == ID && o.ItemCode == "Bed").FirstOrDefault();
                    ZH.ItemCode        = "Bed";
                    ZH.ItemType        = "Bed";
                    ZH.ItemDescription = NameZH;

                    ZH.Modified = Today;
                    ZH.Modify   = Creator;
                    ZH.Deleted  = Deleted;
                    //_dbZH.CodeFile.Add(ZH);


                    var ParentId = ZH.ID;

                    var EN = _db.CodeFileEN.Where(o => o.ParentId == ParentId && o.ItemCode == "Bed").FirstOrDefault();
                    EN.ItemCode        = "Bed";
                    EN.ItemType        = "Bed";
                    EN.ItemDescription = NameEN;

                    EN.Modified = Today;
                    EN.Modify   = Creator;
                    EN.Deleted  = Deleted;


                    _db.SaveChanges();
                    scope.Complete();
                }
            }
        }
Example #25
0
        public List <DropDownListItem> SelectSportListItem(List <int> Selected = null)
        {
            var lang = HttpContext.Current.Request.Cookies["lang"].Value.ToLower();

            //var Items = new List<GameSiteViewModel>();
            var _db = new WGHotelsEntities();


            object Games = null;

            if (lang.Equals("zh"))
            {
                Games = _db.VenueZH.Where(o => o.Deleted != true).ToList();
            }
            else
            {
                Games = _db.VenueEN.Where(o => o.Deleted != true).ToList();
            }
            var SelectList = new List <DropDownListItem>();

            if (lang.Equals("zh"))
            {
                SelectList.Add(item: new DropDownListItem
                {
                    Text     = "--請選擇--",
                    Value    = "0",
                    DataAttr = "",
                    Selected = true
                });
                foreach (var i in (List <VenueZH>)Games)
                {
                    SelectList.Add(item: new DropDownListItem
                    {
                        Text     = string.Format("{0}", i.Sport),
                        Value    = i.Sport,
                        DataAttr = i.Type,
                        Selected = Selected == null
                           ? false
                           : Selected.Contains(i.ID)
                    });
                }
            }
            else
            {
                SelectList.Add(item: new DropDownListItem
                {
                    Text     = "--Please select--",
                    Value    = "0",
                    DataAttr = "",
                    Selected = true
                });
                foreach (var i in (List <VenueEN>)Games)
                {
                    SelectList.Add(item: new DropDownListItem
                    {
                        Text     = string.Format("{0}", i.Sport),
                        Value    = i.Sport,
                        DataAttr = i.Type,
                        Selected = Selected == null
                           ? false
                           : Selected.Contains(i.ID)
                    });
                }
            }



            return(SelectList);
        }
Example #26
0
        public void Edit()
        {
            var Session = HttpContext.Current.Session;

            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    var zhHotel = _db.HotelZH.Find(ID);
                    zhHotel.Name        = Namezh;
                    zhHotel.Address     = Addresszh;
                    zhHotel.Area        = Area;
                    zhHotel.City        = City;
                    zhHotel.Facilities  = Facilies;
                    zhHotel.Features    = Featurezh;
                    zhHotel.Enabled     = true;
                    zhHotel.LinkUrl     = LinkUrl;
                    zhHotel.Game        = Game;
                    zhHotel.Tel         = Tel;
                    zhHotel.Language    = Languages;
                    zhHotel.Certificate = Certificate;

                    var HotelEN = _db.HotelEN.Where(o => o.ParentId == zhHotel.ID).FirstOrDefault();
                    HotelEN.Name        = Nameus;
                    HotelEN.Address     = Addressus;
                    HotelEN.Area        = Area;
                    HotelEN.City        = City;
                    HotelEN.Facilities  = Facilies;
                    HotelEN.Features    = Featureus;
                    HotelEN.Enabled     = true;
                    HotelEN.LinkUrl     = LinkUrl;
                    HotelEN.Game        = Game;
                    HotelEN.Tel         = Tel;
                    HotelEN.ParentId    = zhHotel.ID;
                    HotelEN.Language    = Languages;
                    HotelEN.Certificate = Certificate;
                    #region # Images
                    if (Session[ImgKey] != null)
                    {
                        var Now      = DateTime.Now;
                        var images   = (List <ImageViewModel>)Session[ImgKey];
                        var dbImg    = _db.ImageStore.Where(o => o.ReferIdZH == zhHotel.ID);
                        var ImgNames = dbImg.Select(o => o.Name).ToList();
                        images = images.Where(o => !ImgNames.Contains(o.Name)).ToList();
                        foreach (var img in images)
                        {
                            var fileName = Guid.NewGuid().GetHashCode().ToString("x");
                            _db.ImageStore.Add(new ImageStore
                            {
                                Created   = Now,
                                Extension = img.Extension,
                                Deleted   = false,
                                ReferIdUS = HotelEN.ID,
                                ReferIdZH = zhHotel.ID,
                                Type      = "Hotel",
                                Name      = fileName,
                                Image     = img.Image
                            });
                        }

                        _db.SaveChanges();
                        scope.Complete();
                    }
                    #endregion
                }
            }
        }
Example #27
0
        public void Create()
        {
            using (var scope = new TransactionScope())
            {
                using (var _db = new WGHotelsEntities())
                {
                    var zhHotel = new HotelZH();
                    zhHotel.Name        = Namezh;
                    zhHotel.Address     = Addresszh;
                    zhHotel.Area        = Area;
                    zhHotel.City        = City;
                    zhHotel.Facilities  = Facilies;
                    zhHotel.Features    = Featurezh;
                    zhHotel.Enabled     = true;
                    zhHotel.LinkUrl     = LinkUrl;
                    zhHotel.Game        = Game;
                    zhHotel.Tel         = Tel;
                    zhHotel.UserId      = UserId;
                    zhHotel.Language    = Languages;
                    zhHotel.Certificate = Certificate;

                    _db.HotelZH.Add(zhHotel);
                    _db.SaveChanges();
                    // ZHdb.SaveChanges();
                    var ReferIdZH = zhHotel.ID;
                    var ReferIdUS = 0;


                    var HotelEN = new HotelEN
                    {
                        Name        = Nameus,
                        Address     = Addressus,
                        Area        = Area,
                        City        = City,
                        Facilities  = Facilies,
                        Features    = Featureus,
                        Enabled     = true,
                        LinkUrl     = LinkUrl,
                        Game        = Game,
                        UserId      = UserId,
                        Tel         = Tel,
                        ParentId    = zhHotel.ID,
                        Language    = Languages,
                        Certificate = Certificate
                    };

                    _db.HotelEN.Add(HotelEN);

                    _db.SaveChanges();
                    ReferIdUS = HotelEN.ID;
                    #region
                    var Session = HttpContext.Current.Session;

                    if (Session[ImgKey] != null)
                    {
                        var Now    = DateTime.Now;
                        var images = (List <ImageViewModel>)Session[ImgKey];
                        foreach (var img in images)
                        {
                            var fileName = Guid.NewGuid().GetHashCode().ToString("x");
                            _db.ImageStore.Add(new ImageStore
                            {
                                Created   = Now,
                                Extension = img.Extension,
                                Deleted   = false,
                                ReferIdUS = ReferIdUS,
                                ReferIdZH = ReferIdZH,
                                Type      = "Hotel",
                                Name      = fileName,
                                Image     = img.Image
                            });
                        }
                        _db.SaveChanges();
                    }
                    #endregion


                    scope.Complete();
                }
            }
        }
Example #28
0
        public void Edit()
        {
            using (var db = new WGHotelsEntities())
            {
                var Model = db.Report.Find(ID);
                Model.Modified = Modified;
                Model.Modify   = Modify;

                var country_id = int.Parse(Country);
                var country    = db.Country.Find(country_id);
                Model.CountryID   = country.ID;
                Model.Country     = country.Name;
                Model.CheckInDate = CheckInDate;
                Model.HotelID     = HotelID;
                Model.NumOfPeople = NumOfPeople;
                Model.Price       = Price;
                Model.RoomID      = RoomID;
                Model.Room        = Room;
                Model.Food        = Food;
                Model.FoodCost    = FoodCost;
                Model.Other       = Other;
                Model.OtherCost   = OtherCost;
                Model.UserType    = UserType;

                //var ExistReprtRooms = db.ReportRooms.Where(o => o.ReportID == ID).ToList();
                var ExistReprtRooms = (from o in db.ReportRooms
                                       where o.ReportID == Model.ID && o.Deleted != true
                                       select o).ToList();
                var count                  = ExistReprtRooms.Count;
                var NewReportRooms         = new List <ReportRooms>();
                var ExistExceptReportRooms = new List <ReportRooms>();
                for (var i = 0; i < RoomIds.Count; i++)
                {
                    if (!ExistReprtRooms.Any(o => o.ID == ReportOfRoomIds[i]))
                    {
                        NewReportRooms.Add(new ReportRooms {
                            ReportID = Model.ID, Amount = Amount[i], Quantity = Quantity[i], RoomID = RoomIds[i], RoomName = RoomName[i], Deleted = false
                        });
                    }
                    else
                    {
                        ExistExceptReportRooms.Add(new ReportRooms {
                            ReportID = Model.ID, ID = ReportOfRoomIds[i], Amount = Amount[i], Quantity = Quantity[i], RoomID = RoomIds[i], RoomName = RoomName[i], Deleted = false
                        });
                    }
                }

                var RemoveReportRooms = new List <ReportRooms>();
                foreach (var item in ExistReprtRooms)
                {
                    if (!ExistExceptReportRooms.Any(o => o.ID == item.ID))
                    {
                        item.Deleted = true;
                    }
                }

                //NewReportRooms 有  ExistReprtRooms 沒有 要新增
                //var NewExceptReportRooms = NewReportRooms;

                //ExistReprtRooms 有 NewReportRooms 沒有要 移除
                //var RemoveReportRooms = ExistExceptReportRooms.Except(ExistReprtRooms).ToList();

                //foreach (var item in RemoveReportRooms)
                //{
                //    var Rroom = db.ReportRooms.Find(item.ID);
                //    if (Rroom != null)
                //    {
                //        Rroom.Deleted = true;
                //    }
                //}

                //db.ReportRooms.AddRange(NewExceptReportRooms);

                //if (!string.IsNullOrEmpty(Room))
                //{
                //    var RoomString = Room;
                //    var RoomSpilt = RoomString.Split(',');
                //    foreach (var ro in RoomSpilt)
                //    {
                //        var room = ro.Split('^');
                //        var id = int.Parse(room[0]);
                //        var amt = int.Parse(room[1]);
                //        var name = room[2];
                //        ReportRoomsOf.Add(new ReportRooms { ID = ID, RoomID = id, Amount = amt, RoomName = name });

                //        ReportRooms.Add(new ReportRooms { RoomID = id, Amount = amt, RoomName = name });

                //    }

                //    var rrIDs = ReportRoomsOf.Select(o => o.RoomID).ToList();

                //    var removemodel = db.ReportRooms.Where(o => o.ReportID == ID).ToList();
                //    db.ReportRooms.RemoveRange(removemodel);
                //Model.ReportRooms = NewExceptReportRooms.ToList();
                //}
                db.ReportRooms.AddRange(NewReportRooms);
                db.Log.Add(new Log {
                    TargetId = ID, Created = DateTime.Now, Creator = UserName, Remark = "ReportViewModel Edit", TargetType = "修改飯店回報資料"
                });

                db.SaveChanges();
            }
        }