Example #1
0
        public static bool Insert(DTOs.CustomerDTO customer)
        {
            List <Models.Entity.Profile> db = GetData();

            Models.Entity.Profile newCustomer = customer.Map();

            Models.Civil.Document cpf =
                (from document in newCustomer.Documents
                 where document.Name.ToLower() == "cpf"
                 select document).FirstOrDefault();

            if (cpf != null)
            {
                Models.Entity.Profile existingUser =
                    (from profile in db
                     from document in profile.Documents
                     where document.Name.ToLower() == "cpf" &&
                     document.Value == cpf.Value
                     select profile).FirstOrDefault();

                if (existingUser != null)
                {
                    return(false);
                }
            }

            newCustomer.NewId();
            db.Add(newCustomer);
            UpdateData(db);

            return(true);
        }
Example #2
0
        public void Map(Models.Entity.Profile profile)
        {
            Id        = profile.Id;
            Name      = profile.Name;
            Age       = profile.Age;
            Gender    = profile.Gender;
            Addresses = new List <AddressDTO>();
            Contacts  = new List <ContactDTO>();
            Documents = new List <DocumentDTO>();

            foreach (Models.Entity.ProfileAddress item in profile.Addresses)
            {
                AddressDTO newAddress = new AddressDTO();
                newAddress.Map(item.Address);
                Addresses.Add(newAddress);
            }

            foreach (Models.Civil.Contact contact in profile.Contacts)
            {
                ContactDTO newContact = new ContactDTO();
                newContact.Map(contact);
                Contacts.Add(newContact);
            }

            foreach (Models.Civil.Document document in profile.Documents)
            {
                DocumentDTO newDocument = new DocumentDTO();
                newDocument.Map(document);
                Documents.Add(newDocument);
            }
        }
Example #3
0
        public Models.Entity.Profile Map()
        {
            Models.Entity.Profile result = new Models.Entity.Profile()
            {
                Id     = Id,
                Name   = Name,
                Age    = Age,
                Gender = Gender
            };

            foreach (AddressDTO address in Addresses)
            {
                result.Addresses.Add(new Models.Entity.ProfileAddress()
                {
                    Address = address.Map()
                });
            }

            foreach (ContactDTO contact in Contacts)
            {
                result.Contacts.Add(contact.Map());
            }

            foreach (DocumentDTO document in Documents)
            {
                result.Documents.Add(document.Map());
            }

            return(result);
        }
Example #4
0
        public static bool Update(DTOs.CustomerDTO customer)
        {
            List <Models.Entity.Profile> db = GetData();

            Models.Entity.Profile updateCustomer = customer.Map();

            for (int i = 0; i < db.Count; i++)
            {
                if (db[i].Id == updateCustomer.Id)
                {
                    db[i] = updateCustomer;
                    UpdateData(db);

                    return(true);
                }
            }

            return(false);
        }
Example #5
0
        public static DTOs.CustomerDTO?SearchById(string id)
        {
            List <Models.Entity.Profile> db = GetData();

            Models.Entity.Profile search =
                (from profile in db
                 where profile.Id == id
                 select profile).FirstOrDefault();

            if (search != null)
            {
                DTOs.CustomerDTO result = new DTOs.CustomerDTO();
                result.Map(search);

                return(result);
            }

            return(null);
        }