public void AddOrUpdateContact(ContactPostDto newContact)
 {
     using (var transaction = Session.BeginTransaction())
     {
         Contact contact;
         var     existContact = Session.Query <Contact>().Where(c => c.FirstName.ToLower() == newContact.FirstName.ToLower() && c.LastName.ToLower() == newContact.LastName.ToLower()).ToFuture();
         if (existContact.Any())
         {
             contact = existContact.First();
         }
         else
         {
             contact = new Contact();
         }
         contact.FirstName   = newContact.FirstName;
         contact.LastName    = newContact.LastName;
         contact.Email       = newContact.Email;
         contact.Phone       = newContact.Phone;
         contact.SwedishRole = newContact.SwedishRole;
         contact.EnglishRole = newContact.EnglishRole;
         if (existContact.Any())
         {
             Session.Update(contact);
         }
         else
         {
             Session.Save(contact);
         }
         transaction.Commit();
     }
 }
Example #2
0
 public IHttpActionResult Post(ContactPostDto contact)
 {
     //    if (string.IsNullOrWhiteSpace(contact.FirstName) || string.IsNullOrWhiteSpace(contact.LastName) || string.IsNullOrWhiteSpace(contact.Phone) || string.IsNullOrWhiteSpace(contact.Email) || string.IsNullOrWhiteSpace(contact.SwedishRole) || string.IsNullOrWhiteSpace(contact.EnglishRole))
     //        return BadRequest();
     using (var helper = new DataBaseHelper())
     {
         helper.AddOrUpdateContact(contact);
         return(Ok());
     }
 }
        public async Task <Contact> AddAsync(ContactPostDto entity)
        {
            ContactPostDtoValidator validator = new ContactPostDtoValidator();
            ValidationResult        results   = validator.Validate(entity);

            if (!results.IsValid)
            {
                throw new ValidationException("ContactPostDTO", string.Join(". ", results.Errors));
            }

            return(await userRoleRepository.AddAsync(mapper.Map <Contact>(entity)));
        }
        public async Task <IActionResult> AddNewContact([FromBody] ContactPostDto contactPostDto)
        {
            var contactResp = await contactService.AddAsync(contactPostDto);

            return(CreatedAtAction("GetClient", new { user1Id = contactResp.User1ID, user2Id = contactResp.User2ID }, mapper.Map <ContactResponseDto>(contactResp)));
        }