Ejemplo n.º 1
0
        public void DeleteTagTest()
        {
            var requestSet = new TagSetRequest
                             (
                "TAG_TEST_DELETE"
                             );

            Console.WriteLine("Set Tag:" + requestSet.Tag);

            var clientSet   = new Client(_apiKey, _secretKey);
            var responseSet = clientSet.SetTag(requestSet);

            Assert.NotNull(responseSet);
            Assert.Greater(responseSet.RequestId, 0);

            var request = new TagDeleteRequest
                          (
                "TAG_TEST_DELETE"
                          );

            Console.WriteLine("Set Tag:" + requestSet.Tag);

            var client   = new Client(_apiKey, _secretKey);
            var response = client.DeleteTag(request);

            Assert.NotNull(response);
            Assert.Greater(response.RequestId, 0);
        }
        //

        public static List <Models.API.TagItem> GetTagSetItems(TagSetRequest request, int maxResults = 10)
        {
            var result   = new List <Models.API.TagItem>();
            var enumType = TranslateNewTargetTypeToOldTargetType(request.TargetType);
            var rawData  = workIT.Services.SearchServices.GetTagSet(request.SearchType, enumType, request.RecordId, maxResults);

            switch (rawData.Method?.ToLower() ?? "")
            {
            case "link":
                foreach (var item in rawData.EntityTagItems)
                {
                    result.Add(new Models.API.TagItem()
                    {
                        Label = item.TargetEntityName,
                        URL   = "/" + item.TargetEntityType.ToLower() + "/" + item.TargetEntityBaseId
                    });
                }
                break;

            case "direct":
                foreach (var item in rawData.Items)
                {
                    result.Add(new Models.API.TagItem()
                    {
                        Label = item.Label,
                        URL   = "/" + request.SearchType + "/" + request.RecordId
                    });
                }
                break;

            case "qaperformed":
                foreach (var item in rawData.QAItems)
                {
                    result.Add(new Models.API.TagItem()
                    {
                        Label = item.AgentToTargetRelationship + " " + item.TargetEntityName,    //TODO: Verify that this is the right combination
                        URL   = "/organization/" + item.TargetEntityBaseId                       //And this too
                    });
                }
                break;

            default: break;
            }

            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// set_tag
        /// </summary>
        /// <param name="request">set tag request parameter</param>
        /// <returns></returns>
        public TagSetResponse SetTag(TagSetRequest request)
        {
            var postStr = request.GeneratePostData(Apikey, SecretKey);

            var response = PostData(request.ServiceUrl, postStr);

            if (response == null)
            {
                return(null);
            }

            TagSetResponse result = null;

            try
            {
                result = JsonConvert.DeserializeObject <TagSetResponse>(response);
            }
            catch (Exception ex)
            {
                Debug.WriteLine("SetTag Error Response Deserialize Fail, May not valid json:" + ex.Message + " " + response);
            }
            return(result);
        }