Java Code Examples for ims.icp.vo.PatientICPActionFullVo

The following are top voted examples for showing how to use ims.icp.vo.PatientICPActionFullVo. These examples are extracted from open source projects. You can vote up the examples you like and your votes will be used in our system to generate more good examples.
Example 1
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateUserAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the assessment controls
	form.lyrMain().tabPageAssessment().recbrStructuralAssessment().clear();

	form.lyrMain().tabPageAssessment().ccStrructuralAssessment().clearComponent();
	form.lyrMain().tabPageAssessment().authStructuredAssessment().setValue(null);
	form.lyrMain().tabPageAssessment().authStructuredAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction Vo or linked ICP Action must not be null.");

	// Populate record browser with instantiated user assessment
	populateUserAssessmentRecordBrowser(domain.listPatientAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedAssessment()));

	// Get the extended user assessment (instantiated) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientAssessment(domain.getPatientAssessment(form.lyrMain().tabPageAssessment().recbrStructuralAssessment().getValue()));

	// Display selected user assessment or display blank user assessment (instance)
	populateUserAssessmentInstanceControls(form.getLocalContext().getSelectedPatientAssessment(), patientICPAction.getAction().getLinkedAssessment());
}
 
Example 2
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateGraphicalAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the graphical assessment controls
	form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().clear();

	form.lyrMain().tabPageGraphicalAssessment().ccGraphicalAssessment().clear(false, true);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessment().setValue(null);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction VO or linked ICP Action must not be null");

	// Populate record browser with instantiated graphical assessment
	populateGraphicalRecordBrowser(domain.listPatientGraphicAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedGraphicAssessment()));

	// Get the extended user graphical assessment (instance) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientGraphicalAssessment(domain.getPatientAssessment(form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().getValue()));

	// Display selected user graphical assessment or display blank user
	// graphical assessment (instance)
	populateGraphicalAssessmentIstanceControls(form.getLocalContext().getSelectedPatientGraphicalAssessment(), patientICPAction.getAction().getLinkedGraphicAssessment());
}
 
Example 3
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateOrderTemplate(PatientICPActionFullVo patientICPAction)
{
	try
	{
		// Clear the order template controls
		form.lyrMain().tabPageForm().dynamicForm().clear();

		OrderEntryTemplateLiteVo template = patientICPAction.getAction().getLinkedOrderEntryTemplate();

		if (template != null)
		{
			Boolean readOnly = Boolean.FALSE.equals(form.getLocalContext().getUserHasEditRights());
			form.lyrMain().tabPageForm().dynamicForm().setReadOnly(readOnly);
			form.lyrMain().tabPageForm().dynamicForm().open(form.getForms().OCRR.SelectandOrder, new Object[] { template });
		}
	}
	catch (Exception exception)
	{
		// Treat any exceptions that might arise
		exception.printStackTrace();
		engine.showMessage("Error displaying linked form: " + exception.getMessage());
		return;
	}
}
 
Example 4
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
private void displayLinkedForms()
	{
		
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		//populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
//		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), false);

		// Show header for
		form.lyrMain().tabPageClinicDetails().setHeaderVisible(true);
	}
 
Example 5
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateLinkedActionsRecordBrowser(PatientICPActionFullVoCollection patientActionCollection)
{
	// Clear record browser
	form.lyrMain().tabPageClinicDetails().recbrLinkedActions().clear();

	if (patientActionCollection == null)
		return;

	for (int i = 0; i < patientActionCollection.size(); i++)
	{
		PatientICPActionFullVo patientAction = patientActionCollection.get(i);

		if (patientAction == null)
			continue;

		StringBuilder display = new StringBuilder();

		if (patientAction.getActionIsNotNull())
			display.append(patientAction.getAction().getName());

		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().newRow(patientAction, display.toString());
	}

	if (patientActionCollection.size() > 0)
		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().setValue(patientActionCollection.get(0));
}
 
Example 6
Project: AvoinApotti   File: Logic.java   Source Code and License 6 votes vote down vote up
@Override
protected void onlyrMainTabChanged(LayerBridge tab)
{
	boolean completedPatientICP = form.getLocalContext().getCurrentPatientICPIsNotNull() && form.getLocalContext().getCurrentPatientICP().getCompletedDateTimeIsNotNull();

	if (tab instanceof tabPageClinicDetailsContainer)
	{
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), !completedPatientICP);
	}
}
 
Example 7
Project: AvoinApotti   File: PatientICPImpl.java   Source Code and License 6 votes vote down vote up
public PatientICPActionFullVoCollection getLinkedPatientICPActions(PatientICPActionFullVo patientAction)
{
	if (patientAction == null || !patientAction.getActionIsNotNull() || !patientAction.getICPIsNotNull())
		return null;
	
	String hqlQuery = "select patientAction from PatientICPAction as patientAction, ICPAction as action where patientAction.iCP.id = :ICP_ID " +
			"and patientAction.action.id = action.clinicalDetailActions.id and action.id = :ACTION_ID order by patientAction.action.name";
	
	ArrayList<String> paramNames = new ArrayList<String>();
	ArrayList<Object> paramValues = new ArrayList<Object>();

	paramNames.add("ICP_ID");
	paramValues.add(patientAction.getICP().getID_PatientICP());
	
	paramNames.add("ACTION_ID");
	paramValues.add(patientAction.getAction().getID_ICPAction());
	
	
	return PatientICPActionFullVoAssembler.createPatientICPActionFullVoCollectionFromPatientICPAction(getDomainFactory().find(hqlQuery, paramNames, paramValues));
}
 
Example 8
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateUserAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the assessment controls
	form.lyrMain().tabPageAssessment().recbrStructuralAssessment().clear();

	form.lyrMain().tabPageAssessment().ccStrructuralAssessment().clearComponent();
	form.lyrMain().tabPageAssessment().authStructuredAssessment().setValue(null);
	form.lyrMain().tabPageAssessment().authStructuredAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction Vo or linked ICP Action must not be null.");

	// Populate record browser with instantiated user assessment
	populateUserAssessmentRecordBrowser(domain.listPatientAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedAssessment()));

	// Get the extended user assessment (instantiated) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientAssessment(domain.getPatientAssessment(form.lyrMain().tabPageAssessment().recbrStructuralAssessment().getValue()));

	// Display selected user assessment or display blank user assessment (instance)
	populateUserAssessmentInstanceControls(form.getLocalContext().getSelectedPatientAssessment(), patientICPAction.getAction().getLinkedAssessment());
}
 
Example 9
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateGraphicalAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the graphical assessment controls
	form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().clear();

	form.lyrMain().tabPageGraphicalAssessment().ccGraphicalAssessment().clear(false, true);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessment().setValue(null);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction VO or linked ICP Action must not be null");

	// Populate record browser with instantiated graphical assessment
	populateGraphicalRecordBrowser(domain.listPatientGraphicAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedGraphicAssessment()));

	// Get the extended user graphical assessment (instance) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientGraphicalAssessment(domain.getPatientAssessment(form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().getValue()));

	// Display selected user graphical assessment or display blank user
	// graphical assessment (instance)
	populateGraphicalAssessmentIstanceControls(form.getLocalContext().getSelectedPatientGraphicalAssessment(), patientICPAction.getAction().getLinkedGraphicAssessment());
}
 
Example 10
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateOrderTemplate(PatientICPActionFullVo patientICPAction)
{
	try
	{
		// Clear the order template controls
		form.lyrMain().tabPageForm().dynamicForm().clear();

		OrderEntryTemplateLiteVo template = patientICPAction.getAction().getLinkedOrderEntryTemplate();

		if (template != null)
		{
			Boolean readOnly = Boolean.FALSE.equals(form.getLocalContext().getUserHasEditRights());
			form.lyrMain().tabPageForm().dynamicForm().setReadOnly(readOnly);
			form.lyrMain().tabPageForm().dynamicForm().open(form.getForms().OCRR.SelectandOrder, new Object[] { template });
		}
	}
	catch (Exception exception)
	{
		// Treat any exceptions that might arise
		exception.printStackTrace();
		engine.showMessage("Error displaying linked form: " + exception.getMessage());
		return;
	}
}
 
Example 11
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void displayLinkedForms()
	{
		
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		//populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
//		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), false);

		// Show header for
		form.lyrMain().tabPageClinicDetails().setHeaderVisible(true);
	}
 
Example 12
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateLinkedActionsRecordBrowser(PatientICPActionFullVoCollection patientActionCollection)
{
	// Clear record browser
	form.lyrMain().tabPageClinicDetails().recbrLinkedActions().clear();

	if (patientActionCollection == null)
		return;

	for (int i = 0; i < patientActionCollection.size(); i++)
	{
		PatientICPActionFullVo patientAction = patientActionCollection.get(i);

		if (patientAction == null)
			continue;

		StringBuilder display = new StringBuilder();

		if (patientAction.getActionIsNotNull())
			display.append(patientAction.getAction().getName());

		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().newRow(patientAction, display.toString());
	}

	if (patientActionCollection.size() > 0)
		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().setValue(patientActionCollection.get(0));
}
 
Example 13
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
@Override
protected void onlyrMainTabChanged(LayerBridge tab)
{
	boolean completedPatientICP = form.getLocalContext().getCurrentPatientICPIsNotNull() && form.getLocalContext().getCurrentPatientICP().getCompletedDateTimeIsNotNull();

	if (tab instanceof tabPageClinicDetailsContainer)
	{
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), !completedPatientICP);
	}
}
 
Example 14
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 6 votes vote down vote up
public PatientICPActionFullVoCollection getLinkedPatientICPActions(PatientICPActionFullVo patientAction)
{
	if (patientAction == null || !patientAction.getActionIsNotNull() || !patientAction.getICPIsNotNull())
		return null;
	
	String hqlQuery = "select patientAction from PatientICPAction as patientAction, ICPAction as action where patientAction.iCP.id = :ICP_ID " +
			"and patientAction.action.id = action.clinicalDetailActions.id and action.id = :ACTION_ID order by patientAction.action.name";
	
	ArrayList<String> paramNames = new ArrayList<String>();
	ArrayList<Object> paramValues = new ArrayList<Object>();

	paramNames.add("ICP_ID");
	paramValues.add(patientAction.getICP().getID_PatientICP());
	
	paramNames.add("ACTION_ID");
	paramValues.add(patientAction.getAction().getID_ICPAction());
	
	
	return PatientICPActionFullVoAssembler.createPatientICPActionFullVoCollectionFromPatientICPAction(getDomainFactory().find(hqlQuery, paramNames, paramValues));
}
 
Example 15
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateUserAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the assessment controls
	form.lyrMain().tabPageAssessment().recbrStructuralAssessment().clear();

	form.lyrMain().tabPageAssessment().ccStrructuralAssessment().clearComponent();
	form.lyrMain().tabPageAssessment().authStructuredAssessment().setValue(null);
	form.lyrMain().tabPageAssessment().authStructuredAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction Vo or linked ICP Action must not be null.");

	// Populate record browser with instantiated user assessment
	populateUserAssessmentRecordBrowser(domain.listPatientAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedAssessment()));

	// Get the extended user assessment (instantiated) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientAssessment(domain.getPatientAssessment(form.lyrMain().tabPageAssessment().recbrStructuralAssessment().getValue()));

	// Display selected user assessment or display blank user assessment (instance)
	populateUserAssessmentInstanceControls(form.getLocalContext().getSelectedPatientAssessment(), patientICPAction.getAction().getLinkedAssessment());
}
 
Example 16
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateGraphicalAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the graphical assessment controls
	form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().clear();

	form.lyrMain().tabPageGraphicalAssessment().ccGraphicalAssessment().clear(false, true);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessment().setValue(null);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction VO or linked ICP Action must not be null");

	// Populate record browser with instantiated graphical assessment
	populateGraphicalRecordBrowser(domain.listPatientGraphicAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedGraphicAssessment()));

	// Get the extended user graphical assessment (instance) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientGraphicalAssessment(domain.getPatientAssessment(form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().getValue()));

	// Display selected user graphical assessment or display blank user
	// graphical assessment (instance)
	populateGraphicalAssessmentIstanceControls(form.getLocalContext().getSelectedPatientGraphicalAssessment(), patientICPAction.getAction().getLinkedGraphicAssessment());
}
 
Example 17
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateOrderTemplate(PatientICPActionFullVo patientICPAction)
{
	try
	{
		// Clear the order template controls
		form.lyrMain().tabPageForm().dynamicForm().clear();

		OrderEntryTemplateLiteVo template = patientICPAction.getAction().getLinkedOrderEntryTemplate();

		if (template != null)
		{
			Boolean readOnly = Boolean.FALSE.equals(form.getLocalContext().getUserHasEditRights());
			form.lyrMain().tabPageForm().dynamicForm().setReadOnly(readOnly);
			form.lyrMain().tabPageForm().dynamicForm().open(form.getForms().OCRR.SelectandOrder, new Object[] { template });
		}
	}
	catch (Exception exception)
	{
		// Treat any exceptions that might arise
		exception.printStackTrace();
		engine.showMessage("Error displaying linked form: " + exception.getMessage());
		return;
	}
}
 
Example 18
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void displayLinkedForms()
	{
		
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		//populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
//		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), false);

		// Show header for
		form.lyrMain().tabPageClinicDetails().setHeaderVisible(true);
	}
 
Example 19
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateLinkedActionsRecordBrowser(PatientICPActionFullVoCollection patientActionCollection)
{
	// Clear record browser
	form.lyrMain().tabPageClinicDetails().recbrLinkedActions().clear();

	if (patientActionCollection == null)
		return;

	for (int i = 0; i < patientActionCollection.size(); i++)
	{
		PatientICPActionFullVo patientAction = patientActionCollection.get(i);

		if (patientAction == null)
			continue;

		StringBuilder display = new StringBuilder();

		if (patientAction.getActionIsNotNull())
			display.append(patientAction.getAction().getName());

		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().newRow(patientAction, display.toString());
	}

	if (patientActionCollection.size() > 0)
		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().setValue(patientActionCollection.get(0));
}
 
Example 20
Project: openMAXIMS   File: Logic.java   Source Code and License 6 votes vote down vote up
@Override
protected void onlyrMainTabChanged(LayerBridge tab)
{
	boolean completedPatientICP = form.getLocalContext().getCurrentPatientICPIsNotNull() && form.getLocalContext().getCurrentPatientICP().getCompletedDateTimeIsNotNull();

	if (tab instanceof tabPageClinicDetailsContainer)
	{
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), !completedPatientICP);
	}
}
 
Example 21
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 6 votes vote down vote up
public PatientICPActionFullVoCollection getLinkedPatientICPActions(PatientICPActionFullVo patientAction)
{
	if (patientAction == null || !patientAction.getActionIsNotNull() || !patientAction.getICPIsNotNull())
		return null;
	
	String hqlQuery = "select patientAction from PatientICPAction as patientAction, ICPAction as action where patientAction.iCP.id = :ICP_ID " +
			"and patientAction.action.id = action.clinicalDetailActions.id and action.id = :ACTION_ID order by patientAction.action.name";
	
	ArrayList<String> paramNames = new ArrayList<String>();
	ArrayList<Object> paramValues = new ArrayList<Object>();

	paramNames.add("ICP_ID");
	paramValues.add(patientAction.getICP().getID_PatientICP());
	
	paramNames.add("ACTION_ID");
	paramValues.add(patientAction.getAction().getID_ICPAction());
	
	
	return PatientICPActionFullVoAssembler.createPatientICPActionFullVoCollectionFromPatientICPAction(getDomainFactory().find(hqlQuery, paramNames, paramValues));
}
 
Example 22
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateUserAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the assessment controls
	form.lyrMain().tabPageAssessment().recbrStructuralAssessment().clear();

	form.lyrMain().tabPageAssessment().ccStrructuralAssessment().clearComponent();
	form.lyrMain().tabPageAssessment().authStructuredAssessment().setValue(null);
	form.lyrMain().tabPageAssessment().authStructuredAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction Vo or linked ICP Action must not be null.");

	// Populate record browser with instantiated user assessment
	populateUserAssessmentRecordBrowser(domain.listPatientAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedAssessment()));

	// Get the extended user assessment (instantiated) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientAssessment(domain.getPatientAssessment(form.lyrMain().tabPageAssessment().recbrStructuralAssessment().getValue()));

	// Display selected user assessment or display blank user assessment (instance)
	populateUserAssessmentInstanceControls(form.getLocalContext().getSelectedPatientAssessment(), patientICPAction.getAction().getLinkedAssessment());
}
 
Example 23
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
/**
 * 
 */
private void populateGraphicalAssessments(PatientICPActionFullVo patientICPAction)
{
	// Clear the graphical assessment controls
	form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().clear();

	form.lyrMain().tabPageGraphicalAssessment().ccGraphicalAssessment().clear(false, true);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessment().setValue(null);
	form.lyrMain().tabPageGraphicalAssessment().authGraphicalAssessmentCompleted().setValue(null);

	// Check the Patient ICP Action parameter
	// Should never be null, throw a CodingRuntimeException
	// so that programmers know the code logic is off
	if (patientICPAction == null || !patientICPAction.getActionIsNotNull())
		throw new CodingRuntimeException("Logical ERROR - The PatientICPAction VO or linked ICP Action must not be null");

	// Populate record browser with instantiated graphical assessment
	populateGraphicalRecordBrowser(domain.listPatientGraphicAssessments(patientICPAction.getCareContext(), patientICPAction.getAction().getLinkedGraphicAssessment()));

	// Get the extended user graphical assessment (instance) selected (if any) in record browser
	form.getLocalContext().setSelectedPatientGraphicalAssessment(domain.getPatientAssessment(form.lyrMain().tabPageGraphicalAssessment().recbrGraphicalAssessment().getValue()));

	// Display selected user graphical assessment or display blank user
	// graphical assessment (instance)
	populateGraphicalAssessmentIstanceControls(form.getLocalContext().getSelectedPatientGraphicalAssessment(), patientICPAction.getAction().getLinkedGraphicAssessment());
}
 
Example 24
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateOrderTemplate(PatientICPActionFullVo patientICPAction)
{
	try
	{
		// Clear the order template controls
		form.lyrMain().tabPageForm().dynamicForm().clear();

		OrderEntryTemplateLiteVo template = patientICPAction.getAction().getLinkedOrderEntryTemplate();

		if (template != null)
		{
			Boolean readOnly = Boolean.FALSE.equals(form.getLocalContext().getUserHasEditRights());
			form.lyrMain().tabPageForm().dynamicForm().setReadOnly(readOnly);
			form.lyrMain().tabPageForm().dynamicForm().open(form.getForms().OCRR.SelectandOrder, new Object[] { template });
		}
	}
	catch (Exception exception)
	{
		// Treat any exceptions that might arise
		exception.printStackTrace();
		engine.showMessage("Error displaying linked form: " + exception.getMessage());
		return;
	}
}
 
Example 25
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
private void displayLinkedForms()
	{
		
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		//populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
//		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), false);

		// Show header for
		form.lyrMain().tabPageClinicDetails().setHeaderVisible(true);
	}
 
Example 26
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
private void populateLinkedActionsRecordBrowser(PatientICPActionFullVoCollection patientActionCollection)
{
	// Clear record browser
	form.lyrMain().tabPageClinicDetails().recbrLinkedActions().clear();

	if (patientActionCollection == null)
		return;

	for (int i = 0; i < patientActionCollection.size(); i++)
	{
		PatientICPActionFullVo patientAction = patientActionCollection.get(i);

		if (patientAction == null)
			continue;

		StringBuilder display = new StringBuilder();

		if (patientAction.getActionIsNotNull())
			display.append(patientAction.getAction().getName());

		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().newRow(patientAction, display.toString());
	}

	if (patientActionCollection.size() > 0)
		form.lyrMain().tabPageClinicDetails().recbrLinkedActions().setValue(patientActionCollection.get(0));
}
 
Example 27
Project: openmaxims-linux   File: Logic.java   Source Code and License 6 votes vote down vote up
@Override
protected void onlyrMainTabChanged(LayerBridge tab)
{
	boolean completedPatientICP = form.getLocalContext().getCurrentPatientICPIsNotNull() && form.getLocalContext().getCurrentPatientICP().getCompletedDateTimeIsNotNull();

	if (tab instanceof tabPageClinicDetailsContainer)
	{
		// Get linked actions
		PatientICPActionFullVo actionFull = domain.getPatientICPActionFull((PatientICPActionRefVo) form.lyrMain().tabPageActions().grdActions().getValue());

		// Populate record browser actions
		PatientICPActionFullVoCollection linkedPatientICPActions = domain.getLinkedPatientICPActions(actionFull);

		// Determine if there are linked actions to be displayed
		if (linkedPatientICPActions == null || linkedPatientICPActions.size() == 0)
		{
			form.lyrMain().tabPageClinicDetails().setHeaderVisible(false);
			return;
		}

		populateLinkedActionsRecordBrowser(linkedPatientICPActions);

		// Select one action
		form.lyrMain().tabPageClinicDetails().ccLinkedActionDetails().setValue(form.lyrMain().tabPageClinicDetails().recbrLinkedActions().getValue(), !completedPatientICP);
	}
}
 
Example 28
Project: openmaxims-linux   File: PatientICPImpl.java   Source Code and License 6 votes vote down vote up
public PatientICPActionFullVoCollection getLinkedPatientICPActions(PatientICPActionFullVo patientAction)
{
	if (patientAction == null || !patientAction.getActionIsNotNull() || !patientAction.getICPIsNotNull())
		return null;
	
	String hqlQuery = "select patientAction from PatientICPAction as patientAction, ICPAction as action where patientAction.iCP.id = :ICP_ID " +
			"and patientAction.action.id = action.clinicalDetailActions.id and action.id = :ACTION_ID order by patientAction.action.name";
	
	ArrayList<String> paramNames = new ArrayList<String>();
	ArrayList<Object> paramValues = new ArrayList<Object>();

	paramNames.add("ICP_ID");
	paramValues.add(patientAction.getICP().getID_PatientICP());
	
	paramNames.add("ACTION_ID");
	paramValues.add(patientAction.getAction().getID_ICPAction());
	
	
	return PatientICPActionFullVoAssembler.createPatientICPActionFullVoCollectionFromPatientICPAction(getDomainFactory().find(hqlQuery, paramNames, paramValues));
}
 
Example 29
Project: AvoinApotti   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public PatientICPActionFullVo getPatientICPActionFull(PatientICPActionRefVo patientICPActionRef)
{
	if (patientICPActionRef == null || !patientICPActionRef.getID_PatientICPActionIsNotNull())
		return null;
	
	return PatientICPActionFullVoAssembler.create((PatientICPAction) getDomainFactory().getDomainObject(PatientICPAction.class, patientICPActionRef.getID_PatientICPAction()));
}
 
Example 30
Project: AvoinApotti   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status, Boolean hasCountersigningRight) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	
	if (ICPActionStatus.MET.equals(status) || ICPActionStatus.NOT_MET.equals(status))
	{
		if (!Boolean.TRUE.equals(hasCountersigningRight) && Boolean.TRUE.equals(actionVo.getAction().getRequiresCounterSignature()))
		{
			actionVo.setRequiresCounterSigning(Boolean.TRUE);
		}
	}
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 31
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public PatientICPActionFullVo getPatientICPActionFull(PatientICPActionRefVo patientICPActionRef)
{
	if (patientICPActionRef == null || !patientICPActionRef.getID_PatientICPActionIsNotNull())
		return null;
	
	return PatientICPActionFullVoAssembler.create((PatientICPAction) getDomainFactory().getDomainObject(PatientICPAction.class, patientICPActionRef.getID_PatientICPAction()));
}
 
Example 32
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status, Boolean hasCountersigningRight) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	
	if (ICPActionStatus.MET.equals(status) || ICPActionStatus.NOT_MET.equals(status))
	{
		if (!Boolean.TRUE.equals(hasCountersigningRight) && Boolean.TRUE.equals(actionVo.getAction().getRequiresCounterSignature()))
		{
			actionVo.setRequiresCounterSigning(Boolean.TRUE);
		}
	}
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 33
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public PatientICPActionFullVo getPatientICPActionFull(PatientICPActionRefVo patientICPActionRef)
{
	if (patientICPActionRef == null || !patientICPActionRef.getID_PatientICPActionIsNotNull())
		return null;
	
	return PatientICPActionFullVoAssembler.create((PatientICPAction) getDomainFactory().getDomainObject(PatientICPAction.class, patientICPActionRef.getID_PatientICPAction()));
}
 
Example 34
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status, Boolean hasCountersigningRight) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	
	if (ICPActionStatus.MET.equals(status) || ICPActionStatus.NOT_MET.equals(status))
	{
		if (!Boolean.TRUE.equals(hasCountersigningRight) && Boolean.TRUE.equals(actionVo.getAction().getRequiresCounterSignature()))
		{
			actionVo.setRequiresCounterSigning(Boolean.TRUE);
		}
	}
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 35
Project: openmaxims-linux   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public PatientICPActionFullVo getPatientICPActionFull(PatientICPActionRefVo patientICPActionRef)
{
	if (patientICPActionRef == null || !patientICPActionRef.getID_PatientICPActionIsNotNull())
		return null;
	
	return PatientICPActionFullVoAssembler.create((PatientICPAction) getDomainFactory().getDomainObject(PatientICPAction.class, patientICPActionRef.getID_PatientICPAction()));
}
 
Example 36
Project: openmaxims-linux   File: PatientICPImpl.java   Source Code and License 5 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status, Boolean hasCountersigningRight) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	
	if (ICPActionStatus.MET.equals(status) || ICPActionStatus.NOT_MET.equals(status))
	{
		if (!Boolean.TRUE.equals(hasCountersigningRight) && Boolean.TRUE.equals(actionVo.getAction().getRequiresCounterSignature()))
		{
			actionVo.setRequiresCounterSigning(Boolean.TRUE);
		}
	}
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 37
Project: AvoinApotti   File: PatientICPImpl.java   Source Code and License 4 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 38
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 4 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 39
Project: openMAXIMS   File: PatientICPImpl.java   Source Code and License 4 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}
 
Example 40
Project: openmaxims-linux   File: PatientICPImpl.java   Source Code and License 4 votes vote down vote up
public void addActionStatus(PatientICPActionRefVo actionRef, ICPActionStatus status) throws DomainInterfaceException, StaleObjectException
{
	if(actionRef == null || actionRef.getID_PatientICPAction() == null)
		throw new CodingRuntimeException("PatientICPActionRefVo is null or has a null ID !");
	
	DomainFactory factory = getDomainFactory();
	
	PatientICPAction actionBo = (PatientICPAction) factory.loadDomainObject(PatientICPAction.class, actionRef.getID_PatientICPAction());
	
	PatientICPActionFullVo actionVo = PatientICPActionFullVoAssembler.create(actionBo);
	
	PatientICPActionStatusVo actionStatusVo = new PatientICPActionStatusVo();
	
	actionStatusVo.setStatusDate(new DateTime());
	actionStatusVo.setChangedBy(getSession().getUser() != null ? MemberOfStaffLiteVoAssembler.create((MemberOfStaff) getDomainFactory().getDomainObject(MemberOfStaff.class, getSession().getUser().getMosId())) : null);
	actionStatusVo.setStatus(status);
	
	actionVo.setCurrentStatus(actionStatusVo);
	actionVo.getStatusHistory().add(actionStatusVo);
	
	factory.save(PatientICPActionFullVoAssembler.extractPatientICPAction(factory, actionVo));
}