示例#1
0
        private void LoadDataGridView()
        {
            dgvDanhMuc.DataSource = DanhMucChiPhiBLL.GetListDanhMucChiPhi();

            string[] listProp = { "STT", "TenChiPhi", "TenLoaiChiPhi", "SoTien", "TinhTheoNgayCheckBox", "GhiChu" };
            ControlFormat.DataGridViewFormat(dgvDanhMuc, listProp);

            dgvDanhMuc.Columns["STT"].DisplayIndex                  = 0;
            dgvDanhMuc.Columns["TenChiPhi"].DisplayIndex            = 1;
            dgvDanhMuc.Columns["TenLoaiChiPhi"].DisplayIndex        = 2;
            dgvDanhMuc.Columns["SoTien"].DisplayIndex               = 3;
            dgvDanhMuc.Columns["TinhTheoNgayCheckBox"].DisplayIndex = 4;
            dgvDanhMuc.Columns["GhiChu"].DisplayIndex               = 5;

            dgvDanhMuc.Columns["TenChiPhi"].HeaderText     = "Tên chi phí";
            dgvDanhMuc.Columns["TenLoaiChiPhi"].HeaderText = "Loại chi phí";
            dgvDanhMuc.Columns["SoTien"].HeaderText        = "Số tiền";
            dgvDanhMuc.Columns["GhiChu"].HeaderText        = "Ghi chú";

            dgvDanhMuc.Columns["TenChiPhi"].Width     = 300;
            dgvDanhMuc.Columns["TenLoaiChiPhi"].Width = 200;
            dgvDanhMuc.Columns["SoTien"].Width        = 120;
            dgvDanhMuc.Columns["GhiChu"].Width        = 550;

            dgvDanhMuc.ClearSelection();
            dgvDanhMuc.CurrentCell = null;
            ClearAllField();
        }
示例#2
0
        private void dgvDanhMuc_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex != -1 && e.RowIndex != dgvDanhMuc.RowCount)
            {
                txtTenChiPhi.Text = dgvDanhMuc.Rows[e.RowIndex].Cells["TenChiPhi"].Value.ToString();

                txtSoTien.Text = dgvDanhMuc.Rows[e.RowIndex].Cells["SoTien"].Value.ToString();
                txtGhiChu.Text = dgvDanhMuc.Rows[e.RowIndex].Cells["GhiChu"].Value.ToString();
                int truTienKhiNghi = int.Parse(dgvDanhMuc.Rows[e.RowIndex].Cells["TinhTheoSoNgayDiHoc"].Value.ToString());
                chkTinhTheoSoNgayDiHoc.Checked = truTienKhiNghi == 1;
                cboLoaiChiPhi.Text             = DanhMucChiPhiBLL.GetTenLoaiChiPhi(dgvDanhMuc.Rows[e.RowIndex].Cells["MaLoaiChiPhi"].Value.ToString().Trim());

                btnCapNhat.Enabled = true;
                btnXoa.Enabled     = true;
                btnThem.Enabled    = false;
                lbMessage.Visible  = false;

                maDanhMuc = dgvDanhMuc.Rows[e.RowIndex].Cells["MaDanhMuc"].Value.ToString();

                if (DanhMucChiPhiBLL.KiemTraSuDungDanhMucChiPhi(maDanhMuc))
                {
                    btnXoa.Enabled    = false;
                    lbMessage.Visible = true;
                }
            }
        }
示例#3
0
 private void LoadComboboxLoaiChiPhi()
 {
     cboLoaiChiPhi.DisplayMember = "Text";
     cboLoaiChiPhi.ValueMember   = "Value";
     foreach (LoaiChiPhi loaiChiPhi in DanhMucChiPhiBLL.GetListLoaiChiPhi())
     {
         cboLoaiChiPhi.Items.Add(new { Text = loaiChiPhi.TenLoaiChiPHi.Trim(), Value = loaiChiPhi.MaLoaiChiPhi.Trim() });
     }
 }
示例#4
0
 private void LoadListChiPhi()
 {
     cboChiPhi.Items.Clear();
     cboChiPhi.DisplayMember = "Text";
     cboChiPhi.ValueMember   = "Value";
     foreach (DanhMucChiPhi danhMuc in DanhMucChiPhiBLL.GetListDanhMucChiPhi())
     {
         cboChiPhi.Items.Add(new { Text = danhMuc.TenChiPhi.Trim(), Value = danhMuc.MaDanhMuc.Trim() });
     }
     cboChiPhi.Text = "";
 }
示例#5
0
        public static decimal TinhHocPhiThangNay(HocPhi hocPhi, List <ChiTietHocPhi> list)
        {
            decimal tong        = 0;
            int     soNgayDiHoc = TreBLL.GetSoNgayDiHocTrongThang(hocPhi.MaTre, hocPhi.Thang, hocPhi.Nam);

            foreach (ChiTietHocPhi chiTiet in list)
            {
                DanhMucChiPhi danhMuc = DanhMucChiPhiBLL.GetInfoDanhMuc(chiTiet.MaDanhMuc);

                //cap nhat lai so tien trong list neu danh muc chi phi nay tinh tien theo so ngay di hoc
                tong += danhMuc.TinhTheoSoNgayDiHoc == 1 ? danhMuc.SoTien * soNgayDiHoc : chiTiet.SoTien;
            }

            return(tong);
        }
示例#6
0
 private void btnXoa_Click(object sender, EventArgs e)
 {
     //Kiểm tra nếu danh mục này đang được sử dụng thì không cho xóa
     if (DanhMucChiPhiBLL.KiemTraSuDungDanhMucChiPhi(maDanhMuc))
     {
         MessageBox.Show("Danh mục chi phí này không thể xóa vì danh mục này đang áp dụng để tính học phí.");
         return;
     }
     //Xoa danh mục chi phí
     try
     {
         DanhMucChiPhiBLL.XoaDanhMucChiPhi(maDanhMuc);
         MessageBox.Show("Đã xóa danh mục chi phí thành công!");
         LoadDataGridView();
     } catch (Exception ex)
     {
         MessageBox.Show("Đã xảy ra lỗi.");
     }
 }
示例#7
0
        private void cboChiPhi_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cboChiPhi.SelectedItem == null)
            {
                return;
            }
            DanhMucChiPhi danhMuc = DanhMucChiPhiBLL.GetInfoDanhMuc(KeyHandle.GetKeyFromCombobox(cboChiPhi.SelectedItem.ToString()));

            if (danhMuc.TenLoaiChiPhi == "Cố định")
            {
                txtSoTien.Enabled = false;
            }
            else
            {
                txtSoTien.Enabled = true;
            }
            labelTheoNgay.Visible = danhMuc.TinhTheoSoNgayDiHoc == 1;

            txtSoTien.Text = danhMuc.SoTien.ToString();
        }
示例#8
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            if (txtTenChiPhi.Text == "")
            {
                MessageBox.Show("Tên chi phí không được để trống.");
                return;
            }
            if (txtSoTien.Text == "")
            {
                MessageBox.Show("Số tiền không được để trống.");
                return;
            }
            if (cboLoaiChiPhi.SelectedItem == null || KeyHandle.GetKeyFromCombobox(cboLoaiChiPhi.SelectedItem.ToString()) == "")
            {
                MessageBox.Show("Loại chi phí không được để trống.");
                return;
            }

            //Cập nhật lại danh mục chi phí xuống CSDL
            try
            {
                DanhMucChiPhi danhMuc = new DanhMucChiPhi();
                danhMuc.MaDanhMuc           = maDanhMuc;
                danhMuc.TenChiPhi           = txtTenChiPhi.Text;
                danhMuc.MaLoaiChiPhi        = KeyHandle.GetKeyFromCombobox(cboLoaiChiPhi.SelectedItem.ToString());
                danhMuc.SoTien              = decimal.Parse(txtSoTien.Text);
                danhMuc.GhiChu              = txtGhiChu.Text;
                danhMuc.TinhTheoSoNgayDiHoc = chkTinhTheoSoNgayDiHoc.Checked ? 1 : 0;
                DanhMucChiPhiBLL.CapNhatDanhMucChiPhi(danhMuc);
                MessageBox.Show("Cập nhật danh mục chi phí thành công!");
                LoadDataGridView();
            } catch (Exception ex)
            {
                MessageBox.Show("Đã xảy ra lỗi khi lưu xuống cơ sở dữ liệu.");
            }
        }
示例#9
0
        public static void CapNhatHocPhi(HocPhi hocPhi, List <ChiTietHocPhi> listChiTiet)
        {
            int soNgayDiHoc = TreBLL.GetSoNgayDiHocTrongThang(hocPhi.MaTre, hocPhi.Thang, hocPhi.Nam);

            //Xoa tat ca cac chi tiet hoc phi hien co
            foreach (ChiTietHocPhi chiTiet in GetChiTietHocPhi(hocPhi.MaHocPhi))
            {
                HocPhiDAL.XoaChiTietHocPhi(chiTiet);
            }

            //Luu cac chi tiet hoc phi vua moi cap nhat
            foreach (ChiTietHocPhi chiTiet in listChiTiet)
            {
                DanhMucChiPhi danhMuc       = DanhMucChiPhiBLL.GetInfoDanhMuc(chiTiet.MaDanhMuc);
                ChiTietHocPhi chiTietHocPhi = (ChiTietHocPhi)chiTiet.Clone();
                //cap nhat lai so tien trong list neu danh muc chi phi nay tinh tien theo so ngay di hoc
                chiTietHocPhi.SoTien   = danhMuc.TinhTheoSoNgayDiHoc == 1 ? danhMuc.SoTien * soNgayDiHoc : chiTiet.SoTien;
                chiTietHocPhi.MaHocPhi = hocPhi.MaHocPhi;
                HocPhiDAL.ThemChiTietHocPhi(chiTietHocPhi);
            }

            //luu hoc phi
            HocPhiDAL.CapNhatHocPhi(hocPhi);
        }