public bool ValidateArrangement(ref string validationMessage)
        {
            if (!TabParent.ForWorkOrder)
            {
                if (String.IsNullOrEmpty(Name.Text))
                {
                    validationMessage += "Please pick a name for this arrangement. \n";
                }
                else
                {
                    ArrangementDTO arrangement = new ArrangementDTO();
                    arrangement.ArrangementId   = arrangementInventoryList[0].ArrangementId;
                    arrangement.ArrangementName = Name.Text;
                    //check for duplication
                    if (!((App)App.Current).ArrangementNameIsNotUnique(arrangement))
                    {
                        validationMessage += "This arrangement name is being used. Please choose another. \n";
                    }
                }
            }

            if (Container.SelectedItem == null)
            {
                validationMessage += "Please pick a Container value. \n";
            }
            else
            {
                int containerVal = (int)((KeyValuePair <long, string>)Container.SelectedItem).Key;

                if (containerVal == 1) // "new container"
                {
                    //if the container chosen is not in inventory, this validation cannot be valid
                    if (notInInventoryList.Count == 0)
                    {
                        //check inventory for an inventory item of type container
                        if (!arrangementInventoryList.Where(a => a.InventoryTypeId == 2).Any())
                        {
                            validationMessage += "Please pick a Container. \n";
                        }
                        else
                        {
                            if (arrangementInventoryList.Where(a => a.InventoryTypeId == 2).Count() > 1)
                            {
                                validationMessage += "An arrangement can have only one container. \n";
                            }
                        }
                    }
                }
                else
                {
                    //make sure CustomerContainerId is not null
                    if (!customerContainerId.HasValue || customerContainerId.Value == 0)
                    {
                        validationMessage += "Please choose the customer container to be used \n";
                    }
                }
            }

            return(String.IsNullOrEmpty(validationMessage) ? true : false);
        }
Ejemplo n.º 2
0
        public GetArrangementResponse()
        {
            Arrangement = new ArrangementDTO();

            Inventory = new InventoryDTO();

            ArrangementList = new List <ArrangementInventoryItemDTO>();

            NotInInventory = new List <NotInInventoryDTO>();

            Images = new List <ImageResponse>();
        }
Ejemplo n.º 3
0
        public ApiResponse ArrangementNameIsNotUnique(ArrangementDTO arrangement)
        {
            ApiResponse response = new ApiResponse();

            if (inventoryManager.ArrangementNameIsnotUnique(arrangement))
            {
                response.AddMessage("ArrangementName", new List <string>()
                {
                    "This arrangement name is in use. Please choose another."
                });
            }

            return(response);
        }
Ejemplo n.º 4
0
        public bool ArrangementNameIsNotUnique(ArrangementDTO arrangement)
        {
            ApiResponse response = new ApiResponse();

            try
            {
                HttpClient client = new HttpClient();
                client.BaseAddress = new Uri(LAN_Address);
                //client.DefaultRequestHeaders.Add("appkey", "myapp_key");
                client.DefaultRequestHeaders.Accept.Add(
                    new MediaTypeWithQualityHeaderValue("application/json"));

                client.DefaultRequestHeaders.Add("EO-Header", User + " : " + Pwd);

                string jsonData = JsonConvert.SerializeObject(arrangement);
                var    content  = new StringContent(jsonData, Encoding.UTF8, "application/json");
                HttpResponseMessage httpResponse = client.PostAsync("api/Login/ArrangementNameIsNotUnique", content).Result;
                if (httpResponse.IsSuccessStatusCode)
                {
                    string strData = httpResponse.Content.ReadAsStringAsync().Result;
                    response = JsonConvert.DeserializeObject <ApiResponse>(strData);
                }
                else
                {
                    List <string> errorMsgs = new List <string>();
                    errorMsgs.Add(httpResponse.ReasonPhrase);
                    response.Messages.Add("ArrangementNameIsUnique", errorMsgs);
                }
            }
            catch (Exception ex)
            {
                Exception ex2 = new Exception("ArrangementNameIsNotUnique", ex);
                LogError(ex2.Message, "arrangementId = " + arrangement.ArrangementId.ToString());
            }

            return(response.Success);
        }
Ejemplo n.º 5
0
 public bool ArrangementNameIsnotUnique(ArrangementDTO arrangement)
 {
     return(persistence.ArrangementNameIsnotUnique(arrangement));
 }
Ejemplo n.º 6
0
        public void AddArrangement()
        {
            long image_id = 0;

            try
            {
                AddArrangementRequest addArrangementRequest = new AddArrangementRequest();

                //save image if the user has selected one
                if (fileStreamContent != null)
                {
                    var url = "http://localhost:9000/api/Login/UploadPlantImage";
                    fileStreamContent.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("form-data")
                    {
                        Name = "file", FileName = fileName
                    };
                    fileStreamContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream");
                    using (var client1 = new HttpClient())
                    {
                        client1.DefaultRequestHeaders.Add("EO-Header", wnd.User + " : " + wnd.Pwd);

                        using (var formData = new MultipartFormDataContent())
                        {
                            formData.Add(fileStreamContent);
                            var    response   = client1.PostAsync(url, formData).Result;
                            string strImageId = response.Content.ReadAsStringAsync().Result;

                            Int64.TryParse(strImageId, out image_id);
                        }
                    }
                }

                String arrangementName = this.ArrangementName.Text;

                //KeyValuePair<long, string> serviceCode = (KeyValuePair<long, string>)this.ServiceCodes.SelectedValue;

                ArrangementDTO aDTO = new ArrangementDTO();
                aDTO.ArrangementName = arrangementName;
                addArrangementRequest.Arrangement = aDTO;

                InventoryDTO iDTO = new InventoryDTO();
                iDTO.InventoryName   = arrangementName;
                iDTO.InventoryTypeId = 3; //"Arrangements"
                //iDTO.ServiceCodeId = serviceCode.Key;

                foreach (ArrangementInventoryItemDTO ai in arrangementInventoryList)
                {
                    addArrangementRequest.InventoryIds.Add(ai.InventoryId);
                }

                addArrangementRequest.Arrangement = aDTO;
                addArrangementRequest.Inventory   = iDTO;
                if (image_id > 0)
                {
                    addArrangementRequest.ImageId = image_id;
                }

                HttpClient client = new HttpClient();
                client.BaseAddress = new Uri("http://localhost:9000/");
                //client.DefaultRequestHeaders.Add("appkey", "myapp_key");
                client.DefaultRequestHeaders.Accept.Add(
                    new MediaTypeWithQualityHeaderValue("application/json"));

                client.DefaultRequestHeaders.Add("EO-Header", wnd.User + " : " + wnd.Pwd);

                string jsonData = JsonConvert.SerializeObject(addArrangementRequest);
                var    content  = new StringContent(jsonData, Encoding.UTF8, "application/json");
                HttpResponseMessage httpResponse = client.PostAsync("api/Login/AddArrangement", content).Result;
                if (httpResponse.IsSuccessStatusCode)
                {
                    Reload();
                }
                else
                {
                    MessageBox.Show("Error adding arrangement");
                }
            }
            catch (Exception ex)
            {
            }
        }