protected override bool CellValidating(object objValidating, int colIndex, int rowIndex) { if (dgvList.Columns[colIndex].Name == "clSoLuong") { ChungTu_ChiTietHangHoaBaseInfo info = ((ChungTu_ChiTietHangHoaBaseInfo)dgvList.CurrentRow.DataBoundItem); if (info == null) { return(true); } int SLMoi = Convert.ToInt32(objValidating); ListNTH.ForEach(delegate(ChungTu_ChiTietHangHoaBaseInfo match) { if (match.MaVach == info.MaVach.Trim() && match.IdSanPham == liHangHoa.IdSanPham && match.SoLuong < SLMoi) { throw new ManagedException("Số lượng mã vạch này đã vượt quá số lượng mã vạch đã xuất!"); } }); //if (info.SoLuongTT < SLMoi) //{ // e.Cancel = true; // throw new ManagedException("Số lượng tồn không đủ để xuất !"); //} } return(base.CellValidating(objValidating, colIndex, rowIndex)); }
public void UpdateCTHH(ChungTu_ChiTietHangHoaBaseInfo info) { ExecuteCommand(Declare.StoreProcedureNamespace.spChungTuChiTietHHXNBUpdate, info.IdChungTuChiTiet, info.IdChiTietHangHoa, info.SoLuong); }
public void InsertTmp(ChungTu_ChiTietHangHoaBaseInfo chiTietHangHoaInfo, string soChungTu) { ExecuteCommand(@"insert into TBL_TMP_MAVACH_DIEUCHUYEN(dongia, idchitiethanghoa, idchungtuchitiet, idsanpham, masanpham, mavach, soluong, tendonvitinh, tensanpham, thanhtien, trangthai, trungmavach, sochungtu) values(:dongia, :idchitiethanghoa, :idchungtuchitiet, :idsanpham, :masanpham, :mavach, :soluong, :tendonvitinh, :tensanpham, :thanhtien, :trangthai, :trungmavach, :sochungtu)", chiTietHangHoaInfo.DonGia, chiTietHangHoaInfo.IdChiTietHangHoa, chiTietHangHoaInfo.IdChungTuChiTiet, chiTietHangHoaInfo.IdSanPham, String.IsNullOrEmpty(chiTietHangHoaInfo.MaSanPham) ? String.Empty : chiTietHangHoaInfo.MaSanPham, chiTietHangHoaInfo.MaVach, chiTietHangHoaInfo.SoLuong, String.IsNullOrEmpty(chiTietHangHoaInfo.TenDonViTinh) ? String.Empty : chiTietHangHoaInfo.TenDonViTinh, String.IsNullOrEmpty(chiTietHangHoaInfo.TenSanPham) ? String.Empty : chiTietHangHoaInfo.TenSanPham, chiTietHangHoaInfo.ThanhTien, chiTietHangHoaInfo.TrangThai, chiTietHangHoaInfo.TrungMaVach, soChungTu); }
private void SaveBusinessXuatDieuChuyenTG() { ChungTu_ChiTietInfo obj = tbl_ChungTuDAO.Instance.GetIdChungTuBySoPhieu(chungTuInfo.SoChungTu, Convert.ToInt32(TransactionType.DE_NGHI_XUAT_DIEU_CHUYEN_TRUNG_GIAN)); if (obj == null) { return; } int idChungTu = 0; if (obj != null) { idChungTu = obj.IdChungTu; } ChungTuXuatDieuChuyenInfo chungTuXuatDieuChuyenTGInfor = DeNghiXuatDieuChuyenTGDataProvider.Instance.GetChungTuXuatDCTGBySoCTGoc(chungTuInfo.SoChungTu); ChungTuXuatDieuChuyenInfo chungTuXuatDieuChuyen = DeNghiNhapDieuChuyenDataProvider.Instance.GetListDNNDCBySoCT(soCTG); if (chungTuXuatDieuChuyenTGInfor != null) { if (chungTuXuatDieuChuyenTGInfor.IdNguoiNhapXuatKho == 0) { chungTuXuatDieuChuyenTGInfor.IdNguoiNhapXuatKho = Declare.IdNhanVien; } chungTuXuatDieuChuyenTGInfor.LoaiChungTu = Convert.ToInt32(TransactionType.XUAT_DIEU_CHUYEN_TRUNG_GIAN); if (dtNgayLap.DateTime == DateTime.MinValue) { chungTuXuatDieuChuyenTGInfor.NgayNhapXuatKho = CommonProvider.Instance.GetSysDate(); } else { chungTuXuatDieuChuyenTGInfor.NgayNhapXuatKho = Convert.ToDateTime(dtNgayLap.EditValue, new CultureInfo("vi-VN")); } XuatDieuChuyenTGBussiness = new XuatDieuChuyenTGBussiness(chungTuXuatDieuChuyenTGInfor); } else { XuatDieuChuyenTGBussiness = new XuatDieuChuyenTGBussiness(new ChungTuXuatDieuChuyenInfo { //detail của phiếu xuất điều chuyển LoaiChungTu = Convert.ToInt32(TransactionType.XUAT_DIEU_CHUYEN_TRUNG_GIAN), IdChungTu = idChungTu, SoChungTu = CommonProvider.Instance.GetSoPhieu(Declare.Prefix.PhieuXuatDieuChuyenTrungGian), SoChungTuGoc = txtSoPhieu.Text.Trim(), NgayNhapXuatKho = CommonProvider.Instance.GetSysDate(), //Convert.ToDateTime(dtNgayLap.EditValue, new CultureInfo("vi-VN")), IdKho = -chungTuXuatDieuChuyen.IdKho, IdNguoiNhapXuatKho = Declare.IdNhanVien, }); } //chi tiết phiếu nhận điều chuyển XuatDieuChuyenTGBussiness.ListChiTietChungTu.RemoveAll( delegate(ChungTu_ChiTietInfo matchRemove) { return(!business.ListChiTietChungTu.Exists( delegate(ChungTu_ChiTietInfo matchExists) { return matchExists.IdSanPham == matchRemove.IdSanPham; })); }); foreach (ChungTu_ChiTietInfo chungTuChiTietInfo in business.ListChiTietChungTu) { ChungTu_ChiTietInfo chiTietHangHoaNhanDieuChuyen = XuatDieuChuyenTGBussiness.ListChiTietChungTu.Find( delegate(ChungTu_ChiTietInfo match) { return(match.IdSanPham == chungTuChiTietInfo.IdSanPham); }); if (chiTietHangHoaNhanDieuChuyen == null) { XuatDieuChuyenTGBussiness.ListChiTietChungTu.Add( new ChungTu_ChiTietInfo { IdChungTu = idChungTu, IdSanPham = chungTuChiTietInfo.IdSanPham, SoLuong = chungTuChiTietInfo.SoLuong }); } else { chiTietHangHoaNhanDieuChuyen.SoLuong = chungTuChiTietInfo.SoLuong; } } XuatDieuChuyenTGBussiness.ListChiTietHangHoa.RemoveAll( delegate(ChungTu_ChiTietHangHoaBaseInfo matchRemove) { return(!business.ListChiTietHangHoa.Exists( delegate(ChungTu_ChiTietHangHoaBaseInfo matchExists) { return matchExists.IdSanPham == matchRemove.IdSanPham && matchExists.MaVach == matchRemove.MaVach; })); }); foreach (ChungTu_ChiTietHangHoaBaseInfo chungTuChiTietInfo in business.ListChiTietHangHoa) { ChungTu_ChiTietHangHoaBaseInfo chiTietHangHoaNhanDieuChuyen = XuatDieuChuyenTGBussiness.ListChiTietHangHoa.Find( delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return(match.MaVach == chungTuChiTietInfo.MaVach && match.IdSanPham == chungTuChiTietInfo.IdSanPham); }); if (chiTietHangHoaNhanDieuChuyen == null) { XuatDieuChuyenTGBussiness.ListChiTietHangHoa.Add( new ChungTu_ChiTietHangHoaBaseInfo { MaVach = chungTuChiTietInfo.MaVach, IdSanPham = chungTuChiTietInfo.IdSanPham, SoLuong = chungTuChiTietInfo.SoLuong, //IdChungTuChiTiet = chungTuChiTietInfo.IdChungTuChiTiet }); } else { chiTietHangHoaNhanDieuChuyen.SoLuong = chungTuChiTietInfo.SoLuong; } } //xét trạng thái cho phiếu nhận điều chuyển int SumChiTietMaVach = 0; int SumChiTietChungTu = 0; foreach (ChungTu_ChiTietHangHoaBaseInfo chungTuChiTietHangHoaBaseInfo in XuatDieuChuyenTGBussiness.ListChiTietHangHoa) { SumChiTietMaVach += chungTuChiTietHangHoaBaseInfo.SoLuong; } foreach (ChungTu_ChiTietInfo chungTuChiTietInfo in XuatDieuChuyenTGBussiness.ListChiTietChungTu) { SumChiTietChungTu += chungTuChiTietInfo.SoLuong; } if (SumChiTietChungTu == SumChiTietMaVach) { XuatDieuChuyenTGBussiness.ChungTu.TrangThai = Convert.ToInt32(TrangThaiDieuChuyen.DA_XUAT); } //hah: khong thuc hien save chung tu tai day }
internal void Insert(ChungTu_ChiTietHangHoaBaseInfo chungTuHangHoaChiTietInfor) { ExecuteCommand(Declare.StoreProcedureNamespace.spChungTuChiTietHHXTHInsert, chungTuHangHoaChiTietInfor.IdChungTuChiTiet, chungTuHangHoaChiTietInfor.IdChiTietHangHoa, chungTuHangHoaChiTietInfor.SoLuong); }
//todo: @HANHBD (DONE) store này không xóa trong chứng từ chi tiết hàng hóa //việc thực hiện xóa trong trong bảng chứng từ chi tiết hàng hóa có thể dùng một store chung //vì giống nhau prototype hàm (idChungTuChiTiet, idChiTietHangHoa) internal void Delete(ChungTu_ChiTietHangHoaBaseInfo infor) { ExecuteCommand(Declare.StoreProcedureNamespace.spChungTuChiTietHangHoaDelete, infor.IdChungTuChiTiet, infor.IdChiTietHangHoa); }
private void btnXacNhan_Click(object sender, EventArgs e) { try { OpenFileDialog opf = new OpenFileDialog(); if (opf.ShowDialog() == DialogResult.OK) { DataSet ds; string sql = String.Empty; using (OleDbConnection oConn = new OleDbConnection()) { ds = new DataSet(); oConn.ConnectionString = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=Yes\"", opf.FileName); oConn.Open(); sql = "Select [MA_HANG_HOA] as MaSanPham, [SERIAL] as MaVach, [SO_LUONG] as SoLuong from [Items$]"; using (OleDbDataAdapter ad = new OleDbDataAdapter(sql, oConn)) { ad.Fill(ds, "HangHoaChiTiet"); } } business.ListChiTietHangHoa.Clear(); foreach (ChungTu_ChiTietInfo chungTuChiTietInfor in business.ListChiTietChungTu) { ds.Tables[0].DefaultView.RowFilter = String.Format("MaSanPham='{0}'", chungTuChiTietInfor.MaSanPham); DataTable tableTemp = ds.Tables[0].DefaultView.ToTable("Temp"); foreach (DataRow dataRow in tableTemp.Rows) { if (dataRow["MaVach"] == DBNull.Value || String.IsNullOrEmpty(Convert.ToString(dataRow["MaVach"]))) { throw new ManagedException("Đang có dòng không được nhập mã vạch."); } ChungTu_ChiTietHangHoaBaseInfo chiTietMaVach = business.ListChiTietHangHoa.Find( delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return (match.MaVach == Convert.ToString(dataRow["MaVach"])); }); if (chiTietMaVach == null) { business.ListChiTietHangHoa.Add( new ChungTu_ChiTietHangHoaBaseInfo { IdSanPham = chungTuChiTietInfor.IdSanPham, IdChungTuChiTiet = chungTuChiTietInfor.IdChungTuChiTiet, MaVach = Convert.ToString(dataRow["MaVach"]), SoLuong = Convert.ToInt32(dataRow["SoLuong"]), TrungMaVach = chungTuChiTietInfor.TrungMaVach }); } else { chiTietMaVach.SoLuong += Convert.ToInt32(dataRow["SoLuong"]); } } } } } catch (Exception ex) { #if DEBUG MessageBox.Show(ex.ToString()); #else MessageBox.Show(ex.Message); #endif throw; } }
private void btnXacNhan_Click(object sender, EventArgs e) { try { OpenFileDialog opf = new OpenFileDialog(); if (opf.ShowDialog() == DialogResult.OK) { DataSet ds; string sql = String.Empty; using (OleDbConnection oConn = new OleDbConnection()) { ds = new DataSet(); oConn.ConnectionString = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=Yes\"", opf.FileName); oConn.Open(); sql = "Select [MA_HANG_HOA] as MaSanPham, [SERIAL] as MaVach, [SO_LUONG] as SoLuong from [Items$]"; using (OleDbDataAdapter ad = new OleDbDataAdapter(sql, oConn)) { ad.Fill(ds, "HangHoaChiTiet"); } sql = "Select [MA_HANG_HOA] as MaSanPham, [SERIAL] as MaVach, SUM([SO_LUONG]) as SoLuong from [Items$] group by [MA_HANG_HOA], [SERIAL]"; using (OleDbDataAdapter ad = new OleDbDataAdapter(sql, oConn)) { ad.Fill(ds, "TblCheck"); } } foreach (ChungTu_ChiTietInfo chungTuChiTietInfor in business.ListChiTietChungTu) { ////if(san pham khong duoc phep trung ma) ////{ //// ds.Tables["TblCheck"].DefaultView.RowFilter = String.Format("MaSanPham='{0}' and SoLuong > 1", chungTuChiTietInfor.MaSanPham); //// DataTable tableCheck = ds.Tables["TblCheck"].DefaultView.ToTable("Temp"); //// tableCheck.Rows.Count > 0 throw exception ////} ds.Tables["HangHoaChiTiet"].DefaultView.RowFilter = String.Format("MaSanPham='{0}'", chungTuChiTietInfor.MaSanPham); DataTable tableTemp = ds.Tables[0].DefaultView.ToTable("Temp"); int slMaVach = 0; foreach (DataRow dataRow in tableTemp.Rows) { slMaVach += Convert.ToInt32(dataRow["SoLuong"]); } if (slMaVach != chungTuChiTietInfor.SoLuong) { throw new Exception("Số lượng mã vạch của mã " + chungTuChiTietInfor.MaSanPham + " không khớp với số lượng trên phiếu."); } } if (business.ListChiTietHangHoa.Count > 0) { if (MessageBox.Show("Các mã vạch đang tồn tại trên phiếu sẽ bị xóa đi, bạn có chắc chắn không?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.Yes) { business.ListChiTietHangHoa.Clear(); } } foreach (ChungTu_ChiTietInfo chungTuChiTietInfor in business.ListChiTietChungTu) { ds.Tables[0].DefaultView.RowFilter = String.Format("MaSanPham='{0}'", chungTuChiTietInfor.MaSanPham); DataTable tableTemp = ds.Tables[0].DefaultView.ToTable("Temp"); foreach (DataRow dataRow in tableTemp.Rows) { if (dataRow["MaVach"] == DBNull.Value || String.IsNullOrEmpty(Convert.ToString(dataRow["MaVach"]))) { throw new ManagedException("Đang có dòng không được nhập mã vạch."); } ChungTu_ChiTietHangHoaBaseInfo chiTietMaVach = business.ListChiTietHangHoa.Find( delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return (match.MaVach == Convert.ToString(dataRow["MaVach"])); }); if (chiTietMaVach == null) { business.ListChiTietHangHoa.Add( new ChungTu_ChiTietHangHoaBaseInfo { IdSanPham = chungTuChiTietInfor.IdSanPham, IdChungTuChiTiet = chungTuChiTietInfor.IdChungTuChiTiet, MaVach = Convert.ToString(dataRow["MaVach"]), SoLuong = Convert.ToInt32(dataRow["SoLuong"]), TrungMaVach = chungTuChiTietInfor.TrungMaVach }); } else { chiTietMaVach.SoLuong += Convert.ToInt32(dataRow["SoLuong"]); } } } } } catch (Exception ex) { #if DEBUG MessageBox.Show(ex.ToString()); #else MessageBox.Show(ex.Message); #endif throw; } }
private void SaveBusinessNhanDieuChuyen() { ChungTu_ChiTietInfo obj = tbl_ChungTuDAO.Instance.GetIdChungTuBySoPhieu(txtSoPhieu.Text.Trim(), Convert.ToInt32(TransactionType.DE_NGHI_NHAN_DIEU_CHUYEN)); int idChungTu = 0; if (obj != null) { idChungTu = obj.IdChungTu; } ChungTuNhapDieuChuyenInfor chungTuNhapDieuChuyenInfor = NhanDieuChuyenCungTTDataProvider.Instance.GetChungTuNhanDCBySoCTGoc(chungTuInfo.SoChungTu); NhanDieuChuyenCungTTBussiness NhanDieuChuyenBussiness = null; if (chungTuNhapDieuChuyenInfor != null) { if (chungTuNhapDieuChuyenInfor.IdNguoiNhapXuatKho == 0) { chungTuNhapDieuChuyenInfor.IdNguoiNhapXuatKho = Declare.IdNhanVien; } chungTuNhapDieuChuyenInfor.LoaiChungTu = Convert.ToInt32(TransactionType.NHAN_DIEU_CHUYEN); chungTuNhapDieuChuyenInfor.NgayNhapXuatKho = Convert.ToDateTime(dtNgayLap.Text); NhanDieuChuyenBussiness = new NhanDieuChuyenCungTTBussiness(chungTuNhapDieuChuyenInfor); } else { NhanDieuChuyenBussiness = new NhanDieuChuyenCungTTBussiness(new ChungTuNhapDieuChuyenInfor { //detail của phiếu nhận điều chuyển LoaiChungTu = Convert.ToInt32(TransactionType.NHAN_DIEU_CHUYEN), IdChungTu = idChungTu, SoChungTu = CommonProvider.Instance.GetSoPhieu(Declare.Prefix.PhieuNhanDieuChuyen), SoChungTuGoc = txtSoPhieu.Text.Trim(), NgayNhapXuatKho = CommonProvider.Instance.GetSysDate(), //Convert.ToDateTime(dtNgayLap.Text), IdKho = chungTuInfo.IdKhoDieuChuyen, IdNguoiNhapXuatKho = Declare.IdNhanVien, }); } //chi tiết phiếu nhận điều chuyển NhanDieuChuyenBussiness.ListChiTietChungTu.RemoveAll( delegate(ChungTu_ChiTietInfo matchRemove) { return(!business.ListChiTietChungTu.Exists( delegate(ChungTu_ChiTietInfo matchExists) { return matchExists.IdSanPham == matchRemove.IdSanPham; })); }); foreach (ChungTu_ChiTietInfo chungTuChiTietInfo in business.ListChiTietChungTu) { ChungTu_ChiTietInfo chiTietHangHoaNhanDieuChuyen = NhanDieuChuyenBussiness.ListChiTietChungTu.Find( delegate(ChungTu_ChiTietInfo match) { return(match.IdSanPham == chungTuChiTietInfo.IdSanPham); }); if (chiTietHangHoaNhanDieuChuyen == null) { NhanDieuChuyenBussiness.ListChiTietChungTu.Add( new ChungTu_ChiTietInfo { IdChungTu = idChungTu, IdSanPham = chungTuChiTietInfo.IdSanPham, SoLuong = chungTuChiTietInfo.SoLuong }); } else { chiTietHangHoaNhanDieuChuyen.SoLuong = chungTuChiTietInfo.SoLuong; } } NhanDieuChuyenBussiness.ListChiTietHangHoa.RemoveAll( delegate(ChungTu_ChiTietHangHoaBaseInfo matchRemove) { return(!business.ListChiTietHangHoa.Exists( delegate(ChungTu_ChiTietHangHoaBaseInfo matchExists) { return matchExists.IdSanPham == matchRemove.IdSanPham && matchExists.MaVach == matchRemove.MaVach; })); }); foreach (ChungTu_ChiTietHangHoaBaseInfo chungTuChiTietInfo in business.ListChiTietHangHoa) { ChungTu_ChiTietHangHoaBaseInfo chiTietHangHoaNhanDieuChuyen = NhanDieuChuyenBussiness.ListChiTietHangHoa.Find( delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return(match.MaVach == chungTuChiTietInfo.MaVach && match.IdSanPham == chungTuChiTietInfo.IdSanPham); }); if (chiTietHangHoaNhanDieuChuyen == null) { NhanDieuChuyenBussiness.ListChiTietHangHoa.Add( new ChungTu_ChiTietHangHoaBaseInfo { MaVach = chungTuChiTietInfo.MaVach, IdSanPham = chungTuChiTietInfo.IdSanPham, SoLuong = chungTuChiTietInfo.SoLuong, //IdChungTuChiTiet = chungTuChiTietInfo.IdChungTuChiTiet }); } else { chiTietHangHoaNhanDieuChuyen.SoLuong = chungTuChiTietInfo.SoLuong; } } //xét trạng thái cho phiếu nhận điều chuyển int SumChiTietMaVach = 0; int SumChiTietChungTu = 0; foreach (ChungTu_ChiTietHangHoaBaseInfo chungTuChiTietHangHoaBaseInfo in NhanDieuChuyenBussiness.ListChiTietHangHoa) { SumChiTietMaVach += chungTuChiTietHangHoaBaseInfo.SoLuong; } foreach (ChungTu_ChiTietInfo chungTuChiTietInfo in NhanDieuChuyenBussiness.ListChiTietChungTu) { SumChiTietChungTu += chungTuChiTietInfo.SoLuong; } if (SumChiTietChungTu == SumChiTietMaVach) { NhanDieuChuyenBussiness.ChungTu.TrangThai = Convert.ToInt32(TrangThaiDieuChuyen.DA_NHAN); } NhanDieuChuyenBussiness.SaveChungTu(); }
private void XoaLine_Click(object sender, EventArgs e) { try { string soChungTuXuat = ((BCChiTietHangChuyenKhoInfo)grvBCNhanChuyenKho.GetRow(grvBCNhanChuyenKho.FocusedRowHandle)). SoPhieuXuat; string soChungTuNhan = ((BCChiTietHangChuyenKhoInfo)grvBCNhanChuyenKho.GetRow(grvBCNhanChuyenKho.FocusedRowHandle)). SoPhieuNhan; string maVach = ((BCChiTietHangChuyenKhoInfo)grvBCNhanChuyenKho.GetRow(grvBCNhanChuyenKho.FocusedRowHandle)). MaVach; string maSanPham = ((BCChiTietHangChuyenKhoInfo)grvBCNhanChuyenKho.GetRow(grvBCNhanChuyenKho.FocusedRowHandle)). MaSanPham; int idSanPham = QLBanHang.Modules.DanhMuc.Providers.DmSanPhamProvider.Instance.GetSanPhamByMa(maSanPham).IdSanPham; if (MessageBox.Show("Bạn có chắc chắn xóa không?", "Xác nhận xóa mã vạch", MessageBoxButtons.YesNo) == DialogResult.No) { return; } ConnectionUtil.Instance.BeginTransaction(); ChungTuDieuChuyenInfor infoXuat = tblChungTuDataProvider.GetChungTuBySoChungTu <ChungTuDieuChuyenInfor>(soChungTuXuat); if (!String.IsNullOrEmpty(soChungTuNhan)) { ChungTuNhapDieuChuyenInfor infoNhap = tblChungTuDataProvider.GetChungTuBySoChungTu <ChungTuNhapDieuChuyenInfor>(soChungTuNhan); NhanDieuChuyenBussiness nhanDieuChuyenBussiness = new NhanDieuChuyenBussiness(infoNhap); DeNghiNhanDieuChuyenBussiness deNghiNhanDieuChuyenBussiness; if (nhanDieuChuyenBussiness.ListChiTietHangHoa.Count > 0) { ChungTu_ChiTietHangHoaBaseInfo chiTietHangHoaBaseInfo = nhanDieuChuyenBussiness.ListChiTietHangHoa.Find(delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return(match.MaVach == maVach && match.IdSanPham == idSanPham); }); ChungTu_ChiTietInfo chungTuChiTietInfo = nhanDieuChuyenBussiness.ListChiTietChungTu.Find(delegate(ChungTu_ChiTietInfo match) { return(match.IdSanPham == idSanPham); }); nhanDieuChuyenBussiness.ListChiTietHangHoa.Remove(chiTietHangHoaBaseInfo); if (chiTietHangHoaBaseInfo.SoLuong == chungTuChiTietInfo.SoLuong) { nhanDieuChuyenBussiness.ListChiTietChungTu.Remove(chungTuChiTietInfo); } else { chungTuChiTietInfo.SoLuong -= chiTietHangHoaBaseInfo.SoLuong; } nhanDieuChuyenBussiness.SaveChungTu(); deNghiNhanDieuChuyenBussiness = new DeNghiNhanDieuChuyenBussiness(infoNhap); DeNghiNhanDieuChuyenInfor deNghiNhanDieuChuyenInfor = deNghiNhanDieuChuyenBussiness.ListChiTietChungTu.Find( delegate(DeNghiNhanDieuChuyenInfor match) { return(match.IdSanPham == idSanPham); }); if (chiTietHangHoaBaseInfo.SoLuong == deNghiNhanDieuChuyenInfor.SoLuong) { deNghiNhanDieuChuyenBussiness.ListChiTietChungTu.Remove(deNghiNhanDieuChuyenInfor); } else { deNghiNhanDieuChuyenInfor.SoLuong -= chiTietHangHoaBaseInfo.SoLuong; } deNghiNhanDieuChuyenBussiness.SaveChungTu(); } else { deNghiNhanDieuChuyenBussiness = new DeNghiNhanDieuChuyenBussiness(infoNhap); DeNghiNhanDieuChuyenInfor deNghiNhanDieuChuyenInfor = deNghiNhanDieuChuyenBussiness.ListChiTietChungTu.Find( delegate(DeNghiNhanDieuChuyenInfor match) { return(match.IdSanPham == idSanPham); }); deNghiNhanDieuChuyenBussiness.ListChiTietChungTu.Remove(deNghiNhanDieuChuyenInfor); deNghiNhanDieuChuyenBussiness.SaveChungTu(); } } XuatDieuChuyenBusiness xuatDieuChuyenBusiness = new XuatDieuChuyenBusiness(infoXuat); DeNghiDieuChuyenBussiness deNghiDieuChuyenBussiness; if (xuatDieuChuyenBusiness.ListChiTietHangHoa.Count > 0) { ChungTu_ChiTietInfo chungTuChiTietInfo = xuatDieuChuyenBusiness.ListChiTietChungTu.Find(delegate(ChungTu_ChiTietInfo match) { return(match.IdSanPham == idSanPham); }); ChungTu_ChiTietHangHoaBaseInfo chiTietHangHoaBaseInfo = xuatDieuChuyenBusiness.ListChiTietHangHoa.Find(delegate(ChungTu_ChiTietHangHoaBaseInfo match) { return(match.MaVach == maVach && match.IdSanPham == idSanPham); }); xuatDieuChuyenBusiness.ListChiTietHangHoa.Remove(chiTietHangHoaBaseInfo); if (chiTietHangHoaBaseInfo.SoLuong == chungTuChiTietInfo.SoLuong) { xuatDieuChuyenBusiness.ListChiTietChungTu.Remove(chungTuChiTietInfo); } else { chungTuChiTietInfo.SoLuong -= chiTietHangHoaBaseInfo.SoLuong; } xuatDieuChuyenBusiness.SaveChungTu(); deNghiDieuChuyenBussiness = new DeNghiDieuChuyenBussiness(infoXuat); DeNghiDieuChuyenInfor deNghiDieuChuyenInfor = deNghiDieuChuyenBussiness.ListChiTietChungTu.Find( delegate(DeNghiDieuChuyenInfor match) { return(match.IdSanPham == idSanPham); }); if (chiTietHangHoaBaseInfo.SoLuong == deNghiDieuChuyenInfor.SoLuong) { deNghiDieuChuyenBussiness.ListChiTietChungTu.Remove(deNghiDieuChuyenInfor); } else { deNghiDieuChuyenInfor.SoLuong -= chiTietHangHoaBaseInfo.SoLuong; } deNghiDieuChuyenBussiness.SaveChungTu(); } ConnectionUtil.Instance.CommitTransaction(); //grcBCNhanChuyenKho.DataSource = XuatDieuChuyenDataProvider.Instance.GetBCChiTietChuyenKho(MaTrungTam, MaKho, Convert.ToDateTime(deFrom.EditValue), Convert.ToDateTime(deTo.EditValue)); } catch (Exception ex) { ConnectionUtil.Instance.RollbackTransaction(); #if DEBUG MessageBox.Show(ex.ToString()); #else MessageBox.Show(ex.Message); #endif } }