Esempio n. 1
0
        /// <summary>
        /// Get Payments
        /// </summary>
        /// <returns></returns>
        public Response GetPayments(Objects.SaleSearchQuery searchQuery, Objects.Pagination pagination)
        {
            int           statusCode = 200;
            Response      response   = new Response();
            List <object> payments   = new List <object>();

            try
            {
                Database.Connection.Open();
                var query = GetPaymentsSearchQuery(searchQuery) + Func.GetPaginationLimit(pagination);
                //Execute Query
                MySqlCommand Command = new MySqlCommand(query, Database.Connection);
                Command.Parameters.AddWithValue("DateFrom", searchQuery.DateFrom);
                Command.Parameters.AddWithValue("DateTo", searchQuery.DateTo);
                MySqlDataReader DataReader = Command.ExecuteReader();

                //Read Data
                while (DataReader.Read())
                {
                    Objects.Payment payment = new Objects.Payment
                    {
                        PaidAmount = decimal.Parse(DataReader["PaidAmount"].ToString()),
                        Method     = DataReader["PaymentMethod"].ToString(),
                        PaidAt     = Convert.ToDateTime(DataReader["SoldAt"].ToString()),
                    };
                    payments.Add(payment);
                }
                if (!DataReader.HasRows)
                {
                    statusCode = 204;
                }
                else
                {
                    // OK
                    statusCode = 200;
                }

                Database.Connection.Close();

                //Response
                response.StatusCode = statusCode;
                response.DataArray  = payments;
                response.Pagination = pagination;
            }
            catch (MySqlException e)
            {
                Logger.QueryError(e, "Sale", "Getting Payments");
                // Internal Error :
                response.StatusCode = 500;
            }
            //Close Connection if Open
            if (Database.Connection.State == ConnectionState.Open)
            {
                Database.Connection.Close();
            }

            return(response);
        }
Esempio n. 2
0
        /// <summary>
        /// Checks if Id is valid
        /// </summary>
        /// <returns></returns>
        public bool IsValid(Objects.Payment payment)
        {
            bool isValid;

            try
            {
                //Open Connection
                Database.Connection.Open();

                string       query   = "SELECT PaymentId FROM Payments WHERE PaymentId=@PaymentId";
                MySqlCommand Command = new MySqlCommand(query, Database.Connection);
                Command.Parameters.AddWithValue("PaymentId", payment.Id);
                MySqlDataReader DataReader = Command.ExecuteReader();
                if (!DataReader.HasRows)
                {
                    isValid = false;
                }
                else
                {
                    isValid = true;
                }

                //Close Connection
                Database.Connection.Close();
            }
            catch (MySqlException e)
            {
                Logger.QueryError(e, "Payment", "Verifying Id");
                isValid = false;
            }

            //Close Connection if Open
            if (Database.Connection.State == ConnectionState.Open)
            {
                Database.Connection.Close();
            }

            return(isValid);
        }