public void TestChungTu_MaVachIsNotEmpTy()
 {
     try
     {
         frm_ListChungTuNhap frm = new frm_ListChungTuNhap();
         frm.PO        = "PO010007000000004";
         frm.PhieuNhap = "PN010007000000004";
         frmChiTietChungTuNhapNcc frmchitiet = new frmChiTietChungTuNhapNcc(frm.OID, frm.PhieuNhap, frm.NgayLap.ToString(), frm.PO);
         frmchitiet.TestLoadData();
         //for (int i = 0; i < frmchitiet.liSanPhamOld.Count; i++)
         //{
         //    frmchitiet.TestClick(i);
         //    frmChungTuNhap_ChiTietHangHoaBase frmchitiethh = new frmChungTuNhap_ChiTietHangHoaBase(frmchitiet, frmchitiet.LiHangHoa);
         //    frmchitiethh.TestLoad();
         //    for (int j = 0; j < frmchitiet.LiHangHoa[0].SoLuong; j++)
         //    {
         //        frmchitiethh.SetInput("");
         //        frmchitiethh.TestAddNew();
         //    }
         //}
     }
     catch (Exception ex)
     {
         Assert.AreEqual(ex.Message, "Mã vạch không được để trống !");
     }
 }
 public void TestChungTu_VuotQuaSoLuongMaVach()
 {
     try
     {
         frm_ListChungTuNhap frm = new frm_ListChungTuNhap();
         frm.PO        = "PO010007000000004";
         frm.PhieuNhap = "PN010007000000004";
         frmChiTietChungTuNhapNcc frmchitiet = new frmChiTietChungTuNhapNcc(frm.OID, frm.PhieuNhap, frm.NgayLap.ToString(), frm.PO);
         frmchitiet.TestLoadData();
         //for (int i = 0; i < frmchitiet.liSanPhamOld.Count; i++)
         //{
         //    frmchitiet.TestClick(i);
         //    frmChungTuNhap_ChiTietHangHoaBase frmchitiethh = new frmChungTuNhap_ChiTietHangHoaBase(frmchitiet, frmchitiet.LiHangHoa);
         //    frmchitiethh.TestLoad();
         //    for (int j = 0; j < frmchitiet.LiHangHoa[0].SoLuong+1; j++)
         //    {
         //        frmchitiethh.SetInput("0123456789");
         //        frmchitiethh.TestAddNew();
         //    }
         //}
     }
     catch (Exception ex)
     {
         Assert.AreEqual(ex.Message, "Số lượng mã vạch đã đủ. Không thể nhập thêm !");
     }
 }
        public void TestChungTu_InsertSuccess()
        {
            List <DMChungTuNhapInfo> li1 = tblChungTuDataProvider.Search(sophieu);

            if (li1.Count > 0)
            {
                tblChungTuDataProvider.Delete("PN010007000000004");
            }
            frm_ListChungTuNhap frm = new frm_ListChungTuNhap();

            frm.PO        = "PO010007000000004";
            frm.PhieuNhap = "PN010007000000004";
            frmChiTietChungTuNhapNcc frmchitiet = new frmChiTietChungTuNhapNcc(frm.OID, frm.PhieuNhap, frm.NgayLap.ToString(), frm.PO);

            frmchitiet.TestLoadData();
            //for (int i = 0; i < frmchitiet.liSanPhamOld.Count; i++)
            //{
            //    frmchitiet.TestClick(i);
            //    frmChungTuNhap_ChiTietHangHoaBase frmchitiethh = new frmChungTuNhap_ChiTietHangHoaBase(frmchitiet,frmchitiet.LiHangHoa);
            //    frmchitiethh.TestLoad();
            //    for (int j = 0; j < frmchitiet.LiHangHoa[0].SoLuong; j++)
            //    {
            //        if (frmchitiet.LiHangHoa[0].TrungMaVach == 0)
            //        {
            //            frmchitiethh.SetInput("1234567890");
            //            frmchitiethh.TestAddNew();
            //        }
            //        else
            //        {
            //            for (int k = 0; k < frmchitiet.LiHangHoa[0].SoLuong; k++)
            //            {
            //                frmchitiethh.SetInput("123456789" + k);
            //                frmchitiethh.TestAddNew();
            //            }
            //        }
            //    }
            //    frmchitiethh.TestSave();
            //}
            frmchitiet.TestSave();
            List <DMChungTuNhapInfo> li = tblChungTuDataProvider.Search(sophieu);

            Assert.AreEqual(li.Count, 1);
        }
 public void TestChungTu_SanPhamChuaDuMaVach()
 {
     try
     {
         frm_ListChungTuNhap frm = new frm_ListChungTuNhap();
         frm.PO        = "PO010007000000004";
         frm.PhieuNhap = "PN010007000000004";
         frmChiTietChungTuNhapNcc frmchitiet = new frmChiTietChungTuNhapNcc(frm.OID, frm.PhieuNhap, frm.NgayLap.ToString(), frm.PO);
         frmchitiet.TestLoadData();
         //for (int i = 0; i < frmchitiet.liSanPhamOld.Count-1; i++)
         //{
         //    frmchitiet.TestClick(i);
         //    frmChungTuNhap_ChiTietHangHoaBase frmchitiethh = new frmChungTuNhap_ChiTietHangHoaBase(frmchitiet, frmchitiet.LiHangHoa);
         //    frmchitiethh.TestLoad();
         //    for (int j = 0; j < frmchitiet.LiHangHoa[0].SoLuong; j++)
         //    {
         //        if (frmchitiet.LiHangHoa[0].TrungMaVach == 0)
         //        {
         //            frmchitiethh.SetInput("1234567890");
         //            frmchitiethh.TestAddNew();
         //        }
         //        else
         //        {
         //            for (int k = 0; k < frmchitiet.LiHangHoa[0].SoLuong; k++)
         //            {
         //                frmchitiethh.SetInput("123456789" + k);
         //                frmchitiethh.TestAddNew();
         //            }
         //        }
         //    }
         //    frmchitiethh.TestSave();
         //}
         //frmchitiet.TestSave();
     }
     catch (Exception ex)
     {
         Assert.AreEqual(ex.Message, "Bạn chưa nhập đủ mã vạch cho các sản phẩm !");
     }
 }
        private void ChiTiet()
        {
            OID = 0;
            GetValue();

            var nhapHangUserInfo = (tmp_NhapHang_UserInfo)grvChiTiet.GetRow(grvChiTiet.FocusedRowHandle);

            if (nhapHangUserInfo.IdDoiTuong == 0)
            {
                throw new ManagedException("Không tìm thấy mã nhà cung cấp trong hệ thống! Đề nghị Data kiểm tra lại.");
            }

            if (!String.IsNullOrEmpty(PO)) //&& CheckUser(PO)
            {
                if (PurchaseOrderProvider.Instance.LockSession(
                        currentTrungTam.MaTrungTam, currentKho.MaKho,
                        LoaiGiaoDichPO.NHAP_HANG_NHA_CUNG_CAP, PO, PhieuNhap, nhapHangUserInfo.TransactionDate, nhapHangUserInfo.NgayNhap) == 0)
                {
                    throw new ManagedException("Phiếu nhập này đang bị lock bởi người dùng khác, không thể thực hiện được.");
                }

                tmp_NhapHang_LogInfo tmpNhapHangLogInfo =
                    new tmp_NhapHang_LogInfo
                {
                    SoPO         = PO,
                    SoPhieuNhap  = PhieuNhap,
                    NguoiNhap    = Declare.UserName,
                    LoaiGiaoDich =
                        Convert.ToInt32(
                            LoaiGiaoDichPO.NHAP_HANG_NHA_CUNG_CAP),
                };

                List <tmp_NhapHang_LogInfo> liNhapHang =
                    tmp_NhapHang_LogDataProvider.GetNhapHangLogBySoPO(tmpNhapHangLogInfo);

                if (((NguoiDungInfor)Declare.USER_INFOR).SupperUser != 1)
                {
                    if (liNhapHang.Count > 0)
                    {
                        tmp_NhapHang_LogDataProvider.Update(Declare.UserName, PO, PhieuNhap,
                                                            Convert.ToInt32(LoaiGiaoDichPO.NHAP_HANG_NHA_CUNG_CAP), Declare.IdKho);
                    }
                    else
                    {
                        tmp_NhapHang_LogDataProvider.Insert(Declare.UserName, PO, PhieuNhap,
                                                            Convert.ToInt32(LoaiGiaoDichPO.NHAP_HANG_NHA_CUNG_CAP), Declare.IdKho);
                    }
                }

                ChungTuXuatNhapNccInfo chungTuXuatNhapNccInfo = tblChungTuDataProvider.GetChungTuNhapNCCFromSoPO(
                    PO, PhieuNhap, Convert.ToInt32(TransactionType.NHAP_PO), Declare.IdKho, NgayLap, nhapHangUserInfo.IdChungTu);

                ChungTuXuatNhapNccInfo chungtu = tblChungTuDataProvider.GetLichSuChungTuNhapNCCFromSoPO(PO, PhieuNhap,
                                                                                                        Declare.IdKho,
                                                                                                        NgayLap);
                if (chungTuXuatNhapNccInfo == null)
                {
                    chungTuXuatNhapNccInfo = new ChungTuXuatNhapNccInfo
                    {
                        SoChungTu   = CommonProvider.Instance.GetSoPhieu(Declare.Prefix.PhieuNhapHangMua),
                        NgayLap     = NgayLap,
                        SoPO        = PO,
                        SoPhieuNhap = PhieuNhap,
                        LoaiChungTu = Convert.ToInt32(TransactionType.NHAP_PO),
                        IdDoiTuong  = nhapHangUserInfo.IdDoiTuong,
                        NguoiNhap   = nhapHangUserInfo.NguoiNhap,
                        NCC         = nhapHangUserInfo.NCC
                    };
                }

                Form frm;

                if (ConnectionUtil.Instance.IsUAT == 1)
                {
                    frm = new frmChiTietChungTuNhapNcc(this, chungTuXuatNhapNccInfo, NgayLap,
                                                       chungtu.FullNameNhap, chungtu.TenCTCK,
                                                       chungtu.TienCTCK);
                }
                else
                {
                    frm = new frmChiTietChungTuNhapNcc2(this, chungTuXuatNhapNccInfo, NgayLap,
                                                        chungtu.FullNameNhap, chungtu.TenCTCK,
                                                        chungtu.TienCTCK);
                }

                if (frm.ShowDialog() == DialogResult.OK)
                {
                    frmProgress.Instance.DoWork(LoadDuLieu);
                }

                PurchaseOrderProvider.Instance.UnLockSession(
                    currentTrungTam.MaTrungTam, currentKho.MaKho,
                    LoaiGiaoDichPO.NHAP_HANG_NHA_CUNG_CAP, PO, PhieuNhap, nhapHangUserInfo.TransactionDate, nhapHangUserInfo.NgayNhap);
            }
            else
            {
                throw new ManagedException("Phiếu đã có người truy cập !");
            }
        }