ServiceProfile
Cada Provider puede tener un único perfil por service_type. En este contexto, el service_type indica el tipo de
servicio al cual hace referencia este perfil. Por ejemplo, service_type = 1
indica que se trata de Delivery.
Cuando un Provider intenta actualizar un ServiceProfile, los datos enviados se almacenan en reviewing_data
y se
actualizar el status a reviewing_data_status = draft
. En este momento, el Provider puede enviar más actualizaciones
reemplazando los datos anteriores.
Una vez iniciada la revisión, el status cambia a reviewing_data_status = reviewing
y no se permite modificar los
datos enviados. Una vez finalizada la revisión, el status puede cambiar a reviewing_data_status = up_to_date
en
caso de haber sido aprobado y los datos de data
son actualizados con los valores en reviewing_data
. Si los cambios
son rechazados, el status cambia a reviewing_data_status = refused
y se puede continuar enviando datos para la
revisión.
Nota: El único status que impide actualizar los datos es reviewing
.
Modelo ServiceProfile
{
"id": 1,
"is_enabled": true,
"status": "approved",
"reviewing_data": {
"brand": null,
"model": null,
"color": null,
"plate": null
},
"reviewing_data_status": "draft",
"data": {
"brand": null,
"model": null,
"color": null,
"plate": null
},
"provider_id": 32,
"service_type": 1,
"vehicle_type": 2,
"created_at": "2023-07-07 13:36:35",
"updated_at": "2023-07-07 13:36:35",
"rating_e2": 500,
"rating_sum": 0,
"rating_count": 0
}
Atributo |
Tipo |
Descripción |
id |
int |
- |
is_enabled |
bool |
- |
status |
string |
- |
reviewing_data |
array |
- |
reviewing_data_status |
string |
- |
data |
array |
- |
provider_id |
int |
- |
service_type |
int |
- |
vehicle_type |
int |
- |
created_at |
datetime\|null |
- |
updated_at |
datetime\|null |
- |
rating_e2 |
int |
- |
rating_sum |
int |
- |
rating_count |
int |
- |
Insertar ServiceProfile
Insertar ServiceProfile de Provider
Método |
URI |
Cabeceras |
POST |
/providers/{providerId}/service-profiles |
Authorization |
{
"data": "array",
"service_type": "required|integer|exists:service_types,code",
"vehicle_type": "required|integer|exists:vehicle_types,code"
}
Listar ServiceProfile
{info} Soporta:
Paginación
Filters
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/service-profiles |
N/A |
Mostrar ServiceProfile
{info} Soporta:
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/service-profiles/{serviceProfileId} |
N/A |
Actualizar ServiceProfile
Método |
URI |
Cabeceras |
PATCH |
/service-profiles/{serviceProfileId} |
Authorization |
{
"is_enabled": "boolean",
"data": "array",
"vehicle_type": "integer|exists:vehicle_types,code"
}
Eliminar ServiceProfile
Método |
URI |
Cabeceras |
DELETE |
/service-profiles/{serviceProfileId} |
Authorization |
Acciones de ServiceProfile
Index For Provider
{info} Soporta:
Paginación
Filters
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/providers/{providerId}/service-profiles |
Authorization |
Submit
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/submit |
Authorization |
Approve
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/approve |
Authorization |
Refuse
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/refuse |
Authorization |
Set Blocked
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/block |
Authorization |
Set Unblocked
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/unblock |
Authorization |
Set Enabled
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/set-enabled |
Authorization |
Set Disabled
Método |
URI |
Cabeceras |
POST |
/service-profiles/{serviceProfileId}/set-disabled |
Authorization |
Enlaces de ServiceProfile