Пример #1
0
        private void btnLuu_ItemClick_1(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //getCurrentlyEditedRowData();
            if (!getDataForTempTable())
            {
                XtraMessageBox.Show("ĐÃ CÓ LỖI XẢY RA, VUI LÒNG KIỂM TRA LẠI!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);

                this.Close();
            }

            int flag = 0;

            //Insert Database
            foreach (DataRow row in dataTableInsertTemp.Rows)
            {
                hangDTO            = new HangDTO();
                hangDTO.StrMaHang  = row["MaHang"].ToString();
                hangDTO.StrTenHang = row["TenHang"].ToString();
                hangDTO.DDiem      = double.Parse(row["ChietKhau"].ToString());
                hangDTO.FChietKhau = float.Parse(row["Diem"].ToString());

                //return 1 if successfull
                flag = themHang(hangDTO);
            }

            if (flag == 0)
            {
                XtraMessageBox.Show("ĐÃ CÓ LỖI XẢY RA, VUI LÒNG KIỂM TRA LẠI!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            XtraMessageBox.Show("DỮ LIỆU ĐÃ ĐƯỢC CẬP NHẬT!", "Notifications!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            // gridKhachHang.RefreshDataSource();
        }
Пример #2
0
        public List <HangDTO> getSaleInRange(DateTime d1, DateTime d2)
        {
            String query = "SELECT H.MAHANG, H.TENHANG, ISNULL(SUM(SOLUONG), 0) AS [DABAN] FROM CHITIETHOADON C RIGHT JOIN HANG H " +
                           "ON H.MAHANG = C.MAHANG JOIN HOADONBANHANG HD ON HD.MAHOADON = C.MAHOADON " +
                           "AND HD.NGAYLAPHOADON BETWEEN @d1 AND @d2 " +
                           "GROUP BY H.MAHANG, H.TENHANG " +
                           "UNION ALL(SELECT H1.MAHANG, H1.TENHANG, 0 AS[DABAN] FROM HANG H1 " +
                           "WHERE H1.MAHANG NOT IN(SELECT H2.MAHANG FROM CHITIETHOADON C2 JOIN HANG H2 " +
                           "ON H2.MAHANG = C2.MAHANG JOIN HOADONBANHANG HD2 ON HD2.MAHOADON = C2.MAHOADON " +
                           "AND HD2.NGAYLAPHOADON BETWEEN @d1 AND @d2 " +
                           "GROUP BY H2.MAHANG) " +
                           "GROUP BY H1.MAHANG, H1.TENHANG)";

            List <SqlParameter> dateRange = new List <SqlParameter>
            {
                new SqlParameter("@d1", d1),
                new SqlParameter("@d2", d2)
            };

            List <HangDTO> hangS = new List <HangDTO>();
            DataTable      dt    = dp.ExecuteQuery(query, dateRange);

            foreach (DataRow dr in dt.Rows)
            {
                HangDTO hang = new HangDTO
                {
                    maHang       = int.Parse(dr["MAHANG"].ToString()),
                    tenHang      = dr["TENHANG"].ToString(),
                    soLuongDaBan = (int)dr["DABAN"]
                };

                hangS.Add(hang);
            }
            return(hangS);
        }
Пример #3
0
        /// <summary>
        /// Sắp xếp tăng giảm theo yêu cầu
        /// </summary>
        /// <param name="values"></param>
        /// <param name="asc"></param>
        /// <returns></returns>
        public List <HangDTO> SortBy(object[] values, bool asc)
        {
            List <HangDTO> listHang      = new List <HangDTO>();
            string         query         = "SELECT * FROM dbo.Hang ORDER BY ";
            string         type          = asc == true ? " ASC" : " DESC";
            StringBuilder  stringBuilder = new StringBuilder();

            stringBuilder.Append(query);
            for (int i = 0; i < values.Length; i++)
            {
                if (values[i].Equals(""))
                {
                    continue;
                }
                if (i != 0 && query.Length != stringBuilder.Length)
                {
                    stringBuilder.Append(" , ");
                }
                stringBuilder.Append(values[i].ToString());
                stringBuilder.Append(type);
            }
            var data = dataProvider.ExecuteQuery(stringBuilder.ToString());

            foreach (DataRow item in data.Rows)
            {
                HangDTO hang = new HangDTO(item);
                listHang.Add(hang);
            }
            return(listHang);
        }
Пример #4
0
        public void SortBy(object[] values, bool asc)
        {
            var data = GenerateDataTable <HangDTO>(10);

            mockIDataProvider.Setup(x => x.ExecuteQuery(It.IsNotNull <string>(), null)).Returns(data);
            var  result       = quanLyThongTinBUS.SortBy(values, asc);
            bool isTrue       = false;
            var  expectResult = new List <HangDTO>();

            foreach (DataRow item in data.Rows)
            {
                HangDTO hang = new HangDTO(item);
                expectResult.Add(hang);
            }
            for (int i = 0; i < result.LongCount(); i++)
            {
                isTrue = result[i].StrTenHang.Equals(expectResult[i].StrTenHang) &&
                         result[i].FltDonGia.Equals(expectResult[i].FltDonGia) &&
                         result[i].StrGhiChu.Equals(expectResult[i].StrGhiChu) &&
                         result[i].IntSoLuong.Equals(expectResult[i].IntSoLuong) &&
                         result[i].StrMaHang.Equals(expectResult[i].StrMaHang);
            }
            Assert.IsTrue(isTrue);
            mockIDataProvider.VerifyAll();
        }
Пример #5
0
        /// <summary>
        /// Hiển thị tất cả dữ liệu về hàng
        /// </summary>
        /// <returns></returns>
        public List <HangDTO> ShowAllHang()
        {
            List <HangDTO> listHang = new List <HangDTO>();
            var            data     = dataProvider.ExecuteQuery("SELECT h.* FROM dbo.Hang h");

            foreach (DataRow item in data.Rows)
            {
                HangDTO hang = new HangDTO(item);
                listHang.Add(hang);
            }
            return(listHang);
            //throw new NotImplementedException();
        }
Пример #6
0
        private void deleteHang()
        {
            //Tạo List string chứ MaKH
            List <string> selectedRowsID = new List <string>();

            //add MaKH của những row đang được select vào List
            foreach (DataGridViewRow row in dataGridViewHang.SelectedRows)
            {
                string id = row.Cells[0].Value.ToString();
                selectedRowsID.Add(id);
            }


            //1. Map data from GUI
            HangDTO hangDTO = new HangDTO();


            if (selectedRowsID.Count == 0)
            {
                //MessageBox.Show("HÃY CHỌN ÍT NHẤT MỘT HÀNG DỮ LIỆU ĐỂ XÓA!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                XtraMessageBox.Show("HÃY CHỌN ÍT NHẤT MỘT HÀNG DỮ LIỆU ĐỂ XÓA!!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                DialogResult result_ = XtraMessageBox.Show("BẠN CHẮC CHẮN MUỐN XÓA DỮ LIỆU ?", "Warning!", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

                if (result_ == DialogResult.OK)
                {
                    foreach (string strID in selectedRowsID)
                    {
                        hangDTO.StrMaHang = strID;

                        //2.Kiem tra tren tang database
                        bool result = hangBUS.xoa(hangDTO);
                        if (result == false)
                        {
                            XtraMessageBox.Show("XẢY RA LỖI KHI XÓA DỮ LIỆU!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }

                    loadDanhSachHang();

                    XtraMessageBox.Show("ĐÃ XÓA THÀNH CÔNG", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

                else
                {
                    //Roll back to NhanVien
                }
            }
        }
Пример #7
0
        /// <summary>
        /// Trả về kết quả sau khi tìm kiếm theo yêu cầu
        /// </summary>
        /// <param name="values"></param>
        /// <param name="correct"></param>
        /// <returns></returns>
        public List <HangDTO> SearchBy(object values, bool correct)
        {
            List <HangDTO> listHang = new List <HangDTO>();
            var            str      = correct == true?values.ToString() : $"%{values.ToString()}%";

            var data = dataProvider.ExecuteQuery("USP_SearchHang @name", new object[] { str });

            foreach (DataRow item in data.Rows)
            {
                HangDTO hang = new HangDTO(item);
                listHang.Add(hang);
            }
            return(listHang);
            //throw new NotImplementedException();
        }
Пример #8
0
        private void setTextToControls(HangDTO HangDTO)
        {
            try
            {
                txtMaHang.Text    = HangDTO.StrMaHang;
                cmbTenHang.Text   = HangDTO.StrTenHang;
                txtChietKhau.Text = HangDTO.FChietKhau.ToString();
                txtDiem.Text      = HangDTO.DDiem.ToString();
            }

            catch (Exception)
            {
                XtraMessageBox.Show("KHÔNG THỂ LOAD ĐƯỢC DỮ LIỆU", "Thông Báo Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.Close();
            }
        }
Пример #9
0
        public List <HangDTO> DocMatHang(string keyword)
        {
            String         query = "SELECT * FROM HANG" + keyword;
            DataTable      dt    = this.dp.ExecuteQuery(query);
            List <HangDTO> hangS = new List <HangDTO>();

            foreach (DataRow dr in dt.Rows)
            {
                HangDTO hang = new HangDTO((int)dr["MAHANG"], (int)dr["MANVPHUTRACH"], (string)dr["TENHANG"],
                                           (int)dr["SOLUONGCONLAI"], (double)dr["DONGIA"]);

                hangS.Add(hang);
            }

            return(hangS);
        }
Пример #10
0
        public List <HangDTO> BangHang()
        {
            List <HangDTO> ds = new List <HangDTO>();

            KetNoiCoSoDuLieu.Moketnoi();
            string        SQlSL = "select *, h.DonGia as 'STT' from Hang h";
            SqlCommand    cmd   = new SqlCommand(SQlSL, KetNoiCoSoDuLieu.chuoiketnoi);
            SqlDataReader dr    = cmd.ExecuteReader();

            while (dr.Read())
            {
                HangDTO sp = new HangDTO(dr["DonGia"].ToString(), dr["MaSanPham"].ToString(), dr["TenSanPham"].ToString(), dr["DonViTinh"].ToString(), dr["DonGia"].ToString(), dr["MaLoai"].ToString(), dr["SoLuong"].ToString(), dr["MaNhaCungCap"].ToString());
                ds.Add(sp);
            }
            KetNoiCoSoDuLieu.Dongketnoi();
            return(ds);
        }
Пример #11
0
        private void btnLuu_Click(object sender, EventArgs e)
        {
            HangDTO h = new HangDTO();

            h.Mahang     = txtMaHH.Text;
            h.Tenhang    = txtTenHH.Text;
            h.Donvitinh  = txtDonViTinh.Text;
            h.Dongia     = Int32.Parse(txtDonGia.Text);
            h.Maloai     = cboMaLoai.SelectedValue.ToString();
            h.Nhacungcap = cboMaNCC.SelectedValue.ToString();
            h.Soluongco  = Int32.Parse(txtSoLuong.Text);

            if (!string.IsNullOrEmpty(txtMaHH.Text) && !string.IsNullOrEmpty(txtTenHH.Text) && !string.IsNullOrEmpty(txtDonGia.Text) && !string.IsNullOrEmpty(txtSoLuong.Text) && !string.IsNullOrEmpty(txtDonViTinh.Text))
            {
                int val, val1;
                if (!Int32.TryParse(txtSoLuong.Text, out val) || !Int32.TryParse(txtDonGia.Text, out val1))
                {
                    MessageBox.Show("Gía trị số lượng và đơn giá phải là số", "Sai dữ liệu", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    return;
                }
                else
                {
                    try
                    {
                        hbus.InsertHangHoa(h);
                        {
                            MessageBox.Show("Thêm thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            QL_HangHoa_Load(sender, e);
                            setTXT();
                        }
                    }
                    catch
                    {
                        MessageBox.Show("Mã hàng hóa đã tồn tại , kiểm tra lại!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }
            else
            {
                MessageBox.Show("Chưa điền đủ thông tin!", "Kiểm tra lại", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                return;
            }
        }
Пример #12
0
 private void btnSua_Click(object sender, EventArgs e)
 {
     try
     {
         HangDTO hangDTO = new HangDTO();
         hangDTO.MaHang  = txtMaHang.Text;
         hangDTO.TenHang = txtTenHang.Text;
         hangDTO.DonGia  = Convert.ToSingle(txtDonGia.Text);
         hangDTO.SoLuong = Convert.ToInt32(txtSoLuong.Text);
         hangDTO.MaLoai  = cbLoaiHang.SelectedValue.ToString();
         HangBUS.editDataHang(hangDTO);
         loadData();
         MessageBox.Show("Sửa thành công !!!");
     }
     catch (SqlException)
     {
         MessageBox.Show("Có lỗi xảy ra !!!");
     }
 }
Пример #13
0
        public void TestAll()
        {
            var dataChiTietHoaDon = GenerateDataTable <ChiTietHoaDonDTO>(10);
            var dataHoaDon        = GenerateDataTable <HoaDonDTO>(10);
            var dataNV            = GenerateDataTable <NhanVienDTO>(10);
            var dataKH            = GenerateDataTable <KhachHangDTO>(10);
            var dataHang          = GenerateDataTable <HangDTO>(10);

            var listChiTiet = new List <ChiTietHoaDonDTO>();
            var listHoaDon  = new List <HoaDonDTO>();
            var listNV      = new List <NhanVienDTO>();
            var listKH      = new List <KhachHangDTO>();
            var listHang    = new List <HangDTO>();

            var hd = Builder <HoaDonDTO> .CreateNew().Build();

            var cthd = Builder <ChiTietHoaDonDTO> .CreateNew().Build();

            var nv = Builder <NhanVienDTO> .CreateNew().Build();

            var kh = Builder <KhachHangDTO> .CreateNew().Build();

            var hang = Builder <HangDTO> .CreateNew().Build();

            hoaDonDTO        = new HoaDonDTO(hd.IntMaHoaDon, hd.IntMaKH, hd.StrLoaiHoaDon, hd.IntMaNV, hd.DtmNgayLap, hd.StrNguoiLap);
            chiTietHoaDonDTO = new ChiTietHoaDonDTO(cthd.IntMaHoaDon, cthd.StrMaHang, cthd.FltDonGia, cthd.IntSoLuong);
            nhanVienDTO      = new NhanVienDTO(nv.StrMaNV, nv.StrTenNV, nv.StrChucVu, nv.StrDiaChi, nv.StrDienThoai, nv.StrEmail, nv.StrTenDangNhap, nv.StrMatKhau);
            khachHangDTO     = new KhachHangDTO(kh.StrMaKH, kh.StrTenKH, kh.IntSDT, kh.BlnGioiTinh, kh.StrDiaChi, kh.StrLoaiKhachHang);
            hangDTO          = new HangDTO(hang.StrMaHang, hang.StrTenHang, hang.FltDonGia, hang.IntSoLuong, hang.StrGhiChu);

            dataHang.Rows.OfType <DataRow>().ToList().ForEach(x => listHang.Add(new HangDTO(x)));
            dataKH.Rows.OfType <DataRow>().ToList().ForEach(row =>
            {
                row["GioiTinh"] = "1"; listKH.Add(new KhachHangDTO(row));
            });
            dataKH.Rows.OfType <DataRow>().ToList().ForEach(row => {
                row["GioiTinh"] = ""; listKH.Add(new KhachHangDTO(row));
            });
            dataNV.Rows.OfType <DataRow>().ToList().ForEach(x => listNV.Add(new NhanVienDTO(x)));
            dataChiTietHoaDon.Rows.OfType <DataRow>().ToList().ForEach(x => listChiTiet.Add(new ChiTietHoaDonDTO(x)));
            dataHoaDon.Rows.OfType <DataRow>().ToList().ForEach(x => listHoaDon.Add(new HoaDonDTO(x)));
        }
Пример #14
0
        private void btnSua_Click(object sender, EventArgs e)
        {
            HangDTO h = new HangDTO();

            h.Mahang     = txtMaHH.Text;
            h.Tenhang    = txtTenHH.Text;
            h.Donvitinh  = txtDonViTinh.Text;
            h.Dongia     = Convert.ToInt32(txtDonGia.Text);
            h.Soluongco  = Convert.ToInt32(txtSoLuong.Text);
            h.Nhacungcap = cboMaNCC.SelectedValue.ToString();
            h.Maloai     = cboMaLoai.SelectedValue.ToString();


            if (!String.IsNullOrEmpty(txtMaHH.Text))
            {
                try
                {
                    hbus.UpdateHangHoa(h);
                    {
                        MessageBox.Show("Sửa thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        QL_HangHoa_Load(sender, e);
                        setTXT();
                    }
                }
                catch
                {
                    MessageBox.Show("Mã hàng hóa đã tồn tại , kiểm tra lại!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }
            else
            {
                MessageBox.Show("Không có bản ghi!", "Erorr", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
                return;
            }
        }
Пример #15
0
 private void btnThem_Click(object sender, EventArgs e)
 {
     if (txtMaHang.Text.Equals("") || txtTenHang.Text.Equals("") || txtDonGia.Text.Equals("") || txtSoLuong.Text.Equals(""))
     {
         MessageBox.Show("Yêu cầu nhập đủ các trường !!!");
         return;
     }
     try
     {
         HangDTO hangDTO = new HangDTO();
         hangDTO.MaHang  = txtMaHang.Text;
         hangDTO.TenHang = txtTenHang.Text;
         hangDTO.DonGia  = Convert.ToSingle(txtDonGia.Text);
         hangDTO.SoLuong = Convert.ToInt32(txtSoLuong.Text);
         hangDTO.MaLoai  = cbLoaiHang.SelectedValue.ToString();
         HangBUS.addDataHang(hangDTO);
         loadData();
         MessageBox.Show("Thêm thành công !!!");
     }
     catch (SqlException)
     {
         MessageBox.Show("Có lỗi xảy ra !!!");
     }
 }
Пример #16
0
        private int themHang(HangDTO hangDTO)
        {
            bool re = hangBUS.them(hangDTO);

            return(re == true ? 1 : 0);
        }
Пример #17
0
 public static void addDataHang(HangDTO hangDTO)
 {
     DataConnection.excuteNonQuery("insert into Hang values ('" + hangDTO.MaHang + "', '" + hangDTO.TenHang + "', " + hangDTO.DonGia + ", " + hangDTO.SoLuong + ", '" + hangDTO.MaLoai + "')");
 }
Пример #18
0
        public bool them(HangDTO ts)
        {
            bool re = this.HangDAL.them(ts);

            return(re);
        }
Пример #19
0
        private int updateHang(HangDTO hangDTO)
        {
            bool re = hangBUS.sua(hangDTO);

            return(re == true ? 1 : 0);
        }
Пример #20
0
        public bool xoa(HangDTO ts)
        {
            bool re = this.HangDAL.xoa(ts);

            return(re);
        }
Пример #21
0
 public frmEditHang(HangDTO hang)
 {
     InitializeComponent();
     LoadHangCMB();
     setTextToControls(hang);
 }
Пример #22
0
        public void UpdateHangHoa(HangDTO h)
        {
            string sql = "Update Hang2 set TenHang=N'" + h.Tenhang + "',DonViTinh='" + h.Donvitinh + "',DonGia='" + h.Dongia + "',MaLoai='" + h.Maloai + "',MaNCC='" + h.Nhacungcap + "',SoLuong='" + h.Soluongco + "' where MaHH='" + h.Mahang + "'";

            data.ExcuteNonQuery(sql);
        }
Пример #23
0
        public void InsertHangHoa(HangDTO h)
        {
            string sql = "Insert into Hang2 values('" + h.Mahang + "',N'" + h.Tenhang + "','" + h.Donvitinh + "','" + h.Dongia + "','" + h.Maloai + "','" + h.Nhacungcap + "','" + h.Soluongco + "')";

            data.ExcuteNonQuery(sql);
        }
Пример #24
0
 public static void editDataHang(HangDTO hangDTO)
 {
     DataConnection.excuteNonQuery("update Hang set TenHang = '" + hangDTO.TenHang + "', DonGia = " + hangDTO.DonGia + ", SoLuong = " + hangDTO.SoLuong + ", MaLoai = '" + hangDTO.MaLoai + "' where MaHang = '" + hangDTO.MaHang + "'");
 }