Feat/parapharmacy api #38
@@ -780,7 +780,9 @@ app.get('/api/products/:source/:productId/pharmacies', async (req, res) => {
|
|||||||
try {
|
try {
|
||||||
const { source, productId } = req.params;
|
const { source, productId } = req.params;
|
||||||
|
|
||||||
if (source !== 'cima') {
|
// Accept all valid sources
|
||||||
|
const validSources = ['cima', 'promofarma', 'docmorris', 'primor', 'parapharmacy', 'seed', 'manual'];
|
||||||
|
if (!validSources.includes(source)) {
|
||||||
return res.status(400).json({ error: 'Invalid source' });
|
return res.status(400).json({ error: 'Invalid source' });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import React, { useState, useEffect } from 'react';
|
import React, { useState, useEffect } from 'react';
|
||||||
|
import PharmacyMap from '../components/PharmacyMap';
|
||||||
import './ProductView.css';
|
import './ProductView.css';
|
||||||
|
|
||||||
export default function ProductView({ source, id, onBack }) {
|
export default function ProductView({ source, id, onBack }) {
|
||||||
@@ -150,6 +151,9 @@ export default function ProductView({ source, id, onBack }) {
|
|||||||
<h3 className="pharmacies-title">
|
<h3 className="pharmacies-title">
|
||||||
Disponible en {pharmacies.length} {pharmacies.length === 1 ? 'farmacia' : 'farmacias'}
|
Disponible en {pharmacies.length} {pharmacies.length === 1 ? 'farmacia' : 'farmacias'}
|
||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
|
<PharmacyMap pharmacies={pharmacies} />
|
||||||
|
|
||||||
<div className="pharmacies-grid">
|
<div className="pharmacies-grid">
|
||||||
{pharmacies.map((pharmacy) => (
|
{pharmacies.map((pharmacy) => (
|
||||||
<div key={pharmacy.id} className="product-pharmacy-card">
|
<div key={pharmacy.id} className="product-pharmacy-card">
|
||||||
|
|||||||
Reference in New Issue
Block a user