public IActionResult Create(BusinessCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                var business = new Business
                {
                    OwnerID      = User.FindFirstValue(ClaimTypes.NameIdentifier),
                    Name         = model.Name,
                    Street       = model.Street,
                    HouseNumber  = model.HouseNumber,
                    Mailbox      = model.Mailbox,
                    Zipcode      = model.Zipcode,
                    City         = model.City,
                    Type         = model.Type,
                    Omschrijving = model.Omschrijving
                };

                if (model.DisplayPicture != null)
                {
                    using (var ms = new MemoryStream())
                    {
                        model.DisplayPicture.CopyTo(ms);
                        business.DisplayPicture = ms.ToArray();
                    }
                }

                var social = model.Social;
                social.Business   = business;
                social.BusinessID = business.ID;

                _businessManager.CreateBusiness(business);
                _socialManager.CreateSocial(social);

                if ((model.MenuID != null) && model.MenuID.Value > 0)
                {
                    var busMenu = new BusinessMenu
                    {
                        BusinessID = business.ID,
                        MenuID     = model.MenuID.Value
                    };
                    _businessMenuManager.CreateBusinessMenu(busMenu);
                }


                foreach (BusinessHour hour in model.BusinessHours)
                {
                    hour.BusinessID = business.ID;
                    _businessManager.AddBusinessHours(hour);
                }

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["OwnerID"] = User.FindFirstValue(ClaimTypes.NameIdentifier);
            return(View(model));
        }
Beispiel #2
0
        public BusinessMenu EditBusinessMenu(BusinessMenu menu)
        {
            if (menu == null)
            {
                throw new ArgumentNullException(nameof(menu));
            }

            _context.Entry(menu).State = EntityState.Modified;
            _context.SaveChanges();

            return(menu);
        }
Beispiel #3
0
        public BusinessMenu CreateBusinessMenu(BusinessMenu businessMenu)
        {
            if (businessMenu == null)
            {
                throw new ArgumentNullException(nameof(businessMenu));
            }

            _context.BusinessMenus.Add(businessMenu);
            _context.SaveChanges();

            return(businessMenu);
        }
    public void OpenBusinessWindow(Businesses.Business business)
    {
        if (windowOpen)
        {
            CloseOpenedWindow();
        }

        businessMenuCanvas.enabled = true;
        openedWindow = businessMenuCanvas;
        windowOpen   = true;

        BusinessMenu menu = businessMenuCanvas.GetComponent <BusinessMenu>();

        menu.business = business;
        menu.UpdateUI();
    }
        public IActionResult Edit(int id, BusinessEditViewModel model)
        {
            if (id != model.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                var business = new Business
                {
                    ID             = model.ID,
                    OwnerID        = model.OwnerID,
                    Name           = model.Name,
                    Street         = model.Street,
                    HouseNumber    = model.HouseNumber,
                    Mailbox        = model.Mailbox,
                    Zipcode        = model.Zipcode,
                    City           = model.City,
                    Type           = model.Type,
                    DisplayPicture = model.DisplayPictureBytes,
                    Omschrijving   = model.Omschrijving
                };

                //If new image we need to overwrite it
                if (model.DisplayPictureUpload != null)
                {
                    using (var ms = new MemoryStream())
                    {
                        model.DisplayPictureUpload.CopyTo(ms);
                        business.DisplayPicture = ms.ToArray();
                    }
                }

                var social = model.Social;
                social.Business   = business;
                social.BusinessID = business.ID;
                social.ID         = model.SocialID;


                var busMenu = new BusinessMenu();


                if (model.MenuID > 0)
                {
                    busMenu.ID         = model.BusMenuID;
                    busMenu.BusinessID = model.ID;
                    busMenu.MenuID     = model.MenuID.Value;
                }

                try
                {
                    _businessManager.EditBusiness(business);
                    _socialManager.EditSocial(social);

                    //If a menu was selected we either edit or create one
                    if (model.MenuID != -1)
                    {
                        //if menu exists we edit it, else we create it
                        if (busMenu.ID > 0)
                        {
                            _businessMenuManager.EditBusinessMenu(busMenu);
                        }
                        else
                        {
                            _businessMenuManager.CreateBusinessMenu(busMenu);
                        }
                    }

                    foreach (BusinessHour hour in model.BusinessHours)
                    {
                        hour.BusinessID = business.ID;
                        _businessManager.EditBusinessHour(hour);
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BusinessExists(business.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["OwnerID"] = User.FindFirstValue(ClaimTypes.NameIdentifier);
            return(View(model));
        }