private static void CancelOrderHelper(Order order, OrderCancelInfo info) { var operation = new CancelOrDiscontinueOrderOperation(); operation.Execute(order, info); }
public bool CanCancelOrder(WorklistItemKey itemKey) { if (!Thread.CurrentPrincipal.IsInRole(AuthorityTokens.Workflow.Order.Cancel)) return false; // the worklist item may represent a patient without an order, // in which case there is no order to cancel if (itemKey.OrderRef == null) return false; var order = this.PersistenceContext.GetBroker<IOrderBroker>().Load(itemKey.OrderRef); // cancel or discontinue var operation = new CancelOrDiscontinueOrderOperation(); return operation.CanExecute(order); }