public void UpdateProcedureType(ProcedureType procType, ProcedureTypeDetail detail, IPersistenceContext context) { procType.Id = detail.Id; procType.Name = detail.Name; procType.BaseType = detail.CustomProcedurePlan && detail.BaseType != null ? context.Load <ProcedureType>(detail.BaseType.ProcedureTypeRef, EntityLoadFlags.Proxy) : null; procType.DefaultDuration = detail.DefaultDuration; procType.Deactivated = detail.Deactivated; try { if (detail.CustomProcedurePlan) { procType.Plan = new ProcedurePlan(detail.PlanXml); } else { var modality = context.Load <Modality>(detail.DefaultModality.ModalityRef); procType.Plan = ProcedurePlan.CreateDefaultPlan(detail.Name, modality); } } catch (XmlException e) { throw new RequestValidationException(string.Format("Procedure plan XML is invalid: {0}", e.Message)); } }
/// <summary> /// Called by the host to initialize the application component. /// </summary> public override void Start() { Platform.GetService <IProcedureTypeAdminService>( service => { var formDataResponse = service.LoadProcedureTypeEditorFormData(new LoadProcedureTypeEditorFormDataRequest()); _modalityChoices = formDataResponse.ModalityChoices; if (_isNew) { _procedureTypeDetail = new ProcedureTypeDetail(); } else { var response = service.LoadProcedureTypeForEdit(new LoadProcedureTypeForEditRequest(_procedureTypeRef)); _procedureTypeDetail = response.ProcedureType; } }); base.Start(); }
/// <summary> /// Called to handle the "toggle activation" action, if supported /// </summary> /// <param name="items">A list of items to edit.</param> /// <param name="editedItems">The list of items that were edited.</param> /// <returns>True if items were edited, false otherwise.</returns> protected override bool UpdateItemsActivation(IList <ProcedureTypeSummary> items, out IList <ProcedureTypeSummary> editedItems) { List <ProcedureTypeSummary> results = new List <ProcedureTypeSummary>(); foreach (ProcedureTypeSummary item in items) { Platform.GetService <IProcedureTypeAdminService>( delegate(IProcedureTypeAdminService service) { ProcedureTypeDetail detail = service.LoadProcedureTypeForEdit( new LoadProcedureTypeForEditRequest(item.ProcedureTypeRef)).ProcedureType; detail.Deactivated = !detail.Deactivated; ProcedureTypeSummary summary = service.UpdateProcedureType( new UpdateProcedureTypeRequest(detail)).ProcedureType; results.Add(summary); }); } editedItems = results; return(true); }
public AddProcedureTypeRequest(ProcedureTypeDetail detail) { this.ProcedureType = detail; }
public LoadProcedureTypeForEditResponse(ProcedureTypeDetail detail) { this.ProcedureType = detail; }
public UpdateProcedureTypeRequest(ProcedureTypeDetail detail) { this.ProcedureType = detail; }