public ObjectResultData PasswordWrongCountUp(string employeeNo) { ObjectResultData res = new ObjectResultData(); var employees = db.tbm_Employee.Where(e => e.EmpNo == employeeNo); if (employees.Count() < 1) { return(res); } tbm_Employee employee = employees.First(); if (CommonUtil.IsNullOrEmpty(employee.PasswordWrongCount)) { employee.PasswordWrongCount = 0; } employee.PasswordWrongCount = employee.PasswordWrongCount + 1; // mistake password 5 times -> account lock if (employee.PasswordWrongCount == MAX_PASSWORD_WRONG_COUNT) { employee.Status = STATUS_ACCOUNT_LOCK; } res.ResultData = db.SaveChanges(); return(res); }
public ObjectResultData PasswordWrongCountReset(string employeeNo) { ObjectResultData res = new ObjectResultData(); var employees = db.tbm_Employee.Where(e => e.EmpNo == employeeNo); if (employees.Count() < 1) { return(res); } tbm_Employee employee = employees.First(); employee.PasswordWrongCount = 0; res.ResultData = db.SaveChanges(); return(res); }
/// <summary> /// Logical delete employee.<br /> /// - Check system suspending.<br /> /// - Set delete flag and update database. /// </summary> /// <param name="employee"></param> /// <returns></returns> public ActionResult MAS070_DeleteEmployee(tbm_Employee employee) { ObjectResultData res = new ObjectResultData(); try { res = checkSystemSuspending(); if (res.IsError) { return(Json(res)); } MAS070_ScreenParameter MAS070Param = GetScreenObject <MAS070_ScreenParameter>(); employee.UpdateDate = MAS070Param.updateDate; IEmployeeMasterHandler hand = ServiceContainer.GetService <IEmployeeMasterHandler>() as IEmployeeMasterHandler; List <tbm_Employee> list = hand.DeleteEmployee(employee); if (list == null || list.Count == 0) { return(Json(res)); } doTransactionLog logData = new doTransactionLog() { TransactionType = doTransactionLog.eTransactionType.Update, TableName = TableName.C_TBL_NAME_EMPLOYEE, TableData = CommonUtil.ConvertToXml(list) }; ILogHandler loghand = ServiceContainer.GetService <ILogHandler>() as ILogHandler; loghand.WriteTransactionLog(logData); string xml = CommonUtil.ConvertToXml <tbm_Employee>(list); res.ResultData = xml; return(Json(res)); } catch (Exception ex) { res.ResultData = "NP"; res.AddErrorMessage(ex); return(Json(res)); } }
public ObjectResultData UpdatePassword(string oldPassword, string newPassword) { ObjectResultData res = new ObjectResultData(); string employeeNo = CommonUtil.dsTransData.dtUserData.EmpNo; string oldPasswordHash = GeneratePasswordHash(oldPassword); var targetEmployee = db.tbm_Employee.Where(e => e.EmpNo == employeeNo && e.Password == oldPasswordHash); if (targetEmployee.Count() < 1) { res.ResultData = 0; return(res); } tbm_Employee employee = targetEmployee.First(); employee.Password = GeneratePasswordHash(newPassword); employee.PasswordLastUpdateDate = DateTime.Now; res.ResultData = db.SaveChanges(); return(res); }
/// <summary> /// Get email of default department /// </summary> /// <returns></returns> private String getEmailsOfDefaultDepartment() { //1.1 Get default department to send email ICommonHandler handCommon = ServiceContainer.GetService <ICommonHandler>() as ICommonHandler; List <doSystemConfig> doSystem = handCommon.GetSystemConfig(ConfigName.C_CONFIG_DEPARTMENT_NOTIFY_CHANGE_FEE); String strDeptCode = doSystem[0].ConfigValue; //1.2 Get employee belonging to default department //1.2.1 Get belonging list IEmployeeMasterHandler handMaster = ServiceContainer.GetService <IEmployeeMasterHandler>() as IEmployeeMasterHandler; List <dtBelonging> dtBelonging = handMaster.GetBelonging(null, strDeptCode, null, null); List <tbm_Employee> empList = new List <tbm_Employee>(); foreach (dtBelonging belonging in dtBelonging) { tbm_Employee employee = new tbm_Employee(); employee.EmpNo = belonging.EmpNo; empList.Add(employee); } //1.2.2 Get employee list List <tbm_Employee> dtEmployee = handMaster.GetEmployeeList(empList); //1.3 Generate list of email //1.3.1 Set emailTo = Combine all dtEmployee.EmailAddrss with seperated by semi-colon StringBuilder sbEmailTo = new StringBuilder(""); foreach (tbm_Employee employee in dtEmployee) { sbEmailTo.Append(employee.EmailAddress + ";"); } if (sbEmailTo.Length > 0) { sbEmailTo = sbEmailTo.Remove(sbEmailTo.Length - 1, 1); } return(sbEmailTo.ToString()); }
/// <summary> /// Validate employee data /// </summary> /// <param name="Project"></param> /// <returns></returns> public CTS230_doValidateEmpNo CTS230_ValidateEmployee(tbt_Project_CTS230 Project) { ObjectResultData res = new ObjectResultData(); List <tbm_Employee> dtEmp = new List <tbm_Employee>(); if (!CommonUtil.IsNullOrEmpty(Project.HeadSalesmanEmpNo)) { tbm_Employee tmp = new tbm_Employee(); tmp.EmpNo = Project.HeadSalesmanEmpNo; dtEmp.Add(tmp); } if (!CommonUtil.IsNullOrEmpty(Project.ProjectManagerEmpNo)) { tbm_Employee tmp = new tbm_Employee(); tmp.EmpNo = Project.ProjectManagerEmpNo; dtEmp.Add(tmp); } if (!CommonUtil.IsNullOrEmpty(Project.ProjectSubManagerEmpNo)) { tbm_Employee tmp = new tbm_Employee(); tmp.EmpNo = Project.ProjectSubManagerEmpNo; dtEmp.Add(tmp); } if (!CommonUtil.IsNullOrEmpty(Project.SecurityPlanningChiefEmpNo)) { tbm_Employee tmp = new tbm_Employee(); tmp.EmpNo = Project.SecurityPlanningChiefEmpNo; dtEmp.Add(tmp); } if (!CommonUtil.IsNullOrEmpty(Project.InstallationChiefEmpNo)) { tbm_Employee tmp = new tbm_Employee(); tmp.EmpNo = Project.InstallationChiefEmpNo; dtEmp.Add(tmp); } CTS230_doValidateEmpNo EmpError = new CTS230_doValidateEmpNo(); IEmployeeMasterHandler EmpH = ServiceContainer.GetService <IEmployeeMasterHandler>() as IEmployeeMasterHandler; List <doActiveEmployeeList> dtTbm_Employee = EmpH.GetActiveEmployeeList(dtEmp); string EmpNo; string Controls; string Prefix = "sysin"; if (dtTbm_Employee.Count != dtEmp.Count) { if (!CommonUtil.IsNullOrEmpty(Project.HeadSalesmanEmpNo) && !dtTbm_Employee.Any(a => a.EmpNo == Project.HeadSalesmanEmpNo)) { EmpNo = Project.HeadSalesmanEmpNo; Controls = Prefix + "HeadSalesmanEmpNo"; EmpError.EmpNo = EmpNo; EmpError.controls = Controls; return(EmpError); } if (!CommonUtil.IsNullOrEmpty(Project.ProjectManagerEmpNo) && !dtTbm_Employee.Any(a => a.EmpNo == Project.ProjectManagerEmpNo)) { EmpNo = Project.ProjectManagerEmpNo; Controls = Prefix + "ProjectManagerEmpNo"; EmpError.EmpNo = EmpNo; EmpError.controls = Controls; return(EmpError); } if (!CommonUtil.IsNullOrEmpty(Project.ProjectSubManagerEmpNo) && !dtTbm_Employee.Any(a => a.EmpNo == Project.ProjectSubManagerEmpNo)) { EmpNo = Project.ProjectSubManagerEmpNo; Controls = Prefix + "ProjectSubManagerEmpNo"; EmpError.EmpNo = EmpNo; EmpError.controls = Controls; return(EmpError); } if (!CommonUtil.IsNullOrEmpty(Project.SecurityPlanningChiefEmpNo) && !dtTbm_Employee.Any(a => a.EmpNo == Project.SecurityPlanningChiefEmpNo)) { EmpNo = Project.SecurityPlanningChiefEmpNo; Controls = Prefix + "SecurityPlanningChiefEmpNo"; EmpError.EmpNo = EmpNo; EmpError.controls = Controls; return(EmpError); } if (!CommonUtil.IsNullOrEmpty(Project.InstallationChiefEmpNo) && !dtTbm_Employee.Any(a => a.EmpNo == Project.InstallationChiefEmpNo)) { EmpNo = Project.InstallationChiefEmpNo; Controls = Prefix + "InstallationChiefEmpNo"; EmpError.EmpNo = EmpNo; EmpError.controls = Controls; return(EmpError); } } return(new CTS230_doValidateEmpNo()); }