PK!A7��nconst express = require("express"); const routes = express.Router(); const app = express(); const bodyParser = require("body-parser"); const dotenv = require("dotenv"); const jwt = require("jsonwebtoken"); const auth = require("../middleware/auth"); const pdf = require("pdf-creator-node"); const fs = require("fs"); var request = require("request").defaults({ encoding: null }); const nodemailer = require("nodemailer"); var formidable = require("formidable"); var multer = require("multer"); var forms = multer(); var randomstring = require("randomstring"); dotenv.config(); const upload = multer({ dest: "users/upload/emailAttachments" }); const customerRoutes = require("../routes/customerRoutes") const adminRoutes = require("../routes/adminRoutes") // async function logger1 () { // let eco = await exec(`/usr/bin/php /tmp/abc.php`); // //console.log({eco}); // console.log("HELLO 2") // } // logger1 () const opts = { errorEventName: "error", logDirectory: "logs", fileNamePattern: "log-.log", dateFormat: "YYYY-MM-DD", }; const log = require("simple-node-logger").createRollingFileLogger(opts); routes.use(bodyParser.raw()); routes.use(bodyParser.json()); routes.use(bodyParser.urlencoded({ extended: true })); routes.use("/static", express.static("./users")); app.use("/customer", customerRoutes); app.use("/admin", adminRoutes); routes.use((req, res, next) => { const isWeb = req.headers["for"]; if (isWeb === "web") { log.info("[Middleware], [WebSite User]"); return next(); } const token = req.headers["authorization"]; if (!token || token == "undefined" || token == "null") { log.info("[Middleware], [Authorization Token not found]"); return res.status(401).json({ msg: "Unauthorized Access" }); } const userId = req.headers["id"]; if (!userId || userId == "undefined" || userId == "null") { log.info("[Middleware], [User Id not found]"); return res.status(401).json({ msg: "Unauthorized" }); } next(); }); routes.get("/customer/dashboard", (req, res) => { log.info("On Route [Customer Dashboard]"); try { var controler = require("../controller/dashboard"); controler.userDashboard(req, res); } catch (error) { log.info("On Route [Get Customer Dashboard], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/customer/signUp", (req, res) => { log.info("On Route [signUp]"); try { var controler = require("../controller/customerRegistration"); controler.signUp(req, res); } catch (error) { log.info("On Route [signUp], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.post("/customer/login", (req, res) => { // log.info("On Route [verify-otp]"); // try { // var controler = require("../controller/customerRegistration"); // controler.login(req, res); // } catch (error) { // log.info("On Route [customerRegistration], [" + error + "]"); // res.status(404).json({ msg: "Invalid Request" }); // } // }); routes.post("/add-contacts", (req, res) => { log.info("On Route [add-contacts]"); try { var controler = require("../controller/contact"); controler.addContactBulk(req, res); } catch (error) { log.info("On Route [add-contacts], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/merge-contacts", (req, res) => { log.info("On Route [merge-contacts]"); try { var controler = require("../controller/contact"); controler.mergeContactBulk(req, res); } catch (error) { log.info("On Route [merge-contacts], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getContactGroups", (req, res) => { log.info("On Route [getContactGroups]"); try { var controler = require("../controller/contact"); controler.getContactGroups(req, res); } catch (error) { log.info("On Route [getContactGroups], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getContactList/:id", (req, res) => { log.info("On Route [getContactList]"); try { var controler = require("../controller/contact"); controler.getContactList(req, res); } catch (error) { log.info("On Route [getContactList], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/addSingleContact", (req, res) => { log.info("On Route [addSingleContact]"); try { var controler = require("../controller/contact"); controler.addSingleContact(req, res); } catch (error) { log.info("On Route [addSingleContact], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/editSingleContact", (req, res) => { log.info("On Route [editSingleContact]"); try { var controler = require("../controller/contact"); controler.editSingleContact(req, res); } catch (error) { log.info("On Route [editSingleContact], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/deleteSingleContact", (req, res) => { log.info("On Route [deleteSingleContact]"); try { var controler = require("../controller/contact"); controler.deleteSingleContact(req, res); } catch (error) { log.info("On Route [deleteSingleContact], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/deleteMultipleContact", (req, res) => { log.info("On Route, [POST], [deleteMultipleContact]"); try { var controler = require("../controller/contact"); controler.deleteMultipleContact(req, res); } catch (error) { log.info("On Route [deleteMultipleContact], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/editGroupName", (req, res) => { log.info("On Route, [POST], [editGroupName]"); try { var controler = require("../controller/contact"); controler.editGroupName(req, res); } catch (error) { log.info("On Route [editGroupName], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/removeContactGroup", (req, res) => { log.info("On Route, [POST], [removeContactGroup]"); try { var controler = require("../controller/contact"); controler.removeContactGroup(req, res); } catch (error) { log.info("On Route [removeContactGroup], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getCampaigns/:param", (req, res) => { log.info("On Route, [GET], [getCampaigns]"); try { var controler = require("../controller/campaign"); controler.getCampaigns(req, res); } catch (error) { log.info("On Route [getCampaigns], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/getCampaigns/:param", (req, res) => { log.info("On Route, [POST], [getCampaigns]"); try { var controler = require("../controller/campaign"); controler.getCampaigns(req, res); } catch (error) { log.info("On Route [getCampaigns], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getSenderIdContactGroups/:param", (req, res) => { log.info("On Route [getSenderIdContactGroups]"); try { var controler = require("../controller/campaign"); controler.getSenderIdContactGroups(req, res); } catch (error) { log.info("On Route [getSenderIdContactGroups], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getEmailIdContactGroups/:param", (req, res) => { log.info("On Route [getEmailIdContactGroups]"); try { var controler = require("../controller/campaignEmail"); controler.getEmailIdContactGroups(req, res); } catch (error) { log.info("On Route [getEmailIdContactGroups], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.get("/getCallerIdContactGroups", (req, res) => { log.info("On Route [getCallerIdContactGroups]"); try { var controler = require("../controller/campaign"); controler.getCallerIdContactGroups(req, res); } catch (error) { log.info("On Route [getCallerIdContactGroups], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/runcampaign", (req, res) => { log.info("On Route [Run], [Campaign]"); try { var controler = require("../controller/campaign"); controler.runcampaign(req, res); } catch (error) { log.info("On Route [Run], [Campaign], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/runQuickMessage", (req, res) => { log.info("On Route [Run], [runQuickMessage]"); try { var controler = require("../controller/quickMessage"); controler.runQuickMessage(req, res); } catch (error) { log.info("On Route [Run], [runQuickMessage], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/runQuickMessageForExcel", (req, res) => { log.info("On Route [Run], [runQuickMessageForExcel]"); try { var controler = require("../controller/quickMessage"); controler.runQuickMessageForExcel(req, res); } catch (error) { log.info("On Route [Run], [runQuickMessageForExcel], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/runQuickEmail", upload.single("attachment"), (req, res) => { log.info("On Route [Run], [runQuickEmail]"); try { var controler = require("../controller/quickMessageEmail"); controler.runQuickEmail(req, res); } catch (error) { log.info("On Route [Run], [runQuickEmail], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getQuickMessages", (req, res) => { log.info("On Route [Run], [getQuickMessages]"); try { var controler = require("../controller/quickMessage"); controler.getQuickMessages(req, res); } catch (error) { log.info("On Route [Run], [getQuickMessages], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/getQuickMessages", (req, res) => { log.info("On Route [Run], [POST], [getQuickMessages]"); try { var controler = require("../controller/quickMessage"); controler.getQuickMessages(req, res); } catch (error) { log.info("On Route [Run], [POST], [getQuickMessages], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.get("/getQuickMessages", (req, res) => { // log.info("On Route [Run], [getQuickEmail]"); // try { // var controler = require("../controller/"); // controler.getQuickMessages(req, res); // } catch (error) { // log.info("On Route [Run], [getQuickEmail], [" + error + "]"); // res.status(404).json({ msg: "Invalid Request" }); // } // }); routes.post("/runQuickVoice", (req, res) => { log.info("On Route [Run], [runQuickVoice]"); try { var controler = require("../controller/quickMessageVoice"); controler.runQuickVoice(req, res); } catch (error) { log.info("On Route [Run], [getQuickMessages], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/runCustomCampaign", (req, res) => { log.info("On Route [Run], [runCustomCampaign]"); try { var controler = require("../controller/customCampaign"); controler.runcampaign(req, res); } catch (error) { log.info("On Route [Run], [runCustomCampaign], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.post( "/runCustomEmailCampaign", upload.single("attachment"), (req, res) => { log.info("On Route [Run], [runCustomEmailCampaign]"); try { var controler = require("../controller/customEmailCampaign"); controler.runCustomEmailCampaign(req, res); } catch (error) { log.info("On Route [Run], [runCustomEmailCampaign], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } } ); routes.get("/getCampaignReports/:id", (req, res) => { log.info("On Route [Run], [getCampaignReports]"); try { var controler = require("../controller/campaignReport"); controler.getCampaignReports(req, res); } catch (error) { log.info("On Route [Run], [getCampaignReports], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.get("/getQuickMessageReports/:id", (req, res) => { log.info("On Route [Run], [getQuickMessageReports]"); try { var controler = require("../controller/quickMessageReport"); controler.getQuickMessageReports(req, res); } catch (error) { log.info("On Route [Run], [getQuickMessageReports], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.post("/getDateRangeCampaign", (req, res) => { log.info("On Route [Run], [getDateRangeCampaign]"); try { var controler = require("../controller/campaign"); controler.getDateRangeCampaign(req, res); } catch (error) { log.info("On Route [Run], [getDateRangeCampaign], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.post("/deleteScheduledCampaign", (req, res) => { log.info("On Route [Run], [deleteScheduledCampaign]"); try { var controler = require("../controller/campaign"); controler.deleteScheduledCampaign(req, res); } catch (error) { log.info("On Route [Run], [deleteScheduledCampaign], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.post("/runcampaign/voice", (req, res) => { log.info("On Route [Run], [Campaign] [Voice]"); try { var controler = require("../controller/campaignVoice"); controler.runcampaign(req, res); } catch (error) { log.info("On Route [Run], [Campaign] [Voice], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.post("/runQuickcampaign/voice", (req, res) => { // log.info("On Route [Run], [Campaign] [Voice]"); // try { // var controler = require("../controller/campaignVoice"); // controler.runQuickcampaign(req, res); // } catch (error) { // log.info("On Route [Run], [Campaign] [Voice], [" + error + "]"); // res.status(404).json({ msg: "Invalid Request" }); // } // }); routes.post("/runcampaign/email", upload.single("attachment"), (req, res) => { log.info("On Route [Run], [Campaign] [Email]"); try { var controler = require("../controller/campaignEmail"); controler.runcampaign(req, res); } catch (error) { log.info("On Route [Run], [Campaign] [Email], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // SMS TEMPLATES routes.get("/getSmsTemplates", (req, res) => { log.info("On Route [getSmsTemplates]"); try { var controler = require("../controller/smsTemplate"); controler.getSmsTemplates(req, res); } catch (error) { log.info("On Route [getSmsTemplates], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/addSmsTemplate", (req, res) => { log.info("On Route [addSmsTemplate]"); try { var controler = require("../controller/smsTemplate"); controler.addSmsTemplate(req, res); } catch (error) { log.info("On Route [addSmsTemplate], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/editSmsTemplate", (req, res) => { log.info("On Route [editSmsTemplate]"); try { var controler = require("../controller/smsTemplate"); controler.editSmsTemplate(req, res); } catch (error) { log.info("On Route [editSmsTemplate], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/sendMail", (req, res) => { log.info("On Route [sendMail]"); try { var controler = require("../controller/websiteContactUs"); controler.sendMail(req, res); } catch (error) { log.info("On Route [sendMail], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); //EmailTemplate routes.get("/getEmailTemplatebyId/:id", (req, res) => { log.info("On Route [getEmailTemplatebyId]"); try { var controler = require("../controller/emailTemplate"); controler.getEmailTemplatebyId(req, res); } catch (error) { log.info("On Route [getEmailTemplatebyId], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); routes.get("/getEmailTemplates", (req, res) => { log.info("On Route [getEmailTemplates]"); try { var controler = require("../controller/emailTemplate"); controler.getEmailTemplates(req, res); } catch (error) { log.info("On Route [getEmailTemplates], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/addEmailTemplate", (req, res) => { log.info("On Route [addEmailTemplate]"); try { var controler = require("../controller/emailTemplate"); controler.addEmailTemplate(req, res); } catch (error) { log.info("On Route [addEmailTemplate], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/editEmailTemplate", (req, res) => { log.info("On Route [editEmailTemplate]"); try { var controler = require("../controller/emailTemplate"); controler.editEmailTemplate(req, res); } catch (error) { log.info("On Route [editEmailTemplate], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.get("/getPlans", (req, res) => { // log.info("On Route [getPlans]"); // try { // var controler = require("../controller/plan"); // controler.getPlans(req, res); // } catch (error) { // log.info("On Route [getPlans], [" + error + "]"); // res.status(404).json({ msg: "Invalid Request" }); // } // }); // API KEYS routes.get("/getApiKeys", (req, res) => { log.info("On Route [getApiKeys]"); try { var controler = require("../controller/apiKey"); controler.getApiKeys(req, res); } catch (error) { log.info("On Route [getApiKeys], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/regenerateApiKey", (req, res) => { log.info("On Route [regenerateApiKey]"); try { var controler = require("../controller/apiKey"); controler.regenerateApiKey(req, res); } catch (error) { log.info("On Route [regenerateApiKey], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // Reports routes.post("/getReports", (req, res) => { log.info("On Route [getReports]"); try { var controler = require("../controller/reports"); controler.getReports(req, res); } catch (error) { log.info("On Route [getReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/generateReport", (req, res) => { log.info("On Route [generateReport]"); try { var controler = require("../controller/reports"); controler.generateReport(req, res); } catch (error) { log.info("On Route [generateReport], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); //QuickRports routes.post("/getQuickReports", (req, res) => { log.info("On Route [getQuickReports]"); try { var controler = require("../controller/quickGenerateReports"); controler.getQuickReports(req, res); } catch (error) { log.info("On Route [getQuickReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/generateQuickReport", (req, res) => { log.info("On Route [getQuickReports]"); try { var controler = require("../controller/quickGenerateReports"); controler.generateQuickReport(req, res); } catch (error) { log.info("On Route [generateQuickReport], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // Invoices routes.get("/getInvoices", (req, res) => { log.info("On Route [getInvoices]"); try { var controler = require("../controller/invoices"); controler.getInvoices(req, res); } catch (error) { log.info("On Route [getInvoices], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/getCreateInvoiceInitialData", (req, res) => { log.info("On Route [getCreateInvoiceInitialData]"); try { var controler = require("../controller/invoices"); controler.getCreateInvoiceInitialData(req, res); } catch (error) { log.info("On Route [getCreateInvoiceInitialData], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/createInvoice", (req, res) => { log.info("On Route [createInvoice]"); try { var controler = require("../controller/invoices"); controler.createInvoice(req, res); } catch (error) { log.info("On Route [createInvoice], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // Reports routes.get("/admin/GetSmsReports/:type/:value", (req, res) => { log.info("On Route [GetSmsReports]"); try { var controler = require("../controller/reports"); controler.GetReportsBySearch(req, res); } catch (error) { log.info("On Route [GetSmsReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/generateReports", (req, res) => { log.info("On Route [generateReports]"); try { var controler = require("../controller/reports"); controler.generateReports(req, res); } catch (error) { log.info("On Route [generateReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/admin/viewReports", (req, res) => { log.info("On Route, [GET], [viewReports]"); try { var controler = require("../controller/reports"); controler.viewReports(req, res); } catch (error) { log.info("On Route [viewReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/viewReports", (req, res) => { log.info("On Route, [POST], [viewReports]"); try { var controler = require("../controller/reports"); controler.viewReports(req, res); } catch (error) { log.info("On Route [viewReports], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // Admin Dashboard routes.get("/admin/dashboard", (req, res) => { log.info("On Route [adminDashboard]"); try { var controler = require("../controller/dashboard"); controler.adminDashboard(req, res); } catch (error) { log.info("On Route [adminDashboard], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // Users routes.get("/admin/getUsers", (req, res) => { log.info("On Route [getUsers]"); try { var controler = require("../controller/user"); controler.getUsers(req, res); } catch (error) { log.info("On Route [getUsers], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/getClientUsers", (req, res) => { log.info("On Route [getClientUsers]"); try { var controler = require("../controller/user"); controler.getClientUsers(req, res); } catch (error) { log.info("On Route [getClientUsers], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/updateClientStatus", (req, res) => { log.info("On Route [updateClientStatus]"); try { var controler = require("../controller/user"); controler.updateClientStatus(req, res); } catch (error) { log.info("On Route [updateClientStatus], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/addUser", (req, res) => { log.info("On Route [addUser]"); try { var controler = require("../controller/user"); controler.addUser(req, res); } catch (error) { log.info("On Route [addUser], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/editUser", (req, res) => { log.info("On Route [editUser]"); try { var controler = require("../controller/user"); controler.editUser(req, res); } catch (error) { log.info("On Route [editUser], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/addCredits", (req, res) => { log.info("On Route [addCredits]"); try { var controler = require("../controller/user"); controler.addCredits(req, res); } catch (error) { log.info("On Route [addCredits], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.post("/admin/payment/list", (req, res) => { // log.info("On Route [Payment List]"); // try { // var controler = require("../controller/payment"); // controler.getPaymentList4Admin(req, res); // } catch (error) { // log.info(`On Route [Payment List], [${error}]`); // res.status(404).json({ msg: "Invalid Request" }); // } // }); routes.post("/payment/addPayment", (req, res) => { log.info("On Route [addPayment]"); try { var controler = require("../controller/payment"); controler.addPayment(req, res); } catch (error) { log.info(`On Route [addPayment], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/payment/validateotp", (req, res) => { log.info("On Route [validateOTP]"); try { var controler = require("../controller/payment"); controler.validateOTP(req, res); } catch (error) { log.info(`On Route [validateOTP], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/payment/getOtp", (req, res) => { log.info("On Route [getOtp]"); try { var controler = require("../controller/payment"); controler.getOtp(req, res); } catch (error) { log.info(`On Route [getOtp], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/payment/updateStatus", (req, res) => { log.info("On Route [updateStatus]"); try { var controler = require("../controller/payment"); controler.updatePayment(req, res); } catch (error) { log.info(`On Route [updateStatus], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); //Email SenderIDs routes.get("/getAllEmailIds", (req, res) => { log.info("On Route [getAllEmailIds]"); try { var controler = require("../controller/Email"); controler.getAllEmailIds(req, res); } catch (error) { log.info("On Route [getAllEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/getAllEmailIds", (req, res) => { log.info("On Route [getAllEmailIds]"); try { var controler = require("../controller/Email"); controler.getAllEmailIds(req, res); } catch (error) { log.info("On Route [getAllEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/adminEmailSenderIdRequests", (req, res) => { log.info("On Route [adminEmailSenderIdRequests]"); try { var controler = require("../controller/Email"); controler.adminEmailSenderIdRequests(req, res); } catch (error) { log.info("On Route [adminEmailSenderIdRequests], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/requestEmailSenderId", (req, res) => { log.info("On Route [requestEmailSenderId]"); try { var controler = require("../controller/Email"); controler.requestEmailSenderId(req, res); } catch (error) { log.info("On Route [requestEmailSenderId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/editEmailSenderIds", (req, res) => { log.info("On Route [editEmailSenderIds]"); try { var controler = require("../controller/emailSenderId"); controler.editEmailSenderIds(req, res); } catch (error) { log.info("On Route [editEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/adminEmailSenderIdAction", (req, res) => { log.info("On Route [adminEmailSenderIdAction]"); try { var controler = require("../controller/emailSenderId"); controler.adminEmailSenderIdAction(req, res); } catch (error) { log.info("On Route [adminEmailSenderIdAction], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/userlistEmailSenderIds", (req, res) => { log.info("On Route [userlistEmailSenderIds]"); try { var controler = require("../controller/emailSenderId"); controler.userlistEmailSenderIds(req, res); } catch (error) { log.info("On Route [userlistEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/allEmailSenderIds", (req, res) => { log.info("On Route [allEmailSenderIds]"); try { var controler = require("../controller/emailSenderId"); controler.allEmailSenderIds(req, res); } catch (error) { log.info("On Route [allEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/allEmailSenderIds", (req, res) => { log.info("On Route [allEmailSenderIds]"); try { var controler = require("../controller/emailSenderId"); controler.allEmailSenderIds(req, res); } catch (error) { log.info("On Route [allEmailSenderIds], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/adminAddEmailSenderid", (req, res) => { log.info("On Route [adminAddEmailSenderid]"); try { var controler = require("../controller/emailSenderId"); controler.adminAddEmailSenderid(req, res); } catch (error) { log.info("On Route [adminAddEmailSenderid], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/deleteEmailSenderId", (req, res) => { log.info("On Route [deleteEmailSenderId]"); try { var controler = require("../controller/emailSenderId"); controler.deleteEmailSenderId(req, res); } catch (error) { log.info("On Route [deleteEmailSenderId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); //New TXT //************************************* */ // var storage = multer.diskStorage({ // destination: function (req, file, cb) { // cb(null, 'uploads') // }, // filename: function (req, file, cb) { // cb(null, file.fieldname + '-' + Date.now()) // } // }) // var upload = multer({ storage: storage }); //************************************* */ /** * @openapi * /calendly: * post: * tags: * - developers * summary: Add calendly Booking Notification * description: Add calendly Booking Notification * operationId: calendlyBooking #To Identify Operation...Optional...should be unique * requestBody: * description: Add calendly Booking Notification Body * content: * application/json: * schema: * $ref: '#/components/schemas/calendlyBooking' * required: false * responses: * 200: * description: Fetch All Created Inventories * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getInventoryDetail */ routes.post("/calendly", (req, res) => { log.info("On Route [calendly"); try { var controler = require("../controller/customer"); // console.log("CALENDLY REQUEST: " + req.body); // console.log( // "CALENDLY REQUEST Payload: " + req.body.payload.questions_and_answers // ); // req.body.payload.questions_and_answers.map((singleObj) => // console.log("singleObj->", singleObj) // ); controler.addBooking(req, res); //res.status(200).json({msg: "Success" }); } catch (error) { log.info("On Route [calendly], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /dashboard: * get: * tags: * - developers * summary: Dashboard Data * description: Get Rapid Test Nurse Portal Dashboard * operationId: dashboardData #To Identify Operation...Optional...should be unique * responses: * 200: * description: Rapid Test Nurse Portal Dashboard * content: * application/json: * schema: * $ref: '#/components/schemas/dashboard' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getInventoryDetail */ routes.get("/dashboard", auth, (req, res) => { log.info("On Route [dashboard]"); try { var controler = require("../controller/customer"); controler.dashboard(req, res); } catch (error) { log.info("On Route [dashboard], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/dashboard/totalgroupbookings", auth, (req, res) => { log.info(`On Route [GET][dashboard][totalgroupbookings][List]`); try { var controler = require("../controller/customerBulk"); controler.listTodaysCustomerBulks(req, res); } catch (error) { log.info(`On Route [GET][dashboard][totalgroupbookings][List], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/dashboard/totalmembers", auth, (req, res) => { log.info(`On Route [GET][dashboard][totalmembers][List]`); try { var controler = require("../controller/customer"); controler.getTodaysCustomers(req, res); } catch (error) { log.info(`On Route [GET][dashboard][totalmembers][List], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/dashboard/test/:result", auth, (req, res) => { log.info(`On Route [GET][dashboard][Test Result][List]`); try { var controler = require("../controller/customer"); controler.getReportWithTestResult(req, res); } catch (error) { log.info(`On Route [GET][dashboard][Test Result][List], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /getbookings/{type}: * get: * tags: * - developers * summary: Get Bookings Data * description: Get Rapid Test Nurse Portal Bookings * operationId: getBookingData #To Identify Operation...Optional...should be unique * parameters: * - name: type * in: path * description: Booking Type(All,morning,afternoon,evening) * type: integer * schema: * type: string * enum: [All,morning,afternoon,evening] * required: true * responses: * 200: * description: Rapid Test Nurse Portal Bookings * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getBookingData */ routes.get("/getbookings/:type", auth, (req, res) => { log.info("On Route [getbookings] [" + req.params.type + "]"); try { var controler = require("../controller/customer"); controler.getBookings(req, res); } catch (error) { log.info("On Route [getbookings], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /getcompletedsession/: * get: * tags: * - developers * summary: Get Completed Session Data * description: Get Rapid Test Nurse Portal Completed Session * operationId: getCompletedSession #To Identify Operation...Optional...should be unique * responses: * 200: * description: Rapid Test Nurse Portal Get Completed Session * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getBookingData */ routes.post("/getcompletedsession/", auth, (req, res) => { log.info("On Route [getcompletedsession]"); try { var controler = require("../controller/customer"); controler.getCompletedSession(req, res); } catch (error) { log.info("On Route [getcompletedsession], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /getcompletedsession/export/: * get: * tags: * - developers * summary: Export Completed Session Data * description: Get Rapid Test Nurse Portal Completed Session * operationId: getCompletedSession #To Identify Operation...Optional...should be unique * responses: * 200: * description: Rapid Test Nurse Portal Get Completed Session * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: ExportComplededSesssions */ routes.post("/getcompletedsession/export/", auth, (req, res) => { log.info("On Route [getcompletedsession][Export]"); try { var controler = require("../controller/customer"); controler.getCompletedSessionExport(req, res); } catch (error) { log.info("On Route [getcompletedsession][Export], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /booking: * post: * tags: * - developers * summary: Get All Booking Data * description: Get All Booking Data * operationId: getAllBooking #To Identify Operation...Optional...should be unique * requestBody: * description: Add Report Details * content: * application/json: * schema: * $ref: '#/components/schemas/allBookingData' * required: false * responses: * 200: * description: Rapid Test Nurse Portal All Bookings * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getAllBooking */ routes.post("/booking", auth, (req, res) => { log.info("On Route [/booking(All)]"); try { var controler = require("../controller/customer"); //controler.getBookingsBySearch(req, res); controler.getAllSessions(req, res); } catch (error) { log.info("On Route [/booking(All)], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/customer/registrations", auth, (req, res) => { log.info("On Route [/customer/registrations], [GET]"); try { var controler = require("../controller/customer"); //controler.getBookingsBySearch(req, res); controler.getCustomerRegistrations(req, res); } catch (error) { log.info("On Route [/customer/registrations], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/customer/members/:sessionId", auth, (req, res) => { log.info("On Route [/customer/members/:sessionId], [GET]"); try { var controler = require("../controller/customer"); //controler.getBookingsBySearch(req, res); controler.getCustomerRegistrationsBySessions(req, res); } catch (error) { log.info("On Route [/customer/members/:sessionId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/search/{type}/{value}: * get: * tags: * - developers * summary: Get Customers Data By Search * description: Get Customers Data by search * operationId: getCustomerSearch #To Identify Operation...Optional...should be unique * parameters: * - name: type * in: path * description: Search Type * type: integer * schema: * type: string * enum: [email] * required: true * - name: value * in: path * description: Search Value * type: integer * schema: * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Bookings by search * content: * application/json: * schema: * $ref: '#/components/schemas/getCustomers' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerSearch */ routes.get("/customer/search/:type/:value", auth, (req, res) => { log.info( "On Route [customer][Search][" + req.params.type + "][" + req.params.value + "]" ); try { var controler = require("../controller/customer"); //controler.getCustomerBySearch(req, res); controler.searchCustomerByValue(req, res); } catch (error) { log.info("On Route [customer], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/create-customer-manually: * post: * tags: * - developers * summary: Create Customer Manually * description: Create Customer Manually * operationId: Create Customer Manually .. * requestBody: * description: Add Customer Data * content: * application/json: * schema: * $ref: '#/components/schemas/manualCustomer' * required: false * responses: * 201: * description: customer and it's booking created successfully * content: * application/json: * schema: * $ref: '#/components/schemas/manualCustomerResp' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerSearch */ routes.post("/customer/create-customer-manually", auth, (req, res) => { log.info(`On Route [customer][createCustomerManually]`); try { var controler = require("../controller/customer"); //controler.getCustomerBySearch(req, res); controler.createCustomerManually(req, res); } catch (error) { log.info("On Route [customer], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/customer/bulk", auth, (req, res) => { log.info(`On Route [customer][bulk]`); try { var controler = require("../controller/customerBulk"); controler.addCustomersBulk(req, res); } catch (error) { log.info(`On Route [customer], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/customer/bulk/list", auth, (req, res) => { log.info(`On Route [customer][bulk][List]`); try { var controler = require("../controller/customerBulk"); controler.listCustomerBulks(req, res); } catch (error) { log.info(`On Route [customer], [${error}]`); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/customer/email/list/:bulkId", auth, (req, res) => { var bulkId = req.params.bulkId; log.info(`On Route [customer], [bulk], [Email], [List], BulkId[${bulkId}]`); try { var controler = require("../controller/customerBulk"); controler.listBulkEmailList(req, res); } catch (error) { log.info( `On Route [customer], [bulk], [Email], [List], BulkId[${bulkId}], Error [${error}]` ); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/customer/covidtestregistration", auth, (req, res) => { log.info("On Route [/customer/covidtestregistration"); try { var controler = require("../controller/customer"); //controler.getBookingsBySearch(req, res); controler.covidTestRegistration(req, res); } catch (error) { log.info("On Route [/customer/covidtestregistration], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/create-manual-booking: * post: * tags: * - developers * summary: Create Booking Manually * description: Create Booking Manually * operationId: Create Booking Manually .. * requestBody: * description: Add Customer and Booking Data * content: * application/json: * schema: * $ref: '#/components/schemas/manualBooking' * required: false * responses: * 201: * description: booking created successfully * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerSearch */ routes.post("/customer/create-manual-booking", auth, (req, res) => { log.info(`On Route [customer][createManualBookingForExistingCustomer]`); try { var controler = require("../controller/customer"); //controler.getCustomerBySearch(req, res); controler.createManualBookingForExistingCustomer(req, res); } catch (error) { log.info("On Route [customer], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/bookings/{customerId}: * get: * tags: * - developers * summary: Get Customers Bookings * description: Get Customers Bookings * operationId: getCustomerBookings #To Identify Operation...Optional...should be unique * parameters: * - name: customerId * in: path * description: Customer Id * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Customer Bookings by search * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerBookings */ routes.get("/customer/bookings/:customerId", auth, (req, res) => { log.info("On Route [customer][bookings][" + req.params.customerId + "]"); try { var controler = require("../controller/customer"); controler.getCustomerBookings(req, res); } catch (error) { log.info("On Route [customer][bookings], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/customer/bulk/bookings/:bulkId", auth, (req, res) => { log.info( "On Route [customer], [bulk], [bookings], [" + req.params.bulkId + "]" ); try { var controler = require("../controller/customer"); controler.getCustomerBulkBookings(req, res); } catch (error) { log.info("On Route [customer], [bulk], [bookings], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/family/{customerId}: * get: * tags: * - developers * summary: Get Customers Family Members * description: Get Customers Family Members * operationId: getCustomerFamilyMembers #To Identify Operation...Optional...should be unique * parameters: * - name: customerId * in: path * description: Customer Id * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Customer familyMembers * content: * application/json: * schema: * $ref: '#/components/schemas/getCustomerFamilies' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerFamilyMembers */ routes.get("/customer/family/:customerId", auth, (req, res) => { log.info("On Route [customer][families][" + req.params.customerId + "]"); try { var controler = require("../controller/customer"); controler.getCustomerFamilyMembers(req, res); } catch (error) { log.info("On Route [customer][families], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /customer/lastfilledrecord/{customerId}/{bookingId}: * get: * tags: * - developers * summary: Get Customers Last Filled History * description: Get Customers Last Filled Report History * operationId: getCustomerLastFiledData #To Identify Operation...Optional...should be unique * parameters: * - name: customerId * in: path * description: Customer Id * type: string * required: true * - name: bookingId * in: path * description: booking Id * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Customers Last Filled Report Data * content: * application/json: * schema: * $ref: '#/components/schemas/customerLastFilledRecord' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getCustomerLastFiledData */ routes.get( "/customer/lastfilledrecord/:customerId/:bookingId", auth, (req, res) => { log.info( "On Route [GET], [customer][lastfilledrecord][" + req.params.customerId + "][" + req.params.bookingId + "]" ); try { var controler = require("../controller/customer"); controler.getCustomerLastFiledData(req, res); } catch (error) { log.info("On Route [GET],[customer][lastfilledrecord], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } } ); // routes.get('/viewpdf', (req, res) => { // log.info('On Route [gen-preview]'); // try { // var controler = require('../controller/generatePreview'); // controler.generateReportPdf(req, res); // } catch (error) { // log.info('On Route [gen-preview], [' + error + ']'); // res.status(404).json({ msg: "Invalid Request" }); // } // }); /** * @openapi * /report: * post: * tags: * - developers * summary: Add Report Details * description: Adds an Booking Details * operationId: addReport * requestBody: * description: Add Report Details * content: * application/json: * schema: * $ref: '#/components/schemas/addReport' * required: false * responses: * 200: * description: Report Created * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: createReport */ routes.post("/report", auth, (req, res) => { log.info("On Route [Report]"); try { var controler = require("../controller/customer"); //var controler = require('../controller/report'); controler.createReport(req, res); } catch (error) { log.info("On Route [Report], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /report/{bookingId}: * get: * tags: * - developers * summary: Get Booking Reports * description: Get Booking Reports * operationId: getBookingReports #To Identify Operation...Optional...should be unique * parameters: * - name: bookingId * in: path * description: Booking Id * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Booking Reports * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getBookingReports */ routes.get("/report/:bookingId", auth, (req, res) => { log.info("On Route [report/bookingId]"); try { var controler = require("../controller/report"); controler.getReportsByBookingId(req, res); } catch (error) { log.info("On Route [report/bookingId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /report/save: * post: * tags: * - developers * summary: Add Report Details * description: Adds an Booking Details * operationId: addReport * requestBody: * description: Add Report Details * content: * application/json: * schema: * $ref: '#/components/schemas/addReport' * required: false * responses: * 200: * description: Report Created * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: createReport */ routes.post("/report/save", auth, (req, res) => { log.info("On Route [Report]"); try { var controler = require("../controller/report"); controler.saveReport(req, res); } catch (error) { log.info("On Route [Report], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/report/generate/bulkreport", auth, (req, res) => { log.info("On Route [Report][generate][bulkreport]"); try { var controler = require("../controller/generateBulkReport"); controler.generateReportsInBulk(req, res); } catch (error) { log.info("On Route [Report], [generate][bulkreport], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // /** // * @openapi // * /report/preview: // * post: // * tags: // * - developers // * summary: Report Preview // * description: Report Preview // * operationId: createPreview // * requestBody: // * description: Report Preview // * content: // * application/json: // * schema: // * $ref: '#/components/schemas/addReport' // * required: false // * responses: // * 200: // * description: Report Created // * content: // * application/json: // * schema: // * $ref: '#/components/schemas/responseMessge' // * 404: // * description: Parameter Missing , Invalid Request // * content: // * application/json: // * schema: // * $ref: '#/components/schemas/responseMessge' // * 401: // * description: Unauthorized access , Invalid Token // * content: // * application/json: // * schema: // * $ref: '#/components/schemas/responseMessge' // * x-codegen-request-body-name: createReportPreview // */ // routes.post('/report/preview', (req, res) => { // log.info('On Route [report/preview]'); // try { // var controler = require('../controller/customer'); // controler.bookingDetailsPreview(req, res); // } catch (error) { // log.info('On Route [report/preview], [' + error + ']'); // res.status(404).json({ msg: "Invalid Request" }); // } // }); /** * @openapi * /report/edit/{reportId}: * get: * tags: * - developers * summary: Get Report By ReportId * description: Get Report By ReportId * operationId: getReportByReportId #To Identify Operation...Optional...should be unique * parameters: * - name: reportId * in: path * description: Report Id * type: string * required: true * responses: * 200: * description: Rapid Test Nurse Portal Report By ReportId * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getReportByReportId */ routes.get("/report/edit/:reportId", auth, (req, res) => { log.info("On Route [Report],[report/edit/reportId]"); try { var controler = require("../controller/report"); controler.getSingleReportByReportId(req, res); } catch (error) { log.info("On Route [Report], [report/edit/reportId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /report/edit/{reportId}: * post: * tags: * - developers * summary: Edit Report Details * description: Edits an Booking Details * operationId: editReport * requestBody: * description: Edit Report Details * content: * application/json: * schema: * $ref: '#/components/schemas/editReport' * required: false * responses: * 200: * description: Report Updated * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: editReport */ routes.post("/report/edit/:reportId", auth, (req, res) => { log.info("On Route [Report],[report/edit/reportId]"); try { var controler = require("../controller/report"); controler.updateReportDetails(req, res); } catch (error) { log.info("On Route [Report], [report/edit/reportId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /report/resend: * post: * tags: * - developers * summary: Send Report Details * description: send Report * operationId: sendReport * requestBody: * description: Send Report Details * content: * application/json: * schema: * $ref: '#/components/schemas/sendReport' * required: false * responses: * 200: * description: Report Sent * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: sendReport */ routes.post("/report/resend", auth, (req, res) => { log.info("On Route [Report],[report/resend]"); try { var controler = require("../controller/report"); controler.sendReport(req, res); } catch (error) { log.info("On Route [Report], [report/resend], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /booking/reminder: * post: * tags: * - developers * summary: Send Reminder * description: send Reminder * operationId: sendReminder * requestBody: * description: Send Reminder * content: * application/json: * schema: * $ref: '#/components/schemas/sendReminder' * required: false * responses: * 200: * description: Reminder Sent * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: sendReminder */ routes.post("/booking/reminder", auth, (req, res) => { log.info("On Route [Booking],[reminder]"); try { var controler = require("../controller/customer"); controler.sendReminder(req, res); } catch (error) { log.info("On Route [Booking],[reminder], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/report/send", (req, res) => { log.info("On Route [report/send]"); try { let email = req.body.email; let link = req.body.link; let transporter = nodemailer.createTransport({ host: process.env.EMAIL_HOST, port: process.env.EMAIL_PORT, secure: false, auth: { user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASS, }, }); let info = transporter.sendMail({ from: '"RapidTest" ', // sender address to: email, // list of receivers subject: "Report", // Subject line text: "Hi There,\n\nBelow is your test report PFA.\n\nThanks & Regards.\nTeam RapidTest", // plain text body html: "

Hi There,

Below is your test report PFA.

Thanks & Regards.

Team RapidTest

", // html body attachments: [ { filename: "Reports.pdf", path: link, }, ], }); res.status(200).json({ msg: "Report sent successfully" }); } catch (error) { log.info("On Route [report/send], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); // routes.post('/report/resend', (req, res) => { // log.info('On Route [report/send]'); // try { // let email = req.body.email; // let link = req.body.link; // let transporter = nodemailer.createTransport({ // host: process.env.EMAIL_HOST, // port: process.env.EMAIL_PORT, // secure: false, // auth: { // user: process.env.EMAIL_USER, // pass: process.env.EMAIL_PASS, // }, // }); // let info = transporter.sendMail({ // from: '"RapidTest" ', // sender address // to: email, // list of receivers // subject: "Report", // Subject line // text: "Hi There,\n\nBelow is your test report : \n\n"+link+"\n\n\nThanks & Regards.\nTeam RapidTest", // plain text body // html: "

Hi There,

Below is your test report :

"+link+"

Thanks & Regards.

Team RapidTest

", // html body // attachments: [ // { // filename: 'Reports.pdf', // path: link // } // ] // }); // res.status(200).json({ msg: "Report sent successfully" }); // } catch (error) { // log.info('On Route [report/send], [' + error + ']'); // res.status(404).json({ msg: "Invalid Request" }); // } // }); /** * @openapi * /profile/: * post: * tags: * - developers * summary: Get Nurse Profile * description: Get Rapid Test Nurse Profile Informaion * operationId: profile #To Identify Operation...Optional...should be unique * requestBody: * description: Get Nurse Profile Info Body * content: * application/json: * schema: * $ref: '#/components/schemas/nurseProfile' * required: false * responses: * 200: * description: Rapid Test Nurse Profile * content: * application/json: * schema: * $ref: '#/components/schemas/nurseProfile' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getBookingData */ routes.post("/profile", (req, res) => { log.info("On Route [profile]"); try { var controler = require("../controller/profile"); controler.getProfileInfo(req, res); } catch (error) { log.info("On Route [profile], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /admin/testtypes: * get: * tags: * - developers * summary: Get All Test Types * description: Get All Test Types * operationId: getTestTypes #To Identify Operation...Optional...should be unique * responses: * 200: * description: Get All Test Types * content: * application/json: * schema: * $ref: '#/components/schemas/testTypesModel' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getReportByReportId */ routes.get("/admin/testtypes", auth, (req, res) => { log.info("On Route [Admin],[/admin/testtypes]"); try { var controler = require("../controller/admin"); controler.getTestTypes(req, res); } catch (error) { log.info("On Route [Admin], [/admin/testtypes], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/admin/nurses", auth, (req, res) => { log.info("On Route [Admin],[/admin/nurses]"); try { var controler = require("../controller/admin"); controler.getNursesList(req, res); } catch (error) { log.info("On Route [Admin], [/admin/nurses], [" + error + "]"); res.status(400).json({ msg: "Invalid Request" }); } }); /** * @openapi * /admin/testtypes/status: * post: * tags: * - developers * summary: Set Test Type Status * description: Set Test Type Status * operationId: setTestTypeStatus #To Identify Operation...Optional...should be unique * requestBody: * description: Set Test Type Status * content: * application/json: * schema: * $ref: '#/components/schemas/setDeviceStatus' * required: false * responses: * 200: * description: Set Test Type Status * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: setTestTypeStatus */ routes.post("/admin/testtypes/status", auth, (req, res) => { log.info("On Route [Admin],[/admin/testtypes/status]"); try { var controler = require("../controller/admin"); controler.setTestTypeStatus(req, res); } catch (error) { log.info("On Route [Admin], [/admin/testtypes], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /admin/testtype/bulk: * post: * tags: * - developers * summary: Upload Test Types * description: Upload Test Types * operationId: uploadTestTypes #To Identify Operation...Optional...should be unique * responses: * 200: * description: Upload Test Types * content: * application/json: * schema: * $ref: '#/components/schemas/testTypesModel' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getReportByReportId */ routes.post("/admin/testtype/bulk", auth, (req, res) => { log.info("On Route [Admin],[/admin/testtype/bulk]"); try { var controler = require("../controller/admin"); // console.log("files", req.files); // console.log("body",req.body); controler.addBulkTestTypes(req, res); } catch (error) { log.info("On Route [Admin], [/admin/testtype/bulk], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /admin/testtype/add: * post: * tags: * - developers * summary: Add Test Type * description: Add Test Type * operationId: addTestType #To Identify Operation...Optional...should be unique * requestBody: * description: Add Test Type * content: * application/json: * schema: * $ref: '#/components/schemas/addTestTypesModel' * required: false * responses: * 200: * description: Successful Response * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getReportByReportId */ routes.post("/admin/testtype/add", auth, (req, res) => { log.info("On Route [Admin],[/admin/testtypes/add]"); try { var controler = require("../controller/admin"); controler.addSingleTestType(req, res); } catch (error) { log.info("On Route [Admin], [/admin/testtypes/add], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /admin/testtype/edit: * post: * tags: * - developers * summary: Edit Test Type * description: Edit Test Type * operationId: editTestType #To Identify Operation...Optional...should be unique * requestBody: * description: Edit Test Type * content: * application/json: * schema: * $ref: '#/components/schemas/editTestTypesModel' * required: false * responses: * 200: * description: Successful Response * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 400: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getReportByReportId */ routes.post("/admin/testtype/edit", auth, (req, res) => { log.info("On Route [Admin],[/admin/testtypes/edit]"); try { var controler = require("../controller/admin"); controler.editSingleTestType(req, res); } catch (error) { log.info("On Route [Admin], [/admin/testtypes/edit], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); //COUPONS routes.get("/admin/coupons", auth, (req, res) => { log.info("On Route [Admin], [/admin/coupons] [GET]"); try { var controler = require("../controller/coupons"); controler.getAllCoupons(req, res); } catch (error) { log.info("On Route [Admin], [/admin/coupons], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/coupons", auth, (req, res) => { log.info("On Route [Admin], [/admin/coupons] [POST]"); try { var controler = require("../controller/coupons"); controler.addCoupon(req, res); } catch (error) { log.info("On Route [Admin], [/admin/coupons], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/coupons/:couponId", auth, (req, res) => { log.info("On Route [Admin], [/admin/coupons/:couponId] [POST]"); try { var controler = require("../controller/coupons"); controler.editSingleCoupon(req, res); } catch (error) { log.info("On Route [Admin], [/admin/coupons/:couponId], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/coupon/validate", auth, (req, res) => { log.info(`On Route [coupon], [/coupon/validate] [GET]`); try { var controler = require("../controller/coupons"); controler.validateCouponCode(req, res); } catch (error) { log.info("On Route [Admin], [/admin/coupons], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); //PRODUCTS routes.get("/admin/products", auth, (req, res) => { log.info("On Route [Admin], [/admin/products] [GET]"); try { var controler = require("../controller/products"); controler.getAllProducts(req, res); } catch (error) { log.info("On Route [Admin], [/admin/products], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/products", auth, (req, res) => { log.info("On Route [Admin], [/admin/products] [POST]"); try { var controler = require("../controller/products"); controler.addProduct(req, res); } catch (error) { log.info("On Route [Admin], [/admin/products], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/products/:productId", auth, (req, res) => { log.info("On Route [Admin], [/admin/products/:productId] [POST]"); try { var controler = require("../controller/products"); controler.editSingleProduct(req, res); } catch (error) { log.info( "On Route [Admin], [/admin/products/:productId], [" + error + "]" ); res.status(404).json({ msg: "Invalid Request" }); } }); routes.get("/product/validate/:token", auth, (req, res) => { log.info("On Route [Product], [/product/validate/:token] [GET]"); try { var controler = require("../controller/products"); controler.validateToken(req, res); } catch (error) { log.info("On Route [Admin], [/product/validate/:token], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/admin/products/delete/:productId", auth, (req, res) => { log.info("On Route [Admin], [/admin/products/delete] [POST]"); try { var controler = require("../controller/products"); controler.deleteSingleProduct(req, res); } catch (error) { log.info("On Route [Admin], [/admin/products/delete], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); routes.post("/payment/status", auth, (req, res) => { log.info("On Route [Payment], [Status] [POST]"); try { var controler = require("../controller/payment"); controler.payment(req, res); } catch (error) { log.info("On Route [Payment], [Status], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /payments/: * get: * tags: * - developers * summary: Get Payments Session Data * description: Get Rapid Mobile Test Payment Reports * operationId: getCompletedSession #To Identify Operation...Optional...should be unique * responses: * 200: * description: Get Rapid Mobile Test Payment Reports * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: getBookingData */ routes.post("/payments/", auth, (req, res) => { log.info("On Route [getPayments]"); try { var controler = require("../controller/payment"); controler.getPayments(req, res); } catch (error) { log.info("On Route [getPayments], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); /** * @openapi * /payments/export/: * get: * tags: * - developers * summary: Export Payments Data * description: Get Rapid Mobile Test Nurse Portal Payment Data * operationId: getCompletedSession #To Identify Operation...Optional...should be unique * responses: * 200: * description: Rapid Mobile Test Nurse Portal Payment Data * content: * application/json: * schema: * $ref: '#/components/schemas/getBookings' * 404: * description: Parameter Missing , Invalid Request * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * 401: * description: Unauthorized access , Invalid Token * content: * application/json: * schema: * $ref: '#/components/schemas/responseMessge' * x-codegen-request-body-name: ExportComplededSesssions */ routes.post("/payments/export/", auth, (req, res) => { log.info("On Route [getPaymentsExport][Export]"); try { var controler = require("../controller/payment"); controler.getPaymentsExport(req, res); } catch (error) { log.info("On Route [getPaymentsExport][Export], [" + error + "]"); res.status(404).json({ msg: "Invalid Request" }); } }); module.exports = routes;