Esempio n. 1
0
        // POST api/<controller>
        public async Task <HttpResponseMessage> Post(JObject objData)
        {
            dynamic       jsonData         = objData;
            List <Reason> postReasons      = new List <Reason>();
            JArray        reasonsJsonArray = jsonData.reasons;
            JObject       issueJson        = jsonData.issue;
            Issue         toAddIssue       = issueJson.ToObject <Issue>();

            toAddIssue.State    = 1;
            toAddIssue.MSTeamId = jsonData.teamId.Value;
            foreach (var item in reasonsJsonArray)
            {
                var reason = item.ToObject <Reason>();
                reason.State = 1;
                if (!string.IsNullOrEmpty(reason.Name))
                {
                    postReasons.Add(reason);
                }
            }
            await IssuesService.InsertItemAsync(toAddIssue);

            foreach (var reason in postReasons)
            {
                reason.Issue = toAddIssue;
                await ReasonsService.InsertItemAsync(reason);
            }
            return(ToJson(new {
                issueId = toAddIssue.Id
            }));
        }
Esempio n. 2
0
        public async Task <HttpResponseMessage> Get(int issueId, int state)
        {
            var reasonList = await ReasonsService.GetItemsAsync(state, issueId);

            var result = reasonList.Select(reason => reason.ToJson()).ToArray();

            return(ToJson(result));
        }
Esempio n. 3
0
        public async Task <HttpResponseMessage> GetReasonsByMetricList(int metricId)
        {
            var reasonList = await ReasonsService.GetReasonsByMetricIdAsync(metricId);

            var result = reasonList.Select(reason => reason.ToJson()).ToArray();

            return(ToJson(result));
        }
Esempio n. 4
0
        public async Task <HttpResponseMessage> UpdateReasonStatus(int id)
        {
            await ReasonsService.UpdateReasonStatus(id);

            return(ToJson(new
            {
                issueId = id
            }));
        }
Esempio n. 5
0
        // POST api/<controller>
        public async Task <HttpResponseMessage> Post(JObject objData)
        {
            dynamic jsonData          = objData;
            JArray  issueMetrics      = jsonData.issueMetrics;
            var     toAddIssueMetrics = issueMetrics.Select(im => im.ToObject <IssueMetric>()).ToList();

            JArray reasonMetricArrays = jsonData.reasonMetrics;
            var    toAddReasonMetrics = reasonMetricArrays.Select(rmArray => {
                return(rmArray.Select(rm => rm.ToObject <ReasonMetric>()).ToList());
            }).ToList();

            await IssuesService.UpdateItemAsync(toAddIssueMetrics.First().Issue);

            toAddIssueMetrics.ForEach(async issueMetric =>
            {
                if (issueMetric.MetricValues.HasValue)
                {
                    if (issueMetric.Id == 0)
                    {
                        await IssueMetricsService.InsertItemAsync(issueMetric);
                    }
                    else
                    {
                        await IssueMetricsService.UpdateItemAsync(issueMetric);
                    }
                }
            });

            toAddReasonMetrics.ForEach(async reasonMetricList =>
            {
                await ReasonsService.UpdateItemAsync(reasonMetricList.First().Reason);
            });


            toAddReasonMetrics.ForEach(reasonMetricList =>
            {
                reasonMetricList.ForEach(async reasonMetric =>
                {
                    if (reasonMetric.ReasonMetricValues.HasValue)
                    {
                        if (reasonMetric.Id == 0)
                        {
                            await ReasonMetricsService.InsertItemAsync(reasonMetric);
                        }
                        else
                        {
                            await ReasonMetricsService.UpdateItemAsync(reasonMetric);
                        }
                    }
                });
            });

            return(ToJson(new
            {
                success = true
            }));
        }
Esempio n. 6
0
        public async Task <HttpResponseMessage> Delete(int id)
        {
            await ReasonsService.DeleteReasonAndReasonValuesAsync(id);

            return(ToJson(new
            {
                issueId = id
            }));
        }
Esempio n. 7
0
        public async Task <HttpResponseMessage> Post(JObject objData)
        {
            dynamic jsonData    = objData;
            JObject reason      = jsonData.reason;
            var     toAddReason = reason.ToObject <Reason>();
            await ReasonsService.InsertItemAsync(toAddReason);

            return(ToJson(new
            {
                reasonId = toAddReason.Id
            }));
        }
Esempio n. 8
0
        public async Task <HttpResponseMessage> EditReason(JObject objData)
        {
            dynamic jsonData     = objData;
            JObject reason       = jsonData.reason;
            var     toEditReason = reason.ToObject <Reason>();
            await ReasonsService.UpdateItemAsync(toEditReason);

            return(ToJson(new
            {
                issueId = toEditReason.Id
            }));
        }
Esempio n. 9
0
        public async Task <HttpResponseMessage> Get(int id)
        {
            var reason = await ReasonsService.GetReasonById(id);

            return(ToJson(reason.ToJson()));
        }