private async void PaymentDetail_Clicked(object sender, EventArgs e) { Button b = sender as Button; if (b != null) { try { WorkOrderResponse workOrder = (WorkOrderResponse)b.CommandParameter; if (workOrder != null) { if (!PageExists(typeof(PaymentPage))) { WorkOrderPaymentDTO payment = await((App)App.Current).GetWorkOrderPayment(workOrder.WorkOrder.WorkOrderId); if (payment.WorkOrderPaymentId > 0) { Navigation.PushAsync(new PaymentPage(workOrder, payment)); } else { DisplayAlert("Unpaid", "This work order has not been paid.", "Ok"); } } } } catch (Exception ex) { } } }
public async Task <WorkOrderResponse> GetWorkOrder(long workOrderId) { GenericGetRequest request = new GenericGetRequest("GetWorkOrder", "workOrderId", workOrderId); WorkOrderResponse response = await GetRequest <WorkOrderResponse>(request); return(response); }
private void MakePayment(bool saveSuccessful) { Dispatcher.Invoke(() => { MainWindow wnd = Application.Current.MainWindow as MainWindow; if (saveSuccessful) // else AddWorkOrder has put a up a msg box { WorkOrderResponse wor = new WorkOrderResponse(); wor.WorkOrder = currentWorkOrder.WorkOrder; wor.WorkOrderList = currentWorkOrder.WorkOrderList; wor.NotInInventory = currentWorkOrder.NotInInventory; List <GetArrangementResponse> arrangementResponseList = new List <GetArrangementResponse>(); foreach (AddArrangementRequest aar in arrangementList) { GetArrangementResponse getArrangement = new GetArrangementResponse(); getArrangement.ArrangementList = aar.ArrangementInventory; getArrangement.NotInInventory = aar.NotInInventory; arrangementResponseList.Add(getArrangement); } wor.Arrangements = arrangementResponseList; PaymentPage paymentPage = new PaymentPage(wor, Customer); wnd.NavigationStack.Push(paymentPage); wnd.MainContent.Content = new Frame() { Content = paymentPage }; } }); }
public async void GetWorkOrderDetail() { WorkOrderResponse request = new WorkOrderResponse(); request.WorkOrderList = currentWorkOrder.WorkOrderList; request.NotInInventory = currentWorkOrder.NotInInventory; request.Arrangements = currentWorkOrder.Arrangements; ((App)App.Current).PostRequest <WorkOrderResponse, GetWorkOrderSalesDetailResponse>("GetWorkOrderDetail", request).ContinueWith(a => DetailLoaded(a.Result)); }
private void BuyerLoaded(GetPersonResponse response) { buyer = response.PersonAndAddress; WorkOrderResponse request = new WorkOrderResponse(); request.WorkOrderList = workOrder.WorkOrderList; request.NotInInventory = workOrder.NotInInventory; request.Arrangements = workOrder.Arrangements; ((App)App.Current).PostRequest <WorkOrderResponse, GetWorkOrderSalesDetailResponse>("GetWorkOrderDetail", request).ContinueWith(a => WorkOrderDetailLoaded(a.Result)); }
private void WorkOrderPricesLoaded(WorkOrderResponse workOrder, WorkOrderPaymentDTO payment, GetWorkOrderPriceResponse workOrderPriceResponse) { EmailHelpers emailHelper = new EmailHelpers(); EOMailMessage mailMessage = new EOMailMessage(); string emailHtml = emailHelper.ComposeReceipt(workOrder, payment, workOrderPriceResponse); mailMessage = new EOMailMessage("*****@*****.**", buyer[0].Person.email, "Elegant Orchids Receipt", emailHtml, "Orchids@5185"); Email.SendEmail(mailMessage); }
public void ShowInventory_Clicked(object sender, EventArgs e) { Button b = sender as Button; if (b != null) { long workOrderId = (long)b.CommandParameter; if (workOrderId > 0) { WorkOrderResponse r = workOrderList.Where(a => a.WorkOrder.WorkOrderId == workOrderId).First(); ObservableCollection <WorkOrderViewModel> list1 = new ObservableCollection <WorkOrderViewModel>(); foreach (WorkOrderInventoryMapDTO wor in r.WorkOrderList) { list1.Add(new WorkOrderViewModel(wor)); } foreach (NotInInventoryDTO nii in r.NotInInventory) { list1.Add(new WorkOrderViewModel(nii)); } foreach (GetArrangementResponse arrangement in r.Arrangements) { list1.Add(new WorkOrderViewModel()); //blank line list1.Add(new WorkOrderViewModel() //"header" { InventoryName = "Arrangement" }); foreach (ArrangementInventoryItemDTO ai in arrangement.ArrangementList) { list1.Add(new WorkOrderViewModel(ai, r.WorkOrder.WorkOrderId)); } foreach (NotInInventoryDTO anii in arrangement.NotInInventory) { list1.Add(new WorkOrderViewModel(anii)); } list1.Add(new WorkOrderViewModel()); //blank line } InventoryList.ItemsSource = list1; } } }
public async Task <IActionResult> Get(int id) { _diagnosticContext.SetWorkOrderId(id); try { WorkOrderResponse workOrderResponse = await _getWorkOrderUseCase.Execute(id); return(Ok(workOrderResponse)); } catch (ResourceNotFoundException ex) { return(NotFound(ex.Message)); } }
private void WorkOrderLoaded(WorkOrderResponse response) { if (response.WorkOrder.CustomerId != 0) { workOrder = response; GetPersonRequest personRequest = new GetPersonRequest() { PersonId = workOrder.WorkOrder.CustomerId }; ((App)App.Current).GetCustomers(personRequest).ContinueWith(a => BuyerLoaded(a.Result)); } }
private async void PaymentDetail_Click(object sender, RoutedEventArgs e) { //if paid - load payment page with detail Button b = sender as Button; if (b != null) { WorkOrderResponse workOrder = (WorkOrderResponse)b.CommandParameter; if (workOrder != null && workOrder.WorkOrder != null && workOrder.WorkOrder.WorkOrderId > 0) { GenericGetRequest request = new GenericGetRequest("GetWorkOrderPayment", "workOrderId", workOrder.WorkOrder.WorkOrderId); WorkOrderPaymentDTO payment = await((App)App.Current).GetRequest <WorkOrderPaymentDTO>(request); PaymentDetailLoaded(payment, workOrder); } } }
private void WorkOrderLoaded(WorkOrderResponse response) { workOrder = response; foreach (var x in workOrder.WorkOrderList) { siteServiceInventoryList.Add(new WorkOrderInventoryItemDTO() { WorkOrderId = x.WorkOrderId, InventoryId = x.InventoryId, InventoryName = x.InventoryName, Quantity = x.Quantity, Size = x.Size }); } ObservableCollection <WorkOrderInventoryItemDTO> list1 = new ObservableCollection <WorkOrderInventoryItemDTO>(siteServiceInventoryList); Device.BeginInvokeOnMainThread(() => { currentSiteServiceId = workOrder.WorkOrder.WorkOrderId; Customer.Text = workOrder.WorkOrder.Buyer; customerId = workOrder.WorkOrder.CustomerId; DeliveryDate.Date = workOrder.WorkOrder.DeliveryDate; SiteServiceInventoryItemsListView.ItemsSource = list1; foreach (WorkOrderImageMapDTO imgData in workOrder.ImageMap) { imageData.Add(new EOImgData() { ImageId = imgData.ImageId, imgData = imgData.ImageData }); } CreatedBy.SelectedIndex = ((App)App.Current).GetPickerIndex(CreatedBy, workOrder.WorkOrder.SellerId); ServicedBy.SelectedIndex = ((App)App.Current).GetPickerIndex(ServicedBy, workOrder.WorkOrder.DeliveryUserId); }); }
public WorkOrderResponse SaveWorkOrder(WorkOrderRequest workOrderRequest) { var response = new WorkOrderResponse(); var validations = this.workOrderManager.ValidateWorkOrder(workOrderRequest); if (validations.Count > 0) { response.ValidationErrors = validations; response.Status = Status.FAILED_SAVING_ORDER; } else { databaseManager.AddWorkDetails(workOrderRequest.WorkOrderDetails); response.Status = Status.SAVED_SUCCESS; } return(response); }
private List <WorkOrderInventoryDTO> GetWorkOrders() { List <WorkOrderInventoryDTO> workOrders = new List <WorkOrderInventoryDTO>(); try { WorkOrderListFilter filter = new WorkOrderListFilter(); filter.FromDate = this.FromDatePicker.SelectedDate.Value; filter.ToDate = this.ToDatePicker.SelectedDate.Value; HttpClient client = new HttpClient(); client.BaseAddress = new Uri("http://localhost:9000/"); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Add("EO-Header", wnd.User + " : " + wnd.Pwd); string jsonData = JsonConvert.SerializeObject(filter); var content = new StringContent(jsonData, Encoding.UTF8, "application/json"); HttpResponseMessage httpResponse = client.PostAsync("api/Login/GetWorkOrders", content).Result; if (httpResponse.IsSuccessStatusCode) { Stream streamData = httpResponse.Content.ReadAsStreamAsync().Result; StreamReader strReader = new StreamReader(streamData); string strData = strReader.ReadToEnd(); strReader.Close(); WorkOrderResponse response = JsonConvert.DeserializeObject <WorkOrderResponse>(strData); workOrders = response.WorkOrderList; } else { MessageBox.Show("There was an error retreiving Work Orders"); } } catch (Exception ex) { } return(workOrders); }
private void ShowWorkOrderItems_Clicked(object sender, RoutedEventArgs e) { Button b = sender as Button; ObservableCollection <WorkOrderViewModel> list1 = new ObservableCollection <WorkOrderViewModel>(); WorkOrderResponse r = b.CommandParameter as WorkOrderResponse; foreach (WorkOrderInventoryMapDTO wor in r.WorkOrderList) { list1.Add(new WorkOrderViewModel(wor)); } foreach (NotInInventoryDTO nii in r.NotInInventory) { list1.Add(new WorkOrderViewModel(nii)); } foreach (GetArrangementResponse arrangement in r.Arrangements) { list1.Add(new WorkOrderViewModel()); list1.Add(new WorkOrderViewModel() { InventoryName = "Arrangement" }); foreach (ArrangementInventoryItemDTO ai in arrangement.ArrangementList) { list1.Add(new WorkOrderViewModel(ai, r.WorkOrder.WorkOrderId)); } foreach (NotInInventoryDTO anii in arrangement.NotInInventory) { list1.Add(new WorkOrderViewModel(anii)); } list1.Add(new WorkOrderViewModel()); } WorkOrderDetailListView.ItemsSource = list1; }
void PaymentDetailLoaded(WorkOrderPaymentDTO payment, WorkOrderResponse workOrder) { Dispatcher.Invoke(() => { if (payment != null && payment.WorkOrderPaymentId > 0) { MainWindow wnd = Application.Current.MainWindow as MainWindow; PaymentPage paymentPage = new PaymentPage(workOrder, payment); wnd.NavigationStack.Push(paymentPage); wnd.MainContent.Content = new Frame() { Content = paymentPage }; } else { MessageBox.Show(Application.Current.MainWindow, "Work Order has not been paid.", "OK", MessageBoxButton.OK); } }); }
private void EditWorkOrder_Click(object sender, RoutedEventArgs e) { Button b = sender as Button; if (b != null) { //the button's command parmeter is a WoorkOrderResponse object WorkOrderResponse response = (WorkOrderResponse)b.CommandParameter; if (response != null) { //navigate to the Work Order page and load this selection MainWindow wnd = Application.Current.MainWindow as MainWindow; WorkOrderPage workOrderPage = new WorkOrderPage(response); wnd.NavigationStack.Push(workOrderPage); wnd.MainContent.Content = new Frame() { Content = workOrderPage }; } } }
public async Task <GetWorkOrderSalesDetailResponse> GetWorkOrderDetail() { WorkOrderResponse request = new WorkOrderResponse(); request.WorkOrderList = currentWorkOrder.WorkOrderList; request.NotInInventory = currentWorkOrder.NotInInventory; List <GetArrangementResponse> arrangementResponseList = new List <GetArrangementResponse>(); foreach (AddArrangementRequest aar in arrangementList) { GetArrangementResponse getArrangement = new GetArrangementResponse(); getArrangement.ArrangementList = aar.ArrangementInventory; getArrangement.NotInInventory = aar.NotInInventory; arrangementResponseList.Add(getArrangement); } request.Arrangements = arrangementResponseList; GetWorkOrderSalesDetailResponse response = await((App)App.Current).PostRequest <WorkOrderResponse, GetWorkOrderSalesDetailResponse>("GetWorkOrderDetail", request); return(response); }
public WorkOrderPage(WorkOrderResponse workOrderResponse) : this() { currentWorkOrder = workOrderResponse; arrangementList = workOrderResponse.ArrangementRequestList(); if (currentWorkOrder.WorkOrder.WorkOrderId <= 0) { PayButton.IsEnabled = false; } else { PayButton.IsEnabled = true; SaveButton.IsEnabled = true; if (currentWorkOrder.WorkOrder.Paid) { PayButton.IsEnabled = false; SaveButton.IsEnabled = false; } } LoadCustomer(); }
public string ComposeReceipt(WorkOrderResponse workOrder, WorkOrderPaymentDTO payment) { string receiptHtml = String.Empty; receiptHtml = "<div>" + "<h2><center>Elegant Orchids </center></h2> <br>" + "<center> 5185 Conklin Drive Delray Beach fl 33484 </center> <br><br>" + "Order Placed: " + workOrder.WorkOrder.CreateDate.ToShortDateString() + "<br>" + "Order # " + workOrder.WorkOrder.WorkOrderId.ToString() + "<br>" + "Order Total: " + String.Format("Order Total: {0:C}", payment.WorkOrderPaymentAmount) + "<br>" + "<br>" + "<div style='border:1px; solid; black'>" + "<div style='display: inline-block'> Order Detail</div>" + "<div style='border:1px solid; black; text-align: center'>"; receiptHtml += "<div style = 'display: inline-block'>"; foreach (WorkOrderInventoryMapDTO inventoryMap in workOrder.WorkOrderList) { receiptHtml += inventoryMap.Quantity.ToString() + " " + inventoryMap.InventoryName + " " + inventoryMap.Size + "<br>"; } foreach (NotInInventoryDTO notInInventory in workOrder.NotInInventory) { receiptHtml += notInInventory.NotInInventoryQuantity.ToString() + " " + notInInventory.NotInInventoryName + " " + notInInventory.NotInInventorySize + "<br>"; } foreach (GetArrangementResponse a in workOrder.Arrangements) { receiptHtml += "<br> Arrangement <br>"; foreach (ArrangementInventoryItemDTO b in a.ArrangementList) { receiptHtml += b.Quantity.ToString() + " " + b.InventoryName + " " + b.Size + "<br>"; } foreach (NotInInventoryDTO notInInventory in a.NotInInventory) { receiptHtml += notInInventory.NotInInventoryQuantity.ToString() + " " + notInInventory.NotInInventoryName + " " + notInInventory.NotInInventorySize + "<br>"; } receiptHtml += "<br>"; } receiptHtml += "</div>"; receiptHtml += "<div style='border:1px solid; black;'>" + "<div>" + "</div>" + "<div>" + "</div>" + "</div> <br>"; if (workOrder.WorkOrder.DeliveryType == 2) { receiptHtml += "<br>" + "<div style='border:1px; solid; black'>" + "<div style='border:1px solid; black; text-align: center'>" + "<div style='display: inline-block'> Delivery Detail</div>" + "</div>" + "<div style='border:1px solid; black;'>" + "<div>" + "</div>" + "<div>" + "</div>" + "</div>" + "</div> <br>"; } receiptHtml += "<br>" + "<div style='border:1px; solid; black'>" + "<div style='border:1px solid; black; text-align: center'>" + "<div style='display: inline-block'> Payment Detail</div>" + "</div>" + "<div style='border:1px solid; black;'>" + "<div>" + "</div>" + "<div>" + "</div>" + "</div>" + "</div>"; if (payment.WorkOrderPaymentType == 2) { receiptHtml += "<div style='border:1px; solid; black'>" + "<div style='border:1px solid; black; text-align: center'>" + "<div style='display: inline-block'> Credit Card Payment Detail</div>" + "</div>" + "<div style='border:1px solid; black;'>" + "<div>" + "</div>" + "<div>" + "</div>" + "</div>" + "</div>"; } receiptHtml += "</div>"; receiptHtml += "<h2><center> Thank you for your business </center></h2>"; return(receiptHtml); }
public PaymentPage(WorkOrderResponse workOrder, WorkOrderPaymentDTO payment) : this() { SetPaymentData(payment); }
public GetWorkOrderSalesDetailResponse GetWorkOrderDetail(WorkOrderResponse request) { return(persistence.GetWorkOrderDetail(request)); }
public PaymentPage(WorkOrderResponse workOrder, WorkOrderPaymentDTO payment) : this() { currentWorkOrder = workOrder; Customer.Person = new PersonDTO(); SetWorkOrderDetail(payment); }
private void WorkOrderLoaded(WorkOrderResponse workOrderResponse) { currentWorkOrderId = workOrderResponse.WorkOrder.WorkOrderId; ((App)App.Current).GetWorkOrderPayment(currentWorkOrderId).ContinueWith(a => WorkOrderPaymentLoaded(workOrderResponse, a.Result)); }
//Load and possibly convert data into relevant data lists private void WorkOrderPaymentLoaded(WorkOrderResponse workOrder, WorkOrderPaymentDTO payment) { Device.BeginInvokeOnMainThread(() => { currentWorkOrderId = workOrder.WorkOrder.WorkOrderId; searchedForPerson = new PersonAndAddressDTO(); searchedForPerson.Person.person_id = workOrder.WorkOrder.CustomerId; customerId = searchedForPerson.Person.person_id; currentWorkOrderPaymentId = payment.WorkOrderPaymentId; if (currentWorkOrderPaymentId == 0) { Save.IsEnabled = true; Payment.IsEnabled = true; } else { if (workOrder.WorkOrder.Paid) { InventoryItemsListView.IsEnabled = false; Save.IsEnabled = false; Payment.IsEnabled = false; AddInventory.IsEnabled = false; } else { Save.IsEnabled = true; if (workOrder.WorkOrderList.Count == 0) { Payment.IsEnabled = false; } else { Payment.IsEnabled = true; } } } Buyer.Text = workOrder.WorkOrder.Buyer; sellerId = workOrder.WorkOrder.SellerId; Seller.SelectedIndex = ((App)App.Current).GetPickerIndex(Seller, workOrder.WorkOrder.SellerId); DeliveryType.SelectedIndex = workOrder.WorkOrder.DeliveryType; deliveryUserId = workOrder.WorkOrder.DeliveryUserId; DeliveryPerson.SelectedIndex = ((App)App.Current).GetPickerIndex(DeliveryPerson, workOrder.WorkOrder.DeliveryUserId); DeliveryDate.Date = workOrder.WorkOrder.DeliveryDate; deliveryRecipientId = workOrder.WorkOrder.DeliveryRecipientId; DeliverTo.Text = workOrder.WorkOrder.DeliverTo; WorkOrderDate.Date = workOrder.WorkOrder.CreateDate; workOrderList.Clear(); notInInventory = workOrder.NotInInventory; //convert between duplicate types - refactor foreach (var x in workOrder.WorkOrderList) { WorkOrderInventoryItemDTO dto = new WorkOrderInventoryItemDTO() { WorkOrderId = x.WorkOrderId, InventoryId = x.InventoryId, InventoryName = x.InventoryName, Quantity = x.Quantity, Size = x.Size, GroupId = x.GroupId }; workOrderInventoryList.Add(dto); } foreach (GetArrangementResponse ar in workOrder.Arrangements) { AddArrangementRequest aaReq = new AddArrangementRequest(); aaReq.Arrangement = ar.Arrangement; aaReq.Inventory = ar.Inventory; aaReq.ArrangementInventory = ar.ArrangementList; aaReq.GroupId = ar.Arrangement.ArrangementId; aaReq.NotInInventory = ar.NotInInventory; arrangementList.Add(aaReq); } RedrawInventoryList(); }); }
public GetWorkOrderSalesDetailResponse GetWorkOrderDetail(WorkOrderResponse request) { return(inventoryManager.GetWorkOrderDetail(request)); }
public PaymentPage(WorkOrderResponse workOrder, PersonDTO customer) : this() { currentWorkOrder = workOrder; Customer.Person = customer; GetWorkOrderDetail(); }