Esempio n. 1
0
 /// <summary>
 ///     Allows you to populate the current product review object using a CatalogRoleDTO instance
 /// </summary>
 /// <param name="dto">An instance of the catalog role from the REST API</param>
 public void FromDto(CatalogRoleDTO dto)
 {
     CatalogRoleId = dto.CatalogRoleId;
     ReferenceId   = dto.ReferenceId;
     RoleName      = dto.RoleName;
     RoleType      = (CatalogRoleType)dto.RoleType;
 }
        public void CatalogRole_TestCreateAndFindAndDeleteByCategory()
        {
            //Create proxy
            var proxy = CreateApiProxy();

            //Create test category as prerequisites
            var category = CreateTestCategory();

            //Create CatalogRole
            var dto = new CatalogRoleDTO
            {
                ReferenceId = new Guid(category.Bvin),
                RoleName    = "RoleCat",
                RoleType    = CatalogRoleTypeDTO.CategoryRole
            };
            var res = proxy.CatalogRoleCreate(dto);

            CheckErrors(res);
            var roleDto = res.Content;

            Assert.IsNotNull(roleDto);


            //Find CatalogRole
            var actualDto = proxy.CatalogRoleFindByCategory(roleDto.ReferenceId.ToString())
                            .Content
                            .FirstOrDefault();

            Assert.AreEqual(roleDto.CatalogRoleId, actualDto.CatalogRoleId);
            Assert.AreEqual(roleDto.ReferenceId, actualDto.ReferenceId);
            Assert.AreEqual(roleDto.RoleName, actualDto.RoleName);
            Assert.AreEqual(roleDto.RoleType, actualDto.RoleType);

            //Delete CatalogRole
            var res2 = proxy.CatalogRoleDelete(roleDto.CatalogRoleId);

            CheckErrors(res2);
            Assert.IsTrue(res2.Content);

            //Remove test category
            RemoveTestCategory(proxy, category.Bvin);
        }
Esempio n. 3
0
        /// <summary>
        ///     Allows the REST API to create a catalog role. There is no update.
        /// </summary>
        /// <param name="parameters">Parameters passed in the URL of the REST API call. None are expected.</param>
        /// <param name="querystring">Name/value pairs from the REST API call querystring. This is not used in this method.</param>
        /// <param name="postdata">Serialized (JSON) version of the CatalogRoleDTO object</param>
        /// <returns>CatalogRoleDTO - Serialized (JSON) version of the catalog role</returns>
        public override string PostAction(string parameters, NameValueCollection querystring, string postdata)
        {
            var errors = new List <ApiError>();
            var data   = string.Empty;

            CatalogRoleDTO postedRole = null;

            try
            {
                postedRole = Json.ObjectFromJson <CatalogRoleDTO>(postdata);
            }
            catch (Exception ex)
            {
                return(JsonApiResponseException(ex));
            }

            var cRole = new CatalogRole();

            cRole.FromDto(postedRole);

            HccApp.CatalogServices.CatalogRoles.Create(cRole);

            return(JsonApiResponse(cRole.ToDto()));
        }