// modify existing musician or add a new one to the data store router.put('/:id', jsonParser, async (req, res) => { try { const valid = await schema.isValid(req.body); if(valid) { const { musician } = req.app.locals; musician.putMusician(req.params.id, req.body, (err, id) => { if (err) { res.status('400').send({errorMessage: err}); } res.status('200').send({id: id}); }); } else { res.status('400').send({errorMessage: 'Invalid request body'}); } } catch(err) { res.status('400').send({errorMessage: 'Invalid request body'}); } });
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), email: Yup.string() .email() .required(), avatar_id: Yup.number(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Invalid field(s)' }); } const { email } = req.body; let deliveryman = await Deliveryman.findOne({ where: { email } }); if (deliveryman) { return res.status(401).json({ error: 'Email already registered' }); } deliveryman = await Deliveryman.create(req.body); return res.json(deliveryman); }
async store(req, res) { const schema = object().shape({ title: string().required(), duration: number() .required() .integer(), price: number() .required() .positive(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'validation fails' }); } const planExists = await Plan.findOne({ where: { title: req.body.title } }); if (planExists) return res.status(400).json({ error: 'Plan already exists.' }); const { id } = await Plan.create(req.body); return res.json({ id, }); }
}); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: "Invalid 'end_date' field" });
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), street: Yup.string().required(), number: Yup.number().required(), complement: Yup.string(), state: Yup.string().required(), city: Yup.string().required(), zip_code: Yup.string().required(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Invalid field(s)' }); } const { name } = req.body; let recipient = await Recipient.findOne({ where: { name } }); if (recipient) { return res.status(400).json({ error: 'Recipient already exists' }); } recipient = await Recipient.create(req.body); return res.json(recipient); }
async store(req, res) { const schema = Yup.object().shape({ description: Yup.string().required(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Description required' }); } const { id } = req.params; const delivery = await Delivery.findByPk(id); if (!delivery) { return res.status(404).json({ error: 'Invalid delivery' }); } const { description } = req.body; const deliveryProblem = await DeliveryProblem.create({ delivery_id: id, description, }); return res.json(deliveryProblem); }
}); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'validation fails' });
async update(req, res) { const schema = Yup.object().shape({ name: Yup.string(), street: Yup.string(), number: Yup.number(), complement: Yup.string(), state: Yup.string(), city: Yup.string(), zip_code: Yup.string(), }); const { id } = req.params; let recipient = await Recipient.findByPk(id); if (!recipient) { return res.status(404).json({ error: 'Recipient not found' }); } if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Invalid field(s)' }); } recipient = await recipient.update(req.body); return res.json(recipient); }
async store(req, res) { const schema = Yup.object().shape({ title: Yup.string().required(), description: Yup.string().required(), location: Yup.string().required(), date: Yup.date().required(), banner_id: Yup.number().required(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Validation failed' }); } if (isBefore(parseISO(req.body.date), Date.now())) { return res .status(401) .json({ error: `You can't create a meetup on a past date` }); } try { const meetup = await Meetup.create({ ...req.body, organizer_id: req.userID, }); return res.status(201).json(meetup); } catch (err) { return res.status(400).json(err.message); } }
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), email: Yup.string() .email() .required(), password: Yup.string() .required() .min(6), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Validation failed.' }); } const userExists = await User.findOne({ where: { email: req.body.email } }); if (userExists) { return res.status(400).json({ error: 'User already exists.' }); } const { id, name, email, provider } = await User.create(req.body); return res.json({ id, name, email, provider }); }
async store(req, res) { const schema = object().shape({ name: string().required(), email: string() .email() .required(), password: string() .required() .min(6), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'validation fails' }); } const userExists = await User.findOne({ where: { email: req.body.email } }); if (userExists) return res.status(400).json({ error: 'User already exists.' }); const { id, name, email } = await User.create(req.body); return res.json({ id, name, email, }); }
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), email: Yup.string() .email() .required(), password: Yup.string() .required() .min(6), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Validation fails' }); } const userExists = await User.findOne({ where: { email: req.body.email } }); if (userExists) { return res.status(400).json({ error: 'User already exists.' }); } const { id, name, email, provider } = await User.create(req.body); return res.json({ id, name, email, provider, }); }
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), email: Yup.string() .email() .required(), password: Yup.string() .required() .min(6), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Validation fails' }); } const userExists = await User.findOne({ where: { email: req.body.email } }); if (userExists) { return res.status(400).json({ error: 'User already exists.' }); } const { id, name, email, provider } = await User.create(req.body); return res.json({ id, name, email, provider, }); }
async store(req, res) { const schema = Yup.object().shape({ name: Yup.string().required(), email: Yup.string() .email() .required(), password: Yup.string() .required() .min(6), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'Validation fails' }); } const userExists = await User.findOne({ where: { email: req.body.email } }); if (userExists) { return res.status(400).json({ error: 'User already exists.' }); } const { id, name, email, provider } = await User.create(req.body); return res.json({ id, name, email, provider, }); }