示例#1
0
        public Model.Show Update(int showId, Model.Requests.InsertShowRequest request)
        {
            var show = _context.Shows.Find(showId);

            _mapper.Map(request, show);
            _context.SaveChanges();
            return(_mapper.Map <Model.Show>(show));
        }
示例#2
0
        public Model.Show Insert(Model.Requests.InsertShowRequest request)
        {
            var show = _mapper.Map <Database.Shows>(request);

            _context.Shows.Add(show);
            _context.SaveChanges();

            return(_mapper.Map <Model.Show>(_mapper.Map <Database.Shows>(request)));
        }
示例#3
0
        private async void SaveBtn_Click(object sender, EventArgs e)
        {
            var messageBox = new CustomMessageBox();

            if (string.IsNullOrWhiteSpace(ShowTitle.Text) || ShowTitle.Text.Length < 4)
            {
                messageBox.Show("The title field requires 4 letters!", "error");
                return;
            }

            if (string.IsNullOrWhiteSpace(Description.Text) || Description.Text.Length < 5)
            {
                messageBox.Show("The description field requires 5 letters!", "error");
                return;
            }

            if (string.IsNullOrWhiteSpace(Cast.Text) || Cast.Text.Length < 15)
            {
                messageBox.Show("The cast field requires 15 letters!", "error");
                return;
            }
            if (string.IsNullOrWhiteSpace(ImageLink.Text) || !ImageLink.Text.Contains(".jpg"))
            {
                messageBox.Show("Enter a valid '.jpg' image link!", "error");
                return;
            }
            if (string.IsNullOrWhiteSpace(TrailerLink.Text))
            {
                messageBox.Show("Enter a trailer id", "error");
                return;
            }

            if (string.IsNullOrWhiteSpace(Rating.Text) || !decimal.TryParse(Rating.Text, out decimal n))
            {
                messageBox.Show("Enter a valid rating (0-10)!", "error");
                return;
            }
            decimal rating = decimal.Parse(Rating.Text);

            if (rating < 0 || rating > 10)
            {
                messageBox.Show("Enter a valid rating (0-10)!", "error");
                return;
            }

            if (string.IsNullOrWhiteSpace(Price.Text) || !decimal.TryParse(Price.Text, out decimal m))
            {
                messageBox.Show("Enter a valid price (1-200)!", "error");
                return;
            }
            decimal price = decimal.Parse(Price.Text);

            if (price < 1 || price > 200)
            {
                messageBox.Show("Enter a valid price (1-200)!", "error");
                return;
            }
            if (Year.Value < Year.Minimum || Year.Value > Year.Maximum)
            {
                messageBox.Show("Enter a valid year (1800-2025)!", "error");
                return;
            }

            if (Seasons.Value < 1 || Seasons.Value > 100)
            {
                messageBox.Show("Enter a valid seasons number (1-100)!", "error");
                return;
            }

            if (string.IsNullOrWhiteSpace(Genre.Text) || Genre.Text.Length < 4)
            {
                messageBox.Show("The genre field requires 4 letters!", "error");
                return;
            }

            Model.Requests.InsertShowRequest request = new Model.Requests.InsertShowRequest()
            {
                Title           = ShowTitle.Text,
                Year            = (int)Year.Value,
                NumberOfSeasons = (int)Seasons.Value,
                Rating          = decimal.Parse(Rating.Text),
                Description     = Description.Text,
                Cast            = Cast.Text,
                ImageLink       = ImageLink.Text,
                Ongoing         = Ongoing.Checked,
                Price           = decimal.Parse(Price.Text),
                TrailerLink     = $"https://www.youtube.com/embed/{TrailerLink.Text}",
                Genre           = Genre.Text
            };

            if (_showId.HasValue)
            {
                await _apiService.Update <Model.Show>(_showId, request);
            }
            else
            {
                await _apiService.Insert <Model.Show>(request);
            }

            this.Close();
            foreach (Form frm in _menuForm.MdiChildren)
            {
                frm.Close();
            }
            ShowsForm form = new ShowsForm {
                MdiParent = _menuForm,
                Dock      = DockStyle.Fill
            };

            form.Show();
            if (_showId.HasValue)
            {
                messageBox.Show("Show updated successfully!", "success");
            }
            else
            {
                messageBox.Show("Show added successfully!", "success");
            }
        }
示例#4
0
 public ActionResult <Model.Show> Update(int showId, Model.Requests.InsertShowRequest request)
 {
     return(_service.Update(showId, request));
 }
示例#5
0
 public ActionResult <Model.Show> Insert(Model.Requests.InsertShowRequest request)
 {
     return(_service.Insert(request));
 }