Inheritance: IP.Core.IPUserService.US_Object
        private bool check_ma_nhan_vien_is_ok(DataRow dataRow)
        {
            decimal v_id_nhan_vien = find_id_nhan_vien_by_ma_nv(dataRow["MA_NV"].ToString().Trim());
            if (v_id_nhan_vien == -1) return false;
            US_GD_LOAI_LAO_DONG v_us_gd_loai_lao_dong = new US_GD_LOAI_LAO_DONG();
            DS_GD_LOAI_LAO_DONG v_ds_gd_loai_lao_dong = new DS_GD_LOAI_LAO_DONG();
            v_us_gd_loai_lao_dong.FillDataset(v_ds_gd_loai_lao_dong, "where id_nhan_vien = " + v_id_nhan_vien);

            if (v_ds_gd_loai_lao_dong.Tables[0].Rows.Count > 0)
                return false;
            else
            {
                return true;
            }
        }
 //Load toan bo du lieu tu V_GD_LOAI_LAO_DONG len luoi
 private void form_2_us_gd_loai_lao_dong(US_GD_LOAI_LAO_DONG ip_us)
 {
     if (m_sle_chon_nhan_vien.EditValue != null && m_sle_chon_nhan_vien.EditValue != "")
     {
         ip_us.dcID_NHAN_VIEN = CIPConvert.ToDecimal(m_sle_chon_nhan_vien.EditValue);
     }
     if (m_sle_chon_loai_lao_dong.EditValue != null && m_sle_chon_loai_lao_dong.EditValue != "")
     {
         ip_us.dcID_LOAI_LAO_DONG = CIPConvert.ToDecimal(m_sle_chon_loai_lao_dong.EditValue);
     }
     if (m_dat_ngay_bat_dau.Value.Date != null || m_dat_ngay_bat_dau.Value.Date.ToString() != "")
     {
         ip_us.datNGAY_BAT_DAU = m_dat_ngay_bat_dau.Value.Date;
     }
     if (m_dat_ngay_ket_thuc.Value.Date != null || m_dat_ngay_ket_thuc.Value.Date.ToString() != "")
     {
         ip_us.datNGAY_KET_THUC = m_dat_ngay_ket_thuc.Value.Date;
     }
 }
        private void save_data()
        {
            decimal ip_id_dc_nv = CIPConvert.ToDecimal(m_sle_chon_nhan_vien.EditValue);
            US_GD_LOAI_LAO_DONG v_us_gd_loai_lao_dong = new US_GD_LOAI_LAO_DONG(ip_id_dc_nv);

            v_us_gd_loai_lao_dong.dcID_LOAI_LAO_DONG = CIPConvert.ToDecimal(m_sle_chon_loai_lao_dong.EditValue);
            v_us_gd_loai_lao_dong.datNGAY_BAT_DAU = m_dat_ngay_bat_dau.Value.Date;
            v_us_gd_loai_lao_dong.datNGAY_KET_THUC = m_dat_ngay_ket_thuc.Value.Date;
            v_us_gd_loai_lao_dong.BeginTransaction();
            v_us_gd_loai_lao_dong.Update();
            v_us_gd_loai_lao_dong.CommitTransaction();
        }
        private void m_cmd_update_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow v_dr = m_grv_v_gd_loai_lao_dong.GetDataRow(m_grv_v_gd_loai_lao_dong.FocusedRowHandle);
                decimal v_id_gd_loai_lao_dong = CIPConvert.ToDecimal(v_dr[GD_LOAI_LAO_DONG.ID]);
                US_GD_LOAI_LAO_DONG v_us = new US_GD_LOAI_LAO_DONG(v_id_gd_loai_lao_dong);

                f371_nhan_vien_loai_lao_dong_de v_frm = new f371_nhan_vien_loai_lao_dong_de();
                v_frm.DisplayForUpdate(v_us);
                load_data_2_grid();
            }
            catch (Exception v_e)
            {
                CSystemLog_301.ExceptionHandle(v_e);
            }
        }
        private void m_cmd_delete_Click(object sender, EventArgs e)
        {
            try
            {
                //Lay ID cua dong du lieu muon xoa
                DataRow v_dr = m_grv_v_gd_loai_lao_dong.GetDataRow(m_grv_v_gd_loai_lao_dong.FocusedRowHandle);
                //Lay ID cua dong du lieu tren
                decimal v_id = CIPConvert.ToDecimal(v_dr[GD_LOAI_LAO_DONG.ID]);

                US_GD_LOAI_LAO_DONG v_us = new US_GD_LOAI_LAO_DONG(v_id);
                if (CHRM_BaseMessages.MsgBox_Confirm(CONST_ID_MSGBOX.QUESTION_XAC_NHAN_XOA_DU_LIEU) == true)
                {
                    v_us.Delete();
                    load_data_2_grid();
                }
            }
            catch (Exception v_e)
            {
                CSystemLog_301.ExceptionHandle(v_e);
            }
        }
        private void gan_du_lieu_cho_us_dm_nhan_vien(DataRow dataRow)
        {
            US_GD_LOAI_LAO_DONG v_us = new US_GD_LOAI_LAO_DONG();

            v_us.dcID_NHAN_VIEN = find_id_nhan_vien_by_ma_nv(dataRow["MA_NV"].ToString().Trim());
            if (dataRow["LOAI_LAO_DONG"].ToString() == "Trực tiếp")
            {
                v_us.dcID_LOAI_LAO_DONG = CONST_ID_LOAI_LAO_DONG.TRUC_TIEP;
            }
            else if (dataRow["LOAI_LAO_DONG"].ToString() == "Gián tiếp")
            {
                v_us.dcID_LOAI_LAO_DONG = CONST_ID_LOAI_LAO_DONG.GIAN_TIEP;
            }

            if (dataRow["NGAY_BAT_DAU"].ToString() != "")
                if ((dataRow["NGAY_BAT_DAU"].ToString().Substring(0, 10) != ""))
                    v_us.datNGAY_BAT_DAU = CIPConvert.ToDatetime(dataRow["NGAY_BAT_DAU"].ToString().Substring(0, 10));
            if (dataRow["NGAY_KET_THUC"].ToString() != "")
                if ((dataRow["NGAY_KET_THUC"].ToString().Substring(0, 10) != ""))
                    v_us.datNGAY_KET_THUC = CIPConvert.ToDatetime(dataRow["NGAY_KET_THUC"].ToString().Substring(0, 10));
            v_us.strDA_XOA = "N";
            v_us.Insert();
        }
        //Tim id_nhan_vien da co trong bang GD_LOAI_LAO_DONG
        //Neu nhan vien da co loai lao dong thi khong the them duoc ma chi co the sua
        private decimal find_id_gd_nv_loai_ld(decimal ip_dc_id_nv)
        {
            US_GD_LOAI_LAO_DONG v_us = new US_GD_LOAI_LAO_DONG();
            DS_GD_LOAI_LAO_DONG v_ds = new DS_GD_LOAI_LAO_DONG();

            v_us.FillDataset(v_ds);
            string v_str_filter = "ID_NHAN_VIEN = " + ip_dc_id_nv;
            DataRow[] v_dr = v_ds.GD_LOAI_LAO_DONG.Select(v_str_filter);

            if (v_dr.Count() == 0)
            {
                return 0; // m_id_gd_loai_ld = 0 tuc la trong bang GD_LOAI_LAO_DONG chua co nhan vien nay
            }
            else return 1; // m_id_gd_loai_ld = 1 tuc la trong bang GD_LOAI_LAO_DONG da co nhan vien nay
        }
 private void save_data()
 {
     US_GD_LOAI_LAO_DONG v_us_gd_loai_lao_dong = new US_GD_LOAI_LAO_DONG();
     form_2_us_gd_loai_lao_dong(v_us_gd_loai_lao_dong);
     try
     {
         if (m_id_gd_loai_ld != 0)
         {
             MessageBox.Show("Nhân viên nãy đã tồn tại loại lao động! Nếu bạn muốn SỬA thông tin cho nhân viên vui lòng chọn nút SỬA!", "THÔNG BÁO!");
         }
         else
         {
             v_us_gd_loai_lao_dong.BeginTransaction();
             v_us_gd_loai_lao_dong.Insert();
             v_us_gd_loai_lao_dong.CommitTransaction();
         }
     }
     catch (Exception v_e)
     {
         CSystemLog_301.ExceptionHandle(v_e);
     }
 }
        private void luu_gd_loai_lao_dong()
        {
            try
            {
                US_GD_LOAI_LAO_DONG v_us = new US_GD_LOAI_LAO_DONG();
                v_us.dcID_NHAN_VIEN = CIPConvert.ToDecimal(m_dc_id_nhan_vien.ToString());
                v_us.dcID_LOAI_LAO_DONG = CIPConvert.ToDecimal(m_sle_loai_lao_dong.EditValue);
                if (m_dat_ngay_bat_dau.Checked == true)
                    v_us.datNGAY_BAT_DAU = m_dat_ngay_bat_dau.Value;
                if (m_dat_ngay_ket_thuc.Checked == true)
                    v_us.datNGAY_KET_THUC = m_dat_ngay_ket_thuc.Value;
                switch (m_e_form_mode)
                {
                    case DataEntryFormMode.UpdateDataState:
                        break;
                    case DataEntryFormMode.InsertDataState:
                        v_us.Insert();
                        break;
                    default:
                        break;
                }
            }
            catch (Exception)
            {

                MessageBox.Show("Lỗi loại lao động!");
            }
        }