示例#1
0
    private Address CreatePostalAddressFromFields()
    {
        var address = new Address()
        {
            Address1 = txtPostalAddress1.Text,
            Address2 = txtPostalAddress2.Text,
            Suburb   = txtPostalSuburb.Text,
            Postcode = txtPostalPostcode.Text,
            State    = txtPostalState.Text
        };

        if (AddressManager.AddressExists(address))
        {
            Address currentAddress =
                AddressManager.GetAddressByDetails(address.Address1, address.Address2, address.Suburb, address.Postcode, address.State);
            address.Id = currentAddress.Id;
        }

        if (string.IsNullOrEmpty(address.Address1))
        {
            return(null);
        }

        return(address);
    }
示例#2
0
        public static Person CreatePerson(User newUser, Person newPerson)
        {
            if (newUser == null)
            {
                throw new ArgumentNullException("user");
            }
            if (newPerson == null)
            {
                throw new ArgumentNullException("address");
            }
            if (string.IsNullOrEmpty(newPerson.FirstName))
            {
                throw new ArgumentNullException("firstName");
            }
            if (string.IsNullOrEmpty(newPerson.LastName))
            {
                throw new ArgumentNullException("lastName");
            }

            if (string.IsNullOrEmpty(newPerson.Address.Id))
            {
                if (string.IsNullOrEmpty(newPerson.Address.Address1))
                {
                    newPerson.Address.Address1 = "-";
                }
                AddressManager.CreateAddress(newPerson.Address);
                newPerson.Address = AddressManager.GetAddressByDetails(newPerson.Address.Address1, newPerson.Address.Address2, newPerson.Address.Suburb,
                                                                       newPerson.Address.Postcode, newPerson.Address.State);
            }

            Person person = new Person();

            person.Address     = newPerson.Address;
            person.Email       = newPerson.Email;
            person.FirstName   = newPerson.FirstName;
            person.LastName    = newPerson.LastName;
            person.PhoneNumber = newPerson.PhoneNumber;
            person.Position    = newPerson.Position;
            person.WorkFax     = newPerson.WorkFax;
            person.WorkMobile  = newPerson.WorkMobile;
            person.WorkPhone   = newPerson.WorkPhone;

            Provider.CreatePerson(person, newUser);

            return(GetPersonByUserName(newUser.Name));
        }
示例#3
0
        public static void CreatePerson(string lastName, string firstName, Address address)
        {
            if (string.IsNullOrEmpty(lastName))
            {
                throw new ArgumentNullException("lastName");
            }
            if (string.IsNullOrEmpty(firstName))
            {
                throw new ArgumentNullException("firstName");
            }
            if (address == null)
            {
                throw new ArgumentNullException("address");
            }

            if (string.IsNullOrEmpty(address.Id))
            {
                AddressManager.CreateAddress(address);
                address = AddressManager.GetAddressByDetails(address.Address1, address.Address2, address.Suburb,
                                                             address.Postcode, address.State);
            }

            var person = new Person();

            person.FirstName = firstName;
            person.LastName  = lastName;
            person.Address   = address;

            // todo figure out a better default username.
            string         defaultName    = firstName + lastName;
            MembershipUser membershipUser = System.Web.Security.Membership.CreateUser(defaultName, defaultName);

            if (membershipUser.ProviderUserKey != null)
            {
                User user = MembershipManager.GetUser(membershipUser.ProviderUserKey.ToString());
                Provider.CreatePerson(person, user);
            }
        }
        public override void CreateSite(Site site)
        {
            if (site.Region == null)
            {
                throw new ArgumentNullException("site", "Region is null");
            }
            if (site.SiteType == null)
            {
                throw new ArgumentNullException("site", "SiteType is null");
            }
            if (string.IsNullOrEmpty(site.Name))
            {
                throw new ProviderException("Site name cannot be empty or null.");
            }
            if (site.Name.IndexOf(',') > 0)
            {
                throw new ArgumentException("Site names cannot contain commas.");
            }
            if (GetSiteByName(site.Name) != null)
            {
                throw new ProviderException("Site name already exists.");
            }

            using (var transaction = new TransactionScope(_configuration))
            {
                if (!RegionExists(site.Region))
                {
                    CreateRegion(site.Region);
                }
                else
                {
                    site.Region = GetRegionByName(site.Region.Name);
                }

                if (!SiteTypeExists(site.SiteType))
                {
                    CreateSiteType(site.SiteType);
                }
                else
                {
                    site.SiteType = GetSiteTypeByName(site.SiteType.Name);
                }

                //if (site.PhysicalAddress == null || string.IsNullOrEmpty(site.PhysicalAddress.Address1))
                //    site.PhysicalAddress = new Address.Address();
                //if (site.PostalAddress == null || string.IsNullOrEmpty(site.PostalAddress.Address1))
                //    site.PostalAddress = new Address.Address();
                if (site.PhysicalAddress != null)
                {
                    if (string.IsNullOrEmpty(site.PhysicalAddress.Id))
                    {
                        if (!string.IsNullOrEmpty(site.PhysicalAddress.Address1))
                        {
                            Address currentAddress = AddressManager.GetAddressByDetails(site.PhysicalAddress.Address1,
                                                                                        site.PhysicalAddress.Address2,
                                                                                        site.PhysicalAddress.Suburb,
                                                                                        site.PhysicalAddress.Postcode,
                                                                                        site.PhysicalAddress.State);
                            if (currentAddress == null)
                            {
                                AddressManager.CreateAddress(site.PhysicalAddress);
                            }
                            else
                            {
                                site.PhysicalAddress = currentAddress;
                            }
                        }
                    }
                }
                if (site.PostalAddress != null)
                {
                    if (string.IsNullOrEmpty(site.PostalAddress.Id))
                    {
                        if (!string.IsNullOrEmpty(site.PostalAddress.Address1))
                        {
                            Address currentAddress = AddressManager.GetAddressByDetails(site.PostalAddress.Address1,
                                                                                        site.PostalAddress.Address2,
                                                                                        site.PostalAddress.Suburb,
                                                                                        site.PostalAddress.Postcode,
                                                                                        site.PostalAddress.State);
                            if (currentAddress == null)
                            {
                                AddressManager.CreateAddress(site.PostalAddress);
                            }
                            else
                            {
                                site.PostalAddress = currentAddress;
                            }
                        }
                    }
                }

                var ptDs = new SiteDataStore(transaction);
                ptDs.Insert(site);
                transaction.Commit();
            }
        }