public SingleObjectModel ProcessesCheckList(string projectUID) { try { var project = Project.Parse(projectUID); FixedList <ProjectProcess> result = ModelingServices.ProcessesCheckList(project); return(new SingleObjectModel(this.Request, result.ToResponse(), typeof(WhatIfResult).FullName)); } catch (Exception e) { throw base.CreateHttpException(e); } }
public SingleObjectModel WhatIfReactivated(string projectUID, string activityUID) { try { var project = Project.Parse(projectUID); Activity activity = project.GetActivity(activityUID); WhatIfResult result = ModelingServices.WhatIfReactivated(activity); return(new SingleObjectModel(this.Request, result.ToResponse(), typeof(WhatIfResult).FullName)); } catch (Exception e) { throw base.CreateHttpException(e); } }
public SingleObjectModel WhatIfCreatedFromEvent(string projectUID, [FromBody] object body) { try { base.RequireBody(body); var bodyAsJson = JsonObject.Parse(body); var activityModel = bodyAsJson.Get <Activity>("activityTemplateUID"); var eventDate = bodyAsJson.Get <DateTime>("eventDate", DateTime.Today); var project = Project.Parse(projectUID); WhatIfResult result = ModelingServices.WhatIfCreatedFromEvent(activityModel, project, eventDate); return(new SingleObjectModel(this.Request, result.ToResponse(), typeof(WhatIfResult).FullName)); } catch (Exception e) { throw base.CreateHttpException(e); } }
public SingleObjectModel WhatIfCompleted(string projectUID, string activityUID, [FromBody] object body) { try { base.RequireBody(body); var bodyAsJson = JsonObject.Parse(body); var project = Project.Parse(projectUID); Activity activity = project.GetActivity(activityUID); DateTime completedDate = bodyAsJson.Get <DateTime>("completedDate", DateTime.Today); WhatIfResult result = ModelingServices.WhatIfCompleted(activity, completedDate, true); return(new SingleObjectModel(this.Request, result.ToResponse(), typeof(WhatIfResult).FullName)); } catch (Exception e) { throw base.CreateHttpException(e); } }
public SingleObjectModel UpdateAllProjectProcessesWithLastChanges(string projectUID) { try { var project = Project.Parse(projectUID); var result = ModelingServices.ProcessesCheckList(project); foreach (var process in result) { Activity startActivity = project.GetActivity(process.StartActivity.UID); var updater = new ProcessUpdater(startActivity); updater.UpdateWithLastProcessChanges(); } return(new SingleObjectModel(this.Request, result.ToResponse(), typeof(WhatIfResult).FullName)); } catch (Exception e) { throw base.CreateHttpException(e); } }