Exemple #1
0
        private async Task <CompanyContacts> GetCompanyContactsMethod(long id)
        {
            var company = await _unitOfWork.CompanyRepository.Query.
                          Include(c => c.Account.Location).SingleAsync(c => c.Id == id);

            if (company != null)
            {
                var companyContacts = new CompanyContacts
                {
                    Id       = company.Id,
                    Title    = company.Name,
                    Contacts = company.Account?.Contacts.Select(x => new ContactShortDTO
                    {
                        Id       = x.Id,
                        Provider = x.Provider.Name,
                        Type     = x.Provider.Type,
                        Value    = x.Value
                    }).ToList(),
                    Location = new LocationDTO
                    {
                        Id        = company.Account.Location.Id,
                        Adress    = company.Account.Location?.Adress ?? "default",
                        City      = company.Account.Location?.City ?? "default",
                        Latitude  = company.Account.Location?.Latitude ?? 0,
                        Longitude = company.Account.Location?.Longitude ?? 0
                    }
                };

                return(companyContacts);
            }

            return(null);
        }
Exemple #2
0
        private void Child_Insert(Company company, Companies entityCompany)
        {
            using (var manager =
                       ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                LoadProperty(CompanyIdProperty, company.CompanyId);
                RolodexEF.Ranks newRank = GetRank(ReadProperty(RankIdProperty));

                var newContact = new CompanyContacts();
                newContact.BaseSalary = ReadProperty(BaseSalaryProperty);
                var birthday = ReadProperty(BirthdayProperty);
                if (!birthday.IsEmpty)
                {
                    newContact.Birthday = birthday.Date;
                }
                newContact.Companies = entityCompany;
                newContact.FirstName = ReadProperty(FirstNameProperty);
                newContact.LastName  = ReadProperty(LastNameProperty);
                newContact.Ranks     = newRank;

                LoadProperty(InitialRankIdProperty, ReadProperty(RankIdProperty));
                if (ReadProperty(CompanyContactIdProperty) == 0)
                {
                    newContact.PropertyChanged += entityContact_PropertyChanged;
                }

                DataPortal.UpdateChild(ReadProperty(ContactsPhonesProperty), this, newContact);
            }
        }
Exemple #3
0
        private void Child_Update(Company company, Companies entityCompany)
        {
            using (var manager =
                       ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                RolodexEF.Ranks newRank = GetRank(ReadProperty(RankIdProperty));
                RolodexEF.Ranks oldRank = GetRank(ReadProperty(InitialRankIdProperty));

                var newContact = new CompanyContacts();
                newContact.CompanyContactId = ReadProperty(CompanyContactIdProperty);
                newContact.EntityKey        = new System.Data.EntityKey("RolodexEntities.CompanyContacts", "CompanyContactId",
                                                                        ReadProperty(CompanyContactIdProperty));

                manager.ObjectContext.Attach(newContact);
                entityCompany.CompanyContacts.Attach(newContact);
                oldRank.CompanyContacts.Attach(newContact);
                newContact.Ranks = newRank;

                newContact.BaseSalary = ReadProperty(BaseSalaryProperty);
                var birthday = ReadProperty(BirthdayProperty);
                if (!birthday.IsEmpty)
                {
                    newContact.Birthday = birthday.Date;
                }
                else
                {
                    newContact.Birthday = null;
                }

                newContact.FirstName = ReadProperty(FirstNameProperty);
                newContact.LastName  = ReadProperty(LastNameProperty);

                DataPortal.UpdateChild(ReadProperty(ContactsPhonesProperty), this, newContact);
            }
        }
Exemple #4
0
        public void DeleteCompanyContact(Contact contact)
        {
            if (contact == null)
            {
                throw new ArgumentNullException(nameof(contact));
            }

            _context.Contact.Remove(contact);

            //remove the company assignment
            CompanyContacts companyContacts = new CompanyContacts();

            companyContacts.ContactId = contact.Id;
            DeleteCompanyContactsAssignment(companyContacts);

            //remove the site assignment
            SiteContacts siteContacts = new SiteContacts();

            siteContacts.ContactId = contact.Id;
            DeleteSiteContactsAssignment(siteContacts);

            //remove the terminal assignment
            TerminalContacts terminalContacts = new TerminalContacts();

            terminalContacts.ContactId = contact.Id;
            DeleteTerminalContactsAssignment(terminalContacts);
        }
Exemple #5
0
        public void CreateCompanyContactsAssignment(CompanyContacts companyContacts)
        {
            if (companyContacts == null)
            {
                throw new ArgumentNullException(nameof(companyContacts));
            }

            _context.CompanyContacts.Add(companyContacts);
        }
 private void Child_Fetch(CompanyContacts contact)
 {
     RaiseListChangedEvents = false;
     foreach (var item in contact.CompanyContactPhones)
     {
         Add(CompanyContactPhone.GetCompanyContactPhone(item));
     }
     RaiseListChangedEvents = true;
 }
        void entityContact_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            CompanyContacts entityContact = sender as CompanyContacts;

            if (e.PropertyName == CompanyContactIdProperty.Name)
            {
                LoadProperty(CompanyContactIdProperty, entityContact.CompanyContactId);
                entityContact.PropertyChanged -= entityContact_PropertyChanged;
            }
        }
Exemple #8
0
 private void Child_Fetch(CompanyContacts contact)
 {
     LoadProperty(CompanyIdProperty, contact.Companies.CompanyId);
     LoadProperty(CompanyContactIdProperty, contact.CompanyContactId);
     LoadProperty(FirstNameProperty, contact.FirstName);
     LoadProperty(LastNameProperty, contact.LastName);
     LoadProperty(BirthdayProperty, new SmartDate(contact.Birthday));
     LoadProperty(RankIdProperty, contact.Ranks.RankId);
     LoadProperty(InitialRankIdProperty, contact.Ranks.RankId);
     LoadProperty(BaseSalaryProperty, contact.BaseSalary);
     LoadProperty(ContactsPhonesProperty, CompanyContactPhoneList.GetCompanyContactPhoneList(contact));
 }
Exemple #9
0
        private void toolStripButton12_Click(object sender, EventArgs e)
        {
            if (companyContactsBindingSource.Count > 0)
            {
                using (var Dbconnection = new MCDEntities())
                {
                    using (System.Data.Entity.DbContextTransaction dbTran = Dbconnection.Database.BeginTransaction())
                    {
                        try
                        {
                            //CRUD Operations
                            CompanyContacts CC          = (CompanyContacts)companyContactsBindingSource.Current;
                            Individual      CCFromCache = CurrentlySelectedCompany.Individuals.Where(a => a.IndividualID == CC.IndividualID).First();

                            // return one instance each entity by primary key
                            var C = Dbconnection.Companies.FirstOrDefault(a => a.CompanyID == CurrentlySelectedCompany.CompanyID);
                            var I = Dbconnection.Individuals.FirstOrDefault(a => a.IndividualID == CC.IndividualID);

                            // call Remove method from navigation property for any instance
                            C.Individuals.Remove(I);

                            ////saves all above operations within one transaction
                            Dbconnection.SaveChanges();

                            //commit transaction
                            dbTran.Commit();
                            CurrentlySelectedCompany.Individuals.Remove(CCFromCache);
                            this.refreshCompanyContacts();
                        }
                        catch (Exception ex)
                        {
                            if (ex is DbEntityValidationException)
                            {
                                foreach (DbEntityValidationResult entityErr in ((DbEntityValidationException)ex).EntityValidationErrors)
                                {
                                    foreach (DbValidationError error in entityErr.ValidationErrors)
                                    {
                                        MessageBox.Show(error.ErrorMessage, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show(ex.Message, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            //Rollback transaction if exception occurs
                            dbTran.Rollback();
                        }
                    }
                };
            }
        }
Exemple #10
0
        private void btnUpdateContact_Click(object sender, EventArgs e)
        {
            if (companyContactsBindingSource.Count > 0)
            {
                CompanyContacts CC          = (CompanyContacts)companyContactsBindingSource.Current;
                Individual      CCFromCache = CurrentlySelectedCompany.Individuals.Where(a => a.IndividualID == CC.IndividualID).First();

                using (frmContactsAddUpdateContacts frm = new frmContactsAddUpdateContacts(CC.IndividualID, CCFromCache))
                {
                    frm.ShowDialog();
                    this.refreshCompanyContacts();
                }
            }
        }
        private void Child_Update(CompanyContact companyContact, CompanyContacts entityContact)
        {
            using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                CompanyContactPhones newContactPhone = new CompanyContactPhones();
                newContactPhone.CompanyContactPhoneId = ReadProperty(CompanyContactPhoneIdProperty);
                newContactPhone.EntityKey             = new System.Data.EntityKey("RolodexEntities.CompanyContactPhones", "CompanyContactPhoneId", ReadProperty(CompanyContactPhoneIdProperty));
                manager.ObjectContext.Attach(newContactPhone);
                entityContact.CompanyContactPhones.Attach(newContactPhone);

                newContactPhone.FaxNumber   = ReadProperty(FaxNumberProperty);
                newContactPhone.PhoneNumber = ReadProperty(PhoneNumberProperty);
            }
        }
 private void Child_DeleteSelf(CompanyContact companyContact, CompanyContacts entityContact)
 {
     if (!this.IsNew)
     {
         using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             CompanyContactPhones deleted = new CompanyContactPhones();
             deleted.CompanyContactPhoneId = ReadProperty(CompanyContactPhoneIdProperty);
             deleted.EntityKey             = new System.Data.EntityKey("RolodexEntities.CompanyContactPhones", "CompanyContactPhoneId", deleted.CompanyContactPhoneId);
             manager.ObjectContext.Attach(deleted);
             entityContact.CompanyContactPhones.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
         }
     }
 }
Exemple #13
0
        private void btnRemoveStudentClientInfo_Click(object sender, EventArgs e)
        {
            using (var Dbconnection = new MCDEntities())
            {
                using (System.Data.Entity.DbContextTransaction dbTran = Dbconnection.Database.BeginTransaction())
                {
                    try
                    {
                        //CRUD Operations
                        CompanyContacts CC          = (CompanyContacts)companyContactsBindingSource.Current;
                        Individual      CCFromCache = CurrentlySelectedCompany.Individuals.Where(a => a.IndividualID == CC.IndividualID).First();

                        CompanyContactDetails CD          = (CompanyContactDetails)companyContactsDetailsBindingSource.Current;
                        ContactDetail         CDFromCache = CCFromCache.ContactDetails.Where(a => a.ContactDetailID == CD.ContactDetailID).First();
                        Dbconnection.ContactDetails.Attach(CDFromCache);
                        Dbconnection.ContactDetails.Remove(CDFromCache);
                        ////saves all above operations within one transaction
                        Dbconnection.SaveChanges();

                        //commit transaction
                        dbTran.Commit();

                        CCFromCache.ContactDetails.Remove(CDFromCache);
                        this.refreshCompanyContactsDetails();
                    }
                    catch (Exception ex)
                    {
                        if (ex is DbEntityValidationException)
                        {
                            foreach (DbEntityValidationResult entityErr in ((DbEntityValidationException)ex).EntityValidationErrors)
                            {
                                foreach (DbValidationError error in entityErr.ValidationErrors)
                                {
                                    MessageBox.Show(error.ErrorMessage, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show(ex.Message, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        //Rollback transaction if exception occurs
                        dbTran.Rollback();
                    }
                }
            };
        }
Exemple #14
0
 private void Child_DeleteSelf(Company company, Companies entityCompany)
 {
     if (!IsNew)
     {
         using (var manager =
                    ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             var deleted = new CompanyContacts();
             deleted.CompanyContactId = ReadProperty(CompanyContactIdProperty);
             deleted.EntityKey        = new System.Data.EntityKey("RolodexEntities.CompanyContacts", "CompanyContactId",
                                                                  deleted.CompanyContactId);
             manager.ObjectContext.Attach(deleted);
             entityCompany.CompanyContacts.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
         }
     }
 }
 private void Child_Insert(CompanyContact companyContact, CompanyContacts entityContact)
 {
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         LoadProperty(CompanyContactIdProperty, companyContact.CompanyContactId);
         CompanyContactPhones newContactPhone = new CompanyContactPhones();
         newContactPhone.FaxNumber       = ReadProperty(FaxNumberProperty);
         newContactPhone.PhoneNumber     = ReadProperty(PhoneNumberProperty);
         newContactPhone.CompanyContacts = entityContact;
         manager.ObjectContext.AddToCompanyContactPhones(newContactPhone);
         newContactPhone.PropertyChanged += newContactPhone_PropertyChanged;
         if (ReadProperty(CompanyContactIdProperty) == 0)
         {
             entityContact.PropertyChanged += entityContact_PropertyChanged;
         }
     }
 }
Exemple #16
0
 private void refreshCompanyContactsDetails()
 {
     using (var Dbconnection = new MCDEntities())
     {
         CompanyContacts SelectedConact = (CompanyContacts)companyContactsBindingSource.Current;
         companyContactsDetailsBindingSource.DataSource = new CustomSortableBindingList <CompanyContactDetails>(
             (from a in CurrentlySelectedCompany.Individuals
              from b in a.ContactDetails
              where a.IndividualID == SelectedConact.IndividualID
              select new CompanyContactDetails()
         {
             ContactDetailID = b.ContactDetailID,
             ContactDetailValue = b.ContactDetailValue,
             ContactType = b.LookupContactType.ContactType,
             ContactTypeID = b.ContactTypeID
         }
             ).ToList <CompanyContactDetails>());
     };
 }
Exemple #17
0
        private void btnUpdateContactDetials_Click(object sender, EventArgs e)
        {
            if (this.companyContactsBindingSource.Count > 0)
            {
                CompanyContacts CC          = (CompanyContacts)companyContactsBindingSource.Current;
                Individual      CCFromCache = CurrentlySelectedCompany.Individuals.Where(a => a.IndividualID == CC.IndividualID).First();

                CompanyContactDetails CD          = (CompanyContactDetails)companyContactsDetailsBindingSource.Current;
                ContactDetail         CDFromCache = CCFromCache.ContactDetails.Where(a => a.ContactDetailID == CD.ContactDetailID).First();
                using (frmAddUpdateContactDetails frm = new frmAddUpdateContactDetails(CDFromCache.ContactDetailID))
                {
                    frm.CurrentDetail = CDFromCache;
                    frm.ShowDialog();

                    if (frm.CurrentDetail != null)
                    {
                        CDFromCache.ContactDetailValue = frm.CurrentDetail.ContactDetailValue;
                    }
                    refreshCompanyContactsDetails();
                }
            }
        }
        public ActionResult AddEditCompanyContacts(CompanyContacts companyContacts)
        {
            if (ProjectSession.AdminRoleID != 3)
            {
                SuccessResult <AbstractCompanyContacts> result = null;
                result = abstractCompanyContactsServices.CompanyContactsUpsert(companyContacts);
                if (result.Code == 200 && result.Item != null)
                {
                    TempData["openPopup"] = CommonHelper.ShowAlertMessageToastr(MessageType.success.ToString(), result.Message);
                }
                else
                {
                    TempData["openPopup"] = CommonHelper.ShowAlertMessageToastr(MessageType.warning.ToString(), result.Message);
                }
            }
            else
            {
                TempData["openPopup"] = CommonHelper.ShowAlertMessageToastr(MessageType.danger.ToString(), "This user does not have the right to add or edit.");
            }

            return(RedirectToAction(Actions.Index, Pages.Controllers.CompanyContacts));
        }
Exemple #19
0
        public void CreateCompanyContact(Guid companyId, Contact Contact)
        {
            if (companyId == Guid.Empty)
            {
                throw new ArgumentNullException(nameof(companyId));
            }

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

            //Contact.Id = Guid.NewGuid();

            Contact.CompanyId = companyId;
            _context.Contact.Add(Contact);

            //Add to to CompanyContacts assignments
            CompanyContacts companyContacts = new CompanyContacts();

            companyContacts.CompanyId = Contact.CompanyId;
            companyContacts.ContactId = Contact.Id;
            CreateCompanyContactsAssignment(companyContacts);
        }
Exemple #20
0
 public void AttachContacts(string phone, string email)
 {
     Contacts = new CompanyContacts(phone, email);
 }
 internal static CompanyContactPhoneList GetCompanyContactPhoneList(CompanyContacts contact)
 {
     return(DataPortal.FetchChild <CompanyContactPhoneList>(contact));
 }
Exemple #22
0
        private void btnAddContactInfo_Click(object sender, EventArgs e)
        {
            using (frmAddUpdateContactDetails frm = new frmAddUpdateContactDetails(0))
            {
                frm.ShowDialog();
                if (frm.CurrentDetail != null)
                {
                    CompanyContacts CC          = (CompanyContacts)companyContactsBindingSource.Current;
                    Individual      CCFromCache = CurrentlySelectedCompany.Individuals.Where(a => a.IndividualID == CC.IndividualID).First();

                    using (var Dbconnection = new MCDEntities())
                    {
                        using (System.Data.Entity.DbContextTransaction dbTran = Dbconnection.Database.BeginTransaction())
                        {
                            try
                            {
                                //CRUD Operations

                                /*
                                 * this steps follow to both entities
                                 *
                                 * 1 - create instance of entity with relative primary key
                                 *
                                 * 2 - add instance to context
                                 *
                                 * 3 - attach instance to context
                                 */

                                // 1
                                Individual I = new Individual {
                                    IndividualID = CC.IndividualID
                                };
                                // 2
                                Dbconnection.Individuals.Add(I);
                                // 3
                                Dbconnection.Individuals.Attach(I);

                                // 1
                                ContactDetail cd = new ContactDetail {
                                    ContactDetailID = frm.CurrentDetail.ContactDetailID
                                };
                                // 2
                                Dbconnection.ContactDetails.Add(cd);
                                // 3
                                Dbconnection.ContactDetails.Attach(cd);

                                // like previous method add instance to navigation property
                                I.ContactDetails.Add(cd);
                                ////saves all above operations within one transaction
                                Dbconnection.SaveChanges();

                                //commit transaction
                                dbTran.Commit();
                            }
                            catch (Exception ex)
                            {
                                if (ex is DbEntityValidationException)
                                {
                                    foreach (DbEntityValidationResult entityErr in ((DbEntityValidationException)ex).EntityValidationErrors)
                                    {
                                        foreach (DbValidationError error in entityErr.ValidationErrors)
                                        {
                                            MessageBox.Show(error.ErrorMessage, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                        }
                                    }
                                }
                                else
                                {
                                    MessageBox.Show(ex.Message, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                                //Rollback transaction if exception occurs
                                dbTran.Rollback();
                            }
                        }
                    };

                    using (var Dbconnection = new MCDEntities())
                    {
                        Dbconnection.ContactDetails.Attach(frm.CurrentDetail);
                        Dbconnection.Entry(frm.CurrentDetail).Reference(a => a.LookupContactType).Load();
                    };
                    CCFromCache.ContactDetails.Add(frm.CurrentDetail);
                    refreshCompanyContactsDetails();
                }
            }
        }
Exemple #23
0
 public Organization AttachContacts(CompanyContacts companyContacts)
 {
     Contacts = companyContacts;
     return(this);
 }