public ReportingModel GetReporting(GetNetworkRequestModel model) { var nodes = new List <NodeModel>(); var rels = new List <Relation>(); var ownerName = ""; var storyName = ""; var img = ""; using (var dbContext = new MomentsEntities()) { var story = dbContext.Stories.FirstOrDefault(sto => sto.Id.ToString() == model.StoryId); if (story != null) { storyName = story.Name; img = story.Path; var bunda = dbContext.UserProfiles.FirstOrDefault(user => user.Id == story.CreatedBy); if (bunda != null) { ownerName = bunda.FirstName + " " + bunda.LastName; } } var allNodes = dbContext.Nodes.Where(node => node.StoryId.ToString() == model.StoryId).ToList(); if (allNodes != null && allNodes.Any()) { foreach (var item in allNodes) { var n_ = NodeMapper(item); var author = GetUserByProfileId(item.CreatedBy.ToString()); if (author != null) { n_.NodeAuthor = author.FirstName + " " + author.LastName; n_.label = n_.label; } nodes.Add(n_); if (item.ParentId != 0) { rels.Add(new Relation { from = item.ParentId.ToString(), to = item.Id.ToString(), color = "#6c757d" }); } } } } return(new ReportingModel { Nodes = nodes, Relation = rels, Owner = ownerName, Image = img, StoryName = storyName }); }
public ActionResult GetNetwrok(GetNetworkRequestModel request) { var service = new MomentDAL(); var dataModel = service.GetReporting(request); if (dataModel.Nodes.Any()) { foreach (var item in dataModel.Nodes) { item.image = GetImagePath(item.label, "X", item.id, ".png", Request, Server); } } return(Json(dataModel, JsonRequestBehavior.AllowGet)); }