Exemplo n.º 1
0
        public async Task TestCommitFlightFailure()
        {
            var client = A.Fake <IStoreClient>();

            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).Returns(Task.Factory.StartNew(() => true));
            var json = File.ReadAllText($"{this.GetExecutingPath()}\\Files\\flight.json");

            A.CallTo(() => client.CreateSubmission("myapp", "myflight")).Returns(Task.Factory.StartNew(() => new Tuple <JObject, HttpStatusCode>(JObject.Parse(json), HttpStatusCode.Created)));
            var updatedJson = File.ReadAllText($"{this.GetExecutingPath()}\\Files\\flightupdate.json");

            A.CallTo(() => client.UpdateSubmission("myapp", "myflight", "submissionid", JObject.Parse(updatedJson).ToString())).Returns(Task.Factory.StartNew(() => true));
            A.CallTo(() => client.Commit("myapp", "myflight", "submissionid")).Returns(Task.Factory.StartNew(() => false));
            var logger              = new MockLogger();
            var stringprovider      = new StringProvider();
            var command             = new SubmitCommand(client, logger, stringprovider);
            var packageFileLocation = $"{this.GetExecutingPath()}\\Files\\package.zip";
            var options             = new SubmitOptions
            {
                PackagesFile = packageFileLocation,
                Application  = "myapp",
                ConfigFile   = $"{this.GetExecutingPath()}\\Files\\.valid_config",
                Flight       = "myflight"
            };
            var result = await command.CreateSubmission(options);

            result.Should().BeNegative("committing the submission failed");
            logger.Message.Last().Should().Be(stringprovider.GetString(Strings.SubmitCommitError), "committing the submission failed");
            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).MustHaveHappened();
            A.CallTo(() => client.CreateSubmission("myapp", "myflight")).MustHaveHappened();
            A.CallTo(() => client.UpdateSubmission("myapp", "myflight", "submissionid", JObject.Parse(updatedJson).ToString())).MustHaveHappened();
            A.CallTo(() => client.Commit("myapp", "myflight", "submissionid")).MustHaveHappened();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Forces to re-evaluate CanExecute on the Prism commands
        /// </summary>
        public override void RaiseCanExecuteChanges()
        {
            base.RaiseCanExecuteChanges();

            SubmitCommand.RaiseCanExecuteChanged();
            CloseDialogCommand.RaiseCanExecuteChanged();
        }
Exemplo n.º 3
0
        public async Task TestSubmitNewFlightSubmissionFailure()
        {
            var client = A.Fake <IStoreClient>();

            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).Returns(Task.Factory.StartNew(() => true));
            var json = File.ReadAllText($"{this.GetExecutingPath()}\\Files\\submission.json");

            A.CallTo(() => client.CreateSubmission("myapp", "myflight")).Returns(Task.Factory.StartNew(() => new Tuple <JObject, HttpStatusCode>(JObject.Parse(json), HttpStatusCode.NotFound)));
            var logger              = new MockLogger();
            var stringprovider      = new StringProvider();
            var command             = new SubmitCommand(client, logger, stringprovider);
            var packageFileLocation = $"{this.GetExecutingPath()}\\Files\\package.zip";
            var options             = new SubmitOptions
            {
                PackagesFile = packageFileLocation,
                Application  = "myapp",
                ConfigFile   = $"{this.GetExecutingPath()}\\Files\\.valid_config",
                Flight       = "myflight"
            };
            var result = await command.CreateSubmission(options);

            result.Should().BeNegative("the creation of submission failed");
            logger.Message.Last().Should().Be(stringprovider.GetString(Strings.VerifyParameters), "there's something wrong with the parameters");
            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).MustHaveHappened();
            A.CallTo(() => client.CreateSubmission("myapp", "myflight")).MustHaveHappened();
        }
Exemplo n.º 4
0
        public override void EnterSubmit_command([NotNull] CrawlLangParser.Submit_commandContext context)
        {
            string        selector      = context.selector().GetText().Trim('\'');
            SubmitCommand submitCommand = new SubmitCommand(selector, _ExecutionEngine.Submit);

            _CurrentBlock.Add(submitCommand);
        }
Exemplo n.º 5
0
        public async Task TestSubmitSuccess()
        {
            var client = A.Fake <IStoreClient>();

            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).Returns(Task.Factory.StartNew(() => true));
            var json = File.ReadAllText($"{this.GetExecutingPath()}\\Files\\submission.json");

            A.CallTo(() => client.CreateSubmission("myapp")).Returns(Task.Factory.StartNew(() => new Tuple <JObject, HttpStatusCode>(JObject.Parse(json), HttpStatusCode.Created)));
            var updatedJson = File.ReadAllText($"{this.GetExecutingPath()}\\Files\\submissionupdate.json");

            A.CallTo(() => client.UpdateSubmission("myapp", "submissionid", JObject.Parse(updatedJson).ToString())).Returns(Task.Factory.StartNew(() => true));
            A.CallTo(() => client.Commit("myapp", "submissionid")).Returns(Task.Factory.StartNew(() => true));
            var logger              = new MockLogger();
            var stringprovider      = new StringProvider();
            var command             = new SubmitCommand(client, logger, stringprovider);
            var packageFileLocation = $"{this.GetExecutingPath()}\\Files\\package.zip";
            var options             = new SubmitOptions
            {
                PackagesFile = packageFileLocation,
                Application  = "myapp",
                ConfigFile   = $"{this.GetExecutingPath()}\\Files\\.valid_config"
            };
            var result = await command.CreateSubmission(options);

            result.Should().BeGreaterOrEqualTo(0, "the zip file contains app packages and everything worked out ok");
            logger.Message.Last().Should().Be(stringprovider.GetString(Strings.SubmitCommitSuccess), "everything went according to plan");
            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).MustHaveHappened();
            A.CallTo(() => client.CreateSubmission("myapp")).MustHaveHappened();
            A.CallTo(() => client.UpdateSubmission("myapp", "submissionid", JObject.Parse(updatedJson).ToString())).MustHaveHappened();
            A.CallTo(() => client.Commit("myapp", "submissionid")).MustHaveHappened();
        }
Exemplo n.º 6
0
        private void Delete(CartItemModel obj)
        {
            _cartService.RemoveFromCart(new CartItem {
                UserId = _userId, ProductId = obj.Product.Id
            });
            Products.Remove(obj);
            if (Products.Count == 0)
            {
                CartNotEmpty = false;
            }
            else
            {
                CartNotEmpty = true;
            }

            var eventPayload = new CartItemEventModel
            {
                Product = obj.Product,
                Count   = obj.Count,
                Action  = CartAction.Remove
            };

            _eventAggregator.GetEvent <UpdateCartEvent>().Publish(eventPayload);
            SubmitCommand.RaiseCanExecuteChanged();
        }
Exemplo n.º 7
0
 public QuestionnaireCreationViewModel()
 {
     Title         = AppResources.Questionnaire;
     IMAViewModels = Enum.GetValues(typeof(ImpactMeasurementArea))
                     .OfType <ImpactMeasurementArea>().Select(x => new QuestionnaireCreationIMAViewModel(x, OnIMASelectedChanged)).ToArray();
     TemplateViewModels.CollectionChanged += (_, __) => SubmitCommand.ChangeCanExecute();
 }
Exemplo n.º 8
0
        private void cmdSubmit_Click(object sender, System.EventArgs e)
        {
            lblError.Visible = false;

            //Sanity check
            if (!Validate())
            {
                PageError("Missing a field, please try again.");
                return;
            }

            //Set up the submission process
            string        cvsroot = FormCVSRoot(txtServer.Text, txtUsername.Text, txtRepository.Text);
            SubmitCommand scmd    = new SubmitCommand(cvsroot, txtModule.Text, txtPassword.Text,
                                                      AssignmentID, SubmitterPrincipalID, new Submissions(Globals.CurrentIdentity));

            //Load global context for threads
            Globals.Context = HttpContext.Current;

            //Do the submission
            ViewState["submitting"] = true;
            //	((MasterPage)Page).ExecuteLongTask(scmd);
            scmd.Finished += new ICommandEventHandler(scmd_Finished);
            scmd.Execute();
        }
Exemplo n.º 9
0
 private void ThisPropertyChanged(object sender, PropertyChangedEventArgs e)
 {
     if (e.PropertyName == "PackageContents")
     {
         CanSubmit();
         SubmitCommand.RaiseCanExecuteChanged();
     }
 }
Exemplo n.º 10
0
        public ProductEditWindowViewModel(IContainer container, ILogger <ProductEditWindowViewModel> logger)
        {
            _container = container;
            _logger    = logger;


            LoadedCommand.Subscribe(OnLoaded);
            SubmitCommand.Subscribe(OnSubmit);
        }
Exemplo n.º 11
0
        private void OnEventBookedProductModelPropertyChanged(object sender, PropertyChangedEventArgs args)
        {
            if (args.PropertyName == "Room")
            {
                CreateClockItems();
            }

            SubmitCommand.RaiseCanExecuteChanged();
        }
Exemplo n.º 12
0
        public void RaisePropertyChanged(string propertyName)
        {
            PropertyChangedEventHandler handler = PropertyChanged;

            if (handler != null)
            {
                handler(this, new PropertyChangedEventArgs(propertyName));
            }
            SubmitCommand.RaiseCanExecuteChanged();
        }
Exemplo n.º 13
0
        private void ActionButtonView_TappedEvent(object sender, object e)
        {
            var packReason = new PackReasonEventArgs
            {
                Action   = _selectedAction,
                Reason   = _selectedReason,
                Quantity = _selectedQuantity
            };

            SubmitCommand?.Execute(packReason);
        }
Exemplo n.º 14
0
        private void DeleteBookedProductCommandExecuted(EventBookedProductModel obj)
        {
            obj.PropertyChanged -= OnEventBookedProductModelPropertyChanged;

            _eventGolf.EventBookedProducts.Remove(obj);

            _event.EventCharges.Remove(obj.EventCharge);
            _eventDataUnit.EventChargesRepository.Delete(obj.EventCharge.EventCharge);

            _event.EventBookedProducts.Remove(obj);
            _eventDataUnit.EventBookedProductsRepository.Delete(obj.EventBookedProduct);
            SubmitCommand.RaiseCanExecuteChanged();
        }
Exemplo n.º 15
0
 private void OnEventBookedProductModelPropertyChanged(object sender, PropertyChangedEventArgs args)
 {
     // When you select a time, default the start time of the booking to the same time.
     if (args.PropertyName == "Time")
     {
         _eventCatering.StartTime = _eventCatering.Time;
     }
     if (args.PropertyName == "Room")
     {
         CreateClockItems();
     }
     SubmitCommand.RaiseCanExecuteChanged();
 }
Exemplo n.º 16
0
        /// <summary>
        /// Do a deep copy of the job.
        /// </summary>
        /// <returns></returns>
        internal AtlasJob Clone()
        {
            var r = new AtlasJob();

            r.Name                  = Name;
            r.Version               = Version;
            r.Release               = Release?.Clone();
            r.Packages              = Packages?.Select(p => p.Clone()).ToArray();
            r.Commands              = Commands?.Select(c => c.Clone()).ToArray();
            r.SubmitCommand         = SubmitCommand?.Clone();
            r.SubmitPatternCommands = SubmitPatternCommands?.Select(sp => sp.Clone()).ToArray();
            return(r);
        }
Exemplo n.º 17
0
        private async Task ValidateProperty <TProperty>(object property)
        {
            var prop = (IValidatable <TProperty>)property;

            if (prop.IsAsync)
            {
                await prop.ValidateAsync();
            }
            else
            {
                prop.Validate();
            }
            SubmitCommand.ChangeCanExecute();
        }
Exemplo n.º 18
0
 private void mainpanel_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.Key == Key.Enter)
     {
         UIElement element = EditFields.LastOrDefault() as UIElement;
         if (SubmitCommand != null && element != null && (element.IsFocused || element.IsKeyboardFocused || element.IsKeyboardFocusWithin))
         {
             SubmitCommand.Execute(EditFields);
         }
     }
     else if (e.Key == Key.Escape)
     {
         CancelCommand.Execute(null);
     }
 }
Exemplo n.º 19
0
 /// <summary>
 ///
 /// </summary>
 protected Task OnValidateCommand(Object parameter)
 {
     UIAtomsApplication.Instance.TriggerOnce(() =>
     {
         UpdateIsValid();
         if (IsValid)
         {
             SubmitCommand?.Execute(parameter ?? BindingContext);
         }
         else
         {
             UIAtomsApplication.Instance.NotificationService.NotifyAsync(InvalidMessage);
         }
     });
     return(Task.CompletedTask);
 }
Exemplo n.º 20
0
        public SampleViewModel()
        {
            theModel = new SampleItemObservable
            {
                Id             = 101,
                Name           = "name 101",
                UpdateDateTime = new DateTime(),
                Flag           = true
            };

            ItemViewModel = new SampleItemViewModel(theModel);



            SubmitCommand.Subscribe(() => Submit());
        }
Exemplo n.º 21
0
        private void SubmitCommandExecuted()
        {
            if (IsBusy)
            {
                return;
            }
            IsBusy = true;
            SubmitCommand.RaiseCanExecuteChanged();
            if (!_isEditMode)
            {
                _event.EventInvoices.Add(EventInvoice);
                _eventDataUnit.EventInvoicesRepository.Add(EventInvoice.EventInvoice);

                foreach (var product in EventInvoice.EventBookedProducts)
                {
                    product.EventCharge.EventCharge.ShowInInvoice = EventInvoice.EventInvoice.ShowInInvoice;

                    _event.EventCharges.Add(product.EventCharge);
                    _eventDataUnit.EventChargesRepository.Add(product.EventCharge.EventCharge);

                    _event.EventBookedProducts.Add(product);
                    _eventDataUnit.EventBookedProductsRepository.Add(product.EventBookedProduct);
                }
            }
            else
            {
                EventInvoice.EventBookedProducts.ForEach(eventBookedProduct =>
                {
                    eventBookedProduct.EventCharge.EventCharge.ShowInInvoice = EventInvoice.EventInvoice.ShowInInvoice;
                });
                var newProdcuts = _eventInvoice.EventBookedProducts.Except(_event.EventBookedProducts).ToList();
                if (newProdcuts.Any())
                {
                    foreach (var prodcut in newProdcuts)
                    {
                        _event.EventBookedProducts.Add(prodcut);
                        _eventDataUnit.EventBookedProductsRepository.Add(prodcut.EventBookedProduct);

                        _event.EventCharges.Add(prodcut.EventCharge);
                        _eventDataUnit.EventChargesRepository.Add(prodcut.EventCharge.EventCharge);
                    }
                }
            }

            RaisePropertyChanged("CloseDialog");
        }
Exemplo n.º 22
0
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.BackQuote))
        {
            ToggleDisplay();
        }

        if (Input.GetKeyDown(KeyCode.F12))
        {
            ExportLogs();
        }

        if (GetIsVisible() && inputText.text != "" && Input.GetKey(KeyCode.Return))
        {
            SubmitCommand?.Invoke(inputText.text);
            inputText.text = "";
        }
    }
        private void OnEnterKeyPress()
        {
            var enteredValue = AssociatedObject.Text;

            if (string.IsNullOrEmpty(enteredValue))
            {
                return;
            }
            if (SubmitCommand == null)
            {
                return;
            }

            SubmitCommand.Execute(enteredValue);
            if (ClearTextAfterSubmit)
            {
                AssociatedObject.Text = "";
            }
        }
Exemplo n.º 24
0
        public async Task TestSubmitZipfileNoPackages()
        {
            var client = A.Fake <IStoreClient>();

            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).Returns(Task.Factory.StartNew(() => true));
            var logger              = new MockLogger();
            var stringprovider      = new StringProvider();
            var command             = new SubmitCommand(client, logger, stringprovider);
            var packageFileLocation = $"{this.GetExecutingPath()}\\Files\\nopackage.zip";
            var options             = new SubmitOptions
            {
                PackagesFile = packageFileLocation,
                Application  = "myapp",
                ConfigFile   = $"{this.GetExecutingPath()}\\Files\\.valid_config"
            };
            var result = await command.CreateSubmission(options);

            result.Should().BeNegative("the zip file does not contain app packages");
            logger.Message.Last().Should().Be(Format(stringprovider.GetString(Strings.ValidatePackageNoPackages), packageFileLocation), "The provided zip file does not contain any packages");
            A.CallTo(() => client.Login("myId", "myKey", "myTenantId")).MustHaveHappened();
        }
Exemplo n.º 25
0
        private void cmdSubmit_Click(object sender, System.EventArgs e)
        {
            lblError.Visible = false;
            HttpPostedFile upfile = fileUpload.PostedFile;
            if (upfile.ContentLength == 0) {
                PageError("Please specify a file to upload");
                return;
            }

            SubmitCommand scmd =
                new SubmitCommand(new Submissions(Globals.CurrentIdentity), upfile,
                AssignmentID, SubmitterPrincipalID);

            //Load global context for threads
            Globals.Context = HttpContext.Current;

            ViewState["submitting"] = true;
            //	((MasterPage)Page).ExecuteLongTask(scmd);

            scmd.Finished += new ICommandEventHandler(scmd_Finished);
            scmd.Execute();
        }
        public static void Main(string[] args)
        {
            var app = new CommandLineApplication();

            app.Name = "console-runner";
            app.HelpOption("-?|-h|--help");

            app.OnExecute(() =>
            {
                Console.WriteLine("Invalid argument: empty");
                return(1);
            });

            CheckUncheckedCommand.Register(app);
            SolveCommand.Register(app);
            SolveUnsolvedCommand.Register(app);
            SolveBlockCommand.Register(app);
            SubmitCommand.Register(app);
            CsvCommand.Register(app);

            app.Execute(args);
        }
Exemplo n.º 27
0
        private void cmdSubmit_Click(object sender, System.EventArgs e)
        {
            lblError.Visible = false;
            HttpPostedFile upfile = fileUpload.PostedFile;

            if (upfile.ContentLength == 0)
            {
                PageError("Please specify a file to upload");
                return;
            }

            SubmitCommand scmd =
                new SubmitCommand(new Submissions(Globals.CurrentIdentity), upfile,
                                  AssignmentID, SubmitterPrincipalID);

            //Load global context for threads
            Globals.Context = HttpContext.Current;

            ViewState["submitting"] = true;
            //	((MasterPage)Page).ExecuteLongTask(scmd);

            scmd.Finished += new ICommandEventHandler(scmd_Finished);
            scmd.Execute();
        }
Exemplo n.º 28
0
        private void cmdSubmit_Click(object sender, System.EventArgs e)
        {
            lblError.Visible = false;

            //Sanity check
            if (!Validate()) {
                PageError("Missing a field, please try again.");
                return;
            }

            //Set up the submission process
            string cvsroot = FormCVSRoot(txtServer.Text, txtUsername.Text, txtRepository.Text);
            SubmitCommand scmd = new SubmitCommand(cvsroot, txtModule.Text, txtPassword.Text,
                AssignmentID, SubmitterPrincipalID, new Submissions(Globals.CurrentIdentity));

            //Load global context for threads
            Globals.Context = HttpContext.Current;

            //Do the submission
            ViewState["submitting"] = true;
            //	((MasterPage)Page).ExecuteLongTask(scmd);
            scmd.Finished += new ICommandEventHandler(scmd_Finished);
            scmd.Execute();
        }
Exemplo n.º 29
0
 private void SubmitQuery(object sender, EventArgs eventArgs)
 {
     SubmitCommand.ExecuteIfPossible(Text);
     this.EndEditing(true);
 }
Exemplo n.º 30
0
 private void AddItemCommandExecuted()
 {
     AddGolfProduct(EventGolf);
     SubmitCommand.RaiseCanExecuteChanged();
 }
Exemplo n.º 31
0
        private async void SubmitCommandExecuted()
        {
            IsBusy = true;
            SubmitCommand.RaiseCanExecuteChanged();
            if (EventGolf.HasErrors)
            {
                IsBusy = false;
                SubmitCommand.RaiseCanExecuteChanged();
                return;
            }
            EventGolf.EventGolf.Event = _event.Event;
            var            eventGolf       = EventGolf.Clone();
            EventGolfModel linkedEventGolf = GetEventGolf();
            EventGolf      linkedGolf      = null;

            _eventDataUnit.EventGolfsRepository.Refresh(RefreshMode.ClientWins);
            var golfs = await _eventDataUnit.EventGolfsRepository.GetAllAsync();

            golfs = _eventDataUnit.EventGolfsRepository.SetGolfCurrentValues(golfs).ToList();
            var eventGolfs = golfs.Select(x => new EventGolfModel(x)).ToList();

            if (_isEditMode)
            {
                if (EventGolf.EventGolf.LinkedEventGolfId != null)
                {
                    linkedGolf = eventGolfs.FirstOrDefault(p => p.EventGolf.ID == EventGolf.EventGolf.LinkedEventGolfId).EventGolf;
                    eventGolfs.RemoveAll(x => x.EventGolf.ID == EventGolf.EventGolf.LinkedEventGolfId);
                }
            }
            eventGolfs.RemoveAll(x => x.EventGolf.ID == _eventGolf.EventGolf.ID);
            if (AlreadyBookedGolfs != null)
            {
                AlreadyBookedGolfs.ForEach(alreadyBookedItem =>
                {
                    eventGolfs.RemoveAll(p => p.EventGolf.ID == alreadyBookedItem.EventGolf.ID);
                    if (alreadyBookedItem.EventGolf.EventGolf1 != null)
                    {
                        eventGolfs.RemoveAll(p => p.EventGolf.ID == alreadyBookedItem.EventGolf.EventGolf1.ID);
                    }
                });
            }

            var bookingService = new BookingsService {
                BookedGolfs = eventGolfs
            };

            MapChangedDataAfterRefresh(EventGolf.EventGolf, eventGolf.EventGolf);


            //check 1st Golf Booking
            var startTime            = new DateTime(_event.Date.Year, _event.Date.Month, _event.Date.Day, _eventGolf.Time.Hour, _eventGolf.Time.Minute, 0);
            var endTime              = startTime.AddMinutes(EventGolf.Golf.TimeInterval.TotalMinutes * EventGolf.EventGolf.Slots);
            var firstBookingAllowed  = bookingService.IsGolfAvailable(EventGolf.Golf, startTime, endTime);
            var linkedBookingAllowed = false;

            var bookingAllowed = false;

            //Check if first booking allowed and then check second if allowed
            if (firstBookingAllowed)
            {
                //Check Whether Golf is 9 golfHoles or 18 Holes
                if (EventGolf.GolfHole.Hole.ToLower() == "18 holes")
                {
                    if (EventGolf.Golf.TurnDefault != null)
                    {
                        var golf = Golfs.FirstOrDefault(m => m.ID == EventGolf.Golf.TurnDefault);
                        if (golf != null)
                        {
                            startTime = startTime.Add(EventGolf.Golf.TurnTime);
                            startTime = startTime.AddMinutes(((new TimeSpan(startTime.Hour, startTime.Minute, 0).TotalMinutes - golf.StartTime.TotalMinutes) % golf.TimeInterval.TotalMinutes));
                            //  startTime = startTime.AddTicks((golf.StartTime.Ticks + new TimeSpan(0, 0, 1).Ticks - new TimeSpan(startTime.Hour, startTime.Minute, startTime.Second).Ticks) / golf.TimeInterval.Ticks);
                            endTime = startTime.AddMinutes(Golfs.FirstOrDefault(m => m.ID == EventGolf.Golf.TurnDefault).TimeInterval.TotalMinutes *EventGolf.EventGolf.Slots);
                            MapChangedDataAfterRefresh(linkedEventGolf.EventGolf, eventGolf.EventGolf);
                            linkedEventGolf.EventGolf.TeeID    = golf.ID;
                            linkedEventGolf.EventGolf.Time     = new DateTime(0001, 01, 01, startTime.Hour, startTime.Minute, startTime.Second);
                            linkedEventGolf.EventGolf.IsLinked = true;
                            linkedEventGolf.EventGolf.Event    = _event.Event;
                            linkedBookingAllowed = bookingService.IsGolfAvailable(golf, startTime, endTime);
                        }
                    }
                    else
                    {
                        EventGolf.EventGolf.LinkedEventGolfId = null;
                        linkedBookingAllowed = true;
                    }
                    bookingAllowed = firstBookingAllowed && linkedBookingAllowed;
                }
                else
                {
                    bookingAllowed = firstBookingAllowed;
                }
            }
            else
            {
                bookingAllowed = firstBookingAllowed;
            }
            if (bookingAllowed && EventGolf.HasValidProducts)
            {
                if (!_isEditMode)
                {
                    if (EventGolf.GolfHole.Hole.ToLower() == "18 holes" && EventGolf.Golf.TurnDefault != null &&
                        Golfs.FirstOrDefault(m => m.ID == EventGolf.Golf.TurnDefault) != null)
                    {
                        EventGolf.EventGolf.EventGolf1        = linkedEventGolf.EventGolf;
                        EventGolf.EventGolf.LinkedEventGolfId = linkedEventGolf.EventGolf.ID;
                    }
                    _event.EventGolfs.Add(EventGolf);
                    _eventDataUnit.EventGolfsRepository.Add(EventGolf.EventGolf);
                    //if (EventGolf.GolfHole.Hole.ToLower() == "18 holes")
                    //    _eventDataUnit.EventGolfsRepository.Add(linkedEventGolf.EventGolf);

                    foreach (var product in EventGolf.EventBookedProducts)
                    {
                        product.EventCharge.EventCharge.ShowInInvoice = EventGolf.EventGolf.ShowInInvoice;

                        _event.EventCharges.Add(product.EventCharge);
                        _eventDataUnit.EventChargesRepository.Add(product.EventCharge.EventCharge);

                        _event.EventBookedProducts.Add(product);
                        _eventDataUnit.EventBookedProductsRepository.Add(product.EventBookedProduct);
                    }
                }
                else
                {
                    if (linkedGolf != null)
                    {
                        _eventDataUnit.EventGolfsRepository.Delete(linkedGolf);
                    }
                    if (EventGolf.GolfHole.Hole.ToLower() == "18 holes" && EventGolf.Golf.TurnDefault != null && Golfs.FirstOrDefault(m => m.ID == EventGolf.Golf.TurnDefault) != null)
                    {
                        EventGolf.EventGolf.EventGolf1        = linkedEventGolf.EventGolf;
                        EventGolf.EventGolf.LinkedEventGolfId = linkedEventGolf.EventGolf.ID;
                    }
                    //if (EventGolf.GolfHole.Hole.ToLower() == "18 holes")
                    //    _eventDataUnit.EventGolfsRepository.Add(linkedEventGolf.EventGolf);
                    EventGolf.EventBookedProducts.ForEach(eventBookedProduct =>
                    {
                        eventBookedProduct.EventCharge.EventCharge.ShowInInvoice = EventGolf.EventGolf.ShowInInvoice;
                    });
                    var newProdcuts = _eventGolf.EventBookedProducts.Except(_event.EventBookedProducts).ToList();
                    if (newProdcuts.Any())
                    {
                        foreach (var prodcut in newProdcuts)
                        {
                            _event.EventBookedProducts.Add(prodcut);
                            _eventDataUnit.EventBookedProductsRepository.Add(prodcut.EventBookedProduct);

                            _event.EventCharges.Add(prodcut.EventCharge);
                            _eventDataUnit.EventChargesRepository.Add(prodcut.EventCharge.EventCharge);
                        }
                    }
                }

                RaisePropertyChanged("CloseDialog");
            }
            else
            {
                IsBusy = false;
                SubmitCommand.RaiseCanExecuteChanged();
                RaisePropertyChanged("DisableParentWindow");

                string confirmText = Resources.MESSAGE_TEE_IS_BOOKED;
                RadWindow.Alert(new DialogParameters()
                {
                    Owner   = Application.Current.MainWindow,
                    Content = confirmText,
                });

                RaisePropertyChanged("EnableParentWindow");
            }
        }
Exemplo n.º 32
0
 private void OnEventBookedProductModelPropertyChanged(object sender, PropertyChangedEventArgs propertyChangedEventArgs)
 {
     SubmitCommand.RaiseCanExecuteChanged();
 }