/// <summary>
 /// lay hang hoa theo ma tra lai nha cung cap
 /// </summary>
 /// <param name="truyen"></param>
 public Entities.LayHangHoaTheoMaKhachHangTraLai[] LayHangHoaTheoMaTraLaiNhaCungCap(Entities.TruyenGiaTri truyen)
 {
     Entities.LayHangHoaTheoMaKhachHangTraLai[] arrC = null;
     try
     {
         string sql = "exec sp_LayHangHoaTheoMaTraLaiNhaCungCap @MaTraLaiNhaCungCap";
         conn = new Connection();
         cn   = conn.openConnection();
         cmd  = new SqlCommand(sql, cn);
         cmd.Parameters.Add("MaTraLaiNhaCungCap", SqlDbType.VarChar, 20).Value = truyen.Giatritruyen;
         dr  = cmd.ExecuteReader(CommandBehavior.CloseConnection);
         arr = new ArrayList();
         while (dr.Read())
         {
             Entities.LayHangHoaTheoMaKhachHangTraLai bang = new Entities.LayHangHoaTheoMaKhachHangTraLai();
             bang.Mahanghoa  = dr[0].ToString();
             bang.Tenhanghoa = dr[1].ToString();
             bang.Soluong    = int.Parse(dr[2].ToString());
             bang.Giaban     = dr[3].ToString();
             string phantram  = "0";
             string chietkhau = "0";
             string tong      = "0";
             if (Double.Parse(dr[4].ToString()) == 0)
             {
                 tong      = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
                 chietkhau = tong;
             }
             else
             {
                 phantram  = dr[4].ToString();
                 tong      = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
                 chietkhau = new Common.Utilities().FormatMoney(Double.Parse(tong) - ((Double.Parse(phantram) / 100 * Double.Parse(dr[3].ToString())) * int.Parse(dr[2].ToString())));
             }
             bang.Phantramchietkhau = phantram;
             bang.Thuegiatrigiatang = dr[5].ToString();
             bang.Chietkhau         = chietkhau;
             bang.Tongtien          = tong;
             arr.Add(bang);
         }
         int n = arr.Count;
         if (n == 0)
         {
             arrC = null;
         }
         arrC = new Entities.LayHangHoaTheoMaKhachHangTraLai[n];
         for (int i = 0; i < n; i++)
         {
             arrC[i] = (Entities.LayHangHoaTheoMaKhachHangTraLai)arr[i];
         }
     }
     catch (Exception ex)
     { string s = ex.Message.ToString(); arrC = null; }
     finally
     {
         cmd.Connection.Dispose();
         cn.Close();
         conn.closeConnection();
     }
     return(arrC);
 }
 /// <summary>
 /// vuong hung =================lay hang hoa theo ma hoa don ban hang================
 /// </summary>
 /// <returns></returns>
 public Entities.LayHangHoaTheoMaKhachHangTraLai[] sp_LayHangHoaTheoHoaDonBanHang(Entities.TruyenGiaTri lay)
 {
     Entities.LayHangHoaTheoMaKhachHangTraLai[] arrC = null;
     try
     {
         string sql = "exec sp_KhachHangTraLaiHang @MaKhachHang ,@MaHDBanHang,@LoaiHoaDon";
         conn = new Connection();
         cn   = conn.openConnection();
         cmd  = new SqlCommand(sql, cn);
         cmd.Parameters.Add("MaKhachHang", SqlDbType.NVarChar, 20).Value = lay.Giatritruyen;
         cmd.Parameters.Add("MaHDBanHang", SqlDbType.VarChar, 20).Value  = lay.Giatrithuhai;
         cmd.Parameters.Add("LoaiHoaDon", SqlDbType.VarChar, 20).Value   = lay.Giatriba;
         dr  = cmd.ExecuteReader(CommandBehavior.CloseConnection);
         arr = new ArrayList();
         while (dr.Read())
         {
             Entities.LayHangHoaTheoMaKhachHangTraLai bang = new Entities.LayHangHoaTheoMaKhachHangTraLai();
             bang.Mahanghoa         = dr[0].ToString();
             bang.Tenhanghoa        = dr[1].ToString();
             bang.Soluong           = int.Parse(dr[2].ToString());
             bang.Giaban            = dr[3].ToString();
             bang.Phantramchietkhau = dr[4].ToString();
             bang.Chietkhau         = dr[5].ToString();
             bang.Tongtien          = dr[6].ToString();
             bang.Thuegiatrigiatang = dr[7].ToString();
             arr.Add(bang);
         }
         int n = arr.Count;
         if (n == 0)
         {
             return(null);
         }
         arrC = new Entities.LayHangHoaTheoMaKhachHangTraLai[n];
         for (int i = 0; i < n; i++)
         {
             arrC[i] = (Entities.LayHangHoaTheoMaKhachHangTraLai)arr[i];
         }
     }
     catch (Exception ex)
     { string s = ex.Message.ToString(); }
     finally
     {
         cmd.Connection.Dispose();
         cn.Close();
         conn.closeConnection();
     }
     return(arrC);
 }
 /// <summary>
 /// lay hang hoa theo ma khach hang tra lai
 /// </summary>
 /// <param name="lay"></param>
 /// <returns></returns>
 //public Entities.LayHangHoaTheoMaKhachHangTraLai[] sp_LayHangHoaTheoMaKhachHangTraLai(Entities.TruyenGiaTri lay)
 //{
 //    Entities.LayHangHoaTheoMaKhachHangTraLai[] arrC = null;
 //    try
 //    {
 //        string sql = "exec sp_LayHangHoaTheoMaKhachHangTraLai @MaKhachHangTraLai,@LoaiHoaDon";
 //        conn = new Connection();
 //        cn = conn.openConnection();
 //        cmd = new SqlCommand(sql, cn);
 //        cmd.Parameters.Add("MaKhachHangTraLai", SqlDbType.VarChar, 20).Value = lay.Giatritruyen;
 //        cmd.Parameters.Add("LoaiHoaDon", SqlDbType.VarChar, 20).Value = lay.Giatrithuhai;
 //        dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
 //        arr = new ArrayList();
 //        while (dr.Read())
 //        {
 //            Entities.LayHangHoaTheoMaKhachHangTraLai bang = new Entities.LayHangHoaTheoMaKhachHangTraLai();
 //            bang.Mahanghoa = dr[0].ToString();
 //            bang.Tenhanghoa = dr[1].ToString();
 //            bang.Soluong = int.Parse(dr[2].ToString());
 //            bang.Giaban = dr[3].ToString();
 //            string phantram = "0";
 //            string chietkhau = "0";
 //            string tong = "0";
 //            if (Double.Parse(dr[4].ToString()) == 0)
 //            {
 //                tong = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
 //                chietkhau = tong;
 //            }
 //            else
 //            {
 //                phantram = dr[4].ToString();
 //                tong = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
 //                chietkhau = new Common.Utilities().FormatMoney(Double.Parse(tong) - ((Double.Parse(phantram) / 100 * Double.Parse(dr[3].ToString())) * int.Parse(dr[2].ToString())));
 //            }
 //            bang.Phantramchietkhau = phantram;
 //            bang.Thuegiatrigiatang = dr[5].ToString();
 //            bang.Chietkhau = chietkhau;
 //            bang.Tongtien = tong;
 //            arr.Add(bang);
 //        }
 //        int n = arr.Count;
 //        if (n == 0) { arrC= null; }
 //        arrC = new Entities.LayHangHoaTheoMaKhachHangTraLai[n];
 //        for (int i = 0; i < n; i++)
 //        {
 //            arrC[i] = (Entities.LayHangHoaTheoMaKhachHangTraLai)arr[i];
 //        }
 //    }
 //    catch (Exception ex)
 //    { string s = ex.Message.ToString(); arrC = null; }
 //    finally
 //    {
 //        cmd.Connection.Dispose();
 //        cn.Close();
 //        conn.closeConnection();
 //    }
 //    return arrC;
 //}
 public Entities.LayHangHoaTheoMaKhachHangTraLai[] sp_LayHangHoaTheoMaKhachHangTraLai(Entities.TruyenGiaTri lay)
 {
     Entities.LayHangHoaTheoMaKhachHangTraLai[] arrC = null;
     try
     {
         string sql = "exec sp_LayHangHoaTheoMaKhachHangTraLai @MaKhachHangTraLai,@MaKhachHang,@MaHDBanHang";
         conn = new Connection();
         cn = conn.openConnection();
         cmd = new SqlCommand(sql, cn);
         cmd.Parameters.Add("MaKhachHangTraLai", SqlDbType.VarChar, 20).Value = lay.Giatritruyen;
         cmd.Parameters.Add("MaKhachHang", SqlDbType.VarChar, 20).Value = lay.Giatrithuhai;
         cmd.Parameters.Add("MaHDBanHang", SqlDbType.VarChar, 20).Value = lay.Giatriba;
         dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
         arr = new ArrayList();
         while (dr.Read())
         {
             Entities.LayHangHoaTheoMaKhachHangTraLai bang = new Entities.LayHangHoaTheoMaKhachHangTraLai();
             bang.Mahanghoa = dr[0].ToString();
             bang.Tenhanghoa = dr[1].ToString();
             bang.Soluong = int.Parse(dr[2].ToString());
             bang.Giaban = dr[3].ToString();
             string phantram = "0";
             string chietkhau = "0";
             string tong = "0";
             if (Double.Parse(dr[4].ToString()) == 0)
             {
                 tong = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
                 chietkhau = tong;
             }
             else
             {
                 phantram = dr[4].ToString();
                 tong = new Common.Utilities().FormatMoney(int.Parse(dr[2].ToString()) * Double.Parse(dr[3].ToString()));
                 chietkhau = new Common.Utilities().FormatMoney(Double.Parse(tong) - ((Double.Parse(phantram) / 100 * Double.Parse(dr[3].ToString())) * int.Parse(dr[2].ToString())));
             }
             bang.Phantramchietkhau = phantram;
             bang.Thuegiatrigiatang = dr[5].ToString();
             bang.Chietkhau = chietkhau;
             bang.Tongtien = tong;
             arr.Add(bang);
         }
         int n = arr.Count;
         if (n == 0) { arrC = null; }
         arrC = new Entities.LayHangHoaTheoMaKhachHangTraLai[n];
         for (int i = 0; i < n; i++)
         {
             arrC[i] = (Entities.LayHangHoaTheoMaKhachHangTraLai)arr[i];
         }
     }
     catch (Exception ex)
     { string s = ex.Message.ToString(); arrC = null; }
     finally
     {
         cmd.Connection.Dispose();
         cn.Close();
         conn.closeConnection();
     }
     return arrC;
 }
 /// <summary>
 /// vuong hung =================lay hang hoa theo ma hoa don ban hang================
 /// </summary>
 /// <returns></returns>
 public Entities.LayHangHoaTheoMaKhachHangTraLai[] sp_LayHangHoaTheoMaHoaDonNhap(Entities.TruyenGiaTri lay)
 {
     Entities.LayHangHoaTheoMaKhachHangTraLai[] arrC = null;
     try
     {
         string sql = "exec sp_TimHoaDonNhapTheoMaNhaCungCap @MaNhaCungCap,@MaHoaDonNhap";
         conn = new Connection();
         cn = conn.openConnection();
         cmd = new SqlCommand(sql, cn);
         cmd.Parameters.Add("MaNhaCungCap", SqlDbType.NVarChar, 20).Value = lay.Giatritruyen;
         cmd.Parameters.Add("MaHoaDonNhap", SqlDbType.VarChar, 20).Value = lay.Giatrithuhai;
         dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
         arr = new ArrayList();
         while (dr.Read())
         {
             Entities.LayHangHoaTheoMaKhachHangTraLai bang = new Entities.LayHangHoaTheoMaKhachHangTraLai();
             bang.Mahanghoa = dr[0].ToString();
             bang.Tenhanghoa = dr[1].ToString();
             bang.Soluong = int.Parse(dr[2].ToString());
             bang.Giaban = dr[3].ToString();
             bang.Phantramchietkhau = dr[4].ToString();
             bang.Chietkhau = dr[5].ToString();
             bang.Tongtien = dr[6].ToString();
             bang.Thuegiatrigiatang = dr[7].ToString();
             arr.Add(bang);
         }
         int n = arr.Count;
         if (n == 0) { return null; }
         arrC = new Entities.LayHangHoaTheoMaKhachHangTraLai[n];
         for (int i = 0; i < n; i++)
         {
             arrC[i] = (Entities.LayHangHoaTheoMaKhachHangTraLai)arr[i];
         }
     }
     catch (Exception ex)
     { string s = ex.Message.ToString(); }
     finally
     {
         cmd.Connection.Dispose();
         cn.Close();
         conn.closeConnection();
     }
     return arrC;
 }