multy-stub/server/routers/epja-2024-1/ecliptica/plants_calendar/index.js

43 lines
1.1 KiB
JavaScript
Raw Normal View History

2024-10-12 13:26:24 +03:00
const express = require('express');
const cors = require('cors');
2024-10-12 22:50:49 +03:00
const plantsRouter = express.Router()
2024-10-12 13:26:24 +03:00
const plants = [
{
name: "Rose",
image: "https://ervanarium.com.br/wp-content/uploads/2019/03/cactus-3142589_1920.jpg",
frequency: 3,
startDate: "2024-10-09",
},
{
name: "Sunflower",
image: "https://avatars.mds.yandex.net/i?id=31da587c9aabc83ad3615023f91d7284781be06c-10701700-images-thumbs&n=13",
frequency: 3,
startDate: "2024-10-05",
},
];
2024-10-12 22:50:49 +03:00
2024-10-12 13:26:24 +03:00
const calculateWateringDates = (startDate, frequency) => {
const dates = [];
const start = new Date(startDate);
for (let i = 0; i < 30; i += frequency) {
const nextWateringDate = new Date(start);
nextWateringDate.setDate(start.getDate() + i);
dates.push(nextWateringDate.toISOString().split('T')[0]);
}
return dates;
};
const plantsWithDates = plants.map(plant => ({
...plant,
wateringDates: calculateWateringDates(plant.startDate, plant.frequency),
}));
2024-10-12 22:50:49 +03:00
plantsWithDates.get('/api/plants', (req, res) => {
2024-10-12 13:26:24 +03:00
res.json(plantsWithDates);
});
2024-10-12 22:50:49 +03:00
module.exports = plantsRouter;