Você está aqui:
HealthFeeScheduleDataService:getProviderFees
Use esse serviço para recuperar dados da agenda de taxas do provedor fornecida e usar a data fornecida para determinar a versão apropriada da agenda de taxas de base.
Classe: HealthFeeScheduleDataService
Método: getProviderFees
Como funciona
-
O serviço toma uma
providerFeeSchedId, determina a qualFeeSchedule__cestá associado e qual é a versão ativa doFeeSchedule__cpara uma determinada data. -
Serviços usa a opção
executionDateTimet como a data especificada. SeexecutionDateTimenão tiver um valor, o serviço usará a data atual. -
O serviço então recupera a lista de tarifas básicas do
FeeSchedule__c. Se o deslocamento tiver um valor, as próximas 2 mil linhas após o deslocamento especificado serão retornadas. Caso contrário, as primeiras 2.000 linhas serão retornadas. -
A lista de
ProviderFeeScheduleEntry__cpara aproviderFeeSchedIdfornecida é recuperada. -
O serviço então calcula as tarifas do provedor de uma de duas maneiras:
-
Se a tarifa de base tiver uma entrada correspondente na
ProviderFeeScheduleEntry__c, o serviço procuraráFeeType_cjunto com Valor adicional e Fator de taxa. O valor deAdditionalAmount__cé somado à taxa de base. O valor deRateFactor__cé multiplicado pela taxa de base e dividido por 100. -
Se a tarifa de base não tiver uma entrada correspondente na
ProviderFeeScheduleEntry__c, a tarifa do prestador será igual à tarifa de base.
-
Opções remotas
Opção |
Descrição |
|---|---|
|
Obrigatório ID da agenda de taxas do provedor. |
|
Opcional A data especificada determina qual versão habilitada da agenda é selecionada. Formato: |
|
Opcional Par de valores de chave. deslocamento: <value> onde valor = coluna de agenda de taxas que tem o tipo de mapeamento de coluna de código de procedimento aplicado a ela. Usado para determinar onde as linhas retornadas de códigos de procedimento começarão. Sem valor, o serviço retorna os primeiros 2 mil valores da agenda de taxas básicas. Se um valor for fornecido, as próximas 2.000 linhas após o valor do código do procedimento (ou seja, abaixo dele) serão retornadas. As linhas antes/acima do valor não são retornadas. Em qualquer caso, apenas 2.000 linhas são retornadas. Importante A ordem de classificação de dados retornada atualmente é baseada em valores de hash de código de procedimento crescente, não por código de procedimento. Por exemplo, o código de procedimento ABC com valor de hash 789 viria após o código de procedimento DEF com valor de hash 456. |
JSON de entrada
O JSON de entrada de exemplo a seguir mostra as entradas que o serviço usa:
{
"providerFeeSchedId":"a444P000001H44GQAS",
"executionDateTime":11/25/2019,
"retrieveOptions":{
"offset":"99215"
}
}JSON de saída
O serviço retorna um JSON de saída de dados de agenda de taxas básicas com base nas providerFeeSchedId e opções fornecidas:
{
"providerFees":[
{
"Provider-Non-Facility Price":0.05,
"Provider-Facility Price":0.05,
"Description":"99215",
"Facility Price":1,
"Non-Facility Price":1,
"Procedure Code":"99215",
"deleted":false,
"versionEnabled":true,
"versionId":"a1I6F00000nM7LxUAK",
"Name":"9952ac9010c8edba8ee0f2b4e80793e0",
"vLineItemId":"a1H6F000006SvT8UAK"
},
{
"Provider-Non-Facility Price":2,
"Provider-Facility Price":2,
"Description":"99214",
"Facility Price":1,
"Non-Facility Price":1,
"Procedure Code":"99214",
"deleted":false,
"versionEnabled":true,
"versionId":"a1I6F00000nM7LxUAK",
"Name":"f88f1140bdd063cfc2ce8652abb6f581",
"vLineItemId":"a1H6F000006SvT9UAK"
}
],
"error":"OK"
}
