Пример #1
0
 private void AssertContactDataEqual(UserContactDto a, UserContactDto b)
 {
     Assert.Equal(a.Name, b.Name);
     Assert.Equal(a.Address, b.Address);
     Assert.Equal(a.DateOfBirth, b.DateOfBirth, TimeSpan.FromHours(1));
     Assert.True(a.ContactNumbers.SequenceEqual(b.ContactNumbers));
 }
Пример #2
0
 /// <summary>
 ///     Erzeugt eine neue Instanz von <see cref="UserCreateCommand" />
 /// </summary>
 public UserCreateCommand()
 {
     UserContactDto    = new UserContactDto();
     UserDataDto       = new UserDataDto();
     UserPermissionDto = new UserPermissionDto();
     UserPaymentDto    = new UserPaymentDto();
 }
Пример #3
0
        public void TestUserContactDto()
        {
            UserContactDto userContactDto1 = new UserContactDto("*****@*****.**", "Straße-des-1.", "1", "01111", "Ort 1", Country.DE, "Unternehmen 1", "http://www.1.de", "0123/456789", "0123/4567890", "0151/123456");
            UserContactDto userContactDto2 = new UserContactDto("*****@*****.**", "Straße-des-2.", "2", "02222", "Ort 2", Country.AT, "Unternehmen 2", "http://www.2.de", "0223/456789", "0223/4567890", "0251/123456");

            DtoAssert.TestEqualsAndGetHashCode(userContactDto1, userContactDto2);
        }
Пример #4
0
        /// <summary>
        ///     Erstellt einen zufälligen Benutzer und gibt diesen zurück wenn keine Dtos übergeben werden
        /// </summary>
        /// <returns></returns>
        public User Create(string username, string passwordHash, UserDataDto userDataDto,
                           UserContactDto userContactDto, UserPaymentDto userPaymentDto, UserNotificationOptionsDto userNotifications,
                           UserPermissionDto userPermissionDto,
                           EntityCreatedDto entityCreatedDto, EntityChangedDto entityChangedDto, IList <Document> documents, bool persist = true)
        {
            User user = new User(passwordHash,
                                 userContactDto,
                                 userDataDto,
                                 userPaymentDto,
                                 userNotifications,
                                 userPermissionDto,
                                 documents,
                                 entityCreatedDto);

            if (entityChangedDto != null)
            {
                user.Update(userContactDto, userDataDto, userPaymentDto, userNotifications, entityChangedDto);
            }

            if (persist)
            {
                UserDao.Save(user);
                UserDao.Flush();
            }
            return(user);
        }
Пример #5
0
        public void TestUpdateUserProfileProperties()
        {
            // given:
            User           user           = UserCreator.Create();
            User           userToUpdate   = UserDao.Get(user.Id);
            UserContactDto userContactDto = UserCreator.CreateUserContactDto("*****@*****.**",
                                                                             "Nürnberger Ei",
                                                                             "0",
                                                                             "01067",
                                                                             "Dresden",
                                                                             Country.DE,
                                                                             "Nürnberger Eieruhren GmbH",
                                                                             "http://www.nuernberger-eier.de",
                                                                             "phone",
                                                                             "privat",
                                                                             "mobile");
            UserDataDto                userDataDto      = UserCreator.CreateUserDataDto("neuerVorname", "neuerNachname", new DateTime(1990, 01, 03), "UserName");
            UserPaymentDto             userPaymentDto   = new UserPaymentDto("paypal", true);
            UserNotificationOptionsDto notificationsDto = UserNotificationOptionsDto.AllOn;
            User             changedBy        = UserCreator.Create();
            EntityChangedDto entityChangedDto = new EntityChangedDto(changedBy, new DateTime(2017, 01, 01, 01, 01, 01));

            // when:
            userToUpdate.Update(userContactDto, userDataDto, userPaymentDto, notificationsDto, entityChangedDto);
            UserDao.FlushAndClear();
            User actualUser = UserDao.Get(userToUpdate.Id);

            // then:
            DtoAssert.AreEqual(userContactDto, actualUser.GetUserContactDto());
            DtoAssert.AreEqual(userDataDto, actualUser.GetUserDataDto());

            actualUser.ChangedBy.Should().Be(entityChangedDto.ChangedBy);
            actualUser.ChangedAt.Should().Be(entityChangedDto.ChangedAt);
        }
Пример #6
0
 /// <summary>Initialisiert eine neue Instanz der <see cref="T:System.Object" />-Klasse.</summary>
 public UpdateMeCommand()
 {
     UserContactDto             = new UserContactDto();
     UserDataDto                = new UserDataDto();
     UserPaymentDto             = new UserPaymentDto();
     UserNotificationOptionsDto = new UserNotificationOptionsDto();
 }
Пример #7
0
        public void Update(User user, string passwordHash, UserContactDto userContactDto, UserDataDto userDataDto,
                           UserPaymentDto userPaymentDto, UserNotificationOptionsDto userNotificationOptionsDto,
                           UserPermissionDto userPermissionDto, IList <UploadedFile> newDocuments, IList <Document> documentsToDelete,
                           EntityChangedDto entityChangedDto)
        {
            Require.NotNull(user, "user");
            Require.NotNull(userContactDto, "userContactDto");
            Require.NotNull(userDataDto, "userDataDto");
            Require.NotNull(userPermissionDto, "userPermissionDto");
            Require.NotNull(entityChangedDto, "entityChangedDto");
            Require.NotNull(documentsToDelete, "documentsToDelete");
            Require.NotNull(newDocuments, "newDocuments");

            IList <Document> documentsToAssign = newDocuments.Select(uf => DocumentRepository.Create(uf)).ToList();
            IList <Document> userDocuments     = user.Documents.Except(documentsToDelete).Concat(documentsToAssign).ToList();

            if (IsDirty(user,
                        passwordHash,
                        userContactDto,
                        userDataDto,
                        userPaymentDto,
                        userNotificationOptionsDto,
                        userPermissionDto,
                        userDocuments))
            {
                user.Update(passwordHash,
                            userContactDto,
                            userDataDto,
                            userPaymentDto,
                            userNotificationOptionsDto,
                            userPermissionDto,
                            userDocuments,
                            entityChangedDto);
            }
        }
Пример #8
0
        public ResultHelper AddUserContact(UserContactDto userContactDto)
        {
            try
            {
                if (IsThere(userContactDto))
                {
                    return(new ResultHelper(false, 0, ResultHelper.UnSuccessMessage));
                }
                usercontact item = new usercontact();
                item.UserID            = userContactDto.UserID;
                item.UserContactID     = userContactDto.UserContactID;
                item.UserContactTypeID = userContactDto.UserContactTypeID;
                item.Contact           = userContactDto.Contact;

                using (UnitOfWork unitofWork = new UnitOfWork())
                {
                    unitofWork.GetRepository <usercontact>().Insert(item);
                    unitofWork.saveChanges();
                    return(new ResultHelper(true, item.UserContactID, ResultHelper.SuccessMessage));
                }
            }
            catch (Exception ex)
            {
                return(new ResultHelper(false, 0, ResultHelper.UnSuccessMessage + "\n" + ResultHelper.IsThereItem));
            }
        }
Пример #9
0
        public ActionResult <UserContactDto> Created(UserContactDto dto)
        {
            var data = dataContext.Set <UserContact>().Add(new UserContact
            {
                FullName    = dto.FullName,
                PhoneNumber = dto.PhoneNumber,
                Email       = dto.Email,
                Comment     = dto.Comment
            });
            var builder = new ConfigurationBuilder()
                          .AddJsonFile("appsettings.json");
            var config = builder.Build();

            var smtpClient = new SmtpClient(config["Smtp:Host"])
            {
                Port        = int.Parse(config["Smtp:Port"]),
                Credentials = new NetworkCredential(config["Smtp:Username"], config["Smtp:Password"]),
                EnableSsl   = true,
            };
            var mailMessage = new MailMessage
            {
                From       = new MailAddress("*****@*****.**"),
                Subject    = "New Contact Submitted",
                Body       = @$ "<html>
                           <body>
                            <section><b>Name:</b> {dto.FullName}</section>
Пример #10
0
        public User(string passwordHash, UserContactDto userContactDto, UserDataDto userDataDto, UserPaymentDto userPaymentDto,
                    UserNotificationOptionsDto userNotificationOptions,
                    UserPermissionDto userPermissionDto, IList <Document> documents, EntityCreatedDto entityCreatedDto)
        {
            // TODO: Muss hier ein Passwort angegeben werden oder nicht?
            // Require.NotNullOrWhiteSpace(passwordHash, "passwordHash");
            Require.NotNull(userContactDto, "userContactDto");
            Require.NotNull(userDataDto, "userDataDto");
            Require.NotNull(userPermissionDto, "userPermissionDto");
            Require.NotNull(entityCreatedDto, "entityCreatedDto");
            Require.NotNull(userPaymentDto, "userPaymentDto");
            Require.NotNull(documents, "documents");
            Require.NotNull(userNotificationOptions, "userNotificationOptions");


            _passwordHash = passwordHash;

            Update(userContactDto);
            Update(userDataDto);
            Update(userPermissionDto);
            Update(entityCreatedDto);
            Update(userPaymentDto);
            Update(userNotificationOptions);
            Update(documents);
        }
Пример #11
0
        public async Task <UserContactDto> GetUserContactAsync(Guid id)
        {
            UserEntity user = await _userStorage.FindAsync(u => u.Id == id);

            UserContactDto userContactDto = _mapper.Map <UserContactDto>(user);

            return(userContactDto);
        }
Пример #12
0
        public ActionResult Edit(UserContactDto model)
        {
            ResultHelper result = JsonConvert.DeserializeObject <ResultHelper>(userContactService.SetUserContact(model));

            GetUserContactType(model.UserContactTypeID);
            GetUser(model.UserID);
            ViewBag.Message = Helper.GetResultMessage(result.Result, result.ResultDescription);
            return(View());
        }
Пример #13
0
        private async Task <UserContactDto> Update(int contactId, UserContactDto contactData)
        {
            var response = await _client.PutAsJsonAsync($"/contacts/{contactId}", contactData);

            var responseJson = await response.Content.ReadAsStringAsync();

            Assert.True(response.IsSuccessStatusCode);
            return(JsonConvert.DeserializeObject <UserContactDto>(responseJson));
        }
Пример #14
0
        private async Task <UserContactDto> Create(UserContactDto contact)
        {
            var response = await _client.PostAsJsonAsync("/contacts", contact);

            Assert.True(response.IsSuccessStatusCode);
            var responseJson = await response.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <UserContactDto>(responseJson));
        }
Пример #15
0
        public void TestUpdateUserAllProperties()
        {
            // given:
            User           user           = UserCreator.Create();
            User           userToUpdate   = UserDao.Get(user.Id);
            UserContactDto userContactDto = UserCreator.CreateUserContactDto("*****@*****.**",
                                                                             "Nürnberger Ei",
                                                                             "0",
                                                                             "01067",
                                                                             "Dresden",
                                                                             Country.DE,
                                                                             "Nürnberger Eieruhren GmbH",
                                                                             "http://www.nuernberger-eier.de",
                                                                             "phone",
                                                                             "privat",
                                                                             "mobile");
            string            username          = "******";
            UserDataDto       userDataDto       = UserCreator.CreateUserDataDto("neuerVorname", "neuerNachname", null, username);
            User              changedBy         = UserCreator.Create();
            EntityChangedDto  entityChangedDto  = new EntityChangedDto(changedBy, new DateTime(2017, 01, 01, 01, 01, 01));
            UserPermissionDto userPermissionDto = new UserPermissionDto(new List <string> {
                Roles.Administrator
            }, true);
            UserNotificationOptionsDto notificationsDto = UserNotificationOptionsDto.AllOn;
            string          passwordHash = "newPasswordhash";
            List <Document> documents    = new List <Document> {
                DocumentCreator.Create()
            };
            UserPaymentDto userPaymentDto = new UserPaymentDto("", false);

            // when:
            userToUpdate.Update(passwordHash,
                                userContactDto,
                                userDataDto,
                                userPaymentDto,
                                notificationsDto,
                                userPermissionDto,
                                documents,
                                entityChangedDto);
            UserDao.FlushAndClear();
            User actualUser = UserDao.Get(userToUpdate.Id);

            // then:
            DtoAssert.AreEqual(userContactDto, actualUser.GetUserContactDto());
            DtoAssert.AreEqual(userDataDto, actualUser.GetUserDataDto());
            DtoAssert.AreEqual(notificationsDto, actualUser.GetNotificationOptions());
            DtoAssert.AreEqual(userPermissionDto, actualUser.GetUserPermissionDto());

            actualUser.ChangedBy.Should().Be(entityChangedDto.ChangedBy);
            actualUser.ChangedAt.Should().Be(entityChangedDto.ChangedAt);

            actualUser.UserName.Should().Be(username);
            actualUser.PasswordHash.Should().Be(passwordHash);

            actualUser.Documents.ShouldBeEquivalentTo(documents);
        }
Пример #16
0
 /// <summary>
 ///     Erzeugt eine neue Instanz von <see cref="UserUpdateCommand" />
 /// </summary>
 public UserUpdateCommand()
 {
     UserContactDto             = new UserContactDto();
     UserDataDto                = new UserDataDto();
     UserPermissionDto          = new UserPermissionDto();
     UserPaymentDto             = new UserPaymentDto();
     NewDocuments               = new List <UploadedFile>();
     DeleteDocuments            = new List <Document>();
     UserNotificationOptionsDto = new UserNotificationOptionsDto();
 }
Пример #17
0
        /// <summary>
        ///     Erzeugt einen neuen Nutzer
        /// </summary>
        /// <returns></returns>
        public User Create(string username  = null, string email = "*****@*****.**", string lastname = NACHNAME_CONST,
                           string firstname = VORNAME_CONST, string passwordHash           = null,
                           string street    = STREET_CONST, string streetNumber            = STREET_NUMBER_CONST, string postalCode = POSTALCODE_CONST, string city = CITY_CONST,
                           Country countryTwoLetterIsoCode = COUNTRY_CONST, string company = COMPANY_CONST, string url              = URL_CONST,
                           string phone = null, string phonePrivate = null, string mobile = null, string fax = null,
                           string payPalBusinessName    = null, bool autoAcceptPayPalPayments    = true,
                           EntityCreatedDto creationDto = null, EntityChangedDto latestChangeDto = null,
                           IList <string> roles         = null, bool isEnabled = true, IList <Document> documents = null, DateTime?birthday = null, bool persist = true)
        {
            if (username == null)
            {
                username = GetRandomString(10);
            }
            if (firstname == VORNAME_CONST)
            {
                firstname = firstname + GetRandomString(4);
            }

            if (roles == null)
            {
                roles = new List <string> {
                    Roles.Member
                };
            }
            if (documents == null)
            {
                documents = new List <Document>();
            }

            UserContactDto userContactDto = CreateUserContactDto(email,
                                                                 street,
                                                                 streetNumber,
                                                                 postalCode,
                                                                 city,
                                                                 countryTwoLetterIsoCode,
                                                                 company,
                                                                 url,
                                                                 phone,
                                                                 phonePrivate,
                                                                 mobile);
            UserDataDto                userDataDto       = CreateUserDataDto(firstname, lastname, birthday, username);
            UserPermissionDto          userPermissionDto = CreateUserPermissionDto(roles, isEnabled);
            UserPaymentDto             userPaymentDto    = CreateUserPaymentDto(payPalBusinessName, autoAcceptPayPalPayments);
            UserNotificationOptionsDto userNotifications = UserNotificationOptionsDto.AllOn;

            if (creationDto == null)
            {
                creationDto = new EntityCreatedDto(null, DateTime.Now.Date);
            }

            User user = Create(username, passwordHash, userDataDto, userContactDto, userPaymentDto, userNotifications, userPermissionDto, creationDto, latestChangeDto, documents, persist);

            return(user);
        }
        public async Task <UserContactDto> AddContactAsync(int userId, UserContactDto contact)
        {
            var entity = contact.Adapt <UserContact>();

            entity.UserId = userId;
            entity        = await _contactsRepository.AddAsync(entity);

            await _contactsRepository.SaveChangesAsync();

            return(entity?.Adapt <UserContactDto>());
        }
        public async Task <IActionResult> Create(int userId, [FromBody] UserContactDto data)
        {
            if (data.Id != null)
            {
                return(BadRequest());
            }

            _logger.LogTrace("Creating a new contact {ContactName} for {UserId}", data.Name, userId);
            var contact = await _userContactsService.AddContactAsync(UserId, data);

            _logger.LogTrace("Contact {ContactId} created for {UserId}", contact.Id, userId);
            return(Ok(contact));
        }
Пример #20
0
        /// <summary>
        ///     Aktualisiert die Profildaten des Nutzers und markiert ihn als geändert.
        /// </summary>
        /// <param name="userContactDto"></param>
        /// <param name="userDataDto"></param>
        /// <param name="userPaymentDto"></param>
        /// <param name="userNotificationOptionsDto"></param>
        /// <param name="entityChangedDto"></param>
        public virtual void Update(UserContactDto userContactDto, UserDataDto userDataDto, UserPaymentDto userPaymentDto,
                                   UserNotificationOptionsDto userNotificationOptionsDto, EntityChangedDto entityChangedDto)
        {
            Require.NotNull(userContactDto, "userContactDto");
            Require.NotNull(userDataDto, "userDataDto");
            Require.NotNull(entityChangedDto, "entityChangedDto");
            Require.NotNull(userPaymentDto, "userPaymentDto");
            Require.NotNull(userNotificationOptionsDto, "userNotificationOptionsDto");

            Update(userContactDto);
            Update(userDataDto);
            Update(userPaymentDto);
            Update(userNotificationOptionsDto);
            Update(entityChangedDto);
        }
Пример #21
0
        /// <summary>
        ///     Aktualisiert die Kontaktdaten des Nutzers
        /// </summary>
        /// <param name="userContactDto"></param>
        private void Update(UserContactDto userContactDto)
        {
            _email        = userContactDto.Email;
            _city         = userContactDto.City;
            _company      = userContactDto.Company;
            _country      = userContactDto.Country;
            _postalCode   = userContactDto.PostalCode;
            _street       = userContactDto.Street;
            _streetNumber = userContactDto.StreetNumber;
            _url          = userContactDto.Url;

            _phone        = userContactDto.Phone;
            _phonePrivate = userContactDto.PhonePrivate;
            _mobile       = userContactDto.Mobile;
        }
Пример #22
0
 public bool IsThere(UserContactDto userContactDto)
 {
     using (UnitOfWork unitofWork = new UnitOfWork())
     {
         var item = unitofWork.GetRepository <usercontact>().GetById(x => x.Contact == userContactDto.Contact && x.UserID == userContactDto.UserID && x.UserContactTypeID == userContactDto.UserContactTypeID);
         if (item != null)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Пример #23
0
        public override User Build()
        {
            EntityCreatedDto           entityCreatedDto    = new EntityCreatedDto(_createdBy, _createdAt);
            UserContactDto             userContactDto      = new UserContactDto(_email, _street, _streetNumber, _postalCode, _city, _country, _company, _url, _phone, _privatePhone, _mobile);
            UserDataDto                userDataDto         = new UserDataDto(_firstname, _lastname, _birthday, _username);
            UserPaymentDto             userPaymentDto      = new UserPaymentDto();
            UserNotificationOptionsDto notificationOptions = UserNotificationOptionsDto.AllOn;
            UserPermissionDto          userPermissionDto   = new UserPermissionDto(_roles, _isEnabled);

            User user = new User(_passwordHash, userContactDto, userDataDto, userPaymentDto, notificationOptions, userPermissionDto, _documents, entityCreatedDto);

            _userDao.Save(user);
            _userDao.Flush();

            return(user);
        }
Пример #24
0
        public UserContactDto CreateUserContactDto(string email, string street, string streetNumber, string postalCode, string city,
                                                   Country countryTwoLetterIsoCode, string company, string url, string phone, string phonePrivate, string mobile)
        {
            UserContactDto userContactDto = new UserContactDto(email,
                                                               street,
                                                               streetNumber,
                                                               postalCode,
                                                               city,
                                                               countryTwoLetterIsoCode,
                                                               company,
                                                               url,
                                                               phone,
                                                               phonePrivate,
                                                               mobile);

            return(userContactDto);
        }
        public async Task <IActionResult> Update(int userId, int contactId, [FromBody] UserContactDto data)
        {
            if (data.Id != null)
            {
                return(BadRequest());
            }

            _logger.LogTrace("Replacing contact {ContactId} for user {UserId}, data : {Data}", userId, contactId, data);
            var contact = await _userContactsService.UpdateContactAsync(UserId, contactId, data);

            if (contact == null)
            {
                _logger.LogDebug("Contact {ContactId} for user {UserId} not found", userId, contactId);
                return(NotFound());
            }

            return(Ok(contact));
        }
Пример #26
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);
        }
Пример #27
0
        public List <UserContactDto> GetAllUserContact()
        {
            try
            {
                List <UserContactDto> list = new List <UserContactDto>();
                using (UnitOfWork unitofWork = new UnitOfWork())
                {
                    var query = from uc in unitofWork.GetRepository <usercontact>().Select(null, null)
                                join us in unitofWork.GetRepository <user>().Select(null, null) on uc.UserID equals us.UserID
                                join ut in unitofWork.GetRepository <usercontacttype>().Select(null, null) on uc.UserContactTypeID equals ut.UserContactTypeID
                                select new
                    {
                        UserID              = us.UserID,
                        UserContactTypeID   = ut.UserContactTypeID,
                        UserContactTypeName = ut.TypeName,
                        UserName            = us.Name,
                        UserSurName         = us.SurName,
                        ContactName         = uc.Contact,
                        ContactID           = uc.UserContactID,
                    };

                    foreach (var item in query)
                    {
                        UserContactDto uc = new UserContactDto();
                        uc.UserContactID      = item.ContactID;
                        uc.Contact            = item.ContactName;
                        uc.UserDto            = new UserDto();
                        uc.UserDto.UserID     = item.UserID;
                        uc.UserDto.Name       = item.UserName;
                        uc.UserDto.SurName    = item.UserSurName;
                        uc.UserContactTypeDto = new UserContactTypeDto();
                        uc.UserContactTypeDto.UserContactTypeID = item.UserContactTypeID;
                        uc.UserContactTypeDto.TypeName          = item.UserContactTypeName;
                        list.Add(uc);
                    }
                    return(list);
                }
            }
            catch (Exception ex)
            {
                return(new List <UserContactDto>());
            }
        }
Пример #28
0
        public User Create(string passwordHash, UserContactDto userContactDto, UserDataDto userDataDto, UserPaymentDto userPaymentDto,
                           UserPermissionDto userPermissionDto, EntityCreatedDto entityCreatedDto)
        {
            Require.NotNull(userContactDto);
            Require.NotNull(userDataDto);
            Require.NotNull(entityCreatedDto, "entityCreatedDto");

            User user = new User(passwordHash,
                                 userContactDto,
                                 userDataDto,
                                 userPaymentDto,
                                 /*Standardmäßig alle Benachrichtigungen an*/
                                 UserNotificationOptionsDto.AllOn,
                                 userPermissionDto,
                                 new List <Document>(),
                                 entityCreatedDto);

            return(UserDao.Save(user));
        }
Пример #29
0
        public void Update(User user, UserContactDto userContactDto, UserDataDto userDataDto, UserPaymentDto userPaymentDto,
                           UserNotificationOptionsDto userNotificationOptionsDto, EntityChangedDto entityChangedDto)
        {
            Require.NotNull(user, "user");
            Require.NotNull(userContactDto, "userContactDto");
            Require.NotNull(userDataDto, "userDataDto");
            Require.NotNull(entityChangedDto, "entityChangedDto");
            Require.NotNull(userPaymentDto, "userPaymentDto");

            if (IsDirty(user,
                        user.PasswordHash,
                        userContactDto,
                        userDataDto,
                        userPaymentDto,
                        userNotificationOptionsDto,
                        user.GetUserPermissionDto(),
                        user.Documents))
            {
                user.Update(userContactDto, userDataDto, userPaymentDto, userNotificationOptionsDto, entityChangedDto);
            }
        }
Пример #30
0
        public async Task GetUserContct_CallWithMockedIProjectUser_ReturnOkObjectResult()
        {
            // Arrange
            var mock        = new Mock <IUser>();
            var id          = Guid.NewGuid();
            var userContact = new UserContactDto()
            {
                Email = "*****@*****.**",
            };

            mock.Setup(u => u.GetUserContactAsync(id)).ReturnsAsync(userContact);
            var controller = new UsersController(mock.Object);

            // Act
            var result = await controller.GetUserContact(id);

            var response = (OkObjectResult)result;

            // Assert
            Assert.IsType <OkObjectResult>(result);
            Assert.IsType <ResponseDto <UserContactDto> >(response.Value);
        }