protected void cbpViewReport_Callback(object sender, CallbackEventArgsBase e) { int IDPhieuTraHang = int.Parse(e.Parameter); var PhieuTraHang = DBDataProvider.GetPhieuTraHang_DaiLy(IDPhieuTraHang); oReturnNodeReport = new oReportGiaoHang(); oReturnNodeReport.MaKhachHang = PhieuTraHang.khKhachHang.MaKhachHang; oReturnNodeReport.TenKhachHang = PhieuTraHang.khKhachHang.HoTen; oReturnNodeReport.DienThoai = PhieuTraHang.khKhachHang.DienThoai; oReturnNodeReport.DiaChiGiaoHang = PhieuTraHang.khKhachHang.DiaChi; oReturnNodeReport.TenNhanVien = PhieuTraHang.nvNhanVien.HoTen; oReturnNodeReport.GhiChuGiaoHang = PhieuTraHang.GhiChu; oReturnNodeReport.NgayGiao = Formats.ConvertToVNDateString(PhieuTraHang.NgayTra.ToString()); oReturnNodeReport.NgayTao = Formats.ConvertToVNDateString(PhieuTraHang.NgayNhap.ToString()); oReturnNodeReport.TongTien = Convert.ToDouble(PhieuTraHang.TongTienHang); oReturnNodeReport.TieuDePhieu = "PHIẾU TRẢ HÀNG " + PhieuTraHang.STTDonHang; oReturnNodeReport.listProduct = new List <oProduct>(); List <kPhieuTraHangChiTiet> ListHang = DBDataProvider.ListChiTietTraHang_DaiLy(IDPhieuTraHang); int i = 1; foreach (var Hang in ListHang) { oProduct prod = new oProduct(); prod.STT = i++; prod.MaHang = Hang.hhHangHoa.MaHang; prod.TenHang = Hang.hhHangHoa.TenHangHoa; prod.TenDonViTinh = Hang.hhHangHoa.hhDonViTinh.TenDonViTinh; prod.SoLuong = Convert.ToInt32(Hang.SoLuong); prod.DonGia = Convert.ToDouble(Hang.TienTra); prod.ThanhTien = Convert.ToDouble(Hang.ThanhTien); oReturnNodeReport.listProduct.Add(prod); } }
protected void cbpInfo_Callback(object sender, DevExpress.Web.CallbackEventArgsBase e) { switch (e.Parameter) { case "refresh": BindGrid(); break; case "ccbNhaCungCapChanged": listReceiptProducts = new List <oImportProduct_TraHangNCC>(); BindGrid(); ListSoPhieu(); break; case "ccbSoPhieuChanged": listReceiptProducts = new List <oImportProduct_TraHangNCC>(); ListSoPhieu(); int NhapKhoID = int.Parse(ccbSoPhieu.Value.ToString()); var ListNhapKhoChiTiet = DBDataProvider.ListChiTietNhapKho(NhapKhoID); foreach (var prod in ListNhapKhoChiTiet) { Insert_Hang(Convert.ToInt32(prod.HangHoaID)); } BindGrid(); break; default: break; } }
protected void cbpViewReport_Callback(object sender, CallbackEventArgsBase e) { int IDPhieuGiaoHang = int.Parse(e.Parameter); var PhieuGiaoHang = DBDataProvider.GetPhieuGiaoHang(IDPhieuGiaoHang); oCusExport = new oReportGiaoHang(); oCusExport.MaKhachHang = PhieuGiaoHang.khKhachHang.MaKhachHang; oCusExport.TenKhachHang = PhieuGiaoHang.khKhachHang.HoTen; oCusExport.DienThoai = PhieuGiaoHang.DienThoai; oCusExport.DiaChiGiaoHang = PhieuGiaoHang.DiaChiGiaoHang; oCusExport.TenNhanVien = PhieuGiaoHang.nvNhanVien.HoTen; oCusExport.GhiChuGiaoHang = PhieuGiaoHang.GhiChuGiaoHang; oCusExport.NgayGiao = Formats.ConvertToVNDateString(PhieuGiaoHang.NgayGiao.ToString()); oCusExport.NgayTao = Formats.ConvertToVNDateString(PhieuGiaoHang.NgayTao.ToString()); oCusExport.TongSoLuong = Convert.ToInt32(PhieuGiaoHang.TongSoLuong); oCusExport.TongTien = Convert.ToDouble(PhieuGiaoHang.TongTien); oCusExport.ThanhToan = Convert.ToDouble(PhieuGiaoHang.ThanhToan); oCusExport.CongNoHienTai = Convert.ToDouble(PhieuGiaoHang.CongNoHienTai); oCusExport.SoHoaDon = PhieuGiaoHang.SoHoaDon; oCusExport.GiamGia = Convert.ToDouble(PhieuGiaoHang.GiamGia); oCusExport.SoDonHangTrongNam = PhieuGiaoHang.SoDonHangTrongNam.ToString(); oCusExport.TieuDePhieu = "PHIẾU BÁN HÀNG " + PhieuGiaoHang.STTDonHang; string TrangThai = ""; switch (PhieuGiaoHang.TrangThai) { case 0: TrangThai = "(Đã đặt)"; break; case 1: TrangThai = "(Kiêm phiếu xuất kho)"; break; case 3: TrangThai = "(Kiêm phiếu xuất kho)"; break; default: TrangThai = "(Đã hủy)"; break; } oCusExport.TrangThaiPhieu = TrangThai; oCusExport.listProduct = new List <oProduct>(); List <ghPhieuGiaoHangChiTiet> ListHang = DBDataProvider.ListChiTietGiaoHang(IDPhieuGiaoHang); int i = 1; foreach (var Hang in ListHang) { oProduct prod = new oProduct(); prod.STT = i++; prod.MaHang = Hang.hhHangHoa.MaHang; prod.TenHang = Hang.hhHangHoa.TenHangHoa; prod.TenDonViTinh = Hang.hhHangHoa.hhDonViTinh.TenDonViTinh; prod.SoLuong = Convert.ToInt32(Hang.SoLuong); prod.DonGia = Convert.ToDouble(Hang.GiaBan); prod.ThanhTien = Convert.ToDouble(Hang.ThanhTien); oCusExport.listProduct.Add(prod); } }
private void ListSoPhieu() { int IDNhaCungCap = int.Parse(ccbNhaCungCap.Value.ToString()); var ListNhapHang = DBDataProvider.ListPhieuNhapHang_TraHang(IDNhaCungCap); ccbSoPhieu.DataSource = ListNhapHang; ccbSoPhieu.DataBind(); }
/// <summary> /// /// </summary> /// <param name="displayName">Display Name</param> /// <param name="interval">In Seconds</param> public ListViewPanel(DBDataProvider dataProvider, ConfigEntry entry) { InitializeComponent(); this.deviceKey = entry.DeviceKey; this.DisplayName = entry.DisplayName; this.dataProvider = dataProvider; this.HasSerachDataChart = false; this.HasRealTimeChart = false; }
private void ListPhieuThanhToan(int IDKhachHang) { var KhachHang = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDKhachHang).FirstOrDefault(); memoNoiDungTT.Text = ""; memoNoiDungTT.Text = KhachHang.HoTen.ToUpper() + " THANH TOÁN: "; var ListDonHang = DBDataProvider.ListPhieuGiaoHang(IDKhachHang); ccbPhieuThanhToan.DataSource = ListDonHang; ccbPhieuThanhToan.DataBind(); }
protected void gridXuathang_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e) { int IDPhieuXuat = Convert.ToInt32(e.Keys[0].ToString()); using (var scope = new TransactionScope()) { try { var XuatKho = DBDataProvider.DB.kPhieuXuatKhacs.Where(x => x.IDPhieuXuat == IDPhieuXuat).FirstOrDefault(); if (XuatKho != null) { if (XuatKho.DaXoa == 0) { XuatKho.DaXoa = 1; // đã xóa List <kPhieuXuatKhacChiTiet> ctXuatKho = DBDataProvider.XuatKhacKhoChiTiet(IDPhieuXuat); foreach (var xk in ctXuatKho) { int IDHangHoa = Convert.ToInt32(xk.HangHoaID); int SoLuong = Convert.ToInt32(xk.SoLuong); var HangHoa = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == IDHangHoa).FirstOrDefault(); if (HangHoa != null) { #region ghi thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Xóa phiếu xuất khác #" + XuatKho.MaPhieuXuat; thekho.Nhap = SoLuong; thekho.Xuat = 0; thekho.Ton = HangHoa.hhTonKhos.Where(tk => tk.ChiNhanhID == XuatKho.ChiNhanhID).FirstOrDefault().SoLuong += SoLuong; // cộng tồn kho luôn thekho.HangHoaID = IDHangHoa; thekho.GiaThoiDiem = 0; thekho.NhanVienID = Formats.IDUser(); thekho.ChiNhanhID = Formats.IDChiNhanh(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } DBDataProvider.DB.SubmitChanges(); scope.Complete(); } } } catch (Exception ex) { throw ex; } } gridXuathang.CancelEdit(); e.Cancel = true; gridXuathang.DataBind(); }
protected TokenCollection LoadListBarCode(int ID) { TokenCollection listBarCode = new TokenCollection(); if (ID != null) { List <hhBarcode> barcode = DBDataProvider.GetDanhSach(ID); foreach (var bc in barcode) { listBarCode.Add(bc.Barcode); } } return(listBarCode); }
private void ListSoPhieu() { int IDDaiLy = int.Parse(ccbNhaCungCap.Value.ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDDaiLy).FirstOrDefault(); if (KH.LoaiKhachHangID == 3) { ckGiamCongNo.Checked = true; } ckGiamCongNo.Checked = false; var ListGiaoHang = DBDataProvider.ListPhieuGiaoHang_TraHang(IDDaiLy); ccbSoPhieu.DataSource = ListGiaoHang; ccbSoPhieu.DataBind(); }
protected void cbpViewReport_Callback(object sender, CallbackEventArgsBase e) { hdfViewReport["View"] = 1; if (ccbKhachHang.Value != null) { int IDKhachHang = Convert.ToInt32(ccbKhachHang.Value.ToString()); oInGiaoDich = new oReportGiaoDich(); oInGiaoDich.TieuDe = "CHI TIẾT PHÁT SINH"; var kh = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDKhachHang).FirstOrDefault(); oInGiaoDich.MaKhachHang = kh == null ? "" : kh.MaKhachHang; oInGiaoDich.TenKhachHang = kh == null ? "" : kh.HoTen; oInGiaoDich.DienThoai = kh == null ? "" : kh.DienThoai; oInGiaoDich.DiaChi = kh == null ? "" : kh.DiaChi; oInGiaoDich.listProduct = new List <oChiTietGiaoDich>(); oInGiaoDich.NgayThangNam = DBDataProvider.TinhThanhCty() + ", " + Formats.ConvertToFullStringDate(DateTime.Now); string NgayBD = fromDay.Date.ToString("yyyy-MM-dd"); string NgayKT = toDay.Date.AddDays(1).ToString("yyyy-MM-dd"); List <khNhatKyCongNo> nhatky = DBDataProvider.DB.khNhatKyCongNos.Where(x => x.NgayNhap <= DateTime.Parse(NgayKT) && x.NgayNhap >= DateTime.Parse(NgayBD) && x.IDKhachHang == IDKhachHang).ToList(); int stt = 1; double TongHangTra = 0, TongPhatSinh = 0, TongThanhToan = 0, TongGiamGia = 0; foreach (var a in nhatky) { TongHangTra += Convert.ToDouble(a.TraHang); TongPhatSinh += Convert.ToDouble(a.NhapHang); TongThanhToan += Convert.ToDouble(a.ThanhToan); TongGiamGia += Convert.ToDouble(a.GiamGia); oChiTietGiaoDich chitiet = new oChiTietGiaoDich(); chitiet.STT = stt++; chitiet.Ngay = Formats.ConvertToVNDateString(a.NgayNhap.ToString()); chitiet.NoiDung = a.DienGiai; chitiet.SoPhieu = a.MaPhieu.ToString(); chitiet.NoDau = Convert.ToDouble(a.NoDau); chitiet.NhapHang = Convert.ToDouble(a.NhapHang); chitiet.HangTra = Convert.ToDouble(a.TraHang); chitiet.ThanhToan = Convert.ToDouble(a.ThanhToan); chitiet.NoCuoi = Convert.ToDouble(a.NoCuoi); chitiet.GiamGia = Convert.ToDouble(a.GiamGia); oInGiaoDich.listProduct.Add(chitiet); } oInGiaoDich.TongHangTra = TongHangTra; oInGiaoDich.TongPhatSinh = TongPhatSinh; oInGiaoDich.TongThanhToan = TongThanhToan; oInGiaoDich.TongGiamGia = TongGiamGia; } }
private void CreateReportReview() { hdfViewReport["view"] = 1; oPhieuTTExport = new oThanhToan(); oPhieuTTExport.NgayThu = DBDataProvider.TinhThanhCty() + ", " + Formats.ConvertToFullStringDate(DateTime.Parse(dateNgayTT.Text.ToString())); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == Convert.ToInt32(ccbKhachHang.Value.ToString())).FirstOrDefault(); oPhieuTTExport.STTPhieuThu = 0000; oPhieuTTExport.TieuDe = "PHIẾU THANH TOÁN "; oPhieuTTExport.XemTruoc = "(Xem trước)"; oPhieuTTExport.SoHoaDon = txtHoaDon.Text; oPhieuTTExport.TenKhachHang = KH.HoTen; oPhieuTTExport.MaKhachHang = KH.MaKhachHang; oPhieuTTExport.DienThoai = KH.DienThoai; oPhieuTTExport.NoiDung = memoNoiDungTT.Text; oPhieuTTExport.SoTienThu = Convert.ToDouble(speSoTienTT.Number); oPhieuTTExport.CongNoTruocThanhToan = Convert.ToDouble(KH.CongNo); oPhieuTTExport.CongNoSauThanhToan = Convert.ToDouble(KH.CongNo) - Convert.ToDouble(speSoTienTT.Number); cbpThanhToan.JSProperties["cp_rpView"] = true; }
protected void cbpViewReport_Callback(object sender, CallbackEventArgsBase e) { int IDPhieuThu = int.Parse(e.Parameter); var PhieuTT = DBDataProvider.DB.kPhieuThanhToanNCCs.Where(x => x.IDPhieuThu == IDPhieuThu).SingleOrDefault(); hdfViewReport["view"] = 1; oPhieuTTExport = new oThanhToan(); oPhieuTTExport.NgayThu = DBDataProvider.TinhThanhCty() + ", " + Formats.ConvertToFullStringDate(DateTime.Parse(PhieuTT.NgayThu.ToString())); oPhieuTTExport.IDKhachHang = Convert.ToInt32(PhieuTT.KhachHangID); oPhieuTTExport.STTPhieuThu = Convert.ToInt32(PhieuTT.STTPhieuThu); oPhieuTTExport.TieuDe = "PHIẾU THANH TOÁN " + PhieuTT.STTPhieuThu; oPhieuTTExport.SoHoaDon = PhieuTT.SoHoaDon; oPhieuTTExport.TenKhachHang = PhieuTT.khKhachHang.HoTen; oPhieuTTExport.MaKhachHang = PhieuTT.khKhachHang.MaKhachHang; oPhieuTTExport.DienThoai = PhieuTT.khKhachHang.DienThoai; oPhieuTTExport.NoiDung = PhieuTT.NoiDung; oPhieuTTExport.SoTienThu = Convert.ToDouble(PhieuTT.SoTienThu); oPhieuTTExport.CongNoTruocThanhToan = Convert.ToDouble(PhieuTT.CongNoCu); oPhieuTTExport.CongNoSauThanhToan = Convert.ToDouble(PhieuTT.CongNoCu - PhieuTT.SoTienThu); }
/// <summary> /// /// </summary> /// <param name="displayName">Display Name</param> /// <param name="interval">In Seconds</param> public ListViewPanel(DBDataProvider dataProvider, ConfigEntry entry) { InitializeComponent(); this.deviceKey = entry.DeviceKey; this.DisplayName = entry.DisplayName; this.dataProvider = dataProvider; this.dbConn = this.dataProvider.GetMySqlConnection(); var dbCmd = this.dbConn.CreateCommand(); var dispatcherTimer = new System.Windows.Threading.DispatcherTimer(); dispatcherTimer.Tick += (s, evt) => { if (this.Shown && this.deviceKey != currentDeviceKey) { currentDeviceKey = this.deviceKey; this.ListRecentData(dbCmd); } }; dispatcherTimer.Interval = new TimeSpan(0, 0, 2); dispatcherTimer.Start(); }
private void Save() { using (var scope = new TransactionScope()) { try { if (listReceiptProducts.Count > 0) { double TongTien = 0; int TongSoLuong = 0; foreach (var prod in listReceiptProducts) { TongTien += prod.ThanhTien; TongSoLuong += prod.SoLuong; } string MaPhieu = null, strMaPhieu = "PX"; string MAX = (DBDataProvider.DB.kPhieuTraHangNCCs.Count() + 1).ToString(); for (int i = 1; i < (7 - MAX.Length); i++) { strMaPhieu += "0"; } MaPhieu = strMaPhieu + MAX; int IDNCC = Int32.Parse(ccbNhaCungCap.Value.ToString()); int IDSoPhieu = 0; if (ccbSoPhieu.Text != "") { IDSoPhieu = Int32.Parse(ccbSoPhieu.Value.ToString()); } // insert kPhieuTraHangNCC kPhieuTraHangNCC phieutra = new kPhieuTraHangNCC(); phieutra.MaPhieu = MaPhieu; phieutra.NhaCungCapID = IDNCC; phieutra.SoPhieuTra = IDSoPhieu; phieutra.NgayTra = Convert.ToDateTime(dateNgayTra.Date); phieutra.NgayNhap = DateTime.Now; phieutra.NhanVienID = Formats.IDUser(); phieutra.GhiChu = memoGhiChu.Text; phieutra.TongSoLuong = TongSoLuong; phieutra.TongTienHang = TongTien; phieutra.ThanhToan = ckGiamCongNo.Checked == true ? 0 : TongTien; phieutra.STTDonHang = DBDataProvider.STTPhieuTraHang_NCC(IDNCC); phieutra.ConLai = ckGiamCongNo.Checked == true ? TongTien : 0; phieutra.HinhThucTT = ckGiamCongNo.Checked == true ? 1 : 0; DBDataProvider.DB.kPhieuTraHangNCCs.InsertOnSubmit(phieutra); DBDataProvider.DB.SubmitChanges(); int IDPhieuTraHang = phieutra.IDPhieuTraHang; foreach (var prod in listReceiptProducts) { // insert Chi tiet kPhieuTraHangNCCChiTiet chitiet = new kPhieuTraHangNCCChiTiet(); chitiet.PhieuTraHangNCCID = IDPhieuTraHang; chitiet.HangHoaID = prod.IDHangHoa; chitiet.GiaVon = prod.GiaVon; chitiet.SoLuong = prod.SoLuong; chitiet.ThanhTien = prod.ThanhTien; chitiet.TonKho = prod.TonKho; chitiet.TienTra = prod.TienTra; DBDataProvider.DB.kPhieuTraHangNCCChiTiets.InsertOnSubmit(chitiet); //Cập nhật || trừ tồn kho var TonKhoBanDau = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.IDHangHoa).FirstOrDefault(); if (TonKhoBanDau != null) { TonKhoBanDau.TonKho -= prod.SoLuong; #region ghi thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Trả hàng NCC #" + MaPhieu; thekho.Nhap = 0; thekho.GiaThoiDiem = prod.TienTra; thekho.Xuat = prod.SoLuong; thekho.Ton = prod.TonKho - prod.SoLuong; thekho.HangHoaID = TonKhoBanDau.IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } //update công nợ khKhachHang Supplier = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDNCC).FirstOrDefault(); if (Supplier != null) { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Trả hàng NCC "; nhatky.NoDau = Supplier.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = TongTien; nhatky.NoCuoi = Supplier.CongNo - (ckGiamCongNo.Checked == true ? TongTien : 0); nhatky.ThanhToan = 0; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = MaPhieu; nhatky.IDKhachHang = IDNCC; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); Supplier.CongNo -= ckGiamCongNo.Checked == true ? TongTien : 0; Supplier.LanCuoiMuaHang = DateTime.Now; Supplier.TienTraHang += TongTien; #endregion phieutra.CongNoCu = Supplier.CongNo; } DBDataProvider.DB.SubmitChanges(); scope.Complete(); Reset(); cbpInfoImport.JSProperties["cp_Reset"] = true; } else { throw new Exception("Danh sách hàng hóa trống !!"); ccbBarcode.Text = ""; ccbBarcode.Value = ""; ccbBarcode.Focus(); } } catch (Exception ex) { throw ex; } } }
protected void gridTraHang_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) { using (var scope = new TransactionScope()) { try { if (e.NewValues["DuyetDonHang"] == "0") { return; } int IDPhieuTraHang = int.Parse(e.Keys["IDPhieuTraHang"].ToString()); int DaiLyID = int.Parse(gridTraHang.GetRowValuesByKeyValue(e.Keys["IDPhieuTraHang"], "DaiLyID").ToString()); int pheduyet = Int32.Parse(e.NewValues["DuyetDonHang"].ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == DaiLyID).FirstOrDefault(); var PhieuTraHang = DBDataProvider.DB.kPhieuTraHangs.Where(x => x.IDPhieuTraHang == IDPhieuTraHang).FirstOrDefault(); if (pheduyet == 1) { // hoàn tất if (KH != null && PhieuTraHang != null) { #region nhật ký công nợ khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Khách trả hàng "; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = PhieuTraHang.TongTienHang; nhatky.GiamGia = 0; nhatky.NoCuoi = KH.CongNo - PhieuTraHang.ConLai; nhatky.ThanhToan = -PhieuTraHang.ThanhToan; nhatky.MaPhieu = DBDataProvider.STTPhieuTraHang_DaiLy(DaiLyID); nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = PhieuTraHang.MaPhieu; nhatky.IDKhachHang = DaiLyID; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion if (PhieuTraHang.HinhThucTT == 1) { KH.CongNo -= PhieuTraHang.ConLai; // giảm công nợ } KH.TienTraHang += PhieuTraHang.TongTienHang; KH.LanCuoiMuaHang = DateTime.Now; PhieuTraHang.DuyetDonHang = 1;// duyệt thành công PhieuTraHang.STTDonHang = DBDataProvider.STTPhieuTraHang_DaiLy(DaiLyID); // + tồn kho var PhieuTraHangChiTiet = DBDataProvider.DB.kPhieuTraHangChiTiets.Where(x => x.PhieuTraHangNCCID == IDPhieuTraHang).ToList(); foreach (var prod in PhieuTraHangChiTiet) { var HH = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.HangHoaID).FirstOrDefault(); HH.TonKho += prod.SoLuong; // ghi thẻ kho #region ghi thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Trả hàng #" + PhieuTraHang.MaPhieu; thekho.Nhap = prod.SoLuong; thekho.Xuat = 0; thekho.GiaThoiDiem = prod.TienTra; thekho.Ton = prod.SoLuong + prod.TonKho; thekho.HangHoaID = HH.IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } } else { // hủy đơn hàng if (KH != null && PhieuTraHang != null) { PhieuTraHang.DuyetDonHang = 2;// hủy đơn hàng PhieuTraHang.STTDonHang = 0; } } PhieuTraHang.NgayDuyet = DateTime.Now; DBDataProvider.DB.SubmitChanges(); scope.Complete(); gridTraHang.CancelEdit(); e.Cancel = true; } catch (Exception ex) { throw ex; } } }
protected void Save() { using (var scope = new TransactionScope()) { try { if (listReceiptProducts.Count > 0) { double TongTien = 0; int TongSoLuong = 0; foreach (var prod in listReceiptProducts) { TongTien += prod.ThanhTien; TongSoLuong += prod.SoLuong; } string MaPhieu = null, strMaPhieu = "PX"; string MAX = (DBDataProvider.DB.ghPhieuGiaoHangs.Count() + 1).ToString(); for (int i = 1; i < (10 - MAX.Length); i++) { strMaPhieu += "0"; } MaPhieu = strMaPhieu + MAX; int IDkhachHang = Int32.Parse(ccbNhaCungCap.Value.ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDkhachHang).FirstOrDefault(); ghPhieuGiaoHang giaohang = new ghPhieuGiaoHang(); giaohang.NgayTao = DateTime.Now; giaohang.MaPhieu = MaPhieu; giaohang.NhanVienID = Formats.IDUser(); giaohang.GhiChuGiaoHang = memoGhiChu.Text; giaohang.KhachHangID = IDkhachHang; giaohang.NgayGiao = Formats.ConvertToDateTime(dateNgayNhap.Text); giaohang.NguoiGiao = ""; giaohang.DiaChiGiaoHang = KH.DiaChi; giaohang.DaXoa = 0; giaohang.TTThanhToan = 0; //0 chưa thanh toán. 1 đã thanh toán giaohang.TrangThai = 0; // chưa duyệt, 1 đã duyệt giaohang.TongSoLuong = TongSoLuong; giaohang.DienThoai = KH.DienThoai; giaohang.ChiNhanhID = Formats.IDChiNhanh(); giaohang.TongTien = TongTien; giaohang.ThanhToan = Convert.ToDouble(spKhachHangThoan.Number); giaohang.GiamGia = Convert.ToDouble(spGiamGia.Number); giaohang.ConLai = (TongTien - (Convert.ToDouble(spGiamGia.Number) + Convert.ToDouble(spKhachHangThoan.Number))); giaohang.STTDonHang = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDkhachHang); DBDataProvider.DB.ghPhieuGiaoHangs.InsertOnSubmit(giaohang); DBDataProvider.DB.SubmitChanges(); int IDPhieuGiaoHang = Convert.ToInt32(giaohang.IDPhieuGiaoHang); hiddenFields["IDPhieuMoi"] = IDPhieuGiaoHang; foreach (var prod in listReceiptProducts) { // insert phiếu giao hàng chi tiết ghPhieuGiaoHangChiTiet chitiet = new ghPhieuGiaoHangChiTiet(); chitiet.PhieuGiaoHangID = IDPhieuGiaoHang; chitiet.HangHoaID = prod.IDHangHoa; chitiet.TonKho = prod.TonKho; chitiet.SoLuong = prod.SoLuong; chitiet.GiaBan = prod.GiaBan; chitiet.GiaVon = prod.GiaVon; chitiet.ThanhTien = prod.ThanhTien; DBDataProvider.DB.ghPhieuGiaoHangChiTiets.InsertOnSubmit(chitiet); // trừ tạm tồn kho. không ghi công nợ, khi duyệt thì ghi thẻ kho + cộng công nợ khách hàng var TonKhoBanDau = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.IDHangHoa).FirstOrDefault(); if (TonKhoBanDau != null && TonKhoBanDau.LoaiHHID == 1) { TonKhoBanDau.hhTonKhos.Where(tk => tk.ChiNhanhID == Formats.IDChiNhanh()).FirstOrDefault().SoLuong -= prod.SoLuong; // ghi thẻ kho #region ghi thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Lập phiếu giao hàng#" + MaPhieu; thekho.Nhap = 0; thekho.Xuat = prod.SoLuong; thekho.GiaThoiDiem = prod.GiaBan; thekho.Ton = prod.TonKho - prod.SoLuong; thekho.HangHoaID = TonKhoBanDau.IDHangHoa; thekho.ChiNhanhID = Formats.IDChiNhanh(); thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } DBDataProvider.DB.SubmitChanges(); scope.Complete(); cbpInfoImport.JSProperties["cp_Reset"] = true; } else { throw new Exception("Danh sách hàng hóa trống !!"); ccbBarcode.Text = ""; ccbBarcode.Value = ""; ccbBarcode.Focus(); } } catch (Exception ex) { throw ex; } } }
protected void Save() { using (var scope = new TransactionScope()) { try { if (listReceiptProducts.Count > 0) { double TongTien = 0; int TongSoLuong = 0; foreach (var prod in listReceiptProducts) { TongTien += prod.ThanhTien; TongSoLuong += prod.SoLuong; } string MaPhieu = null, strMaPhieu = "PX"; string MAX = (DBDataProvider.DB.ghPhieuGiaoHangs.Count() + 1).ToString(); for (int i = 1; i < (7 - MAX.Length); i++) { strMaPhieu += "0"; } MaPhieu = strMaPhieu + MAX; int IDkhachHang = Int32.Parse(ccbNhaCungCap.Value.ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDkhachHang).FirstOrDefault(); ghPhieuGiaoHang giaohang = new ghPhieuGiaoHang(); giaohang.NgayTao = DateTime.Now; giaohang.MaPhieu = MaPhieu; giaohang.NhanVienID = Formats.IDUser(); giaohang.GhiChuGiaoHang = memoGhiChu.Text; giaohang.KhachHangID = IDkhachHang; giaohang.NgayGiao = Formats.ConvertToDateTime(dateNgayNhap.Text); giaohang.NguoiGiao = ""; giaohang.DiaChiGiaoHang = KH.DiaChi; giaohang.DaXoa = 0; giaohang.TTThanhToan = 0; //0 chưa thanh toán. 1 đã thanh toán giaohang.TrangThai = 3; // chưa duyệt, 1 đã duyệt, 3 bán hàng giaohang.TongSoLuong = TongSoLuong; giaohang.DienThoai = KH.DienThoai; giaohang.TongTien = TongTien; giaohang.NgayDuyet = DateTime.Parse(dateNgayNhap.Text); giaohang.GiamGia = Convert.ToDouble(spGiamGia.Number); giaohang.ThanhToan = Convert.ToDouble(spKhachHangThoan.Number); // khách thanh toán giaohang.ConLai = TongTien - (Convert.ToDouble(spGiamGia.Number) + Convert.ToDouble(spKhachHangThoan.Number)); // (-1)*Convert.ToDouble(spTienTraKhach.Number); giaohang.STTDonHang = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDkhachHang); giaohang.SoDonHangTrongNam = DBDataProvider.SoDonHangTrongNam_GiaoHang(); giaohang.CongNoHienTai = KH.CongNo; DBDataProvider.DB.ghPhieuGiaoHangs.InsertOnSubmit(giaohang); DBDataProvider.DB.SubmitChanges(); int IDPhieuGiaoHang = giaohang.IDPhieuGiaoHang; hiddenFields["IDPhieuMoi"] = IDPhieuGiaoHang; foreach (var prod in listReceiptProducts) { // insert phiếu giao hàng chi tiết ghPhieuGiaoHangChiTiet chitiet = new ghPhieuGiaoHangChiTiet(); chitiet.PhieuGiaoHangID = IDPhieuGiaoHang; chitiet.HangHoaID = prod.IDHangHoa; chitiet.TonKho = prod.TonKho; chitiet.SoLuong = prod.SoLuong; chitiet.GiaBan = prod.GiaBan; chitiet.GiaVon = prod.GiaVon; chitiet.ThanhTien = prod.ThanhTien; DBDataProvider.DB.ghPhieuGiaoHangChiTiets.InsertOnSubmit(chitiet); // trừ tạm tồn kho. var TonKhoBanDau = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.IDHangHoa).FirstOrDefault(); if (TonKhoBanDau != null) { TonKhoBanDau.TonKho -= prod.SoLuong; var HH = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.IDHangHoa).FirstOrDefault(); //ghi thẻ kho #region thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Bán hàng #" + giaohang.MaPhieu; thekho.Nhap = 0; thekho.Xuat = prod.SoLuong; thekho.Ton = HH.TonKho; thekho.GiaThoiDiem = prod.GiaBan; thekho.HangHoaID = HH.IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } if (Convert.ToDouble(spTienTraKhach.Number) < 0) { // cập nhật công nợ #region nhật ký công nợ khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Bán hàng"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = TongTien; nhatky.TraHang = 0; nhatky.GiamGia = Convert.ToDouble(spGiamGia.Number); nhatky.NoCuoi = KH.CongNo += (-1) * Convert.ToDouble(spTienTraKhach.Number); nhatky.ThanhToan = Convert.ToDouble(spKhachHangThoan.Number); nhatky.MaPhieu = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDkhachHang); nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = giaohang.MaPhieu; nhatky.IDKhachHang = IDkhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion // KH.CongNo += (-1) * Convert.ToDouble(spTienTraKhach.Number); // cộng công nợ } else { #region nhật ký công nợ khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Bán hàng"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = TongTien; nhatky.GiamGia = Convert.ToDouble(spGiamGia.Number); nhatky.TraHang = 0; nhatky.NoCuoi = KH.CongNo; nhatky.ThanhToan = Convert.ToDouble(spKhachHangThoan.Number); nhatky.MaPhieu = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDkhachHang); nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = giaohang.MaPhieu; nhatky.IDKhachHang = IDkhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion } KH.TongTienHang += TongTien; KH.LanCuoiMuaHang = DateTime.Now; DBDataProvider.DB.SubmitChanges(); scope.Complete(); Reset(); cbpInfoImport.JSProperties["cp_Reset"] = true; } else { throw new Exception("Danh sách hàng hóa trống !!"); ccbBarcode.Text = ""; ccbBarcode.Value = ""; ccbBarcode.Focus(); } } catch (Exception ex) { throw ex; } } }
private void CreateReportReview_Save(int IDPhieu) { hdfViewReport["view"] = 1; var PhieuGiaoHang = DBDataProvider.GetPhieuGiaoHang(IDPhieu); oCusExport = new oReportGiaoHang(); oCusExport.MaKhachHang = PhieuGiaoHang.khKhachHang.MaKhachHang; oCusExport.TenKhachHang = PhieuGiaoHang.khKhachHang.HoTen; oCusExport.DienThoai = PhieuGiaoHang.DienThoai; oCusExport.DiaChiGiaoHang = PhieuGiaoHang.DiaChiGiaoHang; oCusExport.TenNhanVien = PhieuGiaoHang.nvNhanVien.HoTen; oCusExport.GhiChuGiaoHang = PhieuGiaoHang.GhiChuGiaoHang; oCusExport.NgayGiao = Formats.ConvertToVNDateString(PhieuGiaoHang.NgayGiao.ToString()); oCusExport.NgayTao = Formats.ConvertToVNDateString(PhieuGiaoHang.NgayTao.ToString()); oCusExport.TongSoLuong = Convert.ToInt32(PhieuGiaoHang.TongSoLuong); oCusExport.TongTien = Convert.ToDouble(PhieuGiaoHang.TongTien); oCusExport.ThanhToan = Convert.ToDouble(PhieuGiaoHang.ThanhToan); oCusExport.CongNoHienTai = Convert.ToDouble(PhieuGiaoHang.CongNoHienTai); oCusExport.SoHoaDon = PhieuGiaoHang.SoHoaDon; oCusExport.GiamGia = Convert.ToDouble(PhieuGiaoHang.GiamGia); oCusExport.SoDonHangTrongNam = PhieuGiaoHang.SoDonHangTrongNam.ToString(); oCusExport.TieuDePhieu = "PHIẾU BÁN HÀNG " + PhieuGiaoHang.STTDonHang; string TrangThai = ""; switch (PhieuGiaoHang.TrangThai) { case 0: TrangThai = "(Đã đặt)"; break; case 1: TrangThai = "(Kiêm phiếu xuất kho)"; break; case 3: TrangThai = "(Kiêm phiếu xuất kho)"; break; default: TrangThai = "(Đã hủy)"; break; } oCusExport.TrangThaiPhieu = TrangThai; oCusExport.listProduct = new List <oProduct>(); List <ghPhieuGiaoHangChiTiet> ListHang = DBDataProvider.ListChiTietGiaoHang(IDPhieu); int i = 1; foreach (var Hang in ListHang) { oProduct prod = new oProduct(); prod.STT = i++; prod.MaHang = Hang.hhHangHoa.MaHang; prod.TenHang = Hang.hhHangHoa.TenHangHoa; prod.TenDonViTinh = Hang.hhHangHoa.hhDonViTinh.TenDonViTinh; prod.SoLuong = Convert.ToInt32(Hang.SoLuong); prod.DonGia = Convert.ToDouble(Hang.GiaBan); prod.ThanhTien = Convert.ToDouble(Hang.ThanhTien); oCusExport.listProduct.Add(prod); } cbpInfoImport.JSProperties["cp_rpView"] = true; }
protected void gridNhaphang_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e) { int IDNhapKho = Convert.ToInt32(e.Keys[0].ToString()); using (var scope = new TransactionScope()) { try { var NhapKho = DBDataProvider.DB.kNhapKhos.Where(x => x.IDNhapKho == IDNhapKho).FirstOrDefault(); if (NhapKho != null) { if (NhapKho.TrangThaiPhieu == 0) { NhapKho.TrangThaiPhieu = 2; khKhachHang kh = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == NhapKho.NCCID).FirstOrDefault(); if (NhapKho.CongNo > 0) // cập nhật công nợ + ghi nhật ký { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Xóa phiếu nhập kho"; nhatky.NoDau = kh.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = NhapKho.CongNo; nhatky.NoCuoi = kh.CongNo - NhapKho.CongNo; nhatky.ThanhToan = 0; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = NhapKho.MaPhieu; nhatky.IDKhachHang = NhapKho.NCCID; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion kh.TongTienHang -= NhapKho.TongTien; kh.CongNo -= NhapKho.CongNo; kh.LanCuoiMuaHang = DateTime.Now; } else { kh.TongTienHang -= NhapKho.TongTien; kh.CongNo -= NhapKho.CongNo; kh.LanCuoiMuaHang = DateTime.Now; } List <kNhapKhoChiTiet> nhapkho = DBDataProvider.NhapKhoChiTiet(IDNhapKho); foreach (var nk in nhapkho) { int IDHangHoa = Convert.ToInt32(nk.HangHoaID); int SoLuong = Convert.ToInt32(nk.SoLuong); var HangHoa = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == IDHangHoa).FirstOrDefault(); if (HangHoa != null) { //// trừ tồn kho, //HangHoa.TonKho -= SoLuong; //ghi thẻ kho #region ghi thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Xóa phiếu nhập hàng #" + NhapKho.MaPhieu; thekho.Nhap = 0; thekho.Xuat = SoLuong; thekho.Ton = HangHoa.TonKho -= SoLuong; // trừ tồn kho luôn thekho.HangHoaID = IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } } DBDataProvider.DB.SubmitChanges(); scope.Complete(); } } } catch (Exception ex) { throw ex; } } gridNhaphang.CancelEdit(); e.Cancel = true; gridNhaphang.DataBind(); }
protected void Save() { using (var scope = new TransactionScope()) { try { double TongTien = 0; int TongSoLuong = 0; foreach (var prod in listReceiptProducts) { TongTien += prod.ThanhTien; TongSoLuong += prod.SoLuong; } string MaPhieu = null, strMaPhieu = "PX"; string MAX = (DBDataProvider.DB.ghPhieuGiaoHangs.Count() + 1).ToString(); for (int i = 1; i < (7 - MAX.Length); i++) { strMaPhieu += "0"; } MaPhieu = strMaPhieu + MAX; int IDkhachHang = Int32.Parse(ccbNhaCungCap.Value.ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDkhachHang).FirstOrDefault(); ghPhieuGiaoHang giaohang = new ghPhieuGiaoHang(); giaohang.NgayTao = DateTime.Now; giaohang.MaPhieu = MaPhieu; giaohang.NhanVienID = Formats.IDUser(); giaohang.GhiChuGiaoHang = memoGhiChu.Text; giaohang.KhachHangID = IDkhachHang; giaohang.NgayGiao = Formats.ConvertToDateTime(dateNgayNhap.Text); giaohang.NguoiGiao = ""; giaohang.DiaChiGiaoHang = KH.DiaChi; giaohang.DaXoa = 0; giaohang.TTThanhToan = 0; //0 chưa thanh toán. 1 đã thanh toán giaohang.TrangThai = 0; // chưa duyệt, 1 đã duyệt giaohang.TongSoLuong = TongSoLuong; giaohang.DienThoai = KH.DienThoai; giaohang.TongTien = TongTien; giaohang.ThanhToan = 0; giaohang.ConLai = TongTien; giaohang.STTDonHang = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDkhachHang); DBDataProvider.DB.ghPhieuGiaoHangs.InsertOnSubmit(giaohang); DBDataProvider.DB.SubmitChanges(); int IDPhieuGiaoHang = giaohang.IDPhieuGiaoHang; hiddenFields["IDPhieuMoi"] = IDPhieuGiaoHang; foreach (var prod in listReceiptProducts) { // insert phiếu giao hàng chi tiết ghPhieuGiaoHangChiTiet chitiet = new ghPhieuGiaoHangChiTiet(); chitiet.PhieuGiaoHangID = IDPhieuGiaoHang; chitiet.HangHoaID = prod.IDHangHoa; chitiet.TonKho = prod.TonKho; chitiet.SoLuong = prod.SoLuong; chitiet.GiaBan = prod.GiaBan; chitiet.GiaVon = prod.GiaVon; chitiet.ThanhTien = prod.ThanhTien; DBDataProvider.DB.ghPhieuGiaoHangChiTiets.InsertOnSubmit(chitiet); // trừ tạm tồn kho. không ghi công nợ, khi duyệt thì ghi thẻ kho + cộng công nợ khách hàng var TonKhoBanDau = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.IDHangHoa).FirstOrDefault(); if (TonKhoBanDau != null) { TonKhoBanDau.TonKho -= prod.SoLuong; } } DBDataProvider.DB.SubmitChanges(); scope.Complete(); Reset(); cbpInfoImport.JSProperties["cp_Reset"] = true; } catch (Exception ex) { throw ex; } } }
public void LuuThanhToan() { using (var scope = new TransactionScope()) { try { double?SoTienThu = double.Parse(speSoTienTT.Number.ToString()); if (SoTienThu == 0) { throw new Exception("Chưa nhập số tiền thanh toán"); } double?SoNoHienTai = double.Parse(txtCongNoHienTai.Text); if (SoTienThu > SoNoHienTai) { throw new Exception("Số tiền thu không được vượt qua số nợ hiện tại"); } int IDKhachHang = Convert.ToInt32(ccbKhachHang.Value.ToString()); string SoHoaDon = txtHoaDon.Text; string NoiDung = memoNoiDungTT.Text; DateTime NgayThu = Formats.ConvertToDateTime(dateNgayTT.Text); int HinhThucThu = rdlHinhThuc.SelectedIndex == 0 ? 1 : 2; double CongNoCu = double.Parse(txtCongNoHienTai.Text); ghPhieuDaiLyThanhToan thanhtoan = new ghPhieuDaiLyThanhToan(); thanhtoan.STTPhieuThu = DBDataProvider.STTPhieuThanhToan_DaiLy(IDKhachHang); thanhtoan.SoHoaDon = SoHoaDon; thanhtoan.KhachHangID = IDKhachHang; thanhtoan.SoTienThu = SoTienThu; thanhtoan.NoiDung = NoiDung; thanhtoan.NgayThu = NgayThu; thanhtoan.NgayLap = DateTime.Now; thanhtoan.NhanVienThuID = Formats.IDUser(); thanhtoan.HinhThucTTID = HinhThucThu; thanhtoan.CongNoCu = CongNoCu; DBDataProvider.DB.ghPhieuDaiLyThanhToans.InsertOnSubmit(thanhtoan); DBDataProvider.DB.SubmitChanges(); int IDPhieuThu = thanhtoan.IDPhieuThu; khKhachHang KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDKhachHang).FirstOrDefault(); KH.LanCuoiMuaHang = DateTime.Now; if (rdlHinhThuc.SelectedIndex == 0) { //Cap nhat thanh toan phieu giao hang List <ghPhieuGiaoHang> ListPhieuGiaoHang = DBDataProvider.ListPhieuGiaoHang_ASC(IDKhachHang);// phiếu đã được duyệt & chưa thanh toán int i = 0; if (SoTienThu > 0 && ListPhieuGiaoHang.Count > 0) { while (SoTienThu > 0 && i < ListPhieuGiaoHang.Count) { double?TienNoDonHang = ListPhieuGiaoHang[i].ConLai; if (SoTienThu >= TienNoDonHang) //Thanh toán hết đơn hàng { ListPhieuGiaoHang[i].ThanhToan = ListPhieuGiaoHang[i].TongTien; //cập nhật lại thanh toán = tổng tiền ListPhieuGiaoHang[i].ConLai = 0; // cập nhật còn lại = 0; ListPhieuGiaoHang[i].TTThanhToan = 1; // đã thanh toán if (KH != null) { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Thanh toán"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = 0; nhatky.GiamGia = 0; nhatky.TraHang = 0; nhatky.MaPhieu = DBDataProvider.STTPhieuThanhToan_DaiLy(IDKhachHang); nhatky.ThanhToan = TienNoDonHang; nhatky.NoCuoi = KH.CongNo - TienNoDonHang; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = ListPhieuGiaoHang[i].MaPhieu; nhatky.IDKhachHang = IDKhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion KH.CongNo -= TienNoDonHang; // - công nợ KH.ThanhToan += TienNoDonHang; } SoTienThu -= TienNoDonHang; } else // Thanh toán 1 phần đơn hàng { ListPhieuGiaoHang[i].ThanhToan += SoTienThu; // cộng phần còn lại vào thanh toán. ListPhieuGiaoHang[i].ConLai = ListPhieuGiaoHang[i].TongTien - ListPhieuGiaoHang[i].ThanhToan; // cập nhật phần còn lại //ListPhieuGiaoHang[i].TTThanhToan = 1;// đã thanh toán if (KH != null) { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Thanh toán"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = 0; nhatky.ThanhToan = SoTienThu; nhatky.GiamGia = 0; nhatky.NoCuoi = KH.CongNo - SoTienThu; nhatky.NhanVienID = Formats.IDUser(); nhatky.MaPhieu = DBDataProvider.STTPhieuThanhToan_DaiLy(IDKhachHang); nhatky.SoPhieu = ListPhieuGiaoHang[i].MaPhieu; nhatky.IDKhachHang = IDKhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion KH.CongNo -= SoTienThu; // - công nợ KH.ThanhToan += SoTienThu; } SoTienThu -= SoTienThu; } i++; } } else { // trừ công nợ thẳng. if (KH != null) { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Thanh toán"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = 0; nhatky.GiamGia = 0; nhatky.ThanhToan = SoTienThu; nhatky.NoCuoi = KH.CongNo - SoTienThu; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = ""; nhatky.MaPhieu = DBDataProvider.STTPhieuThanhToan_DaiLy(IDKhachHang); nhatky.IDKhachHang = IDKhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion KH.CongNo -= SoTienThu; // - công nợ KH.ThanhToan += SoTienThu; } } } else { // trừ theo phiếu int IDPhieuGiaoHang = int.Parse(ccbPhieuThanhToan.Value.ToString()); ghPhieuGiaoHang PhieuGH = DBDataProvider.DB.ghPhieuGiaoHangs.Single(x => x.IDPhieuGiaoHang == IDPhieuGiaoHang); if (KH != null) { #region ghi nhật ký nhập kho để xem báo cáo khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Thanh toán"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = 0; nhatky.TraHang = 0; nhatky.GiamGia = 0; nhatky.MaPhieu = DBDataProvider.STTPhieuThanhToan_DaiLy(IDKhachHang); nhatky.ThanhToan = PhieuGH.ConLai; nhatky.NoCuoi = KH.CongNo - PhieuGH.ConLai; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = PhieuGH.MaPhieu; nhatky.IDKhachHang = IDKhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion KH.CongNo -= PhieuGH.ConLai;// - công nợ KH.ThanhToan += PhieuGH.TongTien; } PhieuGH.ThanhToan = PhieuGH.TongTien; PhieuGH.ConLai = 0; PhieuGH.TTThanhToan = 1; } DBDataProvider.DB.SubmitChanges(); scope.Complete(); // Reset(); cbpThanhToan.JSProperties["cp_Reset"] = true; } catch (Exception ex) { throw ex; } } }
protected void gridDonHang_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) { using (var scope = new TransactionScope()) { try { if (e.NewValues["TrangThai"] == "0") { return; } int IDPhieuGiaoHang = int.Parse(e.Keys["IDPhieuGiaoHang"].ToString()); int IDKhachHang = int.Parse(gridDonHang.GetRowValuesByKeyValue(e.Keys["IDPhieuGiaoHang"], "KhachHangID").ToString()); int pheduyet = Int32.Parse(e.NewValues["TrangThai"].ToString()); var KH = DBDataProvider.DB.khKhachHangs.Where(x => x.IDKhachHang == IDKhachHang).FirstOrDefault(); var PhieuGH = DBDataProvider.DB.ghPhieuGiaoHangs.Where(x => x.IDPhieuGiaoHang == IDPhieuGiaoHang).FirstOrDefault(); var PhieuGiaoHangCT = DBDataProvider.DB.ghPhieuGiaoHangChiTiets.Where(x => x.PhieuGiaoHangID == IDPhieuGiaoHang).ToList(); if (pheduyet == 1) { // duyệt đơn hàng if (KH != null && PhieuGH != null) { PhieuGH.CongNoHienTai = KH.CongNo; #region nhật ký công nợ khNhatKyCongNo nhatky = new khNhatKyCongNo(); nhatky.NgayNhap = DateTime.Now; nhatky.DienGiai = "Duyệt giao hàng đại lý"; nhatky.NoDau = KH.CongNo; nhatky.NhapHang = PhieuGH.ConLai; nhatky.TraHang = 0; nhatky.NoCuoi = KH.CongNo + PhieuGH.ConLai; nhatky.ThanhToan = 0; nhatky.NhanVienID = Formats.IDUser(); nhatky.SoPhieu = PhieuGH.MaPhieu; nhatky.IDKhachHang = IDKhachHang; DBDataProvider.DB.khNhatKyCongNos.InsertOnSubmit(nhatky); DBDataProvider.DB.SubmitChanges(); #endregion foreach (var prod in PhieuGiaoHangCT) { var HH = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.HangHoaID).FirstOrDefault(); //ghi thẻ kho #region thẻ kho kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Duyệt giao hàng #" + PhieuGH.MaPhieu; thekho.Nhap = 0; thekho.Xuat = prod.SoLuong; thekho.Ton = HH.TonKho - prod.SoLuong; thekho.HangHoaID = HH.IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion } KH.CongNo += PhieuGH.ConLai; // cộng công nợ KH.TongTienHang += PhieuGH.ConLai; KH.LanCuoiMuaHang = DateTime.Now; PhieuGH.TrangThai = 1;// duyệt thành công PhieuGH.SoDonHangTrongNam = DBDataProvider.SoDonHangTrongNam_GiaoHang(); PhieuGH.STTDonHang = DBDataProvider.STTPhieuGiaoHang_DaiLy(IDKhachHang); } } else { // hủy đơn hàng if (KH != null && PhieuGH != null) { // cộng tồn kho foreach (var prod in PhieuGiaoHangCT) { var HH = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == prod.HangHoaID).FirstOrDefault(); HH.TonKho += prod.SoLuong; } PhieuGH.TrangThai = 2;// hủy đơn hàng PhieuGH.STTDonHang = 0; PhieuGH.SoDonHangTrongNam = 0; PhieuGH.CongNoHienTai = KH.CongNo; } } PhieuGH.NgayDuyet = DateTime.Now; DBDataProvider.DB.SubmitChanges(); scope.Complete(); gridDonHang.CancelEdit(); e.Cancel = true; //cbpInfoImport.JSProperties["cp_Reset"] = true; } catch (Exception ex) { throw ex; } } }
protected void gridNhaphang_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e) { int IDChuyenKho = Convert.ToInt32(e.Keys[0].ToString()); using (var scope = new TransactionScope()) { try { var ChuyenKho = DBDataProvider.DB.kChuyenKhos.Where(x => x.IDPhieuChuyen == IDChuyenKho).FirstOrDefault(); if (ChuyenKho != null) { ChuyenKho.DaXoa = 1; List <kChuyenKhoChiTiet> chitiet = DBDataProvider.ChuyenKhoChiTiet(IDChuyenKho); foreach (var nk in chitiet) { int IDHangHoa = Convert.ToInt32(nk.HangHoaID); int SoLuong = Convert.ToInt32(nk.SoLuong); var HangHoa = DBDataProvider.DB.hhHangHoas.Where(x => x.IDHangHoa == IDHangHoa).FirstOrDefault(); if (HangHoa != null) { // trừ kho chuyển #region ghi thẻ kho trừ kTheKho thekho = new kTheKho(); thekho.NgayNhap = DateTime.Now; thekho.DienGiai = "Xóa phiếu chuyển kho #" + ChuyenKho.MaPhieu; thekho.Nhap = SoLuong; thekho.Xuat = 0; thekho.GiaThoiDiem = 0; thekho.ChiNhanhID = ChuyenKho.ChiNhanhChuyenID; thekho.Ton = HangHoa.hhTonKhos.Where(s => s.ChiNhanhID == ChuyenKho.ChiNhanhChuyenID).FirstOrDefault().SoLuong += SoLuong; thekho.HangHoaID = IDHangHoa; thekho.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho); #endregion // cộng kho nhận #region ghi thẻ kho kTheKho thekho1 = new kTheKho(); thekho1.NgayNhap = DateTime.Now; thekho1.DienGiai = "Xóa phiếu chuyển kho #" + ChuyenKho.MaPhieu; thekho1.Nhap = 0; thekho1.Xuat = SoLuong; thekho1.GiaThoiDiem = 0; thekho1.ChiNhanhID = ChuyenKho.ChiNhanhNhanID; thekho1.Ton = HangHoa.hhTonKhos.Where(s => s.ChiNhanhID == ChuyenKho.ChiNhanhNhanID).FirstOrDefault().SoLuong -= SoLuong; thekho1.HangHoaID = IDHangHoa; thekho1.NhanVienID = Formats.IDUser(); DBDataProvider.DB.kTheKhos.InsertOnSubmit(thekho1); #endregion } } DBDataProvider.DB.SubmitChanges(); scope.Complete(); } } catch (Exception ex) { throw ex; } } gridNhaphang.CancelEdit(); e.Cancel = true; gridNhaphang.DataBind(); }