Skip to content
Snippets Groups Projects
Commit 697a1730 authored by Nayana Mogaveera's avatar Nayana Mogaveera
Browse files

commit-16-42

parent dfcf4d81
No related branches found
No related tags found
1 merge request!5commit-16-42
const healthCheckRouter = require('./health-check/routes'); const healthCheckRouter = require('./health-check/routes');
const layoutRouter = require('./layout/routes'); const widgetRouter = require('./widget/routes');
const templateRouter = require('./template/routes') const templateRouter = require('./template/routes')
const apiBaseRouter = require('express').Router(); const apiBaseRouter = require('express').Router();
...@@ -10,7 +10,7 @@ apiBaseRouter.use('/health-check', healthCheckRouter); ...@@ -10,7 +10,7 @@ apiBaseRouter.use('/health-check', healthCheckRouter);
// apiBaseRouter.use('/otp', otpRouter); // apiBaseRouter.use('/otp', otpRouter);
apiBaseRouter.use('/widget', layoutRouter); apiBaseRouter.use('/widget', widgetRouter);
apiBaseRouter.use('/template', templateRouter); apiBaseRouter.use('/template', templateRouter);
......
...@@ -24,7 +24,19 @@ const createTemplate = async (name, desc, widgets, hashId) => { ...@@ -24,7 +24,19 @@ const createTemplate = async (name, desc, widgets, hashId) => {
}; };
const getPerticularWidget = async (page) => {
try {
const response = await templateService.getPerticularWidget(page);
console.log(page,"Pagessssssss");
return { status: '200', response }
} catch (error) {
throw error
}
};
module.exports = { module.exports = {
updateAndMapWidget, updateAndMapWidget,
createTemplate createTemplate,
getPerticularWidget
}; };
...@@ -26,7 +26,19 @@ const createTemplate = async (req, res, next) => { ...@@ -26,7 +26,19 @@ const createTemplate = async (req, res, next) => {
} }
}; };
const getPerticularWidget = async (req, res) => {
try {
console.log("GET template details of a particular page");
const { page } = req.params;
const response = await templateBusiness.getPerticularWidget(page);
return res.status(response.status).json({ data: response });
} catch (error) {
throw error;
}
};
module.exports = { module.exports = {
updateAndMapWidget, updateAndMapWidget,
createTemplate createTemplate,
getPerticularWidget
} }
\ No newline at end of file
const templateRouter = require('express').Router(); const templateRouter = require('express').Router();
const { updateAndMapWidget,createTemplate } = require('./controller'); const { updateAndMapWidget,createTemplate,getPerticularWidget } = require('./controller');
templateRouter.put('/:page/widgets/:widgetId', updateAndMapWidget); templateRouter.put('/:page/widgets/:widgetId', updateAndMapWidget);
templateRouter.post('/createTemplate', createTemplate); templateRouter.post('/createTemplate', createTemplate);
templateRouter.get('/template/:page', getPerticularWidget);
module.exports = templateRouter; module.exports = templateRouter;
\ No newline at end of file
...@@ -56,8 +56,22 @@ const createTemplate = async (name, desc, widgets, hashId) => { ...@@ -56,8 +56,22 @@ const createTemplate = async (name, desc, widgets, hashId) => {
}; };
const getPerticularWidget = async (page,res) => {
try {
const template = await Template.findOne({ name: page}).populate('widgets.widgetId');
if (!template) {
return res.status(404).json({ error: 'Template not found' });
}
return template;
} catch (error) {
throw error
}
};
module.exports = { module.exports = {
updateAndMapWidget, updateAndMapWidget,
createTemplate createTemplate,
getPerticularWidget
}; };
\ No newline at end of file
/* eslint-disable prefer-promise-reject-errors */
/* eslint-disable no-throw-literal */
// const logger = require('utils/logger');
const widgetService = require('./service');
const getAllWidget = async (page) => {
try {
const response = await widgetService.getAllWidget(page);
return { status: '200', response }
} catch (error) {
throw error
}
};
const createWidget = async (data) => {
try {
const response = await widgetService.createWidget(data);
return { status: '200', response }
} catch (error) {
throw error
}
};
module.exports = {
getAllWidget,
createWidget,
};
// const logger = require('utils/logger');
const widgetBusiness = require('./business');
// const Joi = require('joi');
const getAllWidget = async (req, res, next) => {
try {
console.log("comign here")
const { page } = req.params;
const response = await widgetBusiness.getAllWidget(page);
return res.status(response.status).json({ data: response });
} catch (error) {
throw error
}
};
const createWidget = async (req, res, next) => {
try {
console.log("comign createWidget")
const response = await widgetBusiness.createWidget(req.body);
return res.status(response.status).json({ data: response });
} catch (error) {
throw error
}
};
module.exports = {
getAllWidget,
createWidget,
};
\ No newline at end of file
const widgetRouter = require('express').Router();
const { getAllWidget, createWidget } = require('./controller');
widgetRouter.get('/allWidget/:page', getAllWidget);
widgetRouter.post('/createWidget', createWidget);
module.exports = widgetRouter;
\ No newline at end of file
// const logger = require('utils/logger');
const Widget = require("../models/widget");
const Template = require("../models/template")
const getAllWidget = async (page) => {
try {
const template = await Template.findOne({ name: page}).populate('widgets.widgetId');
if (!template) {
return res.status(404).json({ error: 'Template not found' });
}
res.status(200).json(template);
} catch (error) {
throw error
}
};
const createWidget = async (data) => {
try {
console.log("in service")
const widget = new Widget(data);
await widget.save();
return { status: 201, id: widget._id, message: 'Widget created successfully' };
} catch (error) {
throw error
}
};
module.exports = {
getAllWidget,
createWidget,
};
\ No newline at end of file
...@@ -9,7 +9,7 @@ info: ...@@ -9,7 +9,7 @@ info:
# description: Local server # description: Local server
paths: paths:
/template/{page}: /template/template/{page}:
get: get:
tags: tags:
- "Template" - "Template"
...@@ -62,7 +62,7 @@ paths: ...@@ -62,7 +62,7 @@ paths:
error: error:
type: string type: string
/widget/allLayout/{page}: /widget/allWidget/{page}:
get: get:
tags: tags:
- "Widget" - "Widget"
...@@ -312,7 +312,7 @@ paths: ...@@ -312,7 +312,7 @@ paths:
desc: desc:
type: string type: string
description: A description of the template description: A description of the template
example: "Template for the homepage layout" example: "Template for the homepage widget"
widgets: widgets:
type: array type: array
description: A list of widgets mapped to the template description: A list of widgets mapped to the template
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment