Exemple #1
0
        public IActionResult Create(PhoneNumberDTO request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Client client = GetClient();

            if (client == null)
            {
                return(Unauthorized());
            }

            _context
            .PhoneNumbers
            .Add(new PhoneNumber
            {
                Label    = request.Label,
                Number   = request.Number,
                ClientId = client.Id
            });

            _context.SaveChanges();
            return(Ok(new
            {
                message = "Naujas tel. numeris sukurtas."
            }));
        }
Exemple #2
0
        public static PhoneNumberOutputModel SelectPhoneOutputModelFromPhoneDTO(PhoneNumberDTO phoneNumberDTO)
        {
            PhoneNumberOutputModel model = new PhoneNumberOutputModel();

            model.PhoneNumber = phoneNumberDTO.Number;
            return(model);
        }
Exemple #3
0
        public void AValueWithTheLengthOfTenIsValid()
        {
            string         expected    = PhoneNumberStartingDigit + "123456789";
            PhoneNumberDTO phoneNumber = NewPhoneNumber(expected);

            Assert.That(phoneNumber.Value, Is.EqualTo(expected));
        }
        public static PhoneNumberDTO TryGetExistingPhoneNumberFromDb(PhoneNumberDTO phoneNumber)
        {
            var foundPhoneNumber = ServiceLocator.PhoneNumberService.EagerDisconnectedService.FindBy(p => p.Value == phoneNumber.Value).FirstOrDefault();

            CheckIfNumberExistButWithDiffrentType(phoneNumber, foundPhoneNumber);
            return(foundPhoneNumber);
        }
 private DummyPhoneNumberObject DTOToPhoneNumpber(PhoneNumberDTO phoneNumberDTO)
 {
     return(new DummyPhoneNumberObject()
     {
         PhoneNumberValue = phoneNumberDTO.PhoneNumberValue
     });
 }
Exemple #6
0
        public PhoneNumberDTO UpdatePhone(PhoneNumberDTO newPhone)
        {
            if (ValidatePhoneNumber(newPhone.Id.ToString()))
            {
                try
                {
                    using (SqlConnection conn = new SqlConnection(AppConstants.CONNECTION_STRING))
                    {
                        var cmd = conn.CreateCommand();
                        conn.Open();
                        cmd.Parameters.AddWithValue("@id", newPhone.Id);
                        cmd.Parameters.AddWithValue("@personid", newPhone.PersonId);
                        cmd.Parameters.AddWithValue("@number", newPhone.Number);
                        cmd.Parameters.AddWithValue("@ishome", newPhone.IsHome);
                        cmd.CommandText = string.Format("UPDATE DictionaryDB.dbo.PhoneNumbers SET PersonId = @personid, IsHome = @ishome, Number = @number WHERE PhoneNumberId = @id");
                        cmd.ExecuteNonQuery();
                    }
                }
                catch (Exception e)
                {
                    throw (e);
                }

                return(newPhone);
            }

            throw new Exception("Phone for update not found !");
        }
Exemple #7
0
        public PhoneNumberDTO AddPhone(PhoneNumberDTO newPhone)
        {
            if (!ValidatePhoneNumber(newPhone.Id.ToString()))
            {
                try
                {
                    using (SqlConnection conn = new SqlConnection(AppConstants.CONNECTION_STRING))
                    {
                        var cmd = conn.CreateCommand();
                        conn.Open();
                        cmd.Parameters.AddWithValue("@id", newPhone.Id);
                        cmd.Parameters.AddWithValue("@personid", newPhone.PersonId);
                        cmd.Parameters.AddWithValue("@number", newPhone.Number);
                        cmd.Parameters.AddWithValue("@ishome", newPhone.IsHome);
                        cmd.CommandText = "INSERT INTO DictionaryDB.dbo.PhoneNumbers (PhoneNumberId,PersonId,Number,IsHome) VALUES (@id,@personid,@number,@ishome)";
                        cmd.ExecuteNonQuery();
                    }
                }
                catch (Exception e)
                {
                    throw (e);
                }

                return(newPhone);
            }

            throw new Exception("Phone already exists !");
        }
Exemple #8
0
        public static PhoneNumberDTO AddPhoneNumberToDb(PhoneNumberDTO phoneNumber)
        {
            NullCheck.ThrowArgumentNullEx(phoneNumber);
            ServiceLocator.PhoneNumberService.InternalService.Add(phoneNumber);
            var addedPhoneNumber = ServiceLocator.PhoneNumberService.EagerDisconnectedService.FindBy(p => p.Value == phoneNumber.Value)
                                   .First();

            return(addedPhoneNumber);
        }
Exemple #9
0
        public static IPhoneNumber MappFrom(PhoneNumberDTO phoneNumber)
        {
            PhoneNumberModel phoneNumberModel = new PhoneNumberModel();

            SetCommonDboProperties(phoneNumberModel, phoneNumber);
            phoneNumberModel.Value = phoneNumber.Value;
            phoneNumberModel.Type  = phoneNumber.Type;
            return(phoneNumberModel);
        }
Exemple #10
0
        public void AddRoleRelation(UserDTO caller, UserDTO user, PhoneNumberDTO phoneNumber, Role role)
        {
            NullCheck.ThrowArgumentNullEx(user, phoneNumber);
            _target.CheckPermission(caller);
            user        = user.Id == 0 ? DbEntityExistensChecker.TryGetExistingUserFromDb(user) ?? DbEntityAdder.AddUserToDb(user) : user;
            phoneNumber = phoneNumber.Id == 0 ? DbEntityExistensChecker.TryGetExistingPhoneNumberFromDb(phoneNumber) ??
                          DbEntityAdder.AddPhoneNumberToDb(phoneNumber) : phoneNumber;

            AddRoleRelationToDb(CreateRoleRelation(user, phoneNumber, role));
        }
Exemple #11
0
 internal override IRoleJunction CreateRoleRelation(UserDTO user, PhoneNumberDTO phoneNumber, Role role)
 {
     return(new Regattas_Users_UserRoles_JunctionsDTO
     {
         RegattaId = _regatta.Id,
         UserId = user.Id,
         UserRoleId = (int)role,
         PhoneNumberId = phoneNumber.Id,
     });
 }
Exemple #12
0
 internal override IRoleJunction CreateRoleRelation(UserDTO user, PhoneNumberDTO phoneNumber, Role role)
 {
     return(new Clubs_Users_UserRoles_JunctionsDTO
     {
         ClubId = _club.Id,
         UserId = user.Id,
         UserRoleId = (int)role,
         PhoneNumberId = phoneNumber.Id
     });
 }
 private static void CheckIfNumberExistButWithDiffrentType(PhoneNumberDTO phoneNumber, PhoneNumberDTO foundPhoneNumber)
 {
     if (foundPhoneNumber != null && !string.Equals(phoneNumber.Type, foundPhoneNumber.Type,
                                                    StringComparison.CurrentCultureIgnoreCase))
     {
         throw new ArgumentException(
                   $"Phonenumber: {phoneNumber.Value} already exist in the database as Type: {foundPhoneNumber.Type}" +
                   $"To add Phonenumber: {phoneNumber.Value} as Type: {phoneNumber.Type}. Delete {foundPhoneNumber.Value} Id: {foundPhoneNumber.Id} first");
     }
 }
 internal override IRoleJunction CreateRoleRelation(UserDTO user, PhoneNumberDTO phoneNumber, Role role)
 {
     return(new SocialEvents_Users_UserRoles_JunctionsDTO()
     {
         SocialEventId = _socialEvent.Id,
         UserId = user.Id,
         UserRoleId = (int)role,
         PhoneNumberId = phoneNumber.Id
     });
 }
Exemple #15
0
 internal override IRoleJunction CreateRoleRelation(UserDTO user, PhoneNumberDTO phoneNumber, EmailDTO email, Role role)
 {
     return(new RaceEvents_Users_UserRoles_JunctionsDTO
     {
         RaceEventId = _raceEvent.Id,
         UserId = user.Id,
         UserRoleId = (int)role,
         PhoneNumberId = phoneNumber.Id,
         EmailId = email.Id
     });
 }
        public Guid CreateOffice(string director, string openFrom, string openTo)
        {
            var officeId = Guid.NewGuid();

            var postalCode = new PostalCodeDTO()
            {
                FirstPart  = "30",
                SecondPart = "002"
            };

            var address = new AddressDTO
            {
                PostalCode     = postalCode,
                Country        = "Poland",
                County         = "krakowski",
                Locality       = "Kraków",
                Street         = "Jana Pawła II",
                Province       = "małopolskie",
                Parish         = "Kraków",
                LocalNumber    = "2",
                BuildingNumber = "1"
            };

            var dialCode = new DialCodeDTO
            {
                Code    = "PL",
                Country = "Poland",
                Prefix  = "+48"
            };

            var phoneNumber = new PhoneNumberDTO
            {
                AreaCode = dialCode,
                Number   = "322655766"
            };

            var office = new OfficeDTO
            {
                Id          = officeId,
                PhoneNumber = phoneNumber,
                OpenFrom    = openFrom,
                OpenTo      = openTo,
                IsOpen      = OpenCloseDTO.Open,
                Address     = address,
                Director    = director
            };

            _officeService.CreateNewOffice(office);

            return(officeId);
        }
Exemple #17
0
        public IActionResult Modify(int id, PhoneNumberDTO request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Client client = GetClient();

            if (client == null)
            {
                return(Unauthorized());
            }

            PhoneNumber number = _context
                                 .PhoneNumbers
                                 .SingleOrDefault(c => c.Id == id && c.ClientId == client.Id);

            if (number == null)
            {
                return(BadRequest(new
                {
                    message = "Toks tel. numeris neegzistuoja."
                }));
            }

            if (number.Label != request.Label)
            {
                number.Label = request.Label;
            }

            if (number.Number != request.Number)
            {
                number.Number = request.Number;
            }

            _context.SaveChanges();
            return(Ok(new
            {
                message = "Tel. numeris pakeistas."
            }));
        }
        public async Task <PhoneNumberDTO> PostPhoneNumber(PhoneNumberDTO phoneNumberDTO)
        {
            if (phoneNumberDTO == null)
            {
                throw new ArgumentNullException(nameof(phoneNumberDTO));
            }

            var phoneNumberResult = _context.PhoneNumbers.Add(new PhoneNumber()
            {
                Number    = phoneNumberDTO.Number,
                Type      = phoneNumberDTO.Type,
                ContactId = phoneNumberDTO.ContactId,
            });

            await _context.SaveChangesAsync().ConfigureAwait(false);

            phoneNumberDTO.Id = phoneNumberResult.Entity.Id;

            return(phoneNumberDTO);
        }
Exemple #19
0
        public void ShouldAddPhoneNumbers()
        {
            var httpResult = controller.Get(1);
            var response   = httpResult as JsonResult <CandidateDTO>;
            var candidate  = response.Content;

            var newPhoneNumber = new PhoneNumberDTO {
                Number = "+380930986252"
            };
            var phoneNumbers = candidate.PhoneNumbers.ToList();

            phoneNumbers.Add(newPhoneNumber);
            candidate.PhoneNumbers = phoneNumbers;

            var newHttpResult = controller.Put(candidate.Id, candidate);
            var newResponse   = newHttpResult as JsonResult <CandidateDTO>;
            var newCandidate  = newResponse.Content;

            Assert.IsTrue(newCandidate.PhoneNumbers.Any(x => x.Number == "+380930986252"));
        }
        public async Task <IActionResult> PutPhoneNumber(int id, PhoneNumberDTO phoneNumberDTO)
        {
            if (phoneNumberDTO == null)
            {
                throw new ArgumentNullException(nameof(phoneNumberDTO));
            }

            if (id != phoneNumberDTO.Id)
            {
                return(BadRequest());
            }

            var phoneNumberResult = await _phoneNumberRepository.PutPhoneNumber(id, phoneNumberDTO).ConfigureAwait(false);

            if (phoneNumberResult == null)
            {
                return(NotFound());
            }

            return(NoContent());
        }
Exemple #21
0
        public PhoneNumberDTO GetPhoneNumberById(string id)
        {
            if (ValidatePhoneNumber(id))
            {
                PhoneNumberDTO phoneNumber = new PhoneNumberDTO();
                using (SqlConnection conn = new SqlConnection(AppConstants.CONNECTION_STRING))
                {
                    var command = conn.CreateCommand();
                    command.CommandText = "SELECT * FROM DictionaryDB.dbo.PhoneNumbers WHERE PhoneNumberId = @id";
                    command.Parameters.AddWithValue("@id", id);
                    bool IsHomeBuff = false;
                    conn.Open();
                    using (var reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            if (reader.GetValue(reader.GetOrdinal("IsHome")).ToString().Equals("True"))
                            {
                                IsHomeBuff = true;
                            }
                            else
                            {
                                IsHomeBuff = false;
                            }
                            phoneNumber.IsHome   = IsHomeBuff;
                            phoneNumber.Id       = Int32.Parse((string)reader.GetValue(reader.GetOrdinal("PhoneNumberId")).ToString());
                            phoneNumber.PersonId = Int32.Parse((string)reader.GetValue(reader.GetOrdinal("PersonId")).ToString());
                            phoneNumber.Number   = reader.GetValue(reader.GetOrdinal("Number")).ToString();
                        }
                    }

                    return(phoneNumber);
                }
            }

            throw new ArgumentNullException("Phone number not found");
        }
        public async Task <PhoneNumberDTO> PutPhoneNumber(int id, PhoneNumberDTO phoneNumberDTO)
        {
            // DTO objects don't exist in the context class and won't be recognized by EF so the code below will not work!!!
            //_context.Entry(phoneNumber).State = EntityState.Modified;

            if (phoneNumberDTO == null)
            {
                throw new ArgumentNullException(nameof(phoneNumberDTO));
            }

            try
            {
                PhoneNumber phoneNumber = await _context.PhoneNumbers
                                          .Include(p => p.Contact)
                                          .FirstOrDefaultAsync(p => p.Id == id)
                                          .ConfigureAwait(false);

                phoneNumber.Number    = phoneNumberDTO.Number;
                phoneNumber.Type      = phoneNumberDTO.Type;
                phoneNumber.ContactId = phoneNumberDTO.ContactId;

                await _context.SaveChangesAsync().ConfigureAwait(false);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PhoneNumberExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }

            return(phoneNumberDTO);
        }
        public async Task <ActionResult <PhoneNumberDTO> > PostPhoneNumber(PhoneNumberDTO phoneNumberDTO)
        {
            var phoneNumberResult = await _phoneNumberRepository.PostPhoneNumber(phoneNumberDTO).ConfigureAwait(false);

            return(CreatedAtAction("GetPhoneNumber", new { id = phoneNumberResult.Id }, phoneNumberResult));
        }
Exemple #24
0
 internal abstract IRoleJunction CreateRoleRelation(UserDTO user, PhoneNumberDTO phoneNumber, EmailDTO email, Role role);
 public static void Update(this PhoneNumber destination, PhoneNumberDTO source)
 {
     destination.Number = source.Number;
     destination.State  = source.State;
 }
Exemple #26
0
        public void TypeCanContainWhiteSpace(string expected)
        {
            PhoneNumberDTO phoneNumber = NewPhoneNumber(expected);

            Assert.That(phoneNumber.Type, Is.EqualTo(expected));
        }