Compare commits

..

1 Commits

Author SHA1 Message Date
bdc8d9a8e0 feat: add get master with orders
Some checks failed
platform/multy-stub/pipeline/head There was a failure building this commit
2025-01-26 00:41:48 +03:00
4 changed files with 34 additions and 10 deletions

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "multi-stub", "name": "multi-stub",
"version": "1.1.1", "version": "1.1.0",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "multi-stub", "name": "multi-stub",
"version": "1.1.1", "version": "1.1.0",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"axios": "^1.7.9", "axios": "^1.7.9",

View File

@@ -1,6 +1,6 @@
{ {
"name": "multi-stub", "name": "multi-stub",
"version": "1.1.1", "version": "1.1.0",
"description": "", "description": "",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {

View File

@@ -1,16 +1,40 @@
const router = require('express').Router() const router = require('express').Router()
const {MasterModel} = require('./model/master') const {MasterModel} = require('./model/master')
const mongoose = require("mongoose") const mongoose = require("mongoose")
const {OrderModel} = require("./model/order")
router.get('/masters', async (req, res,next) => { router.get("/masters", async (req, res, next) => {
try { try {
const master = await MasterModel.find({}) const masters = await MasterModel.find({});
res.status(200).send({success: true, body: master}) const orders = await OrderModel.find({});
const mastersWithOrders = masters.map((master) => {
const masterOrders = orders.filter((order) => {
return (
order?.master && order.master.toString() === master._id.toString()
);
});
const schedule = masterOrders.map((order) => ({
id: order._id,
startWashTime: order.startWashTime,
endWashTime: order.endWashTime,
}));
return {
id: master._id,
name: master.name,
schedule: schedule,
phone: master.phone,
};
});
res.status(200).send({ success: true, body: mastersWithOrders });
} catch (error) { } catch (error) {
next(error) next(error);
} }
}) });
router.delete('/masters/:id', async (req, res,next) => { router.delete('/masters/:id', async (req, res,next) => {
const { id } = req.params; const { id } = req.params;

View File

@@ -42,12 +42,12 @@ router.get('/:todoId/:itemId', async (req, res) => {
return res.send(getAnswer(new Error('no such todo'))) return res.send(getAnswer(new Error('no such todo')))
} }
const item = await ItemModel.findById(itemId).populate({ path: 'comments', populate: { path: 'author' } }).exec() const item = await ItemModel.findById(itemId).populate('comments').exec()
if (!item) { if (!item) {
return res.send(getAnswer(new Error('no such item'))) return res.send(getAnswer(new Error('no such item')))
} }
res.send(getAnswer(null, item)) res.send(getAnswer(null, item.comments))
}) })
module.exports = router module.exports = router