protected void gridDanhSach_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e) { data = new dtHuyHoaDon(); string IDHoaDon = e.Keys[0].ToString(); DataTable dsChiTietHoaDon = data.DanhSachHangHoa_IDHoaDon(IDHoaDon); if (dsChiTietHoaDon.Rows.Count > 0) { foreach (DataRow dr in dsChiTietHoaDon.Rows) { int IDHangHoa = Int32.Parse(dr["IDHangHoa"].ToString()); double DoDayCu = dtHangHoa.LayDoDayHienTai(IDHangHoa); double DoDayHoaDon = double.Parse(dr["DoDay"].ToString()); int TrangThaiGia = Int32.Parse(dr["TrangThaiGia"].ToString()); string SoLuong = dr["SoLuong"].ToString(); double HeSo = Double.Parse(dr["HeSo"].ToString()); // cộng lại tồn kho if (DoDayHoaDon == DoDayCu) { if (TrangThaiGia == 1) { // bán lẻ double SLCong = Double.Parse(SoLuong) / (double)HeSo; dtCapNhatTonKho.CongTonKho(IDHangHoa.ToString(), SLCong.ToString(), Session["IDKho"].ToString()); } else { // bán sỉ dtCapNhatTonKho.CongTonKho(IDHangHoa.ToString(), SoLuong, Session["IDKho"].ToString()); } } } } double CongNoKH = dtHuyHoaDon.CongNo_IDHoaDon(IDHoaDon); if (CongNoKH > 0) { int IDKhachHang = dtHuyHoaDon.IDKhachHang_IDHoaDon(IDHoaDon); if (dtKhachHang.LayIDNhomKH(IDKhachHang) != 1)//khách sỉ- có công nợ { dtKhachHang dtkh = new dtKhachHang(); dtkh.CapNhatCongNo(IDKhachHang.ToString(), CongNoKH); } } data = new dtHuyHoaDon(); data.CapNhatHoaDonHuy(IDHoaDon); e.Cancel = true; gridDanhSach.CancelEdit(); LoadGrid(); }
protected void btnCapNhatThanhToan_Click(object sender, EventArgs e) { if (cmbKhachHang.Text != "" && txtTienThanhToan.Text != "") { data = new dtKhachHang(); string IDKhachHang = cmbKhachHang.Value.ToString(); string SoHoaDon = txtNhapSoHoaDon.Text == null ? "" : txtNhapSoHoaDon.Text; double SoTienThanhToan = double.Parse(txtTienThanhToan.Text); string NoiDung = txtNoiDung.Text == null ? "" : txtNoiDung.Text; DateTime NgayThanhToan = DateTime.Parse(dateNgayThanhToan.Text); object ID = data.ThemChiTietCongNo(SoHoaDon, IDKhachHang, "", "", SoTienThanhToan, NoiDung, NgayThanhToan); if (ID != null) { data.CapNhatCongNo(IDKhachHang, SoTienThanhToan); DataTable db = data.DanhSachSoDonHang(IDKhachHang); if (db.Rows.Count != 0) { foreach (DataRow dr in db.Rows) { float TienMaPhieu = float.Parse(dr["TongTien"].ToString()); string IDHoaDon = dr["ID"].ToString(); if (SoTienThanhToan > TienMaPhieu) { data = new dtKhachHang(); data.CapNhatTinhTrang(IDHoaDon); SoTienThanhToan = SoTienThanhToan - TienMaPhieu; } else if (SoTienThanhToan > 0) { data = new dtKhachHang(); data.CapNhatTinhTrang(IDHoaDon); SoTienThanhToan = 0; } Response.Redirect("ChiTietCongNoKhachHang.aspx"); } } Response.Redirect("ChiTietCongNoKhachHang.aspx"); } } else { Response.Write("<script language='JavaScript'> alert('Vui lòng nhập đủ thông tin.'); </script>"); } // dtLichSuTruyCap.ThemLichSu(Session["IDChiNhanh"].ToString(), Session["IDNhom"].ToString(), Session["IDNhanVien"].ToString(), "Cập nhật công nợ nhà cung cấp", "Thanh toán công nợ."); }
protected void btnThemPhieuKhachHangTraHang_Click(object sender, EventArgs e) { string ID = IDPhieuKhachHangTraHangTem_Temp.Value.ToString(); string IDNhanVien = Session["IDNhanVien"].ToString(); string IDKhachHang = cmbKhachHang.Value.ToString(); string GhiChu = txtGhiChu.Text == null ? "" : txtGhiChu.Text.ToString(); if (ckHoaDon.Checked == true && cmbHoaDon.Text != "") { // tính lại doanh thu hóa đơn, chiết khấu, giảm công nợ, cộng tồn kho DataTable da = data.ChiTietPhieuKhachHangTraHang_Temp(ID); if (da.Rows.Count != 0) { double TongTien = 0; foreach (DataRow dr in da.Rows) { double ThanhTien = double.Parse(dr["ThanhTien"].ToString()); TongTien = TongTien + ThanhTien; } object IDThem = data.ThemPhieuKhachHangTraHang(cmbHoaDon.Text.ToString(), IDNhanVien, IDKhachHang, TongTien.ToString(), GhiChu); if (IDThem != null) { string IDHoaDon = cmbHoaDon.Value.ToString(); for (int i = 0; i < da.Rows.Count; i++) { DataRow dr = da.Rows[i]; string IDHangHoa = dr["IDHangHoa"].ToString(); string GiaBan = dr["GiaBan"].ToString(); string SoLuong = dr["SoLuong"].ToString(); string ThanhTien = dr["ThanhTien"].ToString(); string LyDoDoi = dr["LyDoDoi"].ToString(); string TenDonViTinh = dr["TenDonViTinh"].ToString(); data.ThemChiTietPhieuKhachHangTraHang(IDThem, IDHangHoa, GiaBan, SoLuong, ThanhTien, LyDoDoi, TenDonViTinh); dtCapNhatTonKho.CongTonKho(IDHangHoa, SoLuong, Session["IDKho"].ToString());// cộng tồn kho // - Số lượng trong hóa đơn } //giảm công nợ khách hàng; dtKhachHang dtkh = new dtKhachHang(); dtkh.CapNhatCongNo(IDKhachHang, TongTien); data.XoaChiTiet_Temp(ID); dtLichSuTruyCap.ThemLichSu(Session["IDNhanVien"].ToString(), Session["IDNhom"].ToString(), "Phiếu khách hàng trả hàng", Session["IDKho"].ToString(), "Nhập xuất tồn", "Thêm"); Response.Redirect("DanhSachKhachHangTraHang.aspx"); } } else { Clear(); cmbHangHoa.Focus(); Response.Write("<script language='JavaScript'> alert('Danh sách hàng hóa không được rỗng.'); </script>"); } } else { // giảm công nợ, cộng tồn kho DataTable da = data.ChiTietPhieuKhachHangTraHang_Temp(ID); if (da.Rows.Count != 0) { double TongTien = 0; foreach (DataRow dr in da.Rows) { double ThanhTien = double.Parse(dr["ThanhTien"].ToString()); TongTien = TongTien + ThanhTien; } object IDThem = data.ThemPhieuKhachHangTraHang("", IDNhanVien, IDKhachHang, TongTien.ToString(), GhiChu); if (IDThem != null) { for (int i = 0; i < da.Rows.Count; i++) { DataRow dr = da.Rows[i]; string IDHangHoa = dr["IDHangHoa"].ToString(); string GiaBan = dr["GiaBan"].ToString(); string SoLuong = dr["SoLuong"].ToString(); string ThanhTien = dr["ThanhTien"].ToString(); string LyDoDoi = dr["LyDoDoi"].ToString(); string TenDonViTinh = dr["TenDonViTinh"].ToString(); data.ThemChiTietPhieuKhachHangTraHang(IDThem, IDHangHoa, GiaBan, SoLuong, ThanhTien, LyDoDoi, TenDonViTinh); dtCapNhatTonKho.CongTonKho(IDHangHoa, SoLuong, Session["IDKho"].ToString());// cộng tồn kho } //giảm công nợ khách hàng; if (Int32.Parse(IDKhachHang) != 1) { dtKhachHang dtkh = new dtKhachHang(); dtkh.CapNhatCongNo(IDKhachHang, TongTien); } data.XoaChiTiet_Temp(ID); dtLichSuTruyCap.ThemLichSu(Session["IDNhanVien"].ToString(), Session["IDNhom"].ToString(), "Phiếu khách hàng trả hàng", Session["IDKho"].ToString(), "Nhập xuất tồn", "Thêm"); Response.Redirect("DanhSachKhachHangTraHang.aspx"); } } else { Clear(); cmbHangHoa.Focus(); Response.Write("<script language='JavaScript'> alert('Danh sách hàng hóa không được rỗng.'); </script>"); } } }
protected void btnThemPhieuKhachHangTraHang_Click(object sender, EventArgs e) { string ID = IDPhieuKhachHangTraHangTem_Temp.Value.ToString(); string IDNhanVien = Session["IDNhanVien"].ToString(); string GhiChu = txtGhiChu.Text == null ? "" : txtGhiChu.Text.ToString(); string IDKH = "0"; if (txtSoHoaDon.Text != "" && dtPhieuKhachHangTraHang.LayIDHoaDon(txtSoHoaDon.Text.Trim()) != 0) { string MaHoaDon = txtSoHoaDon.Text.Trim(); string IDHoaDon = dtPhieuKhachHangTraHang.LayIDHoaDon(MaHoaDon).ToString(); DataTable da1 = data.HoaDon_ID(IDHoaDon); if (da1.Rows.Count != 0) { DataRow dr1 = da1.Rows[0]; IDKH = dr1["IDKhachHang"].ToString(); } // tính lại doanh thu hóa đơn, chiết khấu, giảm công nợ, cộng tồn kho DataTable da = data.ChiTietPhieuKhachHangTraHang_Temp(ID); if (da.Rows.Count != 0) { //tính tổng tiền giảm double TongTien = 0; foreach (DataRow dr in da.Rows) { double ThanhTien = double.Parse(dr["ThanhTien"].ToString()); TongTien = TongTien + ThanhTien; } object IDThem = data.ThemPhieuKhachHangTraHang(MaHoaDon, IDNhanVien, IDKH.ToString(), TongTien.ToString(), GhiChu); if (IDThem != null) { for (int i = 0; i < da.Rows.Count; i++) { DataRow dr = da.Rows[i]; string IDHangHoa = dr["IDHangHoa"].ToString(); string GiaBan = dr["GiaBan"].ToString(); string SoLuong = dr["SoLuong"].ToString(); string ThanhTien = dr["ThanhTien"].ToString(); string LyDoDoi = dr["LyDoDoi"].ToString(); string TenDonViTinh = dr["TenDonViTinh"].ToString(); double DoDay = Double.Parse(dr["DoDay"].ToString()); int TrangThaiGia = Int32.Parse(dr["TrangThaiGia"].ToString()); double HeSo = Double.Parse(dr["HeSo"].ToString()); string IDCTHD = dr["IDCTHD"].ToString(); data.ThemChiTietPhieuKhachHangTraHang(IDThem, IDHangHoa, GiaBan, SoLuong, ThanhTien, LyDoDoi, TenDonViTinh, DoDay.ToString(), TrangThaiGia.ToString(), HeSo.ToString(), IDCTHD); // cộng tồn kho double DoDayCu = dtHangHoa.LayDoDayHienTai(Int32.Parse(IDHangHoa)); if (DoDay == DoDayCu) { if (TrangThaiGia == 1) { // bán lẻ double SLCong = Double.Parse(SoLuong) / (double)HeSo; dtCapNhatTonKho.CongTonKho(IDHangHoa, SLCong.ToString(), Session["IDKho"].ToString()); } else { // bán sỉ dtCapNhatTonKho.CongTonKho(IDHangHoa, SoLuong, Session["IDKho"].ToString()); } } // - Số lượng bán trong hóa đơn if (dtCapNhatTonKho.SL_Trong_HoaDon(IDCTHD, IDHoaDon) - Double.Parse(SoLuong) > 0) { dtCapNhatTonKho.TruSL_KhachTraHang(IDCTHD, SoLuong, IDHoaDon); } else { dtCapNhatTonKho.Xoa_CTHD_KhachTraHang(IDCTHD, IDHoaDon); } } if (ckGiamCongNo.Checked == true) // giảm công nợ KH { //giảm công nợ khách hàng; If khách hàng mua có công nợ, ngược lại ko trừ if (dtKhachHang.LayIDNhomKH(Int32.Parse(IDKH)) != 1)//khách sỉ- có công nợ { dtKhachHang dtkh = new dtKhachHang(); dtkh.CapNhatCongNo(IDKH.ToString(), TongTien); // cập nhật tổng tiền hóa đơn(tông tiền, khách cần trả, công nợ mới) - tổng tiền trả dtCapNhatTonKho.CapNhat_HoaDon_KH_CongNo(IDHoaDon, TongTien.ToString()); } else { // cập nhật tổng tiền hóa đơn(tông tiền, khách cần trả,) - tổng tiền trả dtCapNhatTonKho.CapNhat_HoaDon_KH_K_CongNo(IDHoaDon, TongTien.ToString()); } } else { // cập nhật tổng tiền hóa đơn không công nợ dtCapNhatTonKho.CapNhat_HoaDon_KH_K_CongNo(IDHoaDon, TongTien.ToString()); } data.XoaChiTiet_Temp(ID); dtLichSuTruyCap.ThemLichSu(Session["IDNhanVien"].ToString(), Session["IDNhom"].ToString(), "Phiếu khách hàng trả hàng", Session["IDKho"].ToString(), "Nhập xuất tồn", "Thêm"); Response.Redirect("DanhSachKhachHangTraHang.aspx"); } } else { Clear(); cmbHangHoa.Focus(); Response.Write("<script language='JavaScript'> alert('Danh sách hàng hóa trả không được trống.'); </script>"); } } }