public UserLog AddStartLog(string userId, string ipAddress, UserLogStatus status) { try { var dbActiveLog = db.UserLogging.FirstOrDefault(k => k.UserId == userId && !k.ToDate.HasValue); if (dbActiveLog != null) { UserLog activeLog = _mapper.Map <UserLog>(dbActiveLog); activeLog.UserName = GetUserName(userId); return(activeLog); } if (ipAddress == "::1") { ipAddress = "127.0.0.1"; } bool ipAdded = _ipAddressesMethods.AddIfNotExist(ipAddress); DataSets.UserLog dbLog = new DataSets.UserLog() { LogStatusCode = (short)status, Address = ipAdded ? ipAddress : null, FromDate = DateTime.Now, UserId = userId }; db.UserLogging.Add(dbLog); db.SaveChanges(); UserLog log = _mapper.Map <UserLog>(dbLog); log.UserName = GetUserName(userId); return(log); } catch (Exception) { return(null); } }
public UserLog EndActiveLog(string userId, UserLogStatus status) { try { var log = db.UserLogging.FirstOrDefault(k => k.UserId == userId && !k.ToDate.HasValue); if (log != null) { log.ToDate = DateTime.Now; log.LogStatusCode = (short)status; //db.UserLogging.Update(log); db.SaveChanges(); } return(log != null?_mapper.Map <UserLog>(log) : null); } catch (Exception) { return(null); } }