using MongoDB.Driver;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Bootstrap.DataAccess.MongoDB
{
///
///
///
public class ResetUser : DataAccess.ResetUser
{
///
///
///
///
///
public override DataAccess.ResetUser RetrieveUserByUserName(string userName) => DbManager.ResetUsers.Find(user => user.UserName.ToLowerInvariant() == userName.ToLowerInvariant()).FirstOrDefault();
///
///
///
///
///
public override IEnumerable> RetrieveResetReasonsByUserName(string userName) => DbManager.ResetUsers.Find(user => user.UserName.ToLowerInvariant() == userName.ToLowerInvariant()).ToList().OrderByDescending(user => user.ResetTime).Select(user => new KeyValuePair(user.ResetTime, user.Reason));
///
///
///
///
public override bool Save(DataAccess.ResetUser user)
{
DbManager.Users.UpdateOne(md => md.UserName.ToLowerInvariant() == user.UserName.ToLowerInvariant(), Builders.Update.Set(md => md.IsReset, 1));
DbManager.ResetUsers.InsertOne(user);
return true;
}
}
}