Beispiel #1
0
        private tblhoadonban GetDataHoaDon()
        {
            tblhoadonban obj = new tblhoadonban();

            if (sidkh.Trim().Equals("") == true)
            {
                MessageBox.Show("Lỗi lấy thông tin khách hàng.\nVui lòng tắt chức năng và thao tác lại.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                txtTenKH.Focus();
                return(null);
            }
            if (txtID.Text.Equals("-1") == true)
            {
                obj.id = Guid.NewGuid().ToString();
            }
            else
            {
                obj.id = txtID.Text.Trim();
            }
            obj.id_khachhang = sidkh;
            try { obj.chietkhau = Convert.ToDouble(txtChietKhau.Text.Trim()); }
            catch { }
            obj.ghichu  = txtGhiChu.Text.Trim();
            obj.ngaytao = DateTime.ParseExact(
                txtNgayXuat.Text.Trim(),
                "dd/MM/yyyy HH:mm:ss",
                CultureInfo.InvariantCulture);
            try { obj.tienthanhtoan = Convert.ToDouble(txtTienThanhToan.Text.Trim()); }
            catch { }
            try { obj.userid = cbNhanVien.SelectedValue.ToString().Trim(); }
            catch { obj.userid = Data.use.Trim(); }
            return(obj);
        }
        private List <tbltienthanhtoan> GetListTienThanhToan()
        {
            tblhoadonbanBL ctrhoadonban = new tblhoadonbanBL();
            tblhoadonban   objhoadonban = new tblhoadonban();

            objhoadonban = ctrhoadonban.GetByID(sidhd);
            try
            {
                List <tbltienthanhtoan> lst = new List <tbltienthanhtoan>();
                for (int i = 1; i < c1FlexGrid1.Rows.Count; i++)
                {
                    tbltienthanhtoan obj = new tbltienthanhtoan();
                    if (c1FlexGrid1[i, "tt"].ToString().Trim().Equals("0") == false)
                    {
                        if (c1FlexGrid1[i, "tt"].ToString().Trim().Equals("1") == true)
                        {
                            obj.id = Guid.NewGuid().ToString();
                        }
                        else if (c1FlexGrid1[i, "tt"].ToString().Trim().Equals("2") == true)
                        {
                            obj.id = c1FlexGrid1[i, "id"].ToString().Trim();
                        }
                        if (sidhd.Trim().Equals("") == true)
                        {
                            MessageBox.Show("Không lấy được thông tin hóa đơn.\nVui lòng tắt chương trình và khởi động lại.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            c1FlexGrid1.Select(i, c1FlexGrid1.Cols["tientt"].Index);
                            return(null);
                        }
                        try { obj.tientt = Convert.ToDouble(c1FlexGrid1[i, "tientt"].ToString().Trim()); }
                        catch
                        {
                            MessageBox.Show("Tiền thanh toán nhập không đúng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            c1FlexGrid1.Select(i, c1FlexGrid1.Cols["tientt"].Index);
                            return(null);
                        }
                        if (obj.tientt == 0)
                        {
                            MessageBox.Show("Tiền thanh toán phải lớn hơn 0", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            c1FlexGrid1.Select(i, c1FlexGrid1.Cols["tientt"].Index);
                            return(null);
                        }
                        obj.idhd   = sidhd;
                        obj.ngaytt = Convert.ToDateTime(c1FlexGrid1[i, "ngaytt"].ToString().Trim());
                        if (objhoadonban.ngaytao == obj.ngaytt)
                        {
                            MessageBox.Show("Bản ghi này đã tồn tại.\nVui lòng nhập lại ngày thanh toán", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            c1FlexGrid1.Select(i, c1FlexGrid1.Cols["ngaytt"].Index);
                            return(null);
                        }
                        obj.ghichu = c1FlexGrid1[i, "ghichu"].ToString().Trim();
                        lst.Add(obj);
                    }
                }
                return(lst);
            }
            catch { return(null); }
        }
 private void HienThiTTHoaDon()
 {
     try
     {
         tblhoadonban   obj = new tblhoadonban();
         tblhoadonbanBL ctr = new tblhoadonbanBL();
         obj = ctr.GetByID(txtID.Text.Trim());
         txtChietKhau.Text     = obj.chietkhau.ToString("N0", CultureInfo.InvariantCulture);
         txtTienThanhToan.Text = obj.tienthanhtoan.ToString("N0", CultureInfo.InvariantCulture);
         txtNgayXuat.Text      = obj.ngaytao.ToString("dd/MM/yyyy HH:mm:ss");
         txtNoToaTruoc.Text    = ctr.GetTienConNo(obj.id_khachhang, obj.ngaytao).ToString("N0", CultureInfo.InvariantCulture);
         txtGhiChu.Text        = obj.ghichu.Trim();
     }
     catch
     {
         HienThiDSMatHang();
     }
 }
        private void HienThiTTHoaDon()
        {
            tblhoadonban   objhd = new tblhoadonban();
            tblhoadonbanBL ctrhd = new tblhoadonbanBL();

            objhd = ctrhd.GetByID(sidhd);
            try{
                tblkhachhang   objkh = new tblkhachhang();
                tblkhachhangBL ctrkh = new tblkhachhangBL();
                objkh            = ctrkh.GetByID(objhd.id_khachhang.Trim());
                lbCapDL.Text     = objkh.id_capdl;
                lbDiaChi.Text    = objkh.diachi;
                lbDienThoai.Text = objkh.dt;
                lbNgayXuat.Text  = objhd.ngaytao.ToString("dd/MM/yyyy HH:mm:ss");
                lbTenKH.Text     = objkh.tenkh;
            }
            catch {
                lbCapDL.Text     = "-/-";
                lbDiaChi.Text    = "-/-";
                lbDienThoai.Text = "-/-";
                lbNgayXuat.Text  = "-/-";
                lbTenKH.Text     = "-/-";
            }
        }
Beispiel #5
0
        private void Save()
        {
            string             kq         = "";
            tbltienthanhtoanBL ctrtientt  = new tbltienthanhtoanBL();
            tblmathangBL       ctrmathang = new tblmathangBL();
            tblhoadonbanBL     ctrhoadon  = new tblhoadonbanBL();
            tblhoadonban       objhoadon  = new tblhoadonban();

            objhoadon = GetDataHoaDon();
            tblmathangbanBL      ctrmathangban = new tblmathangbanBL();
            List <tblmathangban> lstmathang    = new List <tblmathangban>();

            lstmathang = GetListMatHangBan();
            if (objhoadon != null && lstmathang != null)
            {
                if (txtID.Text.Trim().Equals("-1") == true)
                {
                    kq = ctrhoadon.Insert(objhoadon);
                    if (kq.Trim().Equals("") == true)
                    {
                        //txtID.Text = objhoadon.id.Trim();
                        tbltienthanhtoan objtientt = new tbltienthanhtoan();
                        objtientt.id     = Guid.NewGuid().ToString().Trim();
                        objtientt.idhd   = objhoadon.id;
                        objtientt.ngaytt = objhoadon.ngaytao;
                        objtientt.tientt = objhoadon.tienthanhtoan;
                        ctrtientt.Insert(objtientt);
                    }
                }
                else
                {
                    kq = ctrhoadon.Update(objhoadon);
                    tbltienthanhtoan objtientt = new tbltienthanhtoan();
                    objtientt = ctrtientt.GetByIDHDvsNgayTT(objhoadon.id, objhoadon.ngaytao);
                    if (objtientt != null)
                    {
                        objtientt.tientt = objhoadon.tienthanhtoan;
                        ctrtientt.Update(objtientt);
                    }
                    else
                    {
                        objtientt        = new tbltienthanhtoan();
                        objtientt.id     = Guid.NewGuid().ToString().Trim();
                        objtientt.idhd   = objhoadon.id;
                        objtientt.ngaytt = objhoadon.ngaytao;
                        objtientt.tientt = objhoadon.tienthanhtoan;
                        ctrtientt.Insert(objtientt);
                    }
                    //_ctrlog.Append(Data.use, "Sửa hóa đơn cho khách hàng: " + txtTenKH.Text.Trim() + " ; id: " + objhoadon.id);
                    _ctrlog.Append(Data.use, "Sửa hóa đơn cho khách hàng: " + txtTenKH.Text.Trim() + " xuất ngày: " + txtNgayXuat.Text.Trim()
                                   + "; id: " + objhoadon.id
                                   + ";\nChi tiết: Tổng tiền hàng: " + txtTongTien.Text + " - Nợ cũ: " + txtNoToaTruoc.Text
                                   + " - Tiền thanh toán: " + txtTienThanhToan.Text + " - Tổng nợ mới: " + txtConNo.Text);
                }
                if (kq.Trim().Equals("") == true)
                {
                    if (lstmathang != null)
                    {
                        if (objhoadon != null && lstmathang.Count > 0)
                        {
                            for (int i = 0; i < lstmathang.Count; i++)
                            {
                                tblmathangban temp = new tblmathangban();
                                temp = ctrmathangban.GetByID(lstmathang[i].id);
                                if (temp == null)
                                {
                                    lstmathang[i].id_hoadon = objhoadon.id;
                                    kq = ctrmathangban.Insert(lstmathang[i]);
                                    if (kq.Trim().Equals("") == false)
                                    {
                                        ctrhoadon.Delete(objhoadon.id);
                                        break;
                                    }
                                    else //Cập nhật lại số lượng còn trong kho
                                    {
                                        tblmathang objmathang = new tblmathang();
                                        objmathang         = ctrmathang.GetByID(lstmathang[i].id_mathang.Trim());
                                        objmathang.soluong = objmathang.soluong - lstmathang[i].soluong;
                                        ctrmathang.Update(objmathang);
                                    }
                                }
                                else
                                {
                                    lstmathang[i].id_hoadon = objhoadon.id;
                                    kq = ctrmathangban.Update(lstmathang[i]);
                                    if (kq.Trim().Equals("") == false)
                                    {
                                        break;
                                    }
                                    else //Cập nhật lại số lượng còn trong kho
                                    {
                                        tblmathang objmathang = new tblmathang();
                                        objmathang         = ctrmathang.GetByID(lstmathang[i].id_mathang.Trim());
                                        objmathang.soluong = (objmathang.soluong + temp.soluong) - lstmathang[i].soluong;
                                        ctrmathang.Update(objmathang);
                                    }
                                }
                            }
                            if (kq.Trim().Equals("") == false)
                            {
                                MessageBox.Show("Lỗi cập nhật hóa đơn.\nChi tiết lỗi: " + kq, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                return;
                            }
                            else
                            {
                                if (txtID.Text.Trim().Equals("-1") == true)
                                {
                                    txtID.Text = objhoadon.id.Trim();
                                    _ctrlog.Append(Data.use, "Thêm mới hóa đơn cho khách hàng: " + txtTenKH.Text.Trim() + " xuất ngày: " + txtNgayXuat.Text.Trim()
                                                   + "; id: " + objhoadon.id
                                                   + ";\nChi tiết: Tổng tiền hàng: " + txtTongTien.Text + " - Nợ cũ: " + txtNoToaTruoc.Text
                                                   + " - Tiền thanh toán: " + txtTienThanhToan.Text + " - Tổng nợ mới: " + txtConNo.Text);
                                }
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Lỗi cập nhật hóa đơn.\nChi tiết lỗi: " + kq, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }
            if (kq.Trim().Equals("") == true && lstmathang != null)
            {
                MessageBox.Show("Cập nhật hóa đơn bán thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                HienThiTTHoaDon();
                HienThiDSMatHang();
                ultraToolbarsManager1.Tools["btn_Del"].SharedProps.Visible     = true;
                ultraToolbarsManager1.Tools["btnExportHD"].SharedProps.Visible = true;
            }
        }
 /// <summary>
 /// Cập nhật dữ liệu vào bảng: tblhoadonban
 /// </summary>
 /// <param name="obj">objtblhoadonban</param>
 /// <returns>Trả về trắng: Cập nhật thành công; Trả về khác trắng: Cập nhật không thành công</returns>
 public string Update(tblhoadonban objtblhoadonban)
 {
     return(objtblhoadonbanDA.Update(objtblhoadonban));
 }
 /// <summary>
 /// Thêm mới dữ liệu vào bảng: tblhoadonban
 /// </summary>
 /// <param name="obj">objtblhoadonban</param>
 /// <returns>Trả về trắng: Thêm mới thành công; Trả về khác trắng: Thêm mới không thành công</returns>
 public string Insert(tblhoadonban objtblhoadonban)
 {
     return(objtblhoadonbanDA.Insert(objtblhoadonban));
 }
 public tblhoadonbanBL()
 {
     objtblhoadonbanDA = new tblhoadonban();
 }
Beispiel #9
0
 private string GenerateWorksheet(WorksheetCollection sheets, DateTime dtdenngay, DataTable dtkh, ProgressBar progressBar)
 {
     try
     {
         tblhoadonbanBL     ctrhdb        = new tblhoadonbanBL();
         tblhoadonban       objhdb        = new tblhoadonban();
         tblmathangbanBL    ctrmathangban = new tblmathangbanBL();
         tbltienthanhtoanBL ctrtiendatt   = new tbltienthanhtoanBL();
         Worksheet          sheet         = sheets.Add("TKCongNo");
         sheet.Table.DefaultRowHeight    = 15F;
         sheet.Table.ExpandedColumnCount = 6;
         sheet.Table.ExpandedRowCount    = 5 + dtkh.Rows.Count;
         sheet.Table.FullColumns         = 1;
         sheet.Table.FullRows            = 1;
         sheet.Table.Columns.Add(36);
         sheet.Table.Columns.Add(75);
         sheet.Table.Columns.Add(138);
         sheet.Table.Columns.Add(99);
         sheet.Table.Columns.Add(191);
         sheet.Table.Columns.Add(131);
         // -----------------------------------------------
         #region Add Header
         Application.DoEvents();
         progressBar.PerformStep();
         Application.DoEvents();
         WorksheetRow Row0 = sheet.Table.Rows.Add();
         Row0.Height = 20;
         WorksheetCell cell;
         cell             = Row0.Cells.Add();
         cell.StyleID     = "s103";
         cell.Data.Type   = DataType.String;
         cell.Data.Text   = "TỔNG HỢP CÔNG NỢ BÁN HÀNG";
         cell.MergeAcross = 5;
         // -----------------------------------------------
         WorksheetRow Row1 = sheet.Table.Rows.Add();
         cell             = Row1.Cells.Add();
         cell.StyleID     = "s104";
         cell.Data.Type   = DataType.String;
         cell.Data.Text   = "(Số liệu tính đến ngày " + dtdenngay.ToString("dd/MM/yyyy") + ")";
         cell.MergeAcross = 5;
         // -----------------------------------------------
         WorksheetRow Row2 = sheet.Table.Rows.Add();
         cell             = Row2.Cells.Add();
         cell.StyleID     = "s102";
         cell.Data.Type   = DataType.String;
         cell.Data.Text   = "Đơn vị tính: VNĐ";
         cell.MergeAcross = 5;
         // -----------------------------------------------
         WorksheetRow Row3 = sheet.Table.Rows.Add();
         Row3.Height = 15;
         Row3.Cells.Add("Stt", DataType.String, "s120");
         Row3.Cells.Add("Cấp đại lý", DataType.String, "s120");
         Row3.Cells.Add("Tên khách hàng", DataType.String, "s120");
         Row3.Cells.Add("Điện thoại", DataType.String, "s120");
         Row3.Cells.Add("Địa chỉ", DataType.String, "s120");
         Row3.Cells.Add("Tổng tiền còn nợ", DataType.String, "s120");
         #endregion
         // -----------------------------------------------
         #region Add Content
         for (int i = 0; i < dtkh.Rows.Count; i++)
         {
             Application.DoEvents();
             progressBar.PerformStep();
             Application.DoEvents();
             string sidkh = "";
             try { sidkh = dtkh.Rows[i]["id"].ToString().Trim(); }
             catch { sidkh = "-/-"; }
             string scapdl = "";
             try { scapdl = dtkh.Rows[i]["id_capdl"].ToString().Trim(); }
             catch { scapdl = "-/-"; }
             string stenkh = "";
             try { stenkh = dtkh.Rows[i]["tenkh"].ToString().Trim(); }
             catch { stenkh = "-/-"; }
             string sdt = "";
             try { sdt = dtkh.Rows[i]["dt"].ToString().Trim(); }
             catch { sdt = "-/-"; }
             string sdiachi = "";
             try { sdiachi = dtkh.Rows[i]["diachi"].ToString().Trim(); }
             catch { sdiachi = "-/-"; }
             if (sidkh.Trim().Equals("") == false)
             {
                 // Lấy hóa đơn gần với ngày thống kê nhất
                 objhdb = new tblhoadonban();
                 Application.DoEvents();
                 progressBar.PerformStep();
                 Application.DoEvents();
                 objhdb = ctrhdb.GetNewFirstByNgayTaovsIDKH(dtdenngay.AddDays(1).ToString("yyyy/MM/dd").Trim(), sidkh);
                 if (objhdb != null)
                 {
                     double tienmuahang = 0;
                     try { tienmuahang = ctrmathangban.GetTongTienByIDHD(objhdb.id); }
                     catch { }
                     //double tientt = 0;
                     //tientt = objhdb.tienthanhtoan;
                     double chietkhau = 0;
                     chietkhau = objhdb.chietkhau;
                     double tiendatt = 0;
                     try { tiendatt = ctrtiendatt.GetTienDaThanhToan(objhdb.id); }
                     catch { }
                     double tienconnotoatruoc = 0;
                     try { tienconnotoatruoc = ctrhdb.GetTienConNo(objhdb.id_khachhang, objhdb.ngaytao); }
                     catch { }
                     double tienconno = 0;
                     tienconno = ((tienmuahang - tiendatt - chietkhau) + tienconnotoatruoc);
                     Application.DoEvents();
                     progressBar.PerformStep();
                     Application.DoEvents();
                     WorksheetRow Row = sheet.Table.Rows.Add();
                     Row.Cells.Add((i + 1).ToString(), DataType.Number, "s97");
                     Row.Cells.Add(scapdl, DataType.String, "s132");
                     Row.Cells.Add(stenkh, DataType.String, "s132");
                     Row.Cells.Add(sdt, DataType.String, "s132");
                     Row.Cells.Add(sdiachi, DataType.String, "s132");
                     Row.Cells.Add(tienconno.ToString().Trim(), DataType.Number, "s126");
                 }
             }
         }
         #endregion
         // -----------------------------------------------
         #region Tính tổng các dòng
         Application.DoEvents();
         progressBar.PerformStep();
         Application.DoEvents();
         WorksheetRow Row7 = sheet.Table.Rows.Add();
         Row7.Height      = 15;
         cell             = Row7.Cells.Add();
         cell.StyleID     = "s107";
         cell.Data.Type   = DataType.String;
         cell.Data.Text   = "TỔNG CỘNG";
         cell.MergeAcross = 4;
         cell             = Row7.Cells.Add();
         cell.StyleID     = "s133";
         cell.Data.Type   = DataType.Number;
         cell.Formula     = "=SUM(R[-" + dtkh.Rows.Count.ToString() + "]C:R[-1]C)";
         #endregion
         // -----------------------------------------------
         //  Options
         // -----------------------------------------------
         sheet.Options.Selected                     = true;
         sheet.Options.ProtectObjects               = false;
         sheet.Options.ProtectScenarios             = false;
         sheet.Options.PageSetup.Header.Margin      = 0.3F;
         sheet.Options.PageSetup.Footer.Margin      = 0.3F;
         sheet.Options.PageSetup.PageMargins.Bottom = 0.75F;
         sheet.Options.PageSetup.PageMargins.Left   = 0.7F;
         sheet.Options.PageSetup.PageMargins.Right  = 0.7F;
         sheet.Options.PageSetup.PageMargins.Top    = 0.75F;
         sheet.Options.Print.HorizontalResolution   = 300;
         sheet.Options.Print.VerticalResolution     = 0;
         sheet.Options.Print.ValidPrinterInfo       = true;
         return("");
     }
     catch (Exception ex) { return(ex.Message); }
 }