示例#1
0
        /// <summary>
        ///     Überprüft, ob es Änderungen am Nutzer gab.
        /// </summary>
        /// <param name="user">Der Nutzer in seiner ungeänderten Form.</param>
        /// <param name="passwordHash">Der neue PasswordHash</param>
        /// <param name="userContactDto">Die neuen Kontaktdaten</param>
        /// <param name="userDataDto">Die neuen Nutzerdaten</param>
        /// <param name="userPaymentDto">Die neuen Zahlungsinformationen</param>
        /// <param name="userPermissionDto">Die neuen Berechtigungsinformationen</param>
        /// <param name="userDocuments"></param>
        /// <returns></returns>
        /// <remarks>
        ///     Wenn ein Dto oder eine Eigenschaft sowieso nicht geändert werden soll, dann den Wert nutzen, der am Nutzer
        ///     hinterlegt ist.
        /// </remarks>
        private bool IsDirty(User user, string passwordHash, UserContactDto userContactDto, UserDataDto userDataDto,
                             UserPaymentDto userPaymentDto, UserNotificationOptionsDto userNotificationOptionsDto,
                             UserPermissionDto userPermissionDto, IList <Document> userDocuments)
        {
            Require.NotNull(user, "user");

            Require.NotNull(userContactDto, "userContactDto");
            Require.NotNull(userDataDto, "userDataDto");
            Require.NotNull(userPermissionDto, "userPermissionDto");
            Require.NotNull(userPaymentDto, "userPaymentDto");
            Require.NotNull(userNotificationOptionsDto, "userNotificationOptionsDto");


            if (user.PasswordHash != passwordHash)
            {
                return(true);
            }
            if (!Equals(user.GetUserContactDto(), userContactDto))
            {
                return(true);
            }
            if (!Equals(user.GetUserPaymentDto(), userPaymentDto))
            {
                return(true);
            }
            if (!Equals(user.GetUserPermissionDto(), userPermissionDto))
            {
                return(true);
            }
            if (!Equals(user.GetUserDataDto(), userDataDto))
            {
                return(true);
            }
            if (!Equals(user.GetNotificationOptions(), userNotificationOptionsDto))
            {
                return(true);
            }
            if (!ListHelper.AreEquivalent(user.Documents, userDocuments))
            {
                return(true);
            }

            return(false);
        }
示例#2
0
 private bool HaveRequirementsChanged(IList <PeanutRequirement> requirementsBeforeUpdate, IList <RequirementDto> requirements)
 {
     return(ListHelper.AreEquivalent(requirementsBeforeUpdate.Select(r => r.GetDto()).ToList(), requirements));
 }