Ejemplo n.º 1
0
        /// <summary>
        /// This method updates the phone book entity
        /// </summary>
        /// <param name="PhoneBookBase">PhoneBookBase is the object that get as parameter.</param>
        /// <returns>Returns the response as ResponseModel that is an object that return the item saved, and if there is any error returns the error as a Messagge.</returns>
        public async Task <ResponseModel <PhoneBookBase> > UpdatePhoneBook(PhoneBookBase phoneBookModel)
        {
            var response = new ResponseModel <PhoneBookBase>();

            try
            {
                Logger.Info("Init method::UpdatePhoneBook");
                List <PhoneBookBase> list = await ReadPhoneBooks() as List <PhoneBookBase>;

                var index = list.FindIndex(p => p.FirstName == phoneBookModel.FirstName && p.LastName == p.LastName);
                list.ElementAt(index).FirstName   = phoneBookModel.FirstName;
                list.ElementAt(index).LastName    = phoneBookModel.LastName;
                list.ElementAt(index).L_PhoneBook = phoneBookModel.L_PhoneBook;
                response = await WritePhoneBooksToFile(list);

                Logger.Info("End method::UpdatePhoneBook");
                return(response);
            }
            catch (Exception ex)
            {
                Logger.Error("Exception method::UpdatePhoneBook : {0}", ex.ToString());
                response.HasError = true;
                response.Messagge = ex.Message;
                return(response);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// This method creates the phone book entity
        /// </summary>
        /// <param name="PhoneBookBase">PhoneBookBase is the object that get as parameter.</param>
        /// <returns>Returns the response as ResponseModel that is an object that return the item saved, and if there is any error returns the error as a Messagge.</returns>
        public async Task <ResponseModel <PhoneBookBase> > CreatePhoneBook(PhoneBookBase phoneBookModel)
        {
            var response = new ResponseModel <PhoneBookBase>();

            try
            {
                Logger.Info("Init method::CreatePhoneBook");
                List <PhoneBookBase> list = await ReadPhoneBooks() as List <PhoneBookBase>;

                var Exists = list.FirstOrDefault(i => i.FirstName == phoneBookModel.FirstName && i.LastName == phoneBookModel.LastName);
                if (Exists != null)
                {
                    response.HasError = true;
                    response.Messagge = "This item already exist, go to update it!";
                    response.item     = phoneBookModel;
                    return(response);
                }
                list.Add(phoneBookModel);
                var res = await WritePhoneBooksToFile(list);

                Logger.Info("End method::CreatePhoneBook");
                return(response);
            }
            catch (Exception ex)
            {
                Logger.Error("Exception method::CreatePhoneBook: {0}", ex.ToString());
                response.HasError = true;
                response.Messagge = ex.Message;
                return(response);
            }
        }
Ejemplo n.º 3
0
        public void TestDeleteMethod()
        {
            var item = new PhoneBookBase {
                FirstName = "Ilir", LastName = "Gashi", L_PhoneBook = new List <PhoneBookDetails> {
                    new PhoneBookDetails {
                        Number = "123141", PhoneType = IG_CoreLibrary.Models.Type.Cellphone
                    }
                }
            };
            var response = repo.DeletePhoneBook(item).Result;

            Assert.AreEqual(response.HasError, false);
        }
Ejemplo n.º 4
0
 public async Task <ResponseModel <PhoneBookBase> > DeletePhoneBook([FromBody] PhoneBookBase phoneBookBase)
 {
     return(await Repository.DeletePhoneBook(phoneBookBase));
 }