public EntityPackTS?ConstructFromEntity([Required, FromBody] EntityOperationRequest request) { var op = request.GetOperationSymbol(request.entity.GetType()); var entity = OperationLogic.ServiceConstructFrom(request.entity, op, request.ParseArgs(op)); return(entity == null ? null : SignumServer.GetEntityPack(entity)); }
public ActionResult <EntityPackTS> ExecuteEntity([Required, FromBody] EntityOperationRequest request) { var op = request.GetOperationSymbol(request.entity.GetType()); Entity entity; try { entity = OperationLogic.ServiceExecute(request.entity, op, request.ParseArgs(op)); } catch (IntegrityCheckException ex) { GraphExplorer.SetValidationErrors(GraphExplorer.FromRootVirtual(request.entity), ex); this.TryValidateModel(request, "request"); if (this.ModelState.IsValid) { throw; } return(BadRequest(this.ModelState)); } return(SignumServer.GetEntityPack(entity)); }
public void DeleteEntity([Required, FromBody] EntityOperationRequest request) { var op = request.GetOperationSymbol(request.entity.GetType()); OperationLogic.ServiceDelete(request.entity, op, request.ParseArgs(op)); }
public ActionResult <EntityPackWithIssues> SaveWorkflow([Required, FromBody] EntityOperationRequest request) { WorkflowEntity entity; List <WorkflowIssue> issuesContainer = new List <WorkflowIssue>(); try { entity = ((WorkflowEntity)request.entity).Execute(WorkflowOperation.Save, request.ParseArgs(WorkflowOperation.Save.Symbol).EmptyIfNull().And(issuesContainer).ToArray()); } catch (IntegrityCheckException ex) { GraphExplorer.SetValidationErrors(GraphExplorer.FromRoot(request.entity), ex); this.TryValidateModel(request, "request"); this.ModelState.AddModelError("workflowIssues", JsonSerializer.Serialize(issuesContainer, SignumServer.JsonSerializerOptions)); return(BadRequest(this.ModelState)); } return(new EntityPackWithIssues(SignumServer.GetEntityPack(entity), issuesContainer)); }