public ActionResult <GroupScanResponse> Put(string groupId, [FromBody] GroupScanRequest value) { if (string.IsNullOrEmpty(groupId)) { return(BadRequest()); } var group = this.reports.PutGroup(groupId, value); return(new GroupScanResponse(group, this.config)); }
public GroupModel PutGroup(string groupId, GroupScanRequest request) { var reports = request.ScanRequests .Select(x => CreateReport(x)) .ToList(); var existing = GetGroupOrDefault(groupId); if (existing == null) { var group = _dataContext.Groups.Add(new GroupModel(groupId, reports)).Entity; _dataContext.SaveChanges(); return(group); } else { existing.GroupMeta = request.GroupMeta; existing.Reports = reports; _dataContext.SaveChanges(); return(existing); } }