private void IssueToNextJob(JobOrder jOrder, ObservableCollection<JobOrderType> orderTypes) { if (jOrder != null && jOrder.ValidateIssueAndReceiptDetails()) { IssueNextJob(jOrder, orderTypes); } }
public IssueToPopupBox() { InitializeComponent(); JobOrder = new JobOrder(); this.JobOrder.RequiredDateWrapper = DateTime.Now; }
public bool SendForSpecialApproval(JobOrder jOrder) { bool res = false; jOrder.IsWaitingForApproval = true; res = Save(); if (res) jOrder.Refresh(); return res; }
public IssueToPopupBox(JobOrder jOrder) : this() { JobOrder = jOrder; JobOrder.RequiredDateWrapper = DateTime.Now; materialName.Text = jOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.Name; quantity.Text = jOrder.JobQuantity.ToString(); issueToComboBox.SelectedItem = jOrder.JobOrderTypeWrapper; issueToComboBox.IsHitTestVisible = false; supplierComboBox.SelectedItem = jOrder.Supplier; supplierComboBox.IsHitTestVisible = false; }
public KnittingJoViewModel(Order order, decimal quantity, GRNReciept reciept, bool jobOrderIssued, JobOrder parentJO) { this.Order = order; JO = new KnittingJO(); JO.Order = order; JO.QuoteDate = order.OrderDate; JO.JoDate = DBResources.Instance.GetServerTime(); JO.JobOrder = parentJO; JO.GRNReciept = reciept; JO.JoNoWrapper = "K" + (DBResources.Instance.Context.KnittingJOes.Count() + 1).ToString(); JO.Add(); }
public DyeingJoViewModel(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept reciept, bool jobOrderIssued, JobOrder parentJo) { this.Order = order; JO = new DyeingJO(); JO.Order = order; JO.QuoteDate = order.OrderDate; JO.JODate = DBResources.Instance.GetServerTime(); JO.PurchaseOrder = po; JO.GRNRefNo = grnRefNo; JO.GRNReciept = reciept; JO.JobOrder = parentJo; JO.JoNo = "D" + (DBResources.Instance.Context.DyeingJOes.Count() + 1).ToString(); JO.Add(); }
public IssueToPopupBox(JobOrder jOrder, ObservableCollection<JobOrderType> nextJobTypes, string selectedJobType):this() { JobOrder = jOrder; JobOrder.RequiredDateWrapper = DateTime.Now; materialName.Text = jOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.Name; quantity.Text = jOrder.JobQuantity.ToString(); issueToComboBox.ItemsSource = nextJobTypes; foreach (var item in nextJobTypes) { if (item.Type == selectedJobType) { issueToComboBox.SelectedItem = item; jOrder.JobOrderType = item; break; } } }
private void CalculateActual(OrderedItem orderedItem, JobOrder Jo) { if (Jo != null) { //Job Order Charges PreviousActualInINR += Jo.GetCumulativeJOCharges(); //GRN Reciept Value if (Jo.GRNReciept.OtherChargesInINR != null && Jo.GRNReciept.OtherChargesInINR.Value != 0 && Jo.GRNReciept.RecievedInHandWrapper != 0) { decimal perUnitGRNRecieptValue = Jo.GRNReciept.OtherChargesInINR.Value / Jo.GRNReciept.RecievedInHandWrapper; PreviousActualInINR += perUnitGRNRecieptValue; } //Purchase Order Value PreviousActualInINR += orderedItem.ActualInINR / orderedItem.OrderedQuantity; } }
public bool IssueNewJob(JobOrder jobOrder) { bool res = false; if (jobOrder != null) { if (jobOrder.JobOrderType.Type.ToLower() == "stock") { res=IssueToStock(jobOrder.JobQuantity); } else { jobOrder.GRNReciept.JobOrders.Add(jobOrder); res = Save(); } if (res) jobOrder.Refresh(); } return res; }
private void IssueNextJob(JobOrder jOrder, ObservableCollection<JobOrderType> jobTypes) { JobOrder newJob = new JobOrder(); newJob.JobQuantity = jOrder.QualityPassed.GetValueOrDefault(0); newJob.GRNReciept = jOrder.GRNReciept; IssueToPopupBox issuePopup = new IssueToPopupBox(newJob, jobTypes, string.Empty); if (issuePopup.ShowDialog() == true) { jOrder.IsIssued = true; if (issuePopup.JobOrder.JobOrderType.Type.ToLower() == "stock") { if (ViewModel.IssueToStock(issuePopup.JobOrder.JobQuantity)) jOrder.Refresh(); } else { if (ViewModel.IssueNewJob(issuePopup.JobOrder)) jOrder.Refresh(); } } }
private void CreateNewJobOrderForFailedQuantity(JobOrder jOrder) { if (jOrder != null && jOrder.ValidateIssueAndReceiptDetails()) { JobOrder newJob = new JobOrder(); newJob.GRNReciept = jOrder.GRNReciept; newJob.JobQuantity = jOrder.QualityFailed.GetValueOrDefault(0); newJob.JobOrderType = jOrder.JobOrderType; newJob.Supplier = jOrder.Supplier; newJob.Instructions = jOrder.Instructions; newJob.RequiredDate = jOrder.RequiredDate; newJob.ChargesInINR = jOrder.ChargesInINR; IssueToPopupBox issuePopup = new IssueToPopupBox(newJob); if (issuePopup.ShowDialog() == true) { jOrder.FailedQuantityIssued = true; if (ViewModel.IssueNewJob(issuePopup.JobOrder)) jOrder.Refresh(); } } }
public bool IssueNewJob(JobOrder jobOrder) { bool res = false; if (jobOrder != null) { if (jobOrder.JobOrderType.Type.ToLower() == "stock") { if (jobOrder.GRNReciept != null) { if (jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.InStock == null) jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.InStock = 0; MaterialStock stock = new MaterialStock(); stock.Order = this.Order; stock.SubMaterial = jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial; stock.InStockDateTime = DBResources.Instance.GetServerTime(); stock.StockQuantity = jobOrder.JobQuantity; stock.UnitsOfMeasurement = jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.UnitsOfMeasurementWrapper; jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.MaterialStocks.Add(stock); jobOrder.GRNReciept.OrderedItem.ProductMaterialItem.SubMaterial.InStock += jobOrder.JobQuantity; } else return false; } else { jobOrder.GRNReciept.JobOrders.Add(jobOrder); } res = Save(); if (res) jobOrder.Refresh(); } return res; }
public void CreateNewJo(Order order,decimal quantity,GRNReciept reciept, bool jobOrderIssued, JobOrder parentJo) { ViewModel = new KnittingJoViewModel(order, quantity, reciept, jobOrderIssued, parentJo); //budgetVsActualControl.Initialize(reciept.OrderedItem, parentJo); }
public void CreateNewJo(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept receipt, bool jobOrderIssued, JobOrder parentJo) { ViewModel = new DyeingJoViewModel(order, quantity, po, grnRefNo, receipt, jobOrderIssued,parentJo); //budgetVsActualControl.Initialize(receipt.OrderedItem, parentJo); }
public bool Approve() { try { StringBuilder comment = new StringBuilder(); comment.AppendLine("Approved on " + DBResources.Instance.GetServerTime() + " by " + DBResources.Instance.CurrentUser.UserName); comment.Append(ViewModel.JO.Approval.Comments); ViewModel.JO.Approval.Comments = comment.ToString(); ViewModel.JO.Approval.IsApproved = true; int itemNumber = 1; foreach (var item in ViewModel.JO.DyeingJoItems) { JobOrder jo = new JobOrder(); jo.Company = ViewModel.JO.Company; jo.GRNReciept = ViewModel.JO.GRNReciept; jo.ChargesInINR = item.NetQtyWrapper * item.RatePerKgWrapper; jo.RequiredDateWrapper = DateTime.Now; jo.JobOrderTypeID = 2; jo.JobOrder2 = ViewModel.JO.JobOrder; jo.Instructions = ViewModel.JO.TermsAndConditionsWrapper; jo.JobQuantity = item.NetQtyWrapper; jo.DyeingJoItems.Add(item); item.JobOrder = jo; itemNumber += 1; } DBResources.Instance.Save(); ViewModel.JO.RefreshInfoJobOrderInfo(); } catch (Exception ex) { MessageBox.Show(ex.Message); return false; } return true; }
public void Initialize(OrderedItem orderedItem, JobOrder parentJO) { CalculateBudget(orderedItem); CalculateActual(orderedItem, parentJO); }
public void CreateNewJo(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept receipt, bool jobOrderIssued, JobOrder parentJo) { ViewModel = new CompactingJoViewModel(order, quantity, po, grnRefNo, receipt, jobOrderIssued, parentJo); }
void mItem_Click(object sender, RoutedEventArgs e) { MenuItem item = sender as MenuItem; JobOrder jOrder = jobOrderDetails.SelectedItem as JobOrder; switch (item.Header.ToString()) { case "Knitting": CreateJoWindow knittWindow = new CreateJoWindow(); knittWindow.Order = jOrder.GRNReciept.OrderedItem.PurchaseOrder.Order; knittWindow.PurchaseOrder = jOrder.GRNReciept.OrderedItem.PurchaseOrder; knittWindow.Quantity = jOrder.QualityPassed.Value; knittWindow.GRNRefNo = jOrder.GRNReciept.GRNReciptID.ToString(); knittWindow.GRNReciept = jOrder.GRNReciept; knittWindow.ParentJobOrder = jOrder; jOrder.IsIssued = true; knittWindow.InitializeForKnitting(); knittWindow.ShowDialog(); break; case "Dyeing": CreateJoWindow dyeWindow = new CreateJoWindow(); dyeWindow.Order = jOrder.GRNReciept.OrderedItem.PurchaseOrder.Order; dyeWindow.PurchaseOrder = jOrder.GRNReciept.OrderedItem.PurchaseOrder; dyeWindow.ParentJobOrder = jOrder; dyeWindow.Quantity = jOrder.QualityPassed.Value; dyeWindow.GRNRefNo = jOrder.GRNReciept.GRNReciptID.ToString(); dyeWindow.GRNReciept = jOrder.GRNReciept; jOrder.IsIssued = true; dyeWindow.InitializeForDyeing(); dyeWindow.ShowDialog(); break; case "Compacting": CreateJoWindow compactingWindow = new CreateJoWindow(); compactingWindow.Order = jOrder.GRNReciept.OrderedItem.PurchaseOrder.Order; compactingWindow.PurchaseOrder = jOrder.GRNReciept.OrderedItem.PurchaseOrder; compactingWindow.ParentJobOrder = jOrder; compactingWindow.Quantity = jOrder.QualityPassed.Value; compactingWindow.GRNRefNo = jOrder.GRNReciept.GRNReciptID.ToString(); compactingWindow.GRNReciept = jOrder.GRNReciept; jOrder.IsIssued = true; compactingWindow.InitializeForCompacting(); compactingWindow.ShowDialog(); break; case "Printing": case "Washing": case "Other": case "Stock": JobOrder newJob = new JobOrder(); newJob.JobQuantity = jOrder.QualityPassed.GetValueOrDefault(0); newJob.GRNReciept = jOrder.GRNReciept; newJob.JobOrder2 = jOrder; IssueToPopupBox issuePopup = new IssueToPopupBox(newJob, GetNextJobOrderTypes(jOrder), item.Header.ToString()); issuePopup.MaterialName = jOrder.RecievedAsWrapper; if (issuePopup.ShowDialog() == true) { jOrder.IsIssued = true; if (ViewModel.IssueNewJob(issuePopup.JobOrder)) jOrder.Refresh(); } break; } jOrder.Refresh(); jOrder.RefreshAllProperties(); }
private ObservableCollection<JobOrderType> GetNextJobOrderTypes(JobOrder jOrder) { ObservableCollection<JobOrderType> nextTypes; switch (jOrder.JobOrderTypeID) { case 1: nextTypes = DBResources.Instance.AfterKnittingJobs; break; case 2: nextTypes = DBResources.Instance.AfterDyeingJobs; break; case 3: nextTypes = DBResources.Instance.AfterPrintingJobs; break; case 4: nextTypes = DBResources.Instance.AfterCompactingJobs; break; case 5: nextTypes = DBResources.Instance.AfterWashingJobs; break; case 6: nextTypes = DBResources.Instance.AfterOtherJobs; break; default: return null; } return nextTypes; }
private void SpecialApproval(JobOrder jOrder) { if (jOrder != null && jOrder.ValidateIssueAndReceiptDetails()) { ViewModel.SpecialApproval(jOrder); } }