public bool InsertEmployee(FEPV_Employees_Data emp) { System.Data.Common.DbTransaction tran = gateFEPVOA.BeginTransaction(); try { string[] Columns = new string[] { "[EmployeeID]", "[EmployeeName]", "[EmployeeName_Eng]", "[CostCenter]", "[CardNo]", "[State]", "[DepartmentName_EN]" , "[DepartmentName_CN]", "[Email]", "[PositionName]", "[JoinDate]", "[Gender]", "[CompanyShortName]", "[CompanyFullName]", "[CompanyCode]" , "[LastUpdateDate]", "[Workplace]", "[NumberOfUpdate]", "[Birthday]" }; object[] Values = new object[] { emp.EmployeeID, emp.EmployeeName, emp.EmployeeName_Eng, emp.CostCenter, emp.CardNo, emp.State, emp.DepartmentName_EN , emp.DepartmentName_CN, emp.Email, emp.PositionName, emp.JoinDate, emp.Gender, emp.CompanyShortName, emp.CompanyFullName, emp.CompanyCode , emp.LastUpdateDate, emp.Workplace, emp.NumberOfUpdate, emp.Birthday }; gateFEPVOA.DbHelper.Insert("FEPV_Employees_Data", Columns, Values, tran, "EmployeeID"); tran.Commit(); tran.Dispose(); } catch (Exception ex) { Console.WriteLine(ex.Message); tran.Rollback(); throw new Exception(ex.Message); } return(true); }
public int GetDataFromVnResourceService() { try { DbTransaction tran = gateFEPVOA.BeginTransaction(); string EmployeeID = ""; var UpdateFrom = DateTime.Now.AddDays(-7).ToString("yyyy-MM-dd"); var UpdateTO = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"); HRMSInterfaceDAL.Hr_SuZhou_Service.WebServiceHR _webService = new HRMSInterfaceDAL.Hr_SuZhou_Service.WebServiceHR(); List <HRMSInterfaceDAL.Hr_SuZhou_Service.HREmpInfoBean> _profiles = _webService.GetListProfile(null, null, UpdateFrom, UpdateTO, null, "IT", "fepv123").ToList(); //string _JsonProfiles = JsonConvert.SerializeObject(_listProfileData); //DataTable _dtProfiles = JsonConvert.DeserializeObject<DataTable>(_JsonProfiles); foreach (HRMSInterfaceDAL.Hr_SuZhou_Service.HREmpInfoBean _profile in _profiles) { if (!string.IsNullOrEmpty(_profile.WorkNo)) { if (_profile.WorkNo.Length > 6) { bool isExists = _profile.WorkNo.Contains("NN."); if (!isExists) { EmployeeID = _profile.WorkNo.Substring(1, _profile.WorkNo.Length - 1); } else { EmployeeID = _profile.WorkNo; } } else { EmployeeID = _profile.WorkNo; } string[] formats = { "dd/MM/yyyy", "dd-MMM-yyyy", "yyyy-MM-dd", "dd-MM-yyyy", "M/d/yyyy", "M/dd/yyyy", "dd MMM yyyy" }; string birthdayAfterConverted = DateTime.ParseExact(_profile.Birthday.Substring(0, _profile.Birthday.IndexOf(' ')).Trim(), formats, CultureInfo.InvariantCulture, DateTimeStyles.None).ToString("yyyy-MM-dd"); FEPV_Employees_Data _FEPVED = new FEPV_Employees_Data(); _FEPVED.EmployeeID = "FEPV" + EmployeeID; _FEPVED.EmployeeName = string.IsNullOrEmpty(_profile.NameVN.Trim()) ? (string.IsNullOrEmpty(_profile.NameEN) ? _profile.NameCN : _profile.NameEN) : _profile.NameVN; _FEPVED.EmployeeName_Eng = string.IsNullOrEmpty(_profile.NameEN.Trim()) ? (string.IsNullOrEmpty(_profile.NameVN) ? _profile.NameCN : _profile.NameVN) : _profile.NameEN; _FEPVED.CostCenter = _profile.CostCentreCode; _FEPVED.CardNo = _profile.CardNo; _FEPVED.State = Convert.ToBoolean(_profile.Status == "X" ? true : false); _FEPVED.DepartmentName_CN = _profile.CostCentreNameCN; _FEPVED.DepartmentName_EN = _profile.CostCentreName; _FEPVED.PositionName = _profile.PositionName; _FEPVED.JoinDate = Convert.ToDateTime(_profile.JoinDate); _FEPVED.Gender = _profile.SexType; _FEPVED.CompanyShortName = _profile.CompanyShortName; _FEPVED.CompanyFullName = _profile.CompanyName; _FEPVED.CompanyCode = _profile.CompanyCode; _FEPVED.Birthday = Convert.ToDateTime(birthdayAfterConverted); _FEPVED.LastUpdateDate = Convert.ToDateTime(string.IsNullOrEmpty(_profile.DateUpdate) ? DateTime.Now : Convert.ToDateTime(_profile.DateUpdate)); _FEPVED.Email = _profile.Email; _FEPVED.Workplace = _profile.WorkPlaceName; _FEPVED.NumberOfUpdate += 1; string sql = @"SELECT * FROM FEPV_Employees_Data WHERE EmployeeID=@EmployeeID "; DataTable dt = gateFEPVOA.SelectDataSet(sql, new object[] { _FEPVED.EmployeeID }).Tables[0]; if (dt.Rows.Count >= 1) { UpdateEmployee(_FEPVED); } else { InsertEmployee(_FEPVED); } } } return(1); } catch (Exception ex) { Console.WriteLine(ex.Message + ex.StackTrace); return(2); } }