示例#1
0
        /// <summary>
        /// Sửa thông tin phiếu nhập hàng
        /// </summary>
        /// <param name="PhieuNhap">
        /// MaPhieuNhap  nvarchar(10)
        /// NgayNhap  smalldatetime
        /// MaNhaCungCap  nvarchar(50)
        /// TongTien  float
        /// ConNo  float
        /// TragThai  int
        /// </param>
        public int Sua(clsPhieuNhapDTO PhieuNhap)
        {
            int    i   = -1;
            string sql = "sp_UpdatePhieuNhap";

            string[] ParameterColection = new string[5];
            Object[] valueofParameter   = new Object[5];
            ParameterColection[0] = "@MaPhieuNhap";
            valueofParameter[0]   = PhieuNhap.MaPhieuNhap;
            ParameterColection[1] = "@NgayNhap";
            valueofParameter[1]   = PhieuNhap.NgayNhap;
            ParameterColection[2] = "@MaNhaCungCap";
            valueofParameter[2]   = PhieuNhap.NhaCungCap.MaNhaCungCap.ToString();
            ParameterColection[3] = "@TongTien";
            valueofParameter[3]   = PhieuNhap.TongTien;
            ParameterColection[4] = "@ConNo";
            valueofParameter[4]   = PhieuNhap.ConNo;
            i = sqlServer.writeData(sql, ParameterColection, valueofParameter);
            //Thêm mới từng chi tiết phiếu nhập
            for (int k = 0; k < PhieuNhap.DS_ChiTietPhieuNhap.Count; k++)
            {
                i = ChihTietPhieuNhapDAO.Them(PhieuNhap.DS_ChiTietPhieuNhap[k]);
            }
            return(i);
        }
示例#2
0
        /// <summary>
        /// Thêm thông tin phiếu nhập
        /// </summary>
        /// <param name="PhieuNhap">
        /// MaPhieuNhap  nvarchar(10)
        /// NgayNhap  smalldatetime
        /// MaNhaCungCap  nvarchar(50)
        /// TongTien  float
        /// ConNo  float
        /// TragThai  int
        /// </param>
        public int Them(clsPhieuNhapDTO PhieuNhap)
        {
            int    i   = -1;
            string sql = "sp_InsertPhieuNhap";

            string[] ParameterColection = new string[7];
            Object[] valueofParameter   = new Object[7];
            ParameterColection[0] = "@MaPhieuNhap";
            valueofParameter[0]   = PhieuNhap.MaPhieuNhap;
            ParameterColection[1] = "@NgayNhap";
            valueofParameter[1]   = PhieuNhap.NgayNhap;
            ParameterColection[2] = "@MaNhaCungCap";
            valueofParameter[2]   = PhieuNhap.NhaCungCap.MaNhaCungCap;
            ParameterColection[3] = "@TongTien";
            valueofParameter[3]   = PhieuNhap.TongTien;
            ParameterColection[4] = "@ConNo";
            valueofParameter[4]   = PhieuNhap.ConNo;
            ParameterColection[5] = "@TrangThai";
            valueofParameter[5]   = PhieuNhap.TrangThai;
            ParameterColection[6] = "@MaNhanVien";
            valueofParameter[6]   = PhieuNhap.NguoiNhap;
            i = sqlServer.writeData(sql, ParameterColection, valueofParameter);
            if (i != -1)
            {
                for (int k = 0; k < PhieuNhap.DS_ChiTietPhieuNhap.Count; k++)
                {
                    i = ChihTietPhieuNhapDAO.Them(PhieuNhap.DS_ChiTietPhieuNhap[k]);
                }
            }
            return(i);
        }
示例#3
0
        private void LuuPhieuNhap(ref String Loi)
        {
            Loi = "";
            try
            {
                Loi = "Xin vui lòng kiểm tra lại dữ liệu nhập";
                clsPhieuNhapDTO PhieuNhap = KhoiTaoPhieuNhap(ref Loi);
                if (PhieuNhap != null)
                {
                    Loi = "Lỗi kết nối cơ sở dữ liệu";
                    if (PhieuNhapBus.LayThongTin(PhieuNhap.MaPhieuNhap) == null)//Phieu nhap nay chua ton tai
                    {
                        if (PhieuNhapBus.Them(PhieuNhap) != -1)
                        {
                            // Hoi co muon cap nhat lai gia mua, gia ban si, gia ban le dua tren % cua mat hang ko?

                            //MessageBox.Show("Lưu phiếu nhập " + PhieuNhap.MaPhieuNhap + " thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            DialogResult result = MessageBox.Show("Lưu phiếu nhập " + txtMaPhieuNhap.Text + " thành công! Bạn có muốn In phiếu nhập này không?", "Xac nhan", MessageBoxButtons.YesNo);
                            if (result == DialogResult.Yes)
                            {
                                // In phiếu nhập hàng
                                In();
                            }
                            LamTuoi();
                            txtMaPhieuNhap.Text = PhieuNhapBus.LayMaPhieuNhapMoi();
                            ThaoTac             = "Them";
                            Loi = "Thành Công";
                        }
                        else
                        {
                            MessageBox.Show("Lưu phiếu nhập không thành công, nguyên nhân do phiếu nhập này đã tồn tại rồi. Xin vui lòng nhập phiếu nhập kho khác", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else//Thao tac cap nhat lai phieu nhap chua duoc tra tien
                    {
                        if (PhieuNhapBus.Sua(PhieuNhap) != -1)
                        {
                            MessageBox.Show("Lưu phiếu nhập " + PhieuNhap.MaPhieuNhap + " thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            LamTuoi();
                            txtMaPhieuNhap.Text = PhieuNhapBus.LayMaPhieuNhapMoi();
                            ThaoTac             = "Them";
                            Loi = "Thành Công";
                        }
                        else
                        {
                            MessageBox.Show("Lưu phiếu nhập không thành công, nguyên nhân do phiếu nhập này đã tồn tại rồi. Xin vui lòng nhập phiếu nhập kho khác", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
                else
                {
                    MessageBox.Show(Loi, "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(Loi, "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#4
0
        public Boolean KiemTraHuyPhieuNhap(string MaPhieuNhap)
        {
            clsPhieuNhapDTO PhieuNhap = PhieuNhapDAO.LayThongTin(MaPhieuNhap);
            Boolean         Co        = true;

            for (int i = 0; i < PhieuNhap.DS_ChiTietPhieuNhap.Count; i++)
            {
                //So luong tra hang lon hon so luong ton hay noi cach khac la mat hang nay da ban roi nen ko cho phep huy phieu nhap
                if (PhieuNhap.DS_ChiTietPhieuNhap[i].SoLuongTon < PhieuNhap.DS_ChiTietPhieuNhap[i].SoLuong)
                {
                    Co = false;
                    break;
                }
            }
            return(Co);
        }
示例#5
0
        //Khởi tạo phiếu nhập hàng vào kho
        private clsPhieuNhapDTO KhoiTaoPhieuNhap(ref string Loi)
        {
            clsPhieuNhapDTO PhieuNhap = new clsPhieuNhapDTO();

            PhieuNhap.NguoiNhap = clsUser.MaNhanVien;
            if (grdvNhapHang.Rows.Count == 0)
            {
                Loi = "Xin vui lòng nhập mặt hàng cần nhập vào kho!";
                return(null);
            }
            if (txtMaPhieuNhap.Text.Length >= 4)
            {
                if (txtMaPhieuNhap.Text.Substring(0, 3) == "PNK")
                {
                    int SoPhieuNhap = -1;
                    if (int.TryParse(txtMaPhieuNhap.Text.Substring(3, (txtMaPhieuNhap.Text.Length - 3)), out SoPhieuNhap) == true && SoPhieuNhap > 0)
                    {
                        PhieuNhap.MaPhieuNhap = txtMaPhieuNhap.Text;
                    }
                    else
                    {
                        Loi = "Xin vui lòng nhập Phiếu nhập có dạng như sau: PNK + Số thứ tự (Số nguyên dương) vd: PNK1, PNK2,... !";
                        return(null);
                    }
                }
                else
                {
                    Loi = "Xin vui lòng nhập Phiếu nhập có dạng như sau: PNK + Số thứ tự (Số nguyên dương) vd: PNK1, PNK2,... !";
                    return(null);
                }
            }
            PhieuNhap.NgayNhap = dtpNgayNhap.Value;
            Loi = "Xin vui lòng chọn nhà cung cấp!";
            if (cboNhaCungCap.SelectedItem == null || ((DataRowView)cboNhaCungCap.SelectedItem).Row["MaNhaCungCap"].ToString().Trim() == "")
            {
                return(null);
            }
            PhieuNhap.NhaCungCap.MaNhaCungCap = ((DataRowView)cboNhaCungCap.SelectedItem).Row["MaNhaCungCap"].ToString();
            PhieuNhap.TongTien = double.Parse(txtTongCong.Text);
            PhieuNhap.ConNo    = PhieuNhap.TongTien;
            Loi = "Xin vui lòng kiểm tra lại các mặt hàng đã nhập!";
            PhieuNhap.DS_ChiTietPhieuNhap = KhoiTaoChiTietPhieuNhap(PhieuNhap.MaPhieuNhap);

            return(PhieuNhap);
        }
示例#6
0
        /// <summary>
        /// chuyển từ một dòng sang đối tượng PhieuNhapDTO
        /// </summary>
        private clsPhieuNhapDTO ChuyenDoi(DataTable table)
        {
            clsPhieuNhapDTO PhieuNhap = new clsPhieuNhapDTO();

            if (table.Rows.Count == 1)
            {
                DataRow Dong = table.Rows[0];
                PhieuNhap.MaPhieuNhap              = Dong["MaPhieuNhap"].ToString();
                PhieuNhap.NgayNhap                 = DateTime.Parse(Dong["NgayNhap"].ToString());
                PhieuNhap.NhaCungCap.MaNhaCungCap  = Dong["MaNhaCungCap"].ToString();
                PhieuNhap.NhaCungCap.TenNhaCungCap = Dong["TenNhaCungCap"].ToString();
                PhieuNhap.TongTien                 = Double.Parse(Dong["TongTien"].ToString());
                PhieuNhap.ConNo               = Double.Parse(Dong["ConNo"].ToString());
                PhieuNhap.TrangThai           = int.Parse(Dong["TrangThai"].ToString());
                PhieuNhap.NguoiNhap           = Dong["MaNhanVien"].ToString();
                PhieuNhap.DS_ChiTietPhieuNhap = ChihTietPhieuNhapDAO.LayDanhSach(PhieuNhap.MaPhieuNhap);
            }
            else
            {
                return(null);
            }
            return(PhieuNhap);
        }
示例#7
0
        private void XemPhieuNhapTheoMaPhieuNhap(string MaPhieuNhap)
        {
            LamTuoi();
            clsPhieuNhapDTO PhieuNhap = PhieuNhapBus.LayThongTin(MaPhieuNhap);

            if (PhieuNhap != null)
            {
                if (PhieuNhap.TongTien != PhieuNhap.ConNo)
                {
                    AnCacVungNhapLieu(false);
                    btnInRa.Enabled = true;
                }
                else
                {
                    if (PhieuNhapBus.KiemTraHuyPhieuNhap(MaPhieuNhap) == true)
                    {
                        ThaoTac = "CapNhat";
                        AnCacVungNhapLieu(true);
                    }
                    else
                    {
                        AnCacVungNhapLieu(false);
                        btnInRa.Enabled = true;
                    }
                }
                cboNhaCungCap.SelectedValue = PhieuNhap.NhaCungCap.MaNhaCungCap;
                txtDiaChi.Text    = ((DataRowView)cboNhaCungCap.SelectedItem).Row["DiaChi"].ToString();
                txtDienThoai.Text = ((DataRowView)cboNhaCungCap.SelectedItem).Row["DienThoai"].ToString();
                dtpNgayNhap.Value = PhieuNhap.NgayNhap;
                for (int i = 0; i < PhieuNhap.DS_ChiTietPhieuNhap.Count; i++)
                {
                    object[] Dong = new object[9];
                    int      STT  = (grdvNhapHang.RowCount + 1);
                    Dong[0] = STT.ToString();
                    Dong[1] = PhieuNhap.DS_ChiTietPhieuNhap[i].MatHang.MaMatHang;
                    Dong[2] = PhieuNhap.DS_ChiTietPhieuNhap[i].MatHang.TenMatHang;
                    Dong[3] = PhieuNhap.DS_ChiTietPhieuNhap[i].MatHang.DonViTinh;
                    Dong[4] = PhieuNhap.DS_ChiTietPhieuNhap[i].SoLuong.ToString();;
                    Dong[5] = clsSupport.CurrencyNumber(PhieuNhap.DS_ChiTietPhieuNhap[i].DonGia.ToString());
                    Dong[6] = PhieuNhap.DS_ChiTietPhieuNhap[i].ChietKhau.ToString() + "%";
                    Dong[7] = PhieuNhap.DS_ChiTietPhieuNhap[i].ThueVAT.ToString() + "%";
                    Dong[8] = clsSupport.CurrencyNumber(PhieuNhap.DS_ChiTietPhieuNhap[i].ThanhTien.ToString());
                    grdvNhapHang.Rows.Add(Dong);
                }
                //Tinh tien hang
                txtTienHang.Text = TinhTongTienHang().ToString();
                //Tinh tien thueVAT
                txtThueVAT.Text = TinhTongTienThue().ToString();
                //Tinh tien chiet khau
                txtChietKhau.Text = TinhTongTienChietKhau().ToString();
                //Tinh tong tien
                txtTongCong.Text = TinhTongTien().ToString();
            }
            else
            {
                ThaoTac = "Them";
                string Loi = "";
                if (txtMaPhieuNhap.Text.Length >= 4)
                {
                    if (txtMaPhieuNhap.Text.Substring(0, 3) == "PNK")
                    {
                        int SoPhieuNhap = -1;
                        if (int.TryParse(txtMaPhieuNhap.Text.Substring(3, (txtMaPhieuNhap.Text.Length - 3)), out SoPhieuNhap) == true && SoPhieuNhap > 0)
                        {
                            DialogResult result = MessageBox.Show("Phiếu nhập kho " + txtMaPhieuNhap.Text + " không tồn tại. Bạn có muốn tạo mới phiếu nhập kho này không?", "Xac nhan", MessageBoxButtons.YesNo);
                            if (result == DialogResult.Yes)
                            {
                                AnCacVungNhapLieu(true);
                                ThaoTac = "Them";
                            }
                        }
                        else
                        {
                            Loi = "Xin vui lòng nhập Phiếu nhập có dạng như sau: PNK + Số thứ tự (Số nguyên dương) vd: PNK1, PNK2,... !";
                            MessageBox.Show(Loi, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                    else
                    {
                        Loi = "Xin vui lòng nhập Phiếu nhập có dạng như sau: PNK + Số thứ tự (Số nguyên dương) vd: PNK1, PNK2,... !";
                        MessageBox.Show(Loi, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
        }
示例#8
0
 /// <summary>
 /// Sửa thông tin phiếu nhập
 /// </summary>
 /// <param name="PhieuNhap">
 /// MaPhieuNhap  nvarchar(10)
 /// NgayNhap  smalldatetime
 /// MaNhaCungCap  nvarchar(50)
 /// TongTien  float
 /// ConNo  float
 /// TragThai  int
 /// </param>
 public int Sua(clsPhieuNhapDTO PhieuNhap)
 {
     return(PhieuNhapDAO.Sua(PhieuNhap));
 }
示例#9
0
 /// <summary>
 /// Thêm thông tin phiếu nhập hàng
 /// </summary>
 /// <param name="PhieuNhap">
 /// MaPhieuNhap  nvarchar(10)
 /// NgayNhap  smalldatetime
 /// MaNhaCungCap  nvarchar(50)
 /// TongTien  float
 /// ConNo  float
 /// TragThai  int
 /// </param>
 public int Them(clsPhieuNhapDTO PhieuNhap)
 {
     return(PhieuNhapDAO.Them(PhieuNhap));
 }
示例#10
0
 public clsChiTietPhieuChiDTO()
 {
     MaPhieuChi = "";
     PhieuNhap  = new clsPhieuNhapDTO();
     SoTien     = 0;
 }
示例#11
0
 public clsChiTietPhieuChiDTO(string _MaPhieuChi, clsPhieuNhapDTO _PhieuNhap, double _SoTien)
 {
     MaPhieuChi = _MaPhieuChi;
     PhieuNhap  = _PhieuNhap;
     SoTien     = _SoTien;
 }