예제 #1
0
        public async Task <OrganizationDTO> Register(OrganizationTransferDTO dto)
        {
            var organizationEntity = DataContext.NetworkEntities.Add(new NetworkEntity {
                NetworkID = dto.NetworkID.Value, NetworkEntityID = dto.ID, EntityType = EntityType.Organization
            });
            await DataContext.SaveChangesAsync();

            Data.Organization organization = DataContext.Organizations.Add(new Data.Organization()
            {
                ID               = organizationEntity.ID,
                Name             = dto.Name,
                NetworkID        = dto.NetworkID.Value,
                Acronym          = dto.Acronym,
                ContactEmail     = dto.ContactEmail,
                ContactPhone     = dto.ContactPhone,
                ContactFirstName = dto.ContactFirstName,
                ContactLastName  = dto.ContactLastName
            });

            if (dto.ParentOrganizationID.HasValue)
            {
                organization.ParentOrganizationID = dto.ParentOrganizationID.Value;
            }

            await DataContext.SaveChangesAsync();

            if (dto.Metadata != null && dto.Metadata.Count() > 0)
            {
                IList <Data.OrganizationDomainData> metadata = new List <Data.OrganizationDomainData>();
                foreach (var meta in dto.Metadata)
                {
                    var orgMeta = new OrganizationDomainData()
                    {
                        OrganizationID = organization.ID,
                        DomainUseID    = meta.DomainUseID,
                        Value          = meta.Value,
                        SequenceNumber = meta.SequenceNumber,
                    };
                    if (meta.DomainReferenceID.HasValue)
                    {
                        orgMeta.DomainReferenceID = meta.DomainReferenceID.Value;
                    }
                    metadata.Add(orgMeta);
                }
                if (metadata.Count > 0)
                {
                    DataContext.DomainDatas.AddRange(metadata);
                }
                await DataContext.SaveChangesAsync();
            }

            return(organization.Map <Organization, OrganizationDTO>());
        }
예제 #2
0
        private void orgListControl_SelectionChanged(Data.Organization obj)
        {
            if (obj != null)
            {
                EquipmentLoadStrategy eququerycondition = new EquipmentLoadStrategy();
                eququerycondition.OrgName = obj.Name;

                BeOperationInvoker.Invoke <I_CO_IA_PlanDatabase>(channel =>
                {
                    equListControl.DataContext = channel.GetEquipmentsForOrg(obj.Guid);
                });
            }
        }