package com.ejie.ab63.service.procedimientos;

import java.util.List;
import java.util.Map;

import com.ejie.ab63.model.Establecimiento;
import com.ejie.ab63.model.inicio.InitForm;
import com.ejie.ab63.model.terceros.DatosDirecciones;

public interface ProcedureActions {

	/**
	 * Comprobacion de si se puede guadar el expediente
	 * 
	 * @param form
	 * @return
	 */
	Boolean isEnableSaveExpediente(InitForm form);

	/**
	 * Comprobacion de si se puede ejecutar la accion del procedimiento
	 * 
	 * @param form
	 * @return
	 */
	Boolean isEnableExecuteAction(InitForm form);

	Boolean isInspectionable(InitForm form);

	Boolean isEnableInspect(InitForm form);

	Boolean isEnableAccessCenso(InitForm form);

	Boolean isEnableAccessInspecciones(InitForm form);

	Boolean isEnableCreateDocs(InitForm form);

	Boolean isEnableShowUbicacionEstablecimiento(InitForm form);

	Boolean hasSecondButton(InitForm form);

	String getButtonsText(InitForm form);

	Map<String, String> executeAction(InitForm form);

	List<String> getPestanaConfig();

	Establecimiento findEstablecimiento(InitForm form);

	DatosDirecciones findDireccioneEstablecimiento(InitForm form);

	Boolean isCloseExpediente(InitForm form);

	Boolean hasProcedimientoInicioOficio(InitForm form);

}
