// 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 })); }
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)); }
public async Task <HttpResponseMessage> GetReasonsByMetricList(int metricId) { var reasonList = await ReasonsService.GetReasonsByMetricIdAsync(metricId); var result = reasonList.Select(reason => reason.ToJson()).ToArray(); return(ToJson(result)); }
public async Task <HttpResponseMessage> UpdateReasonStatus(int id) { await ReasonsService.UpdateReasonStatus(id); return(ToJson(new { issueId = id })); }
// 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 })); }
public async Task <HttpResponseMessage> Delete(int id) { await ReasonsService.DeleteReasonAndReasonValuesAsync(id); return(ToJson(new { issueId = id })); }
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 })); }
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 })); }
public async Task <HttpResponseMessage> Get(int id) { var reason = await ReasonsService.GetReasonById(id); return(ToJson(reason.ToJson())); }