Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

/*
* GenericService.java
* Copyright (c) 2017 Veterans Affairs.
*/
package gov.va.oneconsult.seoc.api.service;

import java.util.Set;

import org.springframework.stereotype.Service;

import gov.va.oneconsult.seoc.api.model.BillingCode;
import gov.va.oneconsult.seoc.api.model.CategoryOfCare;
import gov.va.oneconsult.seoc.api.model.ClinicalService;
import gov.va.oneconsult.seoc.api.model.Hptc;
import gov.va.oneconsult.seoc.api.model.Qasp;
import gov.va.oneconsult.seoc.api.model.ServiceLine;
import gov.va.oneconsult.seoc.api.model.Status;

/**
* @author AbleVets
*/
@Service
public interface GenericService
{

/**
* Description:Get all CategoryOfCare
*
* @return Set<CategoryOfCare>
*/
public Set<CategoryOfCare> getAllCategoryOfCare();

/**
* Description:Get all ServiceLine
*
* @return Set<ServiceLine>
*/
public Set<ServiceLine> getAllServiceLine();

/**
* Description:Get all ClinicalService
*
* @return Set<ClinicalService>
*/
public Set<ClinicalService> getAllClinicalService();

/**
* Description:Get all ServiceLine by description by match
*
* @param description
* @return Set<ServiceLine>
*/
public Set<ServiceLine> getServiceLineByDescription(String description);

/**
* Description: Read all active {@link BillingCode} values.
*
* @return Set<BillingCode>
*/
public Set<BillingCode> getAllBillingCode();

/**
* Description: Read active {@link BillingCode} value by given billingCode.
*
* @param billingCode
* @return BillingCode object with search criteria
*/
public Set<BillingCode> getBillingCodeBybillingCode(String billingCode);

/**
* Description: Get Active BillingCode by billing code value
*
* @param billingcode
* @return BillingCode
*/
public BillingCode getActiveBillingCode(String billingcode);

/**
* Description: Get All Active BillingCode by billing code value
*
* @param billingcodes
* @return BillingCodes
*/
public Set<BillingCode> getActiveBillingCodes(Set<String> billingcodes);

/**
* Description:Get ServiceLine by full description
*
* @param description
* @return ServiceLine
*/
public ServiceLine getServiceLineByFullDescription(String description);

/**
* Description:Get CategoryOfCare by description
*
* @param description
* @return CategoryOfCare
*/
public CategoryOfCare getCategoryOfCareByDescription(String description);

/**
* Description: Get ClinicalService objects by descriptions in the parameter
* @param descriptions
* @return Set<ClinicalService>
*/
public Set<ClinicalService> getClinicalServices(Set<String> descriptions);

/**
* Description: Get active ClinicalService objects by descriptions in the parameter
* @param descriptions
* @return Set<ClinicalService>
*/
public Set<ClinicalService> getActiveClinicalServices(Set<String> descriptions);

/**
* Description:Get Status by description
*
* @param description
* @return Status
*/
public Status getStatusByDescription(String description);

/**
* Description: Read current program version of SEOC
*
* @return currProgramVersion
*/
public int getCurrentSeocConfigVersion();

/**
* Description: Get all Qasps
*
* @return Set<Qasp>
*/
public Set<Qasp> getAllQasp();

/**
* Description: Get all Qasp by description
*
* @param description
* @return Qasp
*/
public Qasp getQaspByDescription(String description);

/**
* Description: Save the updated billing code
* @param bc
* @return BillingCode
*/
public BillingCode saveBillingCode(BillingCode bc);

/**
* Description: Get data of all Hptcs from the table HPTC
*
* @return Set<Hptc>
*/
public Set<Hptc> getAllHptc();

/**
* Description: Find all Hptcs in the request parameter
* @param hptCodes
* @return Set<Hptc>
*/
public Set<Hptc> getHptcs(Set<String> hptCodes);

/**
* Description: Find inMaintenanceBy value of current program
*
* @return String
*/
public String getMaintenanceBy();

/**
* Description: Update inMaintenanceBy field of SeocConfig with the user data
* passed in the request
*
* @param user
* @return String - inMaintenanceBy value in the table SeocConfig
*/
public String updateMaintenanceBy(String user);

}