Ejemplo n.º 1
0
        public static PhonebookPhone ConvertToPhonebookPhone(this PhonebookPhoneViewModel PhonebookPhoneViewModel)
        {
            PhonebookPhone PhonebookPhone = new PhonebookPhone()
            {
                Id         = PhonebookPhoneViewModel.Id,
                Identifier = PhonebookPhoneViewModel.Identifier,

                PhonebookId = PhonebookPhoneViewModel.Phonebook?.Id ?? null,

                Email   = PhonebookPhoneViewModel.Email,
                Name    = PhonebookPhoneViewModel.Name,
                SurName = PhonebookPhoneViewModel.SurName,

                PhoneNumber = PhonebookPhoneViewModel.PhoneNumber,
                ItemStatus  = PhonebookPhoneViewModel.ItemStatus,
                Active      = PhonebookPhoneViewModel.IsActive,
                CreatedById = PhonebookPhoneViewModel.CreatedBy?.Id ?? null,
                CompanyId   = PhonebookPhoneViewModel.Company?.Id ?? null,

                UpdatedAt = PhonebookPhoneViewModel.UpdatedAt,
                CreatedAt = PhonebookPhoneViewModel.CreatedAt,
            };

            return(PhonebookPhone);
        }
Ejemplo n.º 2
0
        public PhonebookPhone GetPhonebookPhone(int id)
        {
            PhonebookPhone PhonebookPhone = null;

            string queryString =
                selectString +
                "WHERE Id = @Id;";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                SqlCommand command = connection.CreateCommand();
                command.CommandText = queryString;
                command.Parameters.Add(new SqlParameter("@Id", id));

                connection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        PhonebookPhone = Read(reader);
                    }
                }
            }
            return(PhonebookPhone);
        }
Ejemplo n.º 3
0
        public static PhonebookPhoneViewModel ConvertToPhonebookPhoneViewModel(this PhonebookPhone PhonebookPhone)
        {
            PhonebookPhoneViewModel PhonebookPhoneViewModel = new PhonebookPhoneViewModel()
            {
                Id         = PhonebookPhone.Id,
                Identifier = PhonebookPhone.Identifier,

                Phonebook = PhonebookPhone.Phonebook?.ConvertToPhonebookViewModelLite(),

                Email   = PhonebookPhone.Email,
                Name    = PhonebookPhone.Name,
                SurName = PhonebookPhone.SurName,

                PhoneNumber = PhonebookPhone.PhoneNumber,


                ItemStatus = PhonebookPhone.ItemStatus,
                IsActive   = PhonebookPhone.Active,

                CreatedBy = PhonebookPhone.CreatedBy?.ConvertToUserViewModelLite(),
                Company   = PhonebookPhone.Company?.ConvertToCompanyViewModelLite(),

                UpdatedAt = PhonebookPhone.UpdatedAt,
                CreatedAt = PhonebookPhone.CreatedAt,
            };

            return(PhonebookPhoneViewModel);
        }
Ejemplo n.º 4
0
        public static List <PhonebookPhoneViewModel> ConvertToPhonebookPhoneViewModelList(this IEnumerable <PhonebookPhone> PhonebookPhones)
        {
            List <PhonebookPhoneViewModel> PhonebookPhoneViewModels = new List <PhonebookPhoneViewModel>();

            foreach (PhonebookPhone PhonebookPhone in PhonebookPhones)
            {
                PhonebookPhoneViewModels.Add(PhonebookPhone.ConvertToPhonebookPhoneViewModel());
            }
            return(PhonebookPhoneViewModels);
        }
Ejemplo n.º 5
0
        public PhonebookPhone Delete(Guid identifier)
        {
            PhonebookPhone dbEntry = context.PhonebookPhones
                                     .Union(context.ChangeTracker.Entries()
                                            .Where(x => x.State == EntityState.Added && x.Entity.GetType() == typeof(PhonebookPhone))
                                            .Select(x => x.Entity as PhonebookPhone))
                                     .FirstOrDefault(x => x.Identifier == identifier && x.Active == true);

            if (dbEntry != null)
            {
                dbEntry.Active    = false;
                dbEntry.UpdatedAt = DateTime.Now;
            }
            return(dbEntry);
        }
Ejemplo n.º 6
0
        public PhonebookPhone Create(PhonebookPhone PhonebookPhone)
        {
            if (context.PhonebookPhones.Where(x => x.Identifier != null && x.Identifier == PhonebookPhone.Identifier).Count() == 0)
            {
                PhonebookPhone.Id = 0;

                PhonebookPhone.Active    = true;
                PhonebookPhone.UpdatedAt = DateTime.Now;
                PhonebookPhone.CreatedAt = DateTime.Now;

                context.PhonebookPhones.Add(PhonebookPhone);
                return(PhonebookPhone);
            }
            else
            {
                // Load PhonebookPhone that will be updated
                PhonebookPhone dbEntry = context.PhonebookPhones
                                         .FirstOrDefault(x => x.Identifier == PhonebookPhone.Identifier && x.Active == true);

                if (dbEntry != null)
                {
                    dbEntry.PhonebookId = PhonebookPhone.PhonebookId ?? null;
                    dbEntry.CompanyId   = PhonebookPhone.CompanyId ?? null;
                    dbEntry.CreatedById = PhonebookPhone.CreatedById ?? null;

                    // Set properties

                    dbEntry.Email       = PhonebookPhone.Email;
                    dbEntry.Name        = PhonebookPhone.Name;
                    dbEntry.SurName     = PhonebookPhone.SurName;
                    dbEntry.PhoneNumber = PhonebookPhone.PhoneNumber;

                    dbEntry.ItemStatus = PhonebookPhone.ItemStatus;

                    // Set timestamp
                    dbEntry.UpdatedAt = DateTime.Now;
                }

                return(dbEntry);
            }
        }
Ejemplo n.º 7
0
        private static PhonebookPhone Read(SqlDataReader reader)
        {
            PhonebookPhone PhonebookPhone = new PhonebookPhone();

            PhonebookPhone.Id         = Int32.Parse(reader["PhonebookPhoneId"].ToString());
            PhonebookPhone.Identifier = Guid.Parse(reader["PhonebookPhoneIdentifier"].ToString());

            if (reader["PhonebookId"] != DBNull.Value)
            {
                PhonebookPhone.Phonebook            = new Phonebook();
                PhonebookPhone.PhonebookId          = Int32.Parse(reader["PhonebookId"].ToString());
                PhonebookPhone.Phonebook.Id         = Int32.Parse(reader["PhonebookId"].ToString());
                PhonebookPhone.Phonebook.Identifier = Guid.Parse(reader["PhonebookIdentifier"].ToString());
                PhonebookPhone.Phonebook.Code       = reader["PhonebookCode"].ToString();
                PhonebookPhone.Phonebook.Name       = reader["PhonebookName"].ToString();
            }


            if (reader["Name"] != DBNull.Value)
            {
                PhonebookPhone.Name = reader["Name"].ToString();
            }
            if (reader["SurName"] != DBNull.Value)
            {
                PhonebookPhone.SurName = reader["SurName"].ToString();
            }

            if (reader["PhoneNumber"] != DBNull.Value)
            {
                PhonebookPhone.PhoneNumber = reader["PhoneNumber"].ToString();
            }

            if (reader["Email"] != DBNull.Value)
            {
                PhonebookPhone.Email = reader["Email"].ToString();
            }

            if (reader["ItemStatus"] != DBNull.Value)
            {
                PhonebookPhone.ItemStatus = Int32.Parse(reader["ItemStatus"].ToString());
            }
            PhonebookPhone.Active    = bool.Parse(reader["Active"].ToString());
            PhonebookPhone.UpdatedAt = DateTime.Parse(reader["UpdatedAt"].ToString());

            if (reader["CreatedById"] != DBNull.Value)
            {
                PhonebookPhone.CreatedBy           = new User();
                PhonebookPhone.CreatedById         = Int32.Parse(reader["CreatedById"].ToString());
                PhonebookPhone.CreatedBy.Id        = Int32.Parse(reader["CreatedById"].ToString());
                PhonebookPhone.CreatedBy.FirstName = reader["CreatedByFirstName"]?.ToString();
                PhonebookPhone.CreatedBy.LastName  = reader["CreatedByLastName"]?.ToString();
            }

            if (reader["CompanyId"] != DBNull.Value)
            {
                PhonebookPhone.Company      = new Company();
                PhonebookPhone.CompanyId    = Int32.Parse(reader["CompanyId"].ToString());
                PhonebookPhone.Company.Id   = Int32.Parse(reader["CompanyId"].ToString());
                PhonebookPhone.Company.Name = reader["CompanyName"].ToString();
            }

            return(PhonebookPhone);
        }
Ejemplo n.º 8
0
        public PhonebookResponse Create(PhonebookViewModel re)
        {
            PhonebookResponse response = new PhonebookResponse();

            try
            {
                // Backup notes
                List <PhonebookNoteViewModel> PhonebookNotes = re.PhonebookNotes?.ToList();
                re.PhonebookNotes = null;

                // Backup documents
                List <PhonebookDocumentViewModel> PhonebookDocuments = re.PhonebookDocuments?.ToList();
                re.PhonebookDocuments = null;

                // Backup phone
                List <PhonebookPhoneViewModel> PhonebookPhones = re.PhonebookPhones?.ToList();
                re.PhonebookPhones = null;

                Phonebook createdPhonebook = unitOfWork.GetPhonebookRepository().Create(re.ConvertToPhonebook());

                // Update notes
                if (PhonebookNotes != null && PhonebookNotes.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookNote in PhonebookNotes
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookNoteViewModel>())
                    {
                        PhonebookNote.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookNote.ItemStatus = ItemStatus.Submited;
                        PhonebookNote createdPhonebookNote = unitOfWork.GetPhonebookNoteRepository()
                                                             .Create(PhonebookNote.ConvertToPhonebookNote());
                    }

                    foreach (var item in PhonebookNotes
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookNoteViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookNoteRepository().Create(item.ConvertToPhonebookNote());

                        unitOfWork.GetPhonebookNoteRepository().Delete(item.Identifier);
                    }
                }

                // Update documents
                if (PhonebookDocuments != null && PhonebookDocuments.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookDocument in PhonebookDocuments
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookDocumentViewModel>())
                    {
                        PhonebookDocument.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookDocument.ItemStatus = ItemStatus.Submited;
                        PhonebookDocument createdPhonebookDocument = unitOfWork.GetPhonebookDocumentRepository()
                                                                     .Create(PhonebookDocument.ConvertToPhonebookDocument());
                    }

                    foreach (var item in PhonebookDocuments
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookDocumentViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookDocumentRepository().Create(item.ConvertToPhonebookDocument());

                        unitOfWork.GetPhonebookDocumentRepository().Delete(item.Identifier);
                    }
                }

                // Update Phones
                if (PhonebookPhones != null && PhonebookPhones.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookPhone in PhonebookPhones
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookPhoneViewModel>())
                    {
                        PhonebookPhone.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookPhone.ItemStatus = ItemStatus.Submited;
                        PhonebookPhone createdPhonebookPhone = unitOfWork.GetPhonebookPhoneRepository()
                                                               .Create(PhonebookPhone.ConvertToPhonebookPhone());
                    }

                    foreach (var item in PhonebookPhones
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookPhoneViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookPhoneRepository().Create(item.ConvertToPhonebookPhone());

                        unitOfWork.GetPhonebookPhoneRepository().Delete(item.Identifier);
                    }
                }

                unitOfWork.Save();

                response.Phonebook = createdPhonebook.ConvertToPhonebookViewModel();
                response.Success   = true;
            }
            catch (Exception ex)
            {
                response.Phonebook = new PhonebookViewModel();
                response.Success   = false;
                response.Message   = ex.Message;
            }

            return(response);
        }