Пример #1
0
        public static DTO.DTO_PhieuDatBan GetPhieuDatBan(int maTiecCuoi)
        {
            DTO.DTO_PhieuDatBan phieuDatBan = null;
            String    sqlCommand            = String.Format(@"SELECT * FROM PHIEUDATBAN WHERE MaTiecCuoi = {0}", maTiecCuoi);
            DataTable dataTable             = DatabaseHelper.GetData(sqlCommand);

            if (dataTable != null)
            {
                if (dataTable.Rows.Count > 0)
                {
                    DataRow dataRow = dataTable.Rows[0];
                    phieuDatBan               = new DTO_PhieuDatBan();
                    phieuDatBan.MaTiecCuoi    = maTiecCuoi;
                    phieuDatBan.MaPhieuDatBan = int.Parse(dataRow["MaPhieuDatBan"].ToString());
                    phieuDatBan.SoBan         = int.Parse(dataRow["SoBan"].ToString());
                    phieuDatBan.SoBanDuTru    = int.Parse(dataRow["SoBanDuTru"].ToString());
                    phieuDatBan.GhiChu        = dataRow["GhiChu"].ToString();
                    phieuDatBan.DonGiaBan     = decimal.Parse(dataRow["DonGiaBan"].ToString());
                }
            }
            return(phieuDatBan);
        }
Пример #2
0
        private void btnLapHoaDon_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrWhiteSpace(mTenChuRe.Trim()) && String.IsNullOrWhiteSpace(mTenCoDau.Trim()))
            {
                MessageBox.Show("Bạn chưa chọn tên chú rể và tên cô dâu, Vui lòng chọn lại.", "Thông báo", MessageBoxButtons.OKCancel);
                return;
            }

            //set up so ngay tre


            tiecCuoiInfo = BUS.BUS_LapHoaDonThanhToan.GetTiecCuoi(mTenChuRe, mTenCoDau, mNgayDaiTiec);
            if (tiecCuoiInfo != null)
            {
                phieuDatBan = BUS.BUS_LapHoaDonThanhToan.GetPhieuDatBan(tiecCuoiInfo.MaTiecCuoi);
                if (phieuDatBan != null)
                {
                    lblSoLuongBan.Text  = phieuDatBan.SoBan.ToString();
                    lblDonGiaBan.Text   = ConvertStringToCurrency(phieuDatBan.DonGiaBan);
                    tongTienBan         = phieuDatBan.DonGiaBan * phieuDatBan.SoBan;
                    lblTongTienBan.Text = ConvertStringToCurrency(tongTienBan);

                    DataTable dataTableChiTietDichVu = BUS.BUS_LapHoaDonThanhToan.GetChiTietDichVu(tiecCuoiInfo.MaTiecCuoi);
                    dgvCacDichVu.DataSource = dataTableChiTietDichVu;

                    bool isLapHoaDon = BUS.BUS_LapHoaDonThanhToan.IsLapHoaDonThanhToan(tiecCuoiInfo.MaTiecCuoi);

                    if (isLapHoaDon)
                    {
                        List <DTO.DTO_HoaDon> hoaDons = BUS.BUS_HoaDon.GetAllHoaDon(tiecCuoiInfo.MaTiecCuoi);
                        if (hoaDons != null && hoaDons.Count > 0)
                        {
                            lblTienDaThanhToan.Text = "Số tiền đã trả";
                            DTO.DTO_HoaDon latestHoaDon = hoaDons[hoaDons.Count - 1];

                            soTienConLai   = latestHoaDon.ConLai;
                            lblConLai.Text = ConvertStringToCurrency(soTienConLai);

                            tongTienDichVu     = latestHoaDon.TongTienDichVu;
                            lblTongTienDV.Text = ConvertStringToCurrency(tongTienDichVu);

                            tongTienBan         = latestHoaDon.TongTienBan;
                            lblTongTienBan.Text = ConvertStringToCurrency(tongTienBan);

                            tongTienHoaDon     = latestHoaDon.TongTienHoaDon;
                            lblTongTienHD.Text = ConvertStringToCurrency(tongTienHoaDon);


                            decimal tongTienDaThanhToan = 0;
                            foreach (DTO_HoaDon hoadon in hoaDons)
                            {
                                tongTienDaThanhToan += hoadon.TienDaThanhToan;
                            }

                            String[] strNgayDaiTiec       = latestHoaDon.NgayThanhToan.Split('/');
                            DateTime ngayThanhToanGanNhat = new DateTime(int.Parse(strNgayDaiTiec[2]), int.Parse(strNgayDaiTiec[0]), int.Parse(strNgayDaiTiec[1]));
                            soNgayTre = currentDate.Subtract(ngayThanhToanGanNhat).Days;


                            lblNTTInfo.Text       = "Ngày thanh toán gần đây:";
                            lblNgayThanhToan.Text = ngayThanhToanGanNhat.ToString("dd/MM/yyyy");
                            lblSoNgayTre.Text     = soNgayTre.ToString();

                            soTienDaThanhToan         = tongTienDaThanhToan;
                            lblTienDatCoc.Text        = ConvertStringToCurrency(soTienDaThanhToan);
                            tongTienTra               = soTienConLai;
                            lblTongTienThanhToan.Text = ConvertStringToCurrency(tongTienTra);

                            if (tongTienTra == 0)
                            {
                                gbThanhToan.Controls.Remove(btnThanhToan);
                                gbThanhToan.Controls.Remove(lblSoTienTra);
                                gbThanhToan.Controls.Remove(txtSoTienTra);
                                gbThanhToan.Controls.Remove(lblStart);
                                txtSoTienTra.Enabled     = false;
                                btnThanhToan.Enabled     = false;
                                lblThanhToanXong.Visible = true;
                                return;
                            }
                        }
                    }
                    else
                    {
                        soTienDatCoc       = tiecCuoiInfo.TienCoc;
                        lblTienDatCoc.Text = ConvertStringToCurrency(soTienDatCoc);

                        tongTienDichVu     = BUS.BUS_LapHoaDonThanhToan.GetTongTienDichVu(tiecCuoiInfo.MaTiecCuoi);
                        lblTongTienDV.Text = ConvertStringToCurrency(tongTienDichVu);
                        tongTienHoaDon     = tongTienBan + tongTienDichVu;
                        lblTongTienHD.Text = ConvertStringToCurrency(tongTienHoaDon);
                        soTienConLai       = tongTienHoaDon - soTienDatCoc;
                        lblConLai.Text     = ConvertStringToCurrency(soTienConLai);


                        String[] strNgayDaiTiec      = mNgayDaiTiec.Split('/');
                        DateTime ngayDaiTiecDatetime = new DateTime(int.Parse(strNgayDaiTiec[2]), int.Parse(strNgayDaiTiec[0]), int.Parse(strNgayDaiTiec[1]));
                        soNgayTre         = currentDate.Subtract(ngayDaiTiecDatetime).Days;
                        lblSoNgayTre.Text = soNgayTre.ToString();
                        lblResult.Text    = "";

                        //chiTietPhieuDatBanDataTable = BUS.BUS_LapHoaDonThanhToan.GetChiTietDatBan(phieuDatBan.MaPhieuDatBan);
                        //if (chiTietPhieuDatBanDataTable.Rows.Count > 0)
                        //{
                        //    if (chiTietPhieuDatBanDataTable != null)
                        //    {
                        //        foreach (DataRow row in chiTietPhieuDatBanDataTable.Rows)
                        //        {
                        //            foreach (DataColumn column in chiTietPhieuDatBanDataTable.Columns)
                        //            {
                        //                Console.WriteLine(row[column].ToString());
                        //            }
                        //        }
                        //    }
                        //}
                    }
                }

                if (isApplyQuyDinh)
                {
                    float phanTramPhat = BUS.BUS_ThamSo.GetThamSo().GiaTri;
                    lblPhanTramPhat.Text      = phanTramPhat.ToString() + "%";
                    soTienPhat                = (decimal)((float)soTienConLai * 0.01f) * soNgayTre;
                    lblTongTienPhat.Text      = ConvertStringToCurrency(soTienPhat);
                    tongTienTra               = soTienConLai + soTienPhat;
                    lblTongTienThanhToan.Text = ConvertStringToCurrency(soTienConLai + soTienPhat);
                }
                else
                {
                    lblPhanTramPhat.Text = "Không áp dụng";
                }
            }

            txtSoTienTra.Enabled   = true;
            btnThanhToan.Enabled   = true;
            btnLapHoaDon.Enabled   = false;
            cbbTenCoDau.Enabled    = false;
            cbbTenChuRe.Enabled    = false;
            dtpNgayDaiTiec.Enabled = false;
        }