cb reports

This commit is contained in:
Christian
2021-05-24 21:40:02 +02:00
parent f59f6f8151
commit 8e4ea7fe24
169 changed files with 142941 additions and 2755 deletions

View File

@@ -33,17 +33,44 @@ namespace BeWo.Service.ServiceImplementations
{
public long ChangePassword(string pUserName, long pUserVersion, string pOldPassword, string pNewPassword)
{
try
bool allowChange = false;
if (LoggedInUserOperationContextExt.Current != null)
{
var user = LoggedInUserOperationContextExt.Current.User;
if (user.CheckForRight(UserRightType.UserView_AllowChangePassword))
{
allowChange = true;
}
else if (!String.IsNullOrEmpty(pOldPassword) && pUserName == user.LoginName && user.CheckForRight(UserRightType.AllowChangeOwnPassword))
{
allowChange = true;
}
}
if (allowChange)
{
ApplicationUser lOriginal = DAOFactory.UserDAO.FindUserByLoginName(pUserName);
MapperFactory.UserDC_User.ConcurrencyCheck(pUserVersion, lOriginal);
var oldHash = lOriginal.BCryptPassword;
if (String.IsNullOrWhiteSpace(oldHash))
String oldPwd = pOldPassword;
if (String.IsNullOrEmpty(oldPwd))
{
oldHash = lOriginal.HashedPassword;
var oldHash = lOriginal.BCryptPassword;
if (String.IsNullOrWhiteSpace(oldHash))
{
oldHash = lOriginal.HashedPassword;
}
oldPwd = oldHash;
}
if (DAOFactory.UserDAO.CheckPassword(lOriginal, oldHash))
if (DAOFactory.UserDAO.CheckPassword(lOriginal, oldPwd))
{
lOriginal.ChangePassword(pNewPassword);
var settings = AppSettings.CreateSettings();
@@ -56,6 +83,10 @@ namespace BeWo.Service.ServiceImplementations
lOriginal.Zeitstempel = null;
}
}
else
{
throw new FaultException<BeWoFault>(new BeWoFault("Das angegebene Passwort ist falsch!", BeWoFaultType.CustomWithoutDetails));
}
//speichere passwort in verlauf
var passwortvelauf = new PasswortVerlauf
@@ -64,8 +95,8 @@ namespace BeWo.Service.ServiceImplementations
Passwort = lOriginal.HashedPassword,
Salt = lOriginal.Salt,
ErstellDatum = DateTime.Now
};
};
DAOFactory.GenericDAO.Insert(passwortvelauf);
DAOFactory.GenericDAO.Update(lOriginal);
@@ -74,10 +105,8 @@ namespace BeWo.Service.ServiceImplementations
return lOriginal.Version.Value;
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
throw new FaultException<BeWoFault>(new BeWoFault("Sie besitzen nicht die erforderlichen Rechte um das Passwort zu ändern!", BeWoFaultType.CustomWithoutDetails));
}
public void CreateNewUser(string pUserName, string pPassword, string pEmail)