/// <summary> /// 사용자 Login 이력을 DB에 기록합니다. (Sessionless를 사용하므로 함수명이 Insert 로 시작합니다) /// </summary> /// <param name="productCode">제품 코드</param> /// <param name="companyCode">사용자 소속 회사 코드</param> /// <param name="loginId">로그인 Id</param> /// <param name="localeKey">로그인 사용자의 Locale 정보</param> /// <param name="loginTime">로그인 시각</param> public void InsertUserLoginLog(string productCode, string companyCode, string loginId, string localeKey = null, DateTime? loginTime = null) { var loginLog = new UserLoginLog(productCode, companyCode, loginId, localeKey, loginTime); if(log.IsDebugEnabled) log.Debug(@"사용자 로그인 이력 정보를 생성합니다... " + loginLog); // NOTE : Log 정보를 기록할 때에는 Session에 저장할 필요없고, 성능을 위해서 StatelessSession를 사용합니다. // loginLog.InsertStateless(Session); }
/// <summary> /// 사용자 Login 이력을 DB에 기록합니다. (Sessionless를 사용하므로 함수명이 Insert 로 시작합니다) /// </summary> /// <param name="product">로그인한 제품 정보</param> /// <param name="user">로그인 사용자</param> /// <param name="department">로그인 사용자의 부서</param> /// <param name="localeKey">로그인 사용자의 Locale 정보</param> /// <param name="loginTime">로그인 시각</param> /// <param name="exAttr">확장 속성 정보</param> public void InsertUserLoginLog(Product product, User user, Department department = null, string localeKey = null, DateTime? loginTime = null, string exAttr = null) { product.ShouldNotBeNull("product"); user.ShouldNotBeNull("user"); var loginLog = new UserLoginLog(product.Code, user.Company.Code, user.LoginId, localeKey, loginTime) { ProductName = product.Name, CompanyName = user.Company.Name, DepartmentCode = (department != null) ? department.Code : null, DepartmentName = (department != null) ? department.Name : null, UserCode = user.Code, UserName = user.Name, ExAttr = exAttr }; if(log.IsDebugEnabled) log.Debug(@"사용자 로그인 이력 정보를 생성합니다... " + loginLog); // NOTE : Log 정보를 기록할 때에는 Session에 저장할 필요없고, 성능을 위해서 StatelessSession를 사용합니다. // loginLog.InsertStateless(Session); }