Пример #1
0
        public int ThemChiTietPhieuChuyenKho()
        {
            for (int i = 0; i < grvchuyenkho.RowCount - 1; i++)
            {
                ct_pck.SoLuong          = int.Parse(grvchuyenkho.GetRowCellValue(i, "SoLuong").ToString());
                ct_pck.DonVi            = grvchuyenkho.GetRowCellValue(i, "DonVi").ToString();
                ct_pck.DonGia           = float.Parse(grvchuyenkho.GetRowCellValue(i, "DonGia").ToString());
                ct_pck.ThanhTien        = float.Parse(grvchuyenkho.GetRowCellValue(i, "ThanhTien").ToString());
                ct_pck.MaSanPham        = grvchuyenkho.GetRowCellValue(i, "MaHang").ToString();
                ct_pck.TenSanPham       = grvchuyenkho.GetRowCellValue(i, "TenHang").ToString();
                ct_pck.MaPhieuChuyenKho = pck.MaCK;
                // Kiểm tra xem Hàng Hóa này ở kho chuyển đã tồn tại
                PhieuBanHangBUS phieuBanHangBUS = new PhieuBanHangBUS();
                // nếu chưa có thì tạo mới
                phieuBanHangBUS.TaoHangHoaMoiChoKho(ct_pck.MaSanPham, ct_pck.SoLuong, pck.KhoXuatHang, ct_pck.TenSanPham);
                // Kiểm tra xem Hàng Hóa này ở kho nhận đã có có chưa
                // nếu chưa có thì tạo mới
                phieuBanHangBUS.TaoHangHoaMoiChoKho(ct_pck.MaSanPham, ct_pck.SoLuong, pck.KhoNhanHang, ct_pck.TenSanPham);

                if (UC_PhieuChuyenKhoBUS.ThemCT_PhieuChuyenKho(ct_pck) < 1)
                {
                    return(0);
                }
                else// chuyển kho thành công thì cập nhật số lượng
                {
                    // cập nhật hàng hóa ở kho chuyển
                    phieuBanHangBUS.CapNhatSoLuongHangHoa(ct_pck.MaSanPham, ct_pck.SoLuong, pck.KhoXuatHang);
                    // cập nhật số lượng ở kho nhận
                    phieuBanHangBUS.CapNhatSoLuongHangHoa(ct_pck.MaSanPham, -ct_pck.SoLuong, pck.KhoNhanHang);
                }
            }
            return(1);
        }