public async void OnSaveClick(object sender, RoutedEventArgs e)
        {
            if (SaveBtn_IsEnabled)
            {
                CustomerPostModel model = new CustomerPostModel
                {
                    last_name             = LastName,
                    first_name            = FirstName,
                    email                 = Email,
                    phone_number          = PhoneNumber,
                    bluetooth_mac_address = BluetoothMacAddress
                };

                try
                {
                    var customer = await _api.PostCustomerWithRetryAsync(model);

                    if (customer != null)
                    {
                        Views.ShellPage.ShellFrame.Navigate(typeof(Views.CustomersPage), customer);
                    }
                    else
                    {
                        var unknowErrordialog = new Windows.UI.Popups.MessageDialog(
                            "Une erreur est survenue",
                            "Erreur");
                        unknowErrordialog.Commands.Add(new Windows.UI.Popups.UICommand("Fermer")
                        {
                            Id = 0
                        });

                        unknowErrordialog.DefaultCommandIndex = 0;

                        var resultUnknow = await unknowErrordialog.ShowAsync();
                    }
                }
                catch (Exception ex)
                {
                    var dialog = new Windows.UI.Popups.MessageDialog(
                        ex.Message,
                        "Erreur"
                        );
                    dialog.Commands.Add(new Windows.UI.Popups.UICommand("Fermer")
                    {
                        Id = 0
                    });

                    dialog.DefaultCommandIndex = 0;

                    var result = await dialog.ShowAsync();
                }
            }
        }
예제 #2
0
        public async Task <Guid> Create(CustomerPostModel postModel)
        {
            if (postModel == null)
            {
                throw new InvalidArgumentException($"{typeof(CustomerPutModel).Name} was null!");
            }

            var entity = _mapper.Map <Customer>(postModel);
            await _writeOnly.SaveChangesAsync(entity);

            return(entity.Id);
        }
        public void CreateWoodFurnitureRequest(CustomerPostModel model)
        {
            if (string.IsNullOrWhiteSpace(model.FullName))
            {
                throw new System.Exception("Invalid FullName");
            }

            if (model.PhoneNumber.Length != 13)
            {
                throw new System.Exception("Invalid Phone Number");
            }

            var customerModel = _mapper.Map <CustomerModel>(model);

            _customerService.CreateFurnitureRequest(customerModel);
        }
예제 #4
0
        public async Task <CustomerModel> PostCustomerAsync(string token, CustomerPostModel model)
        {
            HttpClient client = this.GetHttpClientToken(token);

            Uri resourceUri = new Uri(_serverUrl + "customers/");

            string jsonObject = "";

            Debug.WriteLine(model);
            jsonObject = JsonConvert.SerializeObject(model);

            Debug.WriteLine("ici");

            var response = await client.PostAsync(resourceUri, new System.Net.Http.StringContent(jsonObject, System.Text.Encoding.UTF8, "application/json"));

            var strResponse = await response.Content.ReadAsStringAsync();

            Debug.WriteLine("Post response");
            Debug.WriteLine(strResponse);

            switch (response.StatusCode)
            {
            case System.Net.HttpStatusCode.Unauthorized:
                throw new AuthorizationException("Wrong token");

            case System.Net.HttpStatusCode.BadRequest:
                throw new Exception(strResponse);

            case System.Net.HttpStatusCode.InternalServerError:
                throw new Exception("Server error");
            }

            Debug.WriteLine(strResponse);
            var need = JsonConvert.DeserializeObject <CustomerModel>(strResponse);

            return(need);
        }
예제 #5
0
        public async Task <CustomerModel> PostCustomerWithRetryAsync(CustomerPostModel model, bool retry = true)
        {
            CustomerModel customer = null;

            try
            {
                customer = await PostCustomerAsync(_token, model);
            }
            catch (AuthorizationException)
            {
                if (retry)
                {
                    await RenewAuthToken();

                    customer = await PostCustomerAsync(_token, model);
                }
                else
                {
                    throw;
                }
            }

            return(customer);
        }
예제 #6
0
        static void Main(string[] args)
        {
            var controllerWoodFurnitureOrder = new WoodFurnitureOrderController();
            var controllerFurnitureType      = new FurnitureTypeController();
            var controllerWoodType           = new WoodTypeController();
            var controllerCustomer           = new CustomerController();
            var controllerEpoxy = new EpoxyController();

            var furnitureType = new FurnitureTypePostModel
            {
                Name    = "Chair",
                Size    = "50x40x45",
                Varnish = true
            };

            try
            {
                controllerFurnitureType.CreateWoodFurnitureRequest(furnitureType);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            var woodType = new WoodTypePostModel
            {
                TypeName       = "Acacia",
                BoardThickness = 10,
                Price          = "50"
            };

            try
            {
                controllerWoodType.CreateWoodFurnitureRequest(woodType);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            var customer = new CustomerPostModel
            {
                FullName    = "Petr Petrov",
                PhoneNumber = "+380951111166"
            };

            try
            {
                controllerCustomer.CreateWoodFurnitureRequest(customer);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            var epoxy = new EpoxyPostModel
            {
                Type  = "Jewelry",
                Price = "80"
            };

            try
            {
                controllerEpoxy.CreateWoodFurnitureRequest(epoxy);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            var modelWoodFurnitureOrder = new CreateWoodFurnitureOrderPostModel
            {
                Date            = DateTime.UtcNow.ToString("dd.MM.yyyy"),
                FurnitureTypeId = 1,
                Color           = "Blue",
                WoodTypeId      = 3,
                FurnitureType   = furnitureType,
                WoodType        = woodType,
                Customer        = customer,
                Epoxy           = epoxy
            };

            controllerWoodFurnitureOrder.CreateWoodFurnitureRequest(modelWoodFurnitureOrder);

            var createWoodFurnitureViewModel = controllerWoodFurnitureOrder.GetItemById(0);

            var AllItems = controllerWoodFurnitureOrder.GetAll();
        }
예제 #7
0
        public async Task <ActionResult <CustomerGetModel> > Create([FromBody] CustomerPostModel model)
        {
            var newGuid = await _employeeService.Create(model);

            return(StatusCode((int)HttpStatusCode.Created, newGuid));
        }