Пример #1
0
        /// <summary>
        /// Selects all records from the sol_Orders table.
        /// </summary>
        public virtual List <Sol_Order> SelectAll()
        {
            using (SqlDataReader dataReader = SqlClientUtility.ExecuteReader(connectionStringName, CommandType.StoredProcedure, "sol_Orders_SelectAll"))
            {
                List <Sol_Order> sol_OrderList = new List <Sol_Order>();
                while (dataReader.Read())
                {
                    Sol_Order sol_Order = MakeSol_Order(dataReader);
                    sol_OrderList.Add(sol_Order);
                }

                return(sol_OrderList);
            }
        }
Пример #2
0
        /// <summary>
        /// Selects all records from the sol_Orders table by a foreign key.
        /// </summary>
        public virtual List <Sol_Order> _SelectAllByFeeID(int feeID)
        {
            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@FeeID", feeID)
            };

            using (SqlDataReader dataReader = SqlClientUtility.ExecuteReader(connectionStringName, CommandType.StoredProcedure, "sol_Orders_SelectAllByFeeID", parameters))
            {
                List <Sol_Order> sol_OrderList = new List <Sol_Order>();
                while (dataReader.Read())
                {
                    Sol_Order sol_Order = MakeSol_Order(dataReader);
                    sol_OrderList.Add(sol_Order);
                }

                return(sol_OrderList);
            }
        }
Пример #3
0
        public virtual List <Sol_Order> SelectAllByCustomerUnpaid(string orderType, int customerID, bool unPaid)
        {
            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@OrderType", orderType),
                new SqlParameter("@CustomerID", customerID),
                new SqlParameter("@UnPaid", unPaid)
            };

            using (SqlDataReader dataReader = SqlClientUtility.ExecuteReader(connectionStringName, CommandType.StoredProcedure, "sol_Orders_SelectAllByCustomerUnPaid", parameters))
            {
                List <Sol_Order> sol_OrderList = new List <Sol_Order>();
                while (dataReader.Read())
                {
                    Sol_Order sol_Order = MakeSol_Order(dataReader);
                    sol_OrderList.Add(sol_Order);
                }

                return(sol_OrderList);
            }
        }
Пример #4
0
        /// <summary>
        /// Updates a record in the sol_Orders table.
        /// </summary>
        public virtual void Update(Sol_Order sol_Order)
        {
            ValidationUtility.ValidateArgument("sol_Order", sol_Order);

            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@OrderID", sol_Order.OrderID),
                new SqlParameter("@OrderType", sol_Order.OrderType),
                new SqlParameter("@WorkStationID", sol_Order.WorkStationID),
                new SqlParameter("@ComputerName", sol_Order.ComputerName),
                new SqlParameter("@UserID", sol_Order.UserID),
                new SqlParameter("@UserName", sol_Order.UserName),
                new SqlParameter("@Date", sol_Order.Date),
                new SqlParameter("@CashTrayID", sol_Order.CashTrayID),
                new SqlParameter("@CustomerID", sol_Order.CustomerID),
                new SqlParameter("@Name", sol_Order.Name),
                new SqlParameter("@Address1", sol_Order.Address1),
                new SqlParameter("@Address2", sol_Order.Address2),
                new SqlParameter("@City", sol_Order.City),
                new SqlParameter("@Province", sol_Order.Province),
                new SqlParameter("@Country", sol_Order.Country),
                new SqlParameter("@PostalCode", sol_Order.PostalCode),
                new SqlParameter("@TotalAmount", sol_Order.TotalAmount),
                new SqlParameter("@DateClosed", sol_Order.DateClosed),
                new SqlParameter("@DatePaid", sol_Order.DatePaid),
                new SqlParameter("@FeeID", sol_Order.FeeID),
                new SqlParameter("@FeeAmount", sol_Order.FeeAmount),
                new SqlParameter("@Tax1Amount", sol_Order.Tax1Amount),
                new SqlParameter("@Tax2Amount", sol_Order.Tax2Amount),
                new SqlParameter("@Status", sol_Order.Status),
                new SqlParameter("@Reference", sol_Order.Reference),
                new SqlParameter("@PaymentTypeID", sol_Order.PaymentTypeID),
                new SqlParameter("@SecurityCode", sol_Order.SecurityCode),
                new SqlParameter("@Comments", sol_Order.Comments)
                //            ,
                //new SqlParameter("@IsNew", sol_Order.IsNew)
            };

            SqlClientUtility.ExecuteNonQuery(connectionStringName, CommandType.StoredProcedure, "sol_Orders_Update", parameters);
        }
Пример #5
0
        /// <summary>
        /// Selects all records from the sol_Orders table by a foreign key.
        /// </summary>
        public virtual List <Sol_Order> _SelectAllByStatus(string orderType, string status, int customerID, string dateFrom, string dateTo)
        {
            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@OrderType", orderType),
                new SqlParameter("@Status", status),
                new SqlParameter("@CustomerID", customerID),
                new SqlParameter("@DateFrom", dateFrom),
                new SqlParameter("@DateTo", dateTo)
            };

            using (SqlDataReader dataReader = SqlClientUtility.ExecuteReader(connectionStringName, CommandType.StoredProcedure, "sol_Orders_SelectAllByStatus", parameters))
            {
                List <Sol_Order> sol_OrderList = new List <Sol_Order>();
                while (dataReader.Read())
                {
                    Sol_Order sol_Order = MakeSol_Order(dataReader);
                    sol_OrderList.Add(sol_Order);
                }

                return(sol_OrderList);
            }
        }
Пример #6
0
        /// <summary>
        /// Creates a new instance of the sol_Orders class and populates it with data from the specified SqlDataReader.
        /// </summary>
        protected virtual Sol_Order MakeSol_Order(SqlDataReader dataReader)
        {
            Sol_Order sol_Order = new Sol_Order();

            sol_Order.OrderID       = SqlClientUtility.GetInt32(dataReader, "OrderID", 0);
            sol_Order.OrderType     = SqlClientUtility.GetString(dataReader, "OrderType", String.Empty);
            sol_Order.WorkStationID = SqlClientUtility.GetInt32(dataReader, "WorkStationID", 0);
            sol_Order.ComputerName  = SqlClientUtility.GetString(dataReader, "ComputerName", String.Empty);
            sol_Order.UserID        = SqlClientUtility.GetGuid(dataReader, "UserID", Guid.Empty);
            sol_Order.UserName      = SqlClientUtility.GetString(dataReader, "UserName", String.Empty);
            sol_Order.Date          = SqlClientUtility.GetDateTime(dataReader, "Date", new DateTime(0));
            sol_Order.CashTrayID    = SqlClientUtility.GetInt32(dataReader, "CashTrayID", 0);
            sol_Order.CustomerID    = SqlClientUtility.GetInt32(dataReader, "CustomerID", 0);
            sol_Order.Name          = SqlClientUtility.GetString(dataReader, "Name", String.Empty);
            sol_Order.Address1      = SqlClientUtility.GetString(dataReader, "Address1", String.Empty);
            sol_Order.Address2      = SqlClientUtility.GetString(dataReader, "Address2", String.Empty);
            sol_Order.City          = SqlClientUtility.GetString(dataReader, "City", String.Empty);
            sol_Order.Province      = SqlClientUtility.GetString(dataReader, "Province", String.Empty);
            sol_Order.Country       = SqlClientUtility.GetString(dataReader, "Country", String.Empty);
            sol_Order.PostalCode    = SqlClientUtility.GetString(dataReader, "PostalCode", String.Empty);
            sol_Order.TotalAmount   = SqlClientUtility.GetDecimal(dataReader, "TotalAmount", Decimal.Zero);
            sol_Order.DateClosed    = SqlClientUtility.GetDateTime(dataReader, "DateClosed", new DateTime(0));
            sol_Order.DatePaid      = SqlClientUtility.GetDateTime(dataReader, "DatePaid", new DateTime(0));
            sol_Order.FeeID         = SqlClientUtility.GetInt32(dataReader, "FeeID", 0);
            sol_Order.FeeAmount     = SqlClientUtility.GetDecimal(dataReader, "FeeAmount", Decimal.Zero);
            sol_Order.Tax1Amount    = SqlClientUtility.GetDecimal(dataReader, "Tax1Amount", Decimal.Zero);
            sol_Order.Tax2Amount    = SqlClientUtility.GetDecimal(dataReader, "Tax2Amount", Decimal.Zero);
            sol_Order.Status        = SqlClientUtility.GetString(dataReader, "Status", String.Empty);
            sol_Order.Reference     = SqlClientUtility.GetString(dataReader, "Reference", String.Empty);
            sol_Order.PaymentTypeID = SqlClientUtility.GetByte(dataReader, "PaymentTypeID", 0x00);
            sol_Order.SecurityCode  = SqlClientUtility.GetString(dataReader, "SecurityCode", String.Empty);
            sol_Order.Comments      = SqlClientUtility.GetString(dataReader, "Comments", String.Empty);
            //sol_Order.IsNew = SqlClientUtility.GetBoolean(dataReader, "IsNew", false);

            return(sol_Order);
        }
Пример #7
0
        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();
            }
        }
Пример #8
0
        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);
        }
Пример #9
0
        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);
                    }
                }
            }
        }
Пример #10
0
        private void CreateAdjustemnt()
        {
            bool flagDone = false;

            //classes of tables
            sol_Order           = new Sol_Order();
            sol_Order_Sp        = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString);
            sol_OrdersDetail    = new Sol_OrdersDetail();
            sol_OrdersDetail_Sp = new Sol_OrdersDetail_Sp(Properties.Settings.Default.WsirDbConnectionString);


            //if (MessageBox.Show("Do you want to continue", "Closing Voucher", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) != System.Windows.Forms.DialogResult.Yes)
            //    return;

            //int totalqty = 0;
            decimal totalamt = 0.00M;
            int     nrows    = listViewUnstagedProducts.Items.Count;

            sol_Order.OrderType     = "A";  // R = Returns, S = Sales, A = Adjustment
            sol_Order.WorkStationID = -1;   // Main.Sol_ControlInfo.WorkStationID;

            //computer name
            string c = Properties.Settings.Default.SettingsWsWorkStationName.Trim();

            if (String.IsNullOrEmpty(c))
            {
                c = Main.myHostName;
            }
            sol_Order.ComputerName = c;  //

            MembershipUser membershipUser = membershipUser = Membership.GetUser(Properties.Settings.Default.UsuarioNombre);

            if (membershipUser == null)
            {
                MessageBox.Show("User does not exits, cannot create Adjustment!");
                return;
            }
            Guid userId = (Guid)membershipUser.ProviderUserKey;

            sol_Order.UserID     = userId;
            sol_Order.Date       = Main.rc.FechaActual; // ;// Properties.Settings.Default.FechaActual;
            sol_Order.CustomerID = 0;                   // (none)
            sol_Order.Status     = "A";                 //Applied

            //?? we close it below again with sqlserver getdate funtion
            sol_Order.DateClosed = sol_Order.Date;  //DateTime.Parse("1753-1-1 12:00:00");

            sol_Order.DatePaid = DateTime.Parse("1753-1-1 12:00:00");
            //sol_Order.IsNew = true;
            sol_Order_Sp.Insert(sol_Order);

            //close order
            sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DateClosed");


            //int detailID
            //int orderID
            sol_OrdersDetail.OrderID = sol_Order.OrderID;
            //string orderType
            sol_OrdersDetail.OrderType = sol_Order.OrderType;
            //date
            sol_OrdersDetail.Date = sol_Order.Date;
            //string status
            sol_OrdersDetail.Status = sol_Order.Status;

            for (int i = 0; i < nrows; i++)
            {
                //int quantity
                c = listViewUnstagedProducts.Items[i].SubItems[1].Text;
                c = c.Replace("$", "");
                c = c.Replace("(", "");
                c = c.Replace(")", "");
                c = c.Replace(",", "");

                int quantity = 0;
                try
                {
                    quantity = Convert.ToInt32(c);
                }
                catch
                {
                    string m = String.Format("Error found in quantity: {0} ", c);
                    MessageBox.Show(m, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    continue;
                }

                c = this.arrayListViewQuantity[i].ToString();

                int oldQuantity = (int)this.arrayListViewQuantity[i];
                if (oldQuantity == quantity)
                {
                    continue;
                }

                int adjustmenQuantity = quantity - oldQuantity;
                sol_OrdersDetail.Quantity = adjustmenQuantity;

                //totalqty = totalqty + (adjustmenQuantity);

                //int categoryID
                sol_OrdersDetail.CategoryID = (int)this.arrayListViewCategoryId[i];

                //int productID
                //string description
                sol_OrdersDetail.Description = listViewUnstagedProducts.Items[i].SubItems[0].Text;

                //decimal price
                sol_OrdersDetail.Price = (decimal)arrayListViewRefundAmount[i];

                //decimal amount
                //c = listViewUnstagedProducts.Items[i].SubItems[3].Text;
                //c = c.Replace('$', ' ');
                decimal amount = sol_OrdersDetail.Quantity * sol_OrdersDetail.Price;
                sol_OrdersDetail.Amount = amount;
                totalamt = totalamt + amount;


                //add row
                //sol_OrdersDetail.IsNew = true;
                sol_OrdersDetail_Sp.Insert(sol_OrdersDetail);

                flagDone = true;
            }

            if (flagDone)
            {
                //update TotalAmount
                sol_Order.TotalAmount = totalamt;
                //?? we close it again below with getdate()
                sol_Order.DateClosed = Main.rc.FechaActual; // ; // Properties.Settings.Default.FechaActual;;
                sol_Order_Sp.Update(sol_Order);

                //close order
                sol_Order_Sp.UpdateDates(sol_Order.OrderID, sol_Order.OrderType, "", "DateClosed");
            }
            else
            {
                sol_Order_Sp.Delete(sol_Order.OrderID, sol_Order.OrderType);
                MessageBox.Show("No adjustment created.");
            }
        }
Пример #11
0
        //private void SelectItems(bool select)
        //{
        //    ListView.ListViewItemCollection Items = listViewBags.Items;
        //    foreach (ListViewItem item in Items)
        //        item.Checked = select;
        //}

        #endregion

        private void buttonMissingBags_Click(object sender, EventArgs e)
        {
            ListView.CheckedListViewItemCollection checkedItems = listViewDrops.CheckedItems;
            if (checkedItems.Count < 1)
            {
                MessageBox.Show("No Drop selected");
                return;
            }

            string strDropId = string.Empty;
            int    orderId   = 0;

            foreach (ListViewItem item in checkedItems)
            {
                strDropId = item.SubItems[0].Text;
                orderId   = 0;
                Int32.TryParse(item.SubItems[4].Text, out orderId);
                break;
            }

            int missingBags = 0;

            List <int> listOfBagsCounted    = new List <int>();
            List <int> listOfBagsNotCounted = new List <int>();

            using (SqlConnection connection = new SqlConnection(Properties.Settings.Default.WsirDbConnectionString))
            {
                string sql = string.Empty;
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    connection.Open();
                    sql = @"
                        select [BagID]
                        from [qds_bag] 
                        where [DropID] = @DropId 
                        AND YEAR([DateCounted]) > 1753 
                    ";

                    sql = sql.Replace("@DropId", strDropId);
                    command.CommandText = sql;
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            listOfBagsCounted.Add((int)reader[0]);
                        }
                    }

                    sql = sql.Replace("> 1753", "= 1753");
                    command.CommandText = sql;
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            listOfBagsNotCounted.Add((int)reader[0]);
                        }
                    }
                }
            }

            missingBags = listOfBagsNotCounted.Count;

            string m = String.Format("{0} bags from this drop have not been counted yet.  Do you want to complete this order and set the status of the rest of the bags to MISSING?", missingBags);

            if (MessageBox.Show(m, "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) != System.Windows.Forms.DialogResult.Yes)
            {
                return;
            }


            //busy cursor
            this.Cursor = Cursors.WaitCursor;

            SolFunctions.CompleteOrder(
                orderId
                , "Q"
                , ref listOfBagsCounted
                , ref listOfBagsNotCounted
                );

            //Add comment to order
            if (sol_Order_Sp == null)
            {
                sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString);
            }

            sol_Order = sol_Order_Sp.Select(orderId, "Q");
            if (sol_Order != null)
            {
                sol_Order.Comments += string.Format("Bags Counted: {0} Bags Missing: {1}. ", listOfBagsCounted.Count(), missingBags);
                sol_Order_Sp.Update(sol_Order);
            }

            this.Cursor = Cursors.Default;
            MessageBox.Show("Ready!");

            buttonRefresh.PerformClick();
        }
Пример #12
0
        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);
            }
        }
Пример #13
0
        private void ViewReceipt(int orderID)
        {
            if (orderID < 1)
            {
                return;
            }

            this.Cursor = Cursors.WaitCursor;

            //query (has a stored procedure)
            string query          = "storedprocedure";
            string subReportName2 = "";
            //query 2
            string query2         = "";
            string subReportName3 = "";
            //query 3
            string query3 = "";


            Sol_Order_Sp sol_Order_Sp = new Sol_Order_Sp(Properties.Settings.Default.WsirDbConnectionString);
            Sol_Order    sol_Order    = sol_Order_Sp._SelectByOrderID(orderID);

            if (sol_Order == null)
            {
                this.Cursor = Cursors.Default;
                MessageBox.Show("Transaction # not found, please try another.");
                return;
            }


            CrystalDecisions.CrystalReports.Engine.ReportDocument rp = new Solum.Reports.TransactionSearch();

            object[,] parametros = new object[, ]
            {
                { "1_BusinessName", Main.Sol_ControlInfo.BusinessName },
                { "OrderID", orderID },
                { "", "" }
            };


            bool  imprimirReporte = false;
            bool  exportarReporte = false;
            short fileFormat      = 0;          // 0 = rtf 1 = pdf 2 = word 3 = excel
            bool  preverReporte   = true;
            short numeroDeCopias  = 1;
            //if (Properties.Settings.Default.SettingsWsReceiptPrintPreview)
            //    preverReporte = true;
            //else
            //    imprimirReporte = true;

            ReportesPrevista f1 = new ReportesPrevista(
                Properties.Settings.Default.WsirDbConnectionString,
                Properties.Settings.Default.SQLServidorNombre,
                Properties.Settings.Default.SQLBaseDeDatos,
                Properties.Settings.Default.SQLAutentificacion,
                Properties.Settings.Default.SQLUsuarioNombre,
                Properties.Settings.Default.SQLUsuarioClave,
                rp,
                query,
                query2,
                query3,
                parametros,
                subReportName2,
                subReportName3,
                Properties.Settings.Default.SettingsWsReportPrinter.Trim(),
                fileFormat,
                String.Empty,
                numeroDeCopias,
                exportarReporte,
                imprimirReporte,
                preverReporte,
                null,
                String.Empty,
                true,
                true
                );

            f1.ShowDialog();
            f1.Dispose();
            f1 = null;

            this.Cursor = Cursors.Default;
        }
Пример #14
0
        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);
                }
            }
        }