public void insertData(DataTable p_dtImport) { this.m_db.BeginTransaction(); try { DateTime l_dt = DateTime.Now; string l_dtstr = l_dt.ToString("yyyy-MM-dd HH:mm:sss"); for (int i = 0; i < p_dtImport.Rows.Count; i++) { string l_strUser_Guid = Guid.NewGuid().ToString(); //先刪除舊有的資料 string l_ACCOUNT = p_dtImport.Rows[i]["員工編號"].ToString(); string l_Email = p_dtImport.Rows[i]["伊媚兒"].ToString(); string l_USER_GUID = getUSER_GUIDbyACCOUNT(l_ACCOUNT); if (!l_USER_GUID.Equals("")) { DeleteTB_EB_USER(l_USER_GUID); DeleteTB_EB_EMPL_DEP(l_USER_GUID); DeleteTB_EB_EMPL_FUNC(l_USER_GUID); DeleteTB_EB_EMPL(l_USER_GUID); DeleteTB_EB_EMPL_HR(l_USER_GUID); DeleteTB_EB_EMPL_HR_EDUACTION(l_USER_GUID); } //新增員工主檔 UserUCO userUCO = new UserUCO(); string l_PASSWORD = userUCO.HashPassword(p_dtImport.Rows[i]["員工編號"].ToString(), ""); string l_NAME = p_dtImport.Rows[i]["員工姓名"].ToString(); string l_SID = p_dtImport.Rows[i]["身分證字號"].ToString(); string l_OPTION1 = p_dtImport.Rows[i]["職等名稱"].ToString(); insertTB_EB_USER(l_strUser_Guid, l_ACCOUNT, l_NAME, l_PASSWORD, l_Email, l_dtstr, l_SID, l_OPTION1); //新增部門&職級 string l_GroupID = Utility.ReturnGROUP_ID(p_dtImport.Rows[i]["單位名稱"].ToString()); string l_TITLENAME = getTITLEIDbyTITLENAME(p_dtImport.Rows[i]["職稱名稱"].ToString()); insertTB_EB_EMPL_DEP(l_strUser_Guid, l_GroupID, l_TITLENAME); //新增職務 string l_FUNC_ID = getFUNC_IDbyFUNC_NAME(p_dtImport.Rows[i]["職務名稱"].ToString()); insertTB_EB_EMPL_FUN(l_strUser_Guid, l_GroupID, l_FUNC_ID); //新增兵役 string l_MILITARY_SERVICE = p_dtImport.Rows[i]["服役名稱"].ToString(); string l_MARRIED = CoreMARRIED(p_dtImport.Rows[i]["婚姻狀況"].ToString()); insertTB_EB_EMPL_HR(l_strUser_Guid, l_MARRIED, l_MILITARY_SERVICE); //新增學歷 string l_EDUC_ID = getEDUC_IDbyEDUC_NAME(p_dtImport.Rows[i]["教育程度"].ToString()); string l_SCHOOL = p_dtImport.Rows[i]["畢業學校"].ToString(); string l_MAJOR = p_dtImport.Rows[i]["科系名稱"].ToString(); insertTB_EB_EMPL_HR_EDUACTION(l_strUser_Guid, l_EDUC_ID, l_SCHOOL, l_MAJOR); //新增員工 string l_SEX = CoreSEX(p_dtImport.Rows[i]["性別"].ToString()); string l_BIRTHDAY = p_dtImport.Rows[i]["出生年月日"].ToString(); string l_ARRIVE_DATE = p_dtImport.Rows[i]["到職日"].ToString(); insertTB_EB_EMPL(l_strUser_Guid, l_EDUC_ID, l_ARRIVE_DATE, l_BIRTHDAY, l_SEX); } this.m_db.CommitTransaction(); } catch (Exception ex) { this.m_db.RollbackTransaction(); throw ex; } }