コード例 #1
0
 public async Task AddUserOrganizationIdentifiers(int organizationId,
                                                  IdentifierDTO identifierDTO)
 {
     //var mapper = new UserOrganizationIdentifierMapper();
     //var userOrganizationIdentifier = mapper.Map(userOrganizationIdentifierDTO);
     //userOrganizationIdentifier.OrganizationId = organizationId;
     //Context.UserOrganizationIdentifiers.Add(userOrganizationIdentifier);
     await Context.SaveChangesAsync();
 }
コード例 #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ProjectDTO GetProjectById(string projectId)
        {
            ProjectDTO retVal        = new ProjectDTO();
            string     projectItemId = "";

            try
            {
                // gete project data
                DataSet ds = new ProjectDB(Utility.ConfigurationHelper.GPD_Connection).GetProjectById(projectId);

                if (ds != null && ds.Tables.Count > 4 && ds.Tables[0].Rows.Count > 0)
                {
                    //=====================================
                    #region Project
                    {
                        DataRow dr = ds.Tables[0].Rows[0];
                        retVal.Author                  = dr["AUTHOR"].ToString();
                        retVal.BuildingName            = dr["BUILDING_NAME"].ToString();
                        retVal.Client                  = dr["CLIENT"].ToString();
                        retVal.Filename                = dr["FILENAME"].ToString();
                        retVal.Name                    = dr["NAME"].ToString();
                        retVal.Number                  = dr["NUMBER"].ToString();
                        retVal.OrganizationDescription = dr["ORGANIZATION_DESCRIPTION"].ToString();
                        retVal.OrganizationName        = dr["ORGANIZATION_NAME"].ToString();
                        retVal.Status                  = dr["STATUS"].ToString();

                        retVal.Location = new LocationDTO()
                        {
                            Country      = dr["COUNTRY"].ToString(),
                            AddressLine1 = dr["ADDRESS_LINE_1"].ToString(),
                            AddressLine2 = dr["ADDRESS_LINE_2"].ToString(),
                            City         = dr["CITY"].ToString(),
                            State        = dr["STATE"].ToString(),
                            PostalCode   = dr["ZIP"].ToString()
                        };

                        retVal.Session = new SessionDTO()
                        {
                            Type        = dr["TYPE"].ToString(),
                            Platform    = dr["PLATFORM"].ToString(),
                            Application = new ApplicationDTO()
                            {
                                Build        = dr["APPLICATION_BUILD"].ToString(),
                                Name         = dr["APPLICATION_NAME"].ToString(),
                                PluginBuild  = dr["APPLICATION_PLUGIN_BUILD"].ToString(),
                                PluginSource = dr["APPLICATION_PLUGIN_SOURCE"].ToString(),
                                PluginName   = dr["APPLICATION_PLUGIN_NAME"].ToString(),
                                Version      = dr["APPLICATION_VERSION"].ToString(),
                                Type         = dr["APPLICATION_TYPE"].ToString(),
                                ClientIP     = dr["APPLICATION_CLIENT_IP"].ToString(),
                            },
                            UserInfo = new SessionUserInfoDTO()
                            {
                                Email     = dr["USER_INFO_EMAIL"].ToString(),
                                FirstName = dr["USER_INFO_FNAME"].ToString(),
                                LastName  = dr["USER_INFO_LNAME"].ToString()
                            }
                        };
                    }
                    #endregion

                    //=====================================
                    #region Identifier
                    if (ds.Tables[1].Rows.Count > 0)
                    {
                        retVal.Identifiers = new List <IdentifierDTO>();
                        foreach (DataRow dr in ds.Tables[1].Rows)
                        {
                            IdentifierDTO tempIdentifierDTO = new IdentifierDTO()
                            {
                                Identifier = dr["IDENTIFIER"].ToString(),
                                SystemName = dr["SYSTEM"].ToString()
                            };
                            retVal.Identifiers.Add(tempIdentifierDTO);
                        }
                    }
                    #endregion

                    //=====================================
                    #region Item
                    if (ds.Tables[2].Rows.Count > 0)
                    {
                        retVal.Items = new List <ItemDTO>();

                        foreach (DataRow dr in ds.Tables[2].Rows)
                        {
                            // get project-item-id
                            projectItemId = dr["project_item_id"].ToString();

                            #region Item
                            ItemDTO itemDTO = new ItemDTO()
                            {
                                Id           = int.Parse(dr["ITEM_ID"].ToString()),
                                Type         = dr["TYPE"].ToString(),
                                Currency     = dr["CURRENCY"].ToString(),
                                Family       = dr["FAMILY"].ToString(),
                                Quantity     = dr["QUANTITY"].ToString(),
                                QuantityUnit = dr["QUANTITY_UNIT"].ToString()
                            };
                            #endregion

                            #region Item-Product
                            itemDTO.Product = new ItemProductDTO()
                            {
                                Id           = dr["PRODUCT_ID"].ToString(),
                                URL          = dr["PRODUCT_URL"].ToString(),
                                Manufacturer = dr["PRODUCT_MANUFACTURER"].ToString(),
                                Model        = dr["PRODUCT_MODEL"].ToString(),
                                Name         = dr["PRODUCT_NAME"].ToString(),
                                ImageUrl     = dr["product_image_url"].ToString()
                            };
                            #endregion

                            #region Item-Materials
                            if (ds.Tables[3].Rows.Count > 0)
                            {
                                var drMaterials = ds.Tables[3].AsEnumerable()
                                                  .Where(i => i["project_item_id"].ToString().Equals(projectItemId));

                                if (drMaterials.Count() > 0)
                                {
                                    itemDTO.Materials = new List <MaterialDTO>();

                                    foreach (DataRow dataRow in drMaterials)
                                    {
                                        itemDTO.Materials.Add(
                                            new MaterialDTO()
                                        {
                                            Id   = dataRow["MATERIAL_ID"].ToString(),
                                            Type = new MaterialTypeDTO()
                                            {
                                                Name = dataRow["TYPE_NAME"].ToString(),
                                            },
                                            Product = new MaterialProductDTO()
                                            {
                                                Name         = dataRow["PRODUCT_NAME"].ToString(),
                                                Manufacturer = dataRow["PRODUCT_MANUFACTURER"].ToString(),
                                                Model        = dataRow["PRODUCT_MODEL"].ToString()
                                            }
                                        });
                                    }
                                }
                            }
                            #endregion Item-Materials

                            #region Item-Categories
                            if (ds.Tables[4].Rows.Count > 0)
                            {
                                var drCategories = ds.Tables[4].AsEnumerable()
                                                   .Where(i => i["PROJECT_ITEM_ID"].ToString().Equals(projectItemId));

                                if (drCategories.Count() > 0)
                                {
                                    itemDTO.Categories = new List <CategoryDTO>();

                                    foreach (DataRow drC in drCategories)
                                    {
                                        itemDTO.Categories.Add(
                                            new CategoryDTO()
                                        {
                                            Taxonomy = drC["TAXONOMY"].ToString(),
                                            Title    = drC["TITLE"].ToString()
                                        });
                                    }
                                }
                            }
                            #endregion Item-Categories

                            retVal.Items.Add(itemDTO);
                        }
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
                log.Error("Unable to get project by id: " + projectId, ex);
            }
            return(retVal);
        }