Exemple #1
0
        public ApiResponse AddWorkOrder(AddWorkOrderRequest workOrderRequest)
        {
            ApiResponse response = new ApiResponse();

            response.Id = inventoryManager.AddWorkOrder(workOrderRequest);
            return(response);
        }
Exemple #2
0
        public long AddWorkOrder(AddWorkOrderRequest request)
        {
            long newWorkOrderId = 0;

            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(request);
                var    content  = new StringContent(jsonData, Encoding.UTF8, "application/json");
                HttpResponseMessage httpResponse = client.PostAsync("api/Login/AddWorkOrder", content).Result;
                if (httpResponse.IsSuccessStatusCode)
                {
                    string      strData  = httpResponse.Content.ReadAsStringAsync().Result;
                    ApiResponse response = JsonConvert.DeserializeObject <ApiResponse>(strData);
                    newWorkOrderId = response.Id;
                }
            }
            catch (Exception ex)
            {
                Exception ex2 = new Exception("AddWorkOrder", ex);
                LogError(ex2.Message, JsonConvert.SerializeObject(request));
            }

            return(newWorkOrderId);
        }
Exemple #3
0
 public long AddWorkOrder(AddWorkOrderRequest workOrderRequest)
 {
     if (workOrderRequest.WorkOrder.WorkOrderId <= 0)
     {
         return(persistence.AddWorkOrder(workOrderRequest));
     }
     else
     {
         return(persistence.UpdateWorkOrder(workOrderRequest));
     }
 }
Exemple #4
0
        public async Task <bool> AddWorkOrder(bool showMsgBox = true)
        {
            bool result = false;

            AddWorkOrderRequest addWorkOrderRequest = new AddWorkOrderRequest();

            try
            {
                if (!currentWorkOrder.WorkOrder.IsCancelled && !currentWorkOrder.WorkOrder.Paid)
                {
                    currentWorkOrder.WorkOrder.Buyer      = Buyer.Text;
                    currentWorkOrder.WorkOrder.Seller     = Seller.Text;
                    currentWorkOrder.WorkOrder.CreateDate = DateTime.Now;
                    currentWorkOrder.WorkOrder.Comments   = CommentsTextBox.Text;

                    if (Customer != null && Customer.person_id != 0)
                    {
                        currentWorkOrder.WorkOrder.CustomerId = Customer.person_id;
                    }

                    currentWorkOrder.WorkOrder.OrderType    = Convert.ToInt32(OrderType.SelectedItem != null ? ((KeyValuePair <long, string>)OrderType.SelectedItem).Key : 1);
                    currentWorkOrder.WorkOrder.DeliveryType = Convert.ToInt32(DeliveryType.SelectedItem != null ? ((KeyValuePair <long, string>)DeliveryType.SelectedItem).Key : 1);
                    if (currentWorkOrder.WorkOrder.DeliveryType > 1)
                    {
                        currentWorkOrder.WorkOrder.IsDelivery = true;
                    }

                    currentWorkOrder.WorkOrder.DeliveredBy  = DeliveryPerson.SelectedItem != null ? ((KeyValuePair <long, string>)DeliveryPerson.SelectedItem).Value : String.Empty;
                    currentWorkOrder.WorkOrder.DeliveryDate = DeliveryDate.SelectedDate.HasValue ? DeliveryDate.SelectedDate.Value : DateTime.MinValue;
                    if (!currentWorkOrder.WorkOrder.IsDelivery)
                    {
                        currentWorkOrder.WorkOrder.DeliveryDate = PickupDate.SelectedDate.HasValue ? PickupDate.SelectedDate.Value : DateTime.MinValue;
                    }

                    addWorkOrderRequest.WorkOrder             = currentWorkOrder.WorkOrder;
                    addWorkOrderRequest.WorkOrderInventoryMap = currentWorkOrder.WorkOrderList;
                    addWorkOrderRequest.NotInInventory        = currentWorkOrder.NotInInventory;
                    addWorkOrderRequest.Arrangements          = arrangementList;

                    ApiResponse response = await((App)App.Current).PostRequest <AddWorkOrderRequest, ApiResponse>("AddWorkOrder", addWorkOrderRequest);

                    if (response.Id == 0 || !response.Success)
                    {
                        MessageBox.Show(wnd, "Error adding Work Order", "Error", MessageBoxButton.OK);
                    }
                    else
                    {
                        if (showMsgBox)
                        {
                            MessageBox.Show(wnd, "Work Order saved", "Success", MessageBoxButton.OK);
                        }

                        currentWorkOrder.WorkOrder.WorkOrderId = response.Id;
                        PayButton.IsEnabled = true;
                        result = true;
                    }
                }
            }
            catch (Exception ex)
            {
                ((App)App.Current).LogError(ex.Message, JsonConvert.SerializeObject(addWorkOrderRequest));
            }

            return(result);
        }
        public bool AddWorkOrder(bool displayAlert = true)
        {
            bool result = false;

            AddWorkOrderRequest addWorkOrderRequest = new AddWorkOrderRequest();

            WorkOrderDTO dto = new WorkOrderDTO()
            {
                WorkOrderId         = currentWorkOrderId,
                Seller              = ((KeyValuePair <long, string>) this.Seller.SelectedItem).Value,
                Buyer               = this.Buyer.Text,
                CreateDate          = DateTime.Now,
                DeliveryDate        = this.DeliveryDate.Date,
                Comments            = this.Comments.Text,
                IsSiteService       = this.DeliveryType.SelectedIndex == 2 ? true : false,
                IsDelivery          = this.DeliveryType.SelectedIndex == 0 ? false : true,
                DeliveryType        = this.DeliveryType.SelectedIndex,
                Paid                = false,
                IsCancelled         = false,
                CustomerId          = customerId,
                SellerId            = ((KeyValuePair <long, string>) this.Seller.SelectedItem).Key,
                DeliverTo           = DeliverTo.Text,
                DeliveryRecipientId = deliveryRecipientId,
                OrderType           = OrderType.SelectedIndex,
                DeliveryUserId      = this.DeliveryPerson.SelectedItem != null ? ((KeyValuePair <long, string>) this.DeliveryPerson.SelectedItem).Key : 0
            };

            addWorkOrderRequest.NotInInventory = notInInventory;

            List <WorkOrderInventoryMapDTO> workOrderInventoryMap = new List <WorkOrderInventoryMapDTO>();


            foreach (WorkOrderInventoryItemDTO woii in workOrderInventoryList)
            {
                WorkOrderViewModel wovm = null;
                if (((ObservableCollection <WorkOrderViewModel>)InventoryItemsListView.ItemsSource).Where(a => a.InventoryId == woii.InventoryId).Any())
                {
                    wovm = ((ObservableCollection <WorkOrderViewModel>)InventoryItemsListView.ItemsSource).Where(a => a.InventoryId == woii.InventoryId).First();
                }

                workOrderInventoryMap.Add(new WorkOrderInventoryMapDTO()
                {
                    WorkOrderId   = currentWorkOrderId,
                    InventoryId   = woii.InventoryId,
                    InventoryName = woii.InventoryName,
                    //Quantity = woii.Quantity,
                    Quantity = wovm != null ? wovm.Quantity : 1,
                    GroupId  = woii.GroupId,
                    Size     = woii.Size,
                });
            }

            addWorkOrderRequest.WorkOrder             = dto;
            addWorkOrderRequest.WorkOrderInventoryMap = workOrderInventoryMap.Where(a => a.GroupId == 0).ToList();

            foreach (NotInInventoryDTO notIn in notInInventory)
            {
                WorkOrderViewModel wovm = null;

                if (((ObservableCollection <WorkOrderViewModel>)InventoryItemsListView.ItemsSource).Where(a => a.NotInInventoryId == notIn.NotInInventoryId).Any())
                {
                    wovm = ((ObservableCollection <WorkOrderViewModel>)InventoryItemsListView.ItemsSource).Where(a => a.NotInInventoryId == notIn.NotInInventoryId).First();
                }

                if (wovm != null)
                {
                    notIn.NotInInventoryQuantity = wovm.Quantity;
                }
            }

            addWorkOrderRequest.NotInInventory = notInInventory;

            addWorkOrderRequest.Arrangements = arrangementList;

            currentWorkOrderId = ((App)App.Current).AddWorkOrder(addWorkOrderRequest);

            if (currentWorkOrderId > 0)
            {
                result = true;

                //add any images
                List <EOImgData> imageData = ((App)App.Current).GetImageData();

                if (imageData.Count > 0)
                {
                    foreach (EOImgData img in imageData)
                    {
                        AddWorkOrderImageRequest request = new AddWorkOrderImageRequest()
                        {
                            WorkOrderId = currentWorkOrderId,
                            ImageId     = img.ImageId,
                            Image       = img.imgData
                        };

                        ((App)App.Current).AddWorkOrderImage(request);
                    }
                }

                Save.IsEnabled    = false;
                Payment.IsEnabled = true;

                if (displayAlert)
                {
                    DisplayAlert("Success", "WorkOrder Saved!", "OK");
                }
            }
            else
            {
                if (displayAlert)
                {
                    DisplayAlert("Error", "There was an error saving this work order.", "Ok");
                }
            }

            return(result);
        }
        public void AddWorkOrder()
        {
            try
            {
                AddWorkOrderRequest addWorkOrderRequest = new AddWorkOrderRequest();

                WorkOrderDTO dto = new WorkOrderDTO()
                {
                    Seller     = this.SellerTextBox.Text,
                    Buyer      = this.BuyerTextBox.Text,
                    CreateDate = DateTime.Now,
                    Comments   = this.CommentsTextBox.Text
                };

                foreach (WorkOrderInventoryItemDTO woii in workOrderInventoryList)
                {
                    workOrderInventoryMap.Add(new WorkOrderInventoryMapDTO()
                    {
                        InventoryId   = woii.InventoryId,
                        InventoryName = woii.InventoryName,
                        Quantity      = woii.Quantity
                    });
                }

                addWorkOrderRequest.WorkOrder             = dto;
                addWorkOrderRequest.WorkOrderInventoryMap = workOrderInventoryMap;

                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(addWorkOrderRequest);
                var    content  = new StringContent(jsonData, Encoding.UTF8, "application/json");
                HttpResponseMessage httpResponse = client.PostAsync("api/Login/AddWorkOrder", content).Result;
                if (httpResponse.IsSuccessStatusCode)
                {
                    Stream       streamData = httpResponse.Content.ReadAsStreamAsync().Result;
                    StreamReader strReader  = new StreamReader(streamData);
                    string       strData    = strReader.ReadToEnd();
                    strReader.Close();
                    ApiResponse apiResponse = JsonConvert.DeserializeObject <ApiResponse>(strData);

                    if (apiResponse.Messages.Count > 0)
                    {
                        StringBuilder sb = new StringBuilder();
                        foreach (KeyValuePair <string, List <string> > messages in apiResponse.Messages)
                        {
                            foreach (string msg in messages.Value)
                            {
                                sb.AppendLine(msg);
                            }
                        }

                        MessageBox.Show(sb.ToString());
                    }
                    else
                    {
                        this.WorkOrderInventoryListView.ItemsSource = null;
                    }
                }
                else
                {
                    MessageBox.Show("Error adding Work Order");
                }
            }
            catch (Exception ex)
            {
            }
        }
        public void AddWorkOrder()
        {
            AddWorkOrderRequest addWorkOrderRequest = new AddWorkOrderRequest();

            WorkOrderDTO dto = new WorkOrderDTO()
            {
                WorkOrderId    = currentSiteServiceId,
                SellerId       = ((KeyValuePair <long, string>) this.CreatedBy.SelectedItem).Key,
                Seller         = ((KeyValuePair <long, string>) this.CreatedBy.SelectedItem).Value,
                Buyer          = this.Customer.Text,
                DeliveredBy    = ((KeyValuePair <long, string>)ServicedBy.SelectedItem).Value,
                CustomerId     = customerId,
                CreateDate     = DateTime.Now,
                Comments       = this.Comments.Text,
                DeliveryUserId = ((KeyValuePair <long, string>) this.ServicedBy.SelectedItem).Key,
                IsSiteService  = true,
                DeliveryDate   = DeliveryDate.Date
            };

            List <WorkOrderInventoryMapDTO> workOrderInventoryMap = new List <WorkOrderInventoryMapDTO>();

            foreach (WorkOrderInventoryItemDTO woii in siteServiceInventoryList)
            {
                workOrderInventoryMap.Add(new WorkOrderInventoryMapDTO()
                {
                    WorkOrderId   = currentSiteServiceId,
                    InventoryId   = woii.InventoryId,
                    InventoryName = woii.InventoryName,
                    Quantity      = woii.Quantity
                });
            }

            List <EOImageSource> imgSource = TabParent.GetImages();

            foreach (EOImageSource img in imgSource)
            {
                addWorkOrderRequest.ImageMap.Add(new WorkOrderImageMapDTO()
                {
                    WorkOrderId = currentSiteServiceId,
                    ImageId     = img.ImageId,
                    ImageData   = img.Image
                });
            }

            addWorkOrderRequest.WorkOrder             = dto;
            addWorkOrderRequest.WorkOrderInventoryMap = workOrderInventoryMap;

            long newWorkOrderId = ((App)App.Current).AddWorkOrder(addWorkOrderRequest);

            if (newWorkOrderId > 0)
            {
                //imageData.Clear();
                //((App)App.Current).ClearImageData();
                //this.siteServiceInventoryList.Clear();
                //this.SiteServiceInventoryItemsListView.ItemsSource = null;
                if (!workOrder.WorkOrder.Paid)
                {
                    Pay.IsEnabled = true;
                }
            }
            else
            {
                //DisplayAlert(?)
            }
        }