private void OK_Click(object sender, EventArgs e) { if (!Main.CheckUserPermission(Properties.Settings.Default.WsirConnectionString, Properties.Settings.Default.UsuarioNombre, "SolCashOutOrder", true)) { return; } ListView.CheckedListViewItemCollection checkedItems = listView1.CheckedItems; if (checkedItems.Count < 1) { MessageBox.Show("No Orders selected"); return; } foreach (ListViewItem item in checkedItems) { int orderID = 0; Int32.TryParse(item.SubItems[0].Text, out orderID); sol_Order = sol_Order_Sp.Select(orderID, item.SubItems[4].Text); //if (!(item.SubItems[8].Text == "A")) if (sol_Order == null) { MessageBox.Show("Sorry, this order no longer exist! (Order #" + item.SubItems[0].Text.Trim() + ")"); buttonRefresh.PerformClick(); return; } if (sol_Order.Status != "O" && sol_Order.DatePaid >= sol_Order.Date) { MessageBox.Show("Sorry, this order is already paid! (Order #" + item.SubItems[0].Text.Trim() + ")"); buttonRefresh.PerformClick(); return; } //open order if (sol_Order.DateClosed < sol_Order.Date) { MessageBox.Show("Sorry, this order is open! (Order #" + item.SubItems[0].Text.Trim() + ")"); buttonRefresh.PerformClick(); return; } } int intValue = 0; Int32.TryParse(textBoxId.Text, out intValue); CustomerOrdersPayNow f1 = new CustomerOrdersPayNow(intValue); //CashierCash.buttonSource = "CustomerOrders"; f1.checkedItems = checkedItems; f1.ShowDialog(); bool ordersProcessed = f1.ordersProcessed; f1.Dispose(); f1 = null; if (ordersProcessed) { buttonRefresh.PerformClick(); } }
public static void CompleteOrder( int orderID , string orderType , ref List <int> listOfBagsCounted , ref List <int> listOfBagsNotCounted ) { if (listOfBagsNotCounted.Count < 1) { return; } //set the status of the rest of the bags to MISSING Qds_Drop_Sp qds_Drop_Sp = new Qds_Drop_Sp(Properties.Settings.Default.WsirDbConnectionString); List <Qds_Drop> dl = qds_Drop_Sp._SelectAllByOrderID_OrderType(orderID, orderType); Qds_Drop qds_Drop = dl[0]; Qds_Bag_Sp qds_Bag_Sp = new Qds_Bag_Sp(Properties.Settings.Default.WsirDbConnectionString); List <Qds_Bag> bl = qds_Bag_Sp._SelectAllByDropID(qds_Drop.DropID); //create new drop for missing bags Qds_Drop nd = new Qds_Drop(); //nd.DropID = 0; nd.CustomerID = qds_Drop.CustomerID; nd.NumberOfBags = listOfBagsNotCounted.Count; // od.NumberOfBags; nd.PaymentMethodID = qds_Drop.PaymentMethodID; nd.DepotID = qds_Drop.DepotID; nd.OrderID = 0; nd.OrderType = "M"; //missing qds_Drop_Sp.Insert(nd); //move missing bags to new drop //foreach(ComboBoxItem i in comboBoxBagId.Items) foreach (int id in listOfBagsNotCounted) { //move missing bag Qds_Bag mb = qds_Bag_Sp.Select(id); //bagIdFromComboBox); mb.DropID = nd.DropID; qds_Bag_Sp.Update(mb); } //change numer of bags of the original drop qds_Drop.NumberOfBags -= listOfBagsNotCounted.Count(); qds_Drop_Sp.Update(qds_Drop); //close order Sol_Order_Sp sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString); Sol_Order sol_Order = sol_Order_Sp.Select(orderID, orderType); sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DateClosed"); //is drop ready for payment? if (qds_Drop_Sp.IsReady(qds_Drop.DropID)) { string status = String.Empty; if (qds_Drop.PaymentMethodID == 1) { status = "A"; } else { status = "O"; } sol_Order_Sp.UpdateStatus(sol_Order.OrderID, sol_Order.OrderType, status); } //update customerID //sol_Order_Sp._UpdateCustomerID(sol_Order.OrderID, sol_Order.OrderType, qds_Drop.CustomerID); }
private void ReadDrops(bool MineOnly) { listViewDrops.Items.Clear(); string orderType = String.Empty; if (checkBoxMissingBags.Checked) { orderType = "M"; } else { orderType = "Q"; } //qds_DropList = qds_Drop_Sp.SelectAllInProcess(); qds_DropList = qds_Drop_Sp.SelectAllByOrderTpe(orderType); if (qds_DropList != null) { if (buttonBags.Text == "&Unselect all") { buttonBags.Text = "&Select all"; } } Guid UserId = new Guid(); if (MineOnly) { if (sol_Order_Sp == null) { sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString); } MembershipUser UserAccount = Membership.GetUser(); UserId = (Guid)UserAccount.ProviderUserKey; } //dropID //customer //bags //paymentMethod //depotID //orderID foreach (Qds_Drop or in qds_DropList) { if (MineOnly) { //is not user's order if does not exist if (or.OrderID < 1) { continue; } sol_Order = sol_Order_Sp.Select(or.OrderID, or.OrderType); //is not user's order if does not exist if (sol_Order == null) { continue; } if (UserId != null) { if (UserId != sol_Order.UserID) { continue; } } } int dropID = or.DropID; string customer = or.CustomerID.ToString(); sol_Customer = sol_Customer_Sp.Select(or.CustomerID); if (sol_Customer != null) { customer = sol_Customer.Name; } int bags = or.NumberOfBags; string paymentMethod = or.PaymentMethodID.ToString(); qds_PaymentMethod = qds_PaymentMethod_Sp.Select(or.PaymentMethodID); if (qds_PaymentMethod != null) { paymentMethod = qds_PaymentMethod.PaymentMethod; } string depotID = or.DepotID; int orderID = or.OrderID; addDropItem(dropID, customer, bags, paymentMethod, depotID, orderID, or.OrderType); } }
private void UpdateOrders() { //bool firstTime = true; int orderId = 0; string orderType = ""; Sol_Order sol_Order = new Sol_Order(); Sol_Order_Sp sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString); Sol_OrdersDetail sol_OrdersDetail = new Sol_OrdersDetail(); Sol_OrdersDetail_Sp sol_OrdersDetail_Sp = new Sol_OrdersDetail_Sp(Properties.Settings.Default.WsirDbConnectionString); List <Sol_OrdersDetail> sol_OrdersDetailList = new List <Sol_OrdersDetail>(); //items ListView.ListViewItemCollection Items = listView1.Items; foreach (ListViewItem item in Items) { if (!Int32.TryParse(item.SubItems[0].Text, out orderId)) { MessageBox.Show("We couldn't parse Order " + item.SubItems[0].Text); continue; } orderType = item.SubItems[4].Text; //read order sol_Order = sol_Order_Sp.Select(orderId, orderType); //not found? if (sol_Order == null) { MessageBox.Show(String.Format("Order #{0} not found!", orderId)); continue; } //search for customer data if its on account //Sol_Customer_Sp sol_Customer_Sp = new Sol_Customer_Sp(Properties.Settings.Default.WsirDbConnectionString); //Sol_Customer sol_Customer = sol_Customer_Sp.Select(customerId); //sol_Order.CustomerID = customerId; //sol_Order.Name = sol_Customer.Name; //sol_Order.Address1 = sol_Customer.Address1; //sol_Order.Address2 = sol_Customer.Address2; //sol_Order.City = sol_Customer.City; //sol_Order.Province = sol_Customer.Province; //sol_Order.Country = sol_Customer.Country; //sol_Order.PostalCode = sol_Customer.PostalCode; //check number if (radioButtonCheckNumber.Checked) { sol_Order.Reference = textBoxCheckNumber.Text; sol_Order.PaymentTypeID = 1; } else { sol_Order.Reference = textBoxReference.Text; //sol_Order.Status = "P"; //paid, cash //we know is paid by checking datepaid field sol_Order.CashTrayID = (int)comboBoxCashTray.SelectedValue; sol_Order.PaymentTypeID = 2; } ////close order if it is not //if (sol_Order.DateClosed < sol_Order.Date) // sol_Order.DateClosed = Main.rc.FechaActual; sol_Order.DatePaid = Main.rc.FechaActual; sol_Order_Sp.Update(sol_Order); //close order if it is not if (sol_Order.DateClosed < sol_Order.Date) { sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DateClosed"); } sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DatePaid"); //mark details if paid with cash if (radioButtonCashTray.Checked) { sol_OrdersDetailList = sol_OrdersDetail_Sp._SelectAllByOrderID_OrderType(orderId, orderType); foreach (Sol_OrdersDetail od in sol_OrdersDetailList) { sol_OrdersDetail = sol_OrdersDetail_Sp.Select(od.DetailID); sol_OrdersDetail.Status = sol_Order.Status; sol_OrdersDetail_Sp.Update(sol_OrdersDetail); } } } }
private void UpdateOrders() { //bool firstTime = true; int orderId = 0; string orderType = ""; totalPaidOrders = 0; Sol_Order_Sp sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString); Sol_OrdersDetail sol_OrdersDetail = new Sol_OrdersDetail(); Sol_OrdersDetail_Sp sol_OrdersDetail_Sp = new Sol_OrdersDetail_Sp(Properties.Settings.Default.WsirDbConnectionString); List <Sol_OrdersDetail> sol_OrdersDetailList = new List <Sol_OrdersDetail>(); //items ListView.ListViewItemCollection Items = listView1.Items; foreach (ListViewItem item in Items) { if (!Int32.TryParse(item.SubItems[0].Text, out orderId)) { MessageBox.Show("We couldn't parse Order " + item.SubItems[0].Text); continue; } orderType = item.SubItems[4].Text; //read order Sol_Order sol_Order = sol_Order_Sp.Select(orderId, orderType); //not found? if (sol_Order == null) { MessageBox.Show(String.Format("Order #{0} not found!", orderId)); continue; } //marked as paid if (onAccount) { //search for customer data if its on account Sol_Customer sol_Customer = new Sol_Customer(); Sol_Customer_Sp sol_Customer_Sp = new Sol_Customer_Sp(Properties.Settings.Default.WsirDbConnectionString); sol_Customer = sol_Customer_Sp.Select(customerId); sol_Order.CustomerID = customerId; //sol_Order.Name = sol_Customer.Name; //sol_Order.Address1 = sol_Customer.Address1; //sol_Order.Address2 = sol_Customer.Address2; //sol_Order.City = sol_Customer.City; //sol_Order.Province = sol_Customer.Province; //sol_Order.Country = sol_Customer.Country; //sol_Order.PostalCode = sol_Customer.PostalCode; sol_Order.Status = "O"; //O = On account //sol_Order_Sp.Update(sol_Order); } else { sol_Order.DatePaid = Main.rc.FechaActual; sol_Order.Status = "P"; //paid, processed } //close order if it is not if (sol_Order.DateClosed < sol_Order.Date) { sol_Order.DateClosed = Main.rc.FechaActual; } sol_Order_Sp.Update(sol_Order); totalPaidOrders = totalPaidOrders + sol_Order.TotalAmount - sol_Order.FeeAmount; //close order if it is not if (sol_Order.DateClosed < sol_Order.Date) { sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DateClosed"); } //paid if (!onAccount) { sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DatePaid"); } //mark details sol_OrdersDetailList = sol_OrdersDetail_Sp._SelectAllByOrderID_OrderType(orderId, orderType); foreach (Sol_OrdersDetail od in sol_OrdersDetailList) { sol_OrdersDetail = sol_OrdersDetail_Sp.Select(od.DetailID); sol_OrdersDetail.Status = sol_Order.Status; sol_OrdersDetail_Sp.Update(sol_OrdersDetail); } if (Main.CardReader_Enabled) { UpdateOrderCardLink(orderId); } } }