Inheritance: IP.Core.IPUserService.US_Object
 private void load_data_to_grid()
 {
     US_GD_CONG_TAC v_us = new US_GD_CONG_TAC();
     DataTable v_dt = v_us.FillDatasetBCBienDong(m_dat_tu_ngay.DateTime, m_dat_den_ngay.DateTime);
     m_grc.DataSource = v_dt;
     CHRMCommon.make_stt(m_grv);
 }
 private bool check_ct_dang_su_dung(decimal ip_id_chuc_vu)
 {
     US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC();
     DS_GD_CONG_TAC v_ds_ct = new DS_GD_CONG_TAC();
     v_us_ct.FillDataset(v_ds_ct, "where id_vi_tri = " + ip_id_chuc_vu);
     if (v_ds_ct.Tables[0].Rows.Count == 0)
     {
         return false;
     }
     else return true;
 }
 public void display_4_update(decimal v_id_nhan_vien)
 {
     Text = "F351 - Sửa thông tin công tác cho nhân viên";
     m_lbl_header.Text = "SỬA THÔNG TIN CÔNG TÁC CHO NHÂN VIÊN";
     m_e_form_mode = DataEntryFormMode.UpdateDataState;
     m_id_gd_ct = find_id_gd_ct(v_id_nhan_vien);
     US_GD_CONG_TAC v_us = new US_GD_CONG_TAC(m_id_gd_ct);
     us_2_form(v_us);
     m_sle_chon_nhan_vien.Enabled = false;
     this.ShowDialog();
 }
        private void load_data_2_grid()
        {
            US_GD_CONG_TAC v_us_dung_chung = new US_GD_CONG_TAC();
            DataSet v_op_ds = new DataSet();
            v_op_ds.Tables.Add();

            v_us_dung_chung.BAO_CAO(v_op_ds);
            m_trl_bao_cao.KeyFieldName = "ID";
            m_trl_bao_cao.ParentFieldName = "ID_DON_VI_CAP_TREN";
            m_trl_bao_cao.DataSource = v_op_ds.Tables[0];
            m_trl_bao_cao.ExpandAll();
        }
 private void cap_nhat_gd_cong_tac()
 {
     US_GD_CONG_TAC v_us = new US_GD_CONG_TAC();
     v_us.dcID_NHAN_VIEN = CIPConvert.ToDecimal(m_sle_chon_nhan_vien.EditValue);
     v_us.dcID_DON_VI = CIPConvert.ToDecimal(m_sle_don_vi.EditValue);
     v_us.datNGAY_BAT_DAU = m_dat_ngay_bat_dau.DateTime;
     if (m_dat_ngay_ket_thuc.DateTime != DateTime.MinValue)
         v_us.datNGAY_KET_THUC = m_dat_ngay_ket_thuc.DateTime;
     v_us.datNGAY_LAP = DateTime.Now;
     v_us.strNGUOI_LAP = CAppContext_201.getCurrentUserName();
     v_us.strDA_XOA = "N";
     v_us.dcID_LOAI_CONG_TAC = 157;
     v_us.dcID_VI_TRI = CIPConvert.ToDecimal(m_sle_chuc_vu.EditValue);
     v_us.dcSO_HO_SO = BKI_DichVuMatDat.COMMON.ExecuteFuntion.GetSoHoSoNext(v_us.dcID_DON_VI, v_us.dcID_VI_TRI, v_us.dcID_NHAN_VIEN);
     v_us.UseTransOfUSObject(m_us_gd_hd);
     v_us.Insert();
     v_us.CommitTransaction();
 }
 private void save_for_lam_thoi_cong_tac(US_GD_CONG_TAC ip_us_ct_lam_thoi)
 {
     try
     {
         ip_us_ct_lam_thoi.BeginTransaction();
         ip_us_ct_lam_thoi.CapNhatHetHieuLucCongTacChinhThucHoacLamThoi(ip_us_ct_lam_thoi.dcID_NHAN_VIEN, ip_us_ct_lam_thoi.datNGAY_BAT_DAU.AddDays(-1));
         ip_us_ct_lam_thoi.Insert();
         ip_us_ct_lam_thoi.CommitTransaction();
         CHRM_BaseMessages.MsgBox_Infor(CONST_ID_MSGBOX.INFOR_LUU_DU_LIEU_THANH_CONG);
         Close();
     }
     catch(Exception)
     {
         if(ip_us_ct_lam_thoi.is_having_transaction())
         {
             ip_us_ct_lam_thoi.Rollback();
         }
         throw;
     }
 }
 private bool check_logic_data()
 {
     bool v_bool_check = false;
     US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC();
     if(m_e_loai_cap_nhat == e_loai_cap_nhat.THEM_MOI)
     {
         v_bool_check = v_us_ct.KiemTraDuLieuCongTacHopLeForInsert(Convert.ToDecimal(m_sle_chon_nhan_vien.EditValue)
                                             , Convert.ToDecimal(m_sle_chon_loai_cong_tac.EditValue)
                                             , m_dat_ngay_bat_dau.DateTime.Date
                                             , m_dat_ngay_ket_thuc.EditValue == null ? DateTime.Now.AddYears(100).Date : m_dat_ngay_ket_thuc.DateTime.Date);
     }
     if(m_e_loai_cap_nhat == e_loai_cap_nhat.UPDATE)
     {
         v_bool_check = v_us_ct.KiemTraDuLieuCongTacHopLeForUpdate(
                                             m_us_cong_tac.dcID
                                             , m_dat_ngay_bat_dau.DateTime.Date
                                             , m_dat_ngay_ket_thuc.EditValue == null ? DateTime.Now.AddYears(100).Date : m_dat_ngay_ket_thuc.DateTime.Date
                                             , Convert.ToDecimal(m_sle_chon_loai_cong_tac.EditValue));
     }
     if(v_bool_check == false)
     {
         XtraMessageBox.Show("Ngày tháng công tác không hợp lệ do nhân viên đã có công tác khác trong khoảng thời gian này!", "THÔNG BÁO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
     return v_bool_check;
 }
 private DataRow get_don_vi_hien_tai(decimal v_id_nhan_vien)
 {
     US_GD_CONG_TAC v_us = new US_GD_CONG_TAC();
     DS_GD_CONG_TAC v_ds = new DS_GD_CONG_TAC();
     v_us.FillDatasetDonViHienTai(v_ds, v_id_nhan_vien);
     if (v_ds.Tables[0].Rows.Count == 0)
         return null;
     else return v_ds.Tables[0].Rows[0];
 }
        private void grid_to_us_gd_cong_tac(US_GD_CONG_TAC v_us_gd_ct, DataRow data)
        {
            v_us_gd_ct.dcID_NHAN_VIEN = find_id_nv_by_ma_nv(data[ExcelCongTac.MA_NHAN_VIEN].ToString());
            v_us_gd_ct.dcID_LOAI_CONG_TAC = find_id_tu_dien_by_ma_tu_dien(data[ExcelCongTac.LOAI_CONG_TAC].ToString());
            v_us_gd_ct.dcID_VI_TRI = find_id_chuc_vu(data[ExcelCongTac.MA_CHUC_VU].ToString());
            v_us_gd_ct.dcID_DON_VI = find_id_don_vi(data[ExcelCongTac.MA_DON_VI].ToString());

            v_us_gd_ct.strNGUOI_LAP = CAppContext_201.getCurrentUserName();
            v_us_gd_ct.datNGAY_BAT_DAU = WinFormControls.FormatPostingDate(data[ExcelCongTac.NGAY_BAT_DAU].ToString());
            if(String.IsNullOrEmpty(data[ExcelCongTac.NGAY_KET_THUC].ToString()))
            {
                v_us_gd_ct.SetNGAY_KET_THUCNull();
            }
            else
            {
                v_us_gd_ct.datNGAY_KET_THUC = WinFormControls.FormatPostingDate(data[ExcelCongTac.NGAY_KET_THUC].ToString());
            }
            v_us_gd_ct.datNGAY_LAP = DateTime.Now.Date;
            v_us_gd_ct.strDA_XOA = "N";
            v_us_gd_ct.dcSO_HO_SO = ExecuteFuntion.GetSoHoSoNext(v_us_gd_ct.dcID_DON_VI, v_us_gd_ct.dcID_VI_TRI, v_us_gd_ct.dcID_NHAN_VIEN);
        }
        private void save_data()
        {
            US_GD_HOP_DONG v_us_gd_hd = new US_GD_HOP_DONG();
            US_GD_CONG_TAC v_us_gd_cong_tac = new US_GD_CONG_TAC();
            US_GD_HE_SO_LNS v_us_gd_hs_lns = new US_GD_HE_SO_LNS();
            try
            {
                for (int i = 0; i < m_grv_hop_dong.RowCount; i++)
                {
                    var data = m_grv_hop_dong.GetDataRow(i);
                    //
                    grid_to_us_gd_hop_dong(v_us_gd_hd, data);
                    grid_to_us_gd_cong_tac(v_us_gd_cong_tac, data);
                    grid_to_us_gd_lns(v_us_gd_hs_lns, data);

                    //decimal v_id_hop_dong = get_id_hop_dong_hien_tai(v_us_gd_hd.dcID_NHAN_VIEN.ToString());

                    //
                    v_us_gd_hd.BeginTransaction();
                    //if (v_id_hop_dong != 0)
                    //{
                    //    ket_thuc_hop_dong_cu(v_id_hop_dong, v_us_gd_hd.datNGAY_BAT_DAU);
                    //}
                    v_us_gd_cong_tac.UseTransOfUSObject(v_us_gd_hd);
                    //v_us_gd_cong_tac.CapNhatHetHieuLucCongTac(v_us_gd_hd.dcID_NHAN_VIEN, v_us_gd_hd.datNGAY_BAT_DAU);
                    v_us_gd_hs_lns.UseTransOfUSObject(v_us_gd_hd);
                    //v_us_gd_hs_lns.KetThucLuongNangSuatNhanVien(v_us_gd_hd.dcID_NHAN_VIEN, v_us_gd_hd.datNGAY_BAT_DAU);
                    v_us_gd_hs_lns.Insert();
                    v_us_gd_hd.Insert();
                    v_us_gd_cong_tac.Insert();
                    v_us_gd_hd.CommitTransaction();
                }
                CHRM_BaseMessages.MsgBox_Infor("Đã lưu dữu liệu thành công");
            }
            catch (Exception)
            {
                if (v_us_gd_hd.is_having_transaction())
                {
                    v_us_gd_hd.Rollback();
                }
                throw;
            }
        }
 private DataTable get_cong_tac_het_han()
 {
     US_GD_CONG_TAC v_us_gd_cong_tac = new US_GD_CONG_TAC();
     DataSet v_ds = v_us_gd_cong_tac.LayDanhSachCTHetHanTrongThang();
     return v_ds.Tables[0];
 }
 private void us_2_form(US_GD_CONG_TAC ip_us)
 {
     m_sle_chon_nhan_vien.EditValue = ip_us.dcID_NHAN_VIEN;
     m_sle_chon_quyet_dinh.EditValue = ip_us.dcID_QUYET_DINH;
     m_sle_chon_loai_cong_tac.EditValue = ip_us.dcID_LOAI_CONG_TAC;
     m_sle_chon_don_vi.EditValue = ip_us.dcID_DON_VI;
     m_sle_chon_vi_tri.EditValue = ip_us.dcID_VI_TRI;
     m_dat_ngay_bat_dau.EditValue = ip_us.datNGAY_BAT_DAU;
     m_dat_ngay_ket_thuc.EditValue = ip_us.datNGAY_KET_THUC;
 }
        private bool kiem_tra_nhan_vien_co_cong_tac_chinh_thuc_chua()
        {
            US_GD_CONG_TAC v_us = new US_GD_CONG_TAC();
            var v_dc_id_nhan_vien = Convert.ToDecimal(m_sle_chon_nhan_vien.EditValue);

            return v_us.KiemTraNhanVienCoCongTacChinhThucChua(Convert.ToDecimal(m_sle_chon_nhan_vien.EditValue));
        }
        //
        private void form_2_us_gd_cong_tac(ref US_GD_CONG_TAC ip_us)
        {
            if(m_sle_chon_quyet_dinh.EditValue != null)
            {
                ip_us.dcID_QUYET_DINH = CIPConvert.ToDecimal(m_sle_chon_quyet_dinh.EditValue);
            }

            if(m_sle_chon_nhan_vien.EditValue != null)
            {
                ip_us.dcID_NHAN_VIEN = CIPConvert.ToDecimal(m_sle_chon_nhan_vien.EditValue);
            }

            if(m_sle_chon_don_vi.EditValue != null)
            {
                ip_us.dcID_DON_VI = CIPConvert.ToDecimal(m_sle_chon_don_vi.EditValue);
            }

            if(m_sle_chon_vi_tri.EditValue != null)
            {
                ip_us.dcID_VI_TRI = CIPConvert.ToDecimal(m_sle_chon_vi_tri.EditValue);
            }

            if(m_sle_chon_loai_cong_tac.EditValue != null)
            {
                ip_us.dcID_LOAI_CONG_TAC = CIPConvert.ToDecimal(m_sle_chon_loai_cong_tac.EditValue);
            }

            if(m_dat_ngay_bat_dau.EditValue != null)
            {
                //Ngay bat dau
                ip_us.datNGAY_BAT_DAU = m_dat_ngay_bat_dau.DateTime;
            }

            if(m_dat_ngay_ket_thuc.EditValue != null)
            {
                //Ngay ket thuc
                ip_us.datNGAY_KET_THUC = m_dat_ngay_ket_thuc.DateTime;
            }
            else
            {
                ip_us.SetNGAY_KET_THUCNull();
            }

            if(m_e_loai_cap_nhat == e_loai_cap_nhat.THEM_MOI_CONG_TAC)
            {
                //Ngay lap
                ip_us.datNGAY_LAP = DateTime.Now.Date;
                ip_us.strNGUOI_LAP = CAppContext_201.getCurrentUserName();
            }
            else if(m_e_loai_cap_nhat == e_loai_cap_nhat.UPDATE)
            {
                //Ngay sua
                ip_us.datNGAY_SUA = DateTime.Now.Date;
                ip_us.strNGUOI_SUA = CAppContext_201.getCurrentUserName();
            }
            ip_us.strDA_XOA = "N";
            //ip_us.dcSO_HO_SO = ExecuteFuntion.GetSoHoSoNext(ip_us.dcID_DON_VI, ip_us.dcID_VI_TRI);
        }
 public void display_for_update(decimal ip_dc_id_gd_cong_tac)
 {
     m_us_cong_tac = new US_GD_CONG_TAC(ip_dc_id_gd_cong_tac);
     setup_form_for_update_cong_tac(ip_dc_id_gd_cong_tac);
     ShowDialog();
 }
 public void display_for_them_cong_tac_moi()
 {
     m_us_cong_tac = new US_GD_CONG_TAC();
     setup_form_for_them_moi_qua_trinh_cong_tac();
     ShowDialog();
 }
        private void setup_form_for_update_cong_tac(decimal ip_dc_id_gd_cong_tac)
        {
            US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC(ip_dc_id_gd_cong_tac);
            m_e_loai_cap_nhat = e_loai_cap_nhat.UPDATE;

            setup_header_text("F310 - Sửa công tác");
            setup_read_only(m_sle_chon_nhan_vien);
            load_data_2_sle_nhan_vien();

            m_sle_chon_nhan_vien.EditValue = v_us_ct.dcID_NHAN_VIEN;
            m_sle_chon_don_vi.EditValue = v_us_ct.dcID_DON_VI;
            m_sle_chon_loai_cong_tac.EditValue = v_us_ct.dcID_LOAI_CONG_TAC;
            m_sle_chon_vi_tri.EditValue = v_us_ct.dcID_VI_TRI;
            m_dat_ngay_bat_dau.EditValue = v_us_ct.datNGAY_BAT_DAU;
            m_txt_so_ho_so.EditValue = v_us_ct.dcSO_HO_SO;
            if(!v_us_ct.IsNGAY_KET_THUCNull())
            {
                m_dat_ngay_ket_thuc.EditValue = v_us_ct.datNGAY_KET_THUC;
            }
        }
 private void setup_form_for_cham_dut_cong_tac(decimal ip_dc_id_gd_cong_tac, decimal ip_dc_id_phong_ban)
 {
     load_data_2_sle_nhan_vien(load_danh_sach_nhan_vien_theo_phong_ban(ip_dc_id_phong_ban));
     US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC(ip_dc_id_gd_cong_tac);
     m_e_loai_cap_nhat = e_loai_cap_nhat.CHAM_DUT_CONG_TAC;
     setup_header_text("CHẤM DỨT CÔNG TÁC NHÂN VIÊN");
     setup_read_only(m_sle_chon_don_vi, m_sle_chon_vi_tri, m_sle_chon_nhan_vien, m_sle_chon_loai_cong_tac, m_sle_chon_quyet_dinh);
     m_dat_ngay_bat_dau.ReadOnly = true;
     m_sle_chon_nhan_vien.EditValue = v_us_ct.dcID_NHAN_VIEN;
     m_sle_chon_don_vi.EditValue = v_us_ct.dcID_DON_VI;
     m_sle_chon_loai_cong_tac.EditValue = v_us_ct.dcID_LOAI_CONG_TAC;
     m_sle_chon_quyet_dinh.EditValue = v_us_ct.dcID_QUYET_DINH;
     m_sle_chon_vi_tri.EditValue = v_us_ct.dcID_VI_TRI;
     m_dat_ngay_bat_dau.EditValue = v_us_ct.datNGAY_BAT_DAU;
     if (!v_us_ct.IsNGAY_KET_THUCNull())
     {
         m_dat_ngay_ket_thuc.EditValue = v_us_ct.datNGAY_KET_THUC;
     }
 }
        private void setup_form_for_update_cong_tac(decimal ip_dc_id_gd_cong_tac)
        {
            US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC(ip_dc_id_gd_cong_tac);
            m_e_loai_cap_nhat = e_loai_cap_nhat.UPDATE;

            setup_header_text("SỬA CÔNG TÁC");
            setup_read_only(m_sle_chon_don_vi);
            load_data_2_sle_nhan_vien(load_danh_sach_nhan_vien_theo_phong_ban(v_us_ct.dcID_DON_VI));

            m_sle_chon_nhan_vien.EditValue = v_us_ct.dcID_NHAN_VIEN;
            m_sle_chon_don_vi.EditValue = v_us_ct.dcID_DON_VI;
            m_sle_chon_loai_cong_tac.EditValue = v_us_ct.dcID_LOAI_CONG_TAC;
            m_sle_chon_quyet_dinh.EditValue = v_us_ct.dcID_QUYET_DINH;
            m_sle_chon_vi_tri.EditValue = v_us_ct.dcID_VI_TRI;
            m_dat_ngay_bat_dau.EditValue = v_us_ct.datNGAY_BAT_DAU;
            if(!v_us_ct.IsNGAY_KET_THUCNull())
            {
                m_dat_ngay_ket_thuc.EditValue = v_us_ct.datNGAY_KET_THUC;
            }
        }
 private DataTable load_danh_sach_nhan_vien_chua_co_cong_tac()
 {
     US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC();
     return v_us_ct.LayDanhSachNhanVienChuaCoCongTac();
 }
 private DataTable load_danh_sach_nhan_vien_theo_phong_ban(decimal ip_dc_id_phong_ban)
 {
     US_GD_CONG_TAC v_us_ct = new US_GD_CONG_TAC();
     return v_us_ct.LayDanhSachNhanVienTheoPhongBan(Convert.ToDecimal(m_sle_chon_don_vi.EditValue));
 }
 private void save_data()
 {
     US_GD_CONG_TAC v_us_gd_ct = new US_GD_CONG_TAC();
     form_2_us_gd_cong_tac(ref v_us_gd_ct);
     try
     {
         switch(m_e_loai_cap_nhat)
         {
             case e_loai_cap_nhat.THEM_MOI_CONG_TAC:
                 v_us_gd_ct.Insert();
                 CHRM_BaseMessages.MsgBox_Infor(CONST_ID_MSGBOX.INFOR_LUU_DU_LIEU_THANH_CONG);
                 break;
             case e_loai_cap_nhat.LAM_THOI_CONG_TAC:
                 save_for_lam_thoi_cong_tac(v_us_gd_ct);
                 break;
             case e_loai_cap_nhat.KIEM_NHIEM_CONG_TAC:
                 save_for_kiem_nhiem_cong_tac(v_us_gd_ct);
                 break;
             case e_loai_cap_nhat.CHUYEN_CONG_TAC:
                 save_for_chuyen_cong_tac(v_us_gd_ct);
                 break;
             case e_loai_cap_nhat.CHAM_DUT_CONG_TAC:
                 save_for_cham_dut_cong_tac(v_us_gd_ct);
                 break;
             case e_loai_cap_nhat.UPDATE:
                 v_us_gd_ct.Update();
                 break;
             default:
                 break;
         }
     }
     catch(Exception v_e)
     {
         v_us_gd_ct.Rollback();
         CSystemLog_301.ExceptionHandle(v_e);
     }
 }
 private void grid_to_us_gd_cong_tac(US_GD_CONG_TAC v_us_gd_cong_tac, DataRow data)
 {
     v_us_gd_cong_tac.dcID_NHAN_VIEN = find_id_nv_by_ma_nv(data["MA_NHAN_VIEN"].ToString());
     v_us_gd_cong_tac.dcID_DON_VI = find_id_don_vi(data["MA_DON_VI"].ToString());
     v_us_gd_cong_tac.dcID_VI_TRI = find_id_chuc_vu(data["MA_CHUC_VU"].ToString());
     v_us_gd_cong_tac.dcID_LOAI_CONG_TAC = 157;
     v_us_gd_cong_tac.dcSO_HO_SO = ExecuteFuntion.GetSoHoSoNext(v_us_gd_cong_tac.dcID_DON_VI, v_us_gd_cong_tac.dcID_VI_TRI, v_us_gd_cong_tac.dcID_NHAN_VIEN);
     v_us_gd_cong_tac.strNGUOI_LAP = CAppContext_201.getCurrentUserName();
     v_us_gd_cong_tac.strDA_XOA = "N";
     v_us_gd_cong_tac.datNGAY_BAT_DAU = WinFormControls.FormatPostingDate(data["NGAY_BAT_DAU"].ToString());
     if (String.IsNullOrEmpty(data["NGAY_KET_THUC"].ToString()))
     {
         v_us_gd_cong_tac.datNGAY_KET_THUC = v_us_gd_cong_tac.datNGAY_BAT_DAU.AddYears(45);
     }
     else
     {
         v_us_gd_cong_tac.datNGAY_KET_THUC = WinFormControls.FormatPostingDate(data["NGAY_KET_THUC"].ToString());
     }
     v_us_gd_cong_tac.datNGAY_LAP = DateTime.Now.Date;
 }
 private void save_for_cham_dut_cong_tac(US_GD_CONG_TAC ip_us_ct_hien_tai)
 {
     ip_us_ct_hien_tai.CapNhatHetHieuLucCongTac(ip_us_ct_hien_tai.dcID_NHAN_VIEN, ip_us_ct_hien_tai.datNGAY_KET_THUC);
     CHRM_BaseMessages.MsgBox_Infor(CONST_ID_MSGBOX.INFOR_LUU_DU_LIEU_THANH_CONG);
     Close();
 }
 private bool check_thoi_gian_cong_tac_Insert(DataRow ip_dr)
 {
     //Hợp đồng hợp lệ khi trong một khoảng thời gian chỉ có một hợp đồng
     US_GD_CONG_TAC v_us = new US_GD_CONG_TAC();
     var v_dc_id_nhan_vien = ExecuteFuntion.LayNhanVienID(ip_dr[ExcelCongTac.MA_NHAN_VIEN].ToString());
     var v_dc_id_loai_cong_tac = find_id_tu_dien_by_ma_tu_dien(ip_dr[ExcelCongTac.LOAI_CONG_TAC].ToString());
     var v_dat_ngay_bat_dau = Convert.ToDateTime(ip_dr[ExcelCongTac.NGAY_BAT_DAU]).Date;
     var v_dat_ngay_ket_thuc = ip_dr[ExcelCongTac.NGAY_KET_THUC] == DBNull.Value ? new DateTime(2100, 01, 01).Date : Convert.ToDateTime(ip_dr[ExcelCongTac.NGAY_KET_THUC]);
     var v_bool_hop_le = v_us.KiemTraDuLieuCongTacHopLeForInsert(v_dc_id_nhan_vien,v_dc_id_loai_cong_tac, v_dat_ngay_bat_dau, v_dat_ngay_ket_thuc);
     if(!v_bool_hop_le)
     {
         XtraMessageBox.Show("Thời gian công tác của nhân viên " + ip_dr[ExcelCongTac.MA_NHAN_VIEN].ToString() + " không hợp lệ " +
                                 "do đã có công tác tồn tại trong khoảng thời gian này rồi", "THÔNG BÁO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
     return v_bool_hop_le;
 }
        private void m_cmd_huy_kiem_nhiem_Click(object sender, EventArgs e)
        {
            try
            {
                if (CHRM_BaseMessages.MsgBox_Confirm(CONST_ID_MSGBOX.QUESTION_XAC_NHAN_HUY_KIEM_NHIEM_CUA_NHAN_VIEN) == true)
                {
                    decimal v_id_gd_loai_ct = 0;

                    v_id_gd_loai_ct = CIPConvert.ToDecimal(m_grv_v_gd_cong_tac.GetRowCellValue(m_grv_v_gd_cong_tac.FocusedRowHandle, "ID"));

                    US_GD_CONG_TAC v_us = new US_GD_CONG_TAC(v_id_gd_loai_ct);
                    v_us.strDA_XOA = "Y";
                    v_us.BeginTransaction();
                    v_us.Update();
                    v_us.CommitTransaction();
                    load_data_2_grid(CIPConvert.ToDecimal(m_sle_chon_nhan_vien.EditValue), CIPConvert.ToDecimal(m_sle_chon_loai_cong_tac.EditValue));
                }

            }
            catch (Exception v_e)
            {
                CSystemLog_301.ExceptionHandle(v_e);
            }
        }
        private void save_data()
        {
            if(m_grv_cong_tac.RowCount < 1)
            {
                XtraMessageBox.Show("Chưa có dữ liệu để lưu!", "THÔNG BÁO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if(!check_all_is_ok())
            {
                return;
            }
            SplashScreenManager.ShowForm(this, typeof(SplashScreen1), true, true, false);
            US_GD_CONG_TAC v_us_gd_ct = new US_GD_CONG_TAC();
            int v_i_row = 0;
            try
            {

                for(v_i_row = 0; v_i_row < m_grv_cong_tac.RowCount; v_i_row++)
                {
                    v_us_gd_ct.BeginTransaction();
                    v_us_gd_ct.ClearAllFields();
                    var data = m_grv_cong_tac.GetDataRow(v_i_row);
                    grid_to_us_gd_cong_tac(v_us_gd_ct, data);
                    v_us_gd_ct.Insert();
                    v_us_gd_ct.CommitTransaction();
                    SplashScreenManager.Default.SendCommand(SplashScreen1.SplashScreenCommand.SetProgress, (int)((decimal)v_i_row / (decimal)m_grv_cong_tac.RowCount * 100));
                }

                //Sau do phai cap nhat lai so ho so, chua biet lam

                CHRM_BaseMessages.MsgBox_Infor("Đã lưu dữ liệu thành công");
            }
            catch(Exception)
            {
                if(v_us_gd_ct.is_having_transaction())
                {
                    v_us_gd_ct.Rollback();
                }
                if(v_i_row >= 1)
                {
                    throw new Exception("Có lỗi xảy ra. Dữ liệu lưu chưa thành công!\nĐã lưu thành công đến dòng thứ " + v_i_row + " với mã nhân viên " + m_grv_cong_tac.GetRowCellValue(v_i_row - 1, ExcelCongTac.MA_NHAN_VIEN).ToString());
                }
                else
                {
                    throw new Exception("Có lỗi xảy ra. Dữ liệu lưu chưa được lưu!");
                }
                throw;
            }
            finally
            {
                SplashScreenManager.CloseForm(false);
            }
        }
 private void save_for_kiem_nhiem_cong_tac(US_GD_CONG_TAC ip_us_ct_lam_thoi)
 {
     try
     {
         ip_us_ct_lam_thoi.BeginTransaction();
         ip_us_ct_lam_thoi.Insert();
         ip_us_ct_lam_thoi.CommitTransaction();
         CHRM_BaseMessages.MsgBox_Infor(CONST_ID_MSGBOX.INFOR_LUU_DU_LIEU_THANH_CONG);
         Close();
     }
     catch(Exception)
     {
         if(ip_us_ct_lam_thoi.is_having_transaction())
         {
             ip_us_ct_lam_thoi.Rollback();
         }
         throw;
     }
 }
 private void save_for_chuyen_cong_tac(US_GD_CONG_TAC ip_us_ct_hien_tai)
 {
     try
     {
         if(ip_us_ct_hien_tai.KiemTraNhanVienCoCongTacChua(ip_us_ct_hien_tai.dcID_NHAN_VIEN, ip_us_ct_hien_tai.dcID_DON_VI))
         {
             XtraMessageBox.Show("Nhân viên đang làm việc ở đơn vị này rồi!", "THÔNG BÁO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             return;
         }
         ip_us_ct_hien_tai.BeginTransaction();
         ip_us_ct_hien_tai.CapNhatHetHieuLucCongTacChinhThucHoacLamThoi(ip_us_ct_hien_tai.dcID_NHAN_VIEN, ip_us_ct_hien_tai.datNGAY_BAT_DAU.AddDays(-1));
         ip_us_ct_hien_tai.Insert();
         ip_us_ct_hien_tai.CommitTransaction();
         CHRM_BaseMessages.MsgBox_Infor(CONST_ID_MSGBOX.INFOR_LUU_DU_LIEU_THANH_CONG);
         Close();
     }
     catch(Exception)
     {
         if(ip_us_ct_hien_tai.is_having_transaction())
         {
             ip_us_ct_hien_tai.Rollback();
         }
         throw;
     }
 }
        private void save_data()
        {
            US_GD_CONG_TAC v_us_gd_ct = new US_GD_CONG_TAC();
            form_2_us_gd_cong_tac(v_us_gd_ct);
            try
            {
                switch (m_e_form_mode)
                {
                    case DataEntryFormMode.InsertDataState:
                        if (m_id_gd_ct != -1)
                        {
                            //Nhan vien da co GD cong tac
                            if (m_loai_ctac_cthuc == true && CIPConvert.ToDecimal(m_sle_chon_loai_cong_tac.EditValue) == CONST_ID_LOAI_CONG_TAC.CHINH_THUC)
                            {
                                cho_gd_ct_da_xoa_Y();
                            }
                        }

                        v_us_gd_ct.BeginTransaction();
                        v_us_gd_ct.Insert();
                        v_us_gd_ct.CommitTransaction();
                        break;
                    case DataEntryFormMode.UpdateDataState:
                        v_us_gd_ct.BeginTransaction();
                        v_us_gd_ct.Update();
                        v_us_gd_ct.CommitTransaction();
                        break;
                    default:
                        break;
                }
            }
            catch (Exception v_e)
            {
                CSystemLog_301.ExceptionHandle(v_e);
            }
        }