📂Better folder structures and file names in backend

This commit is contained in:
canove
2020-07-08 11:48:11 -03:00
parent c9cc973088
commit b1bed3623e
11 changed files with 55 additions and 68 deletions

View File

@@ -1,4 +1,3 @@
// require("dotenv/config");
require("express-async-errors"); require("express-async-errors");
const express = require("express"); const express = require("express");
const path = require("path"); const path = require("path");
@@ -11,8 +10,8 @@ const wBot = require("./libs/wbot");
const wbotMessageListener = require("./services/wbotMessageListener"); const wbotMessageListener = require("./services/wbotMessageListener");
const wbotMonitor = require("./services/wbotMonitor"); const wbotMonitor = require("./services/wbotMonitor");
const messageRoutes = require("./routes/message"); const MessagesRoutes = require("./routes/messages");
const ContactRoutes = require("./routes/contacts"); const ContactsRoutes = require("./routes/contacts");
const AuthRoutes = require("./routes/auth"); const AuthRoutes = require("./routes/auth");
const WhatsRoutes = require("./routes/whatsapp"); const WhatsRoutes = require("./routes/whatsapp");
@@ -32,8 +31,8 @@ app.use(express.json());
app.use(multer({ storage: fileStorage }).single("media")); app.use(multer({ storage: fileStorage }).single("media"));
app.use("/public", express.static(path.join(__dirname, "public"))); app.use("/public", express.static(path.join(__dirname, "public")));
app.use(messageRoutes); app.use(MessagesRoutes);
app.use(ContactRoutes); app.use(ContactsRoutes);
app.use(WhatsRoutes); app.use(WhatsRoutes);
app.use("/auth", AuthRoutes); app.use("/auth", AuthRoutes);

View File

@@ -4,7 +4,7 @@ const Sequelize = require("sequelize");
const { getIO } = require("../libs/socket"); const { getIO } = require("../libs/socket");
const { getWbot } = require("../libs/wbot"); const { getWbot } = require("../libs/wbot");
exports.getContacts = async (req, res) => { exports.index = async (req, res) => {
const { searchParam = "" } = req.query; const { searchParam = "" } = req.query;
const lowerSerachParam = searchParam.toLowerCase(); const lowerSerachParam = searchParam.toLowerCase();
@@ -43,7 +43,7 @@ exports.getContacts = async (req, res) => {
return res.json(contacts); return res.json(contacts);
}; };
exports.createContact = async (req, res) => { exports.store = async (req, res) => {
const wbot = getWbot(); const wbot = getWbot();
const io = getIO(); const io = getIO();
const { number, name } = req.body; const { number, name } = req.body;

View File

@@ -1,4 +1,3 @@
const fs = require("fs");
const Message = require("../models/Message"); const Message = require("../models/Message");
const Contact = require("../models/Contact"); const Contact = require("../models/Contact");
const { getIO } = require("../libs/socket"); const { getIO } = require("../libs/socket");
@@ -25,7 +24,7 @@ const setMessagesAsRead = async contactId => {
}); });
}; };
exports.getContactMessages = async (req, res, next) => { exports.index = async (req, res, next) => {
const wbot = getWbot(); const wbot = getWbot();
const io = getIO(); const io = getIO();
@@ -76,7 +75,7 @@ exports.getContactMessages = async (req, res, next) => {
}); });
}; };
exports.postCreateContactMessage = async (req, res, next) => { exports.store = async (req, res, next) => {
const wbot = getWbot(); const wbot = getWbot();
const io = getIO(); const io = getIO();

View File

@@ -4,26 +4,7 @@ const jwt = require("jsonwebtoken");
const User = require("../models/User"); const User = require("../models/User");
exports.signup = async (req, res, next) => { exports.store = async (req, res, next) => {
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(400).json({ error: "Validation failed" });
}
const { name, password, email } = req.body;
const hashedPw = await bcrypt.hash(password, 12);
const user = User.build({
email: email,
password: hashedPw,
name: name,
});
const result = await user.save();
res.status(201).json({ message: "User created!", userId: result.id });
};
exports.login = async (req, res, next) => {
const { email, password } = req.body; const { email, password } = req.body;
const user = await User.findOne({ where: { email: email } }); const user = await User.findOne({ where: { email: email } });

View File

@@ -0,0 +1,25 @@
const { validationResult } = require("express-validator");
const bcrypt = require("bcryptjs");
const User = require("../models/User");
exports.store = async (req, res, next) => {
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res
.status(400)
.json({ error: "Validation failed", data: errors.array() });
}
const { name, password, email } = req.body;
const hashedPw = await bcrypt.hash(password, 12);
const user = User.build({
email: email,
password: hashedPw,
name: name,
});
const result = await user.save();
res.status(201).json({ message: "User created!", userId: result.id });
};

View File

@@ -1,7 +1,8 @@
const express = require("express"); const express = require("express");
const { body } = require("express-validator"); const { body } = require("express-validator");
const User = require("../models/User"); const User = require("../models/User");
const authController = require("../controllers/auth"); const SessionController = require("../controllers/SessionController");
const UserController = require("../controllers/UserController");
const isAuth = require("../middleware/is-auth"); const isAuth = require("../middleware/is-auth");
const routes = express.Router(); const routes = express.Router();
@@ -23,10 +24,10 @@ routes.post(
body("password").trim().isLength({ min: 5 }), body("password").trim().isLength({ min: 5 }),
body("name").trim().not().isEmpty(), body("name").trim().not().isEmpty(),
], ],
authController.signup UserController.store
); );
routes.post("/login", authController.login); routes.post("/login", SessionController.store);
routes.get("/check", isAuth, (req, res) => { routes.get("/check", isAuth, (req, res) => {
res.status(200).json({ authenticated: true }); res.status(200).json({ authenticated: true });

View File

@@ -1,13 +1,13 @@
const express = require("express"); const express = require("express");
const isAuth = require("../middleware/is-auth"); const isAuth = require("../middleware/is-auth");
const ContactController = require("../controllers/contact"); const ContactController = require("../controllers/ContactController");
const routes = express.Router(); const routes = express.Router();
routes.get("/contacts", isAuth, ContactController.getContacts); routes.get("/contacts", isAuth, ContactController.index);
// routes.post(ContactController.postCreateContact); // routes.post(ContactController.postCreateContact);
routes.post("/contacts", isAuth, ContactController.createContact); routes.post("/contacts", isAuth, ContactController.store);
module.exports = routes; module.exports = routes;

View File

@@ -1,19 +0,0 @@
const express = require("express");
const isAuth = require("../middleware/is-auth");
const MessangeController = require("../controllers/message");
const routes = express.Router();
routes.get(
"/messages/:contactId",
isAuth,
MessangeController.getContactMessages
);
routes.post(
"/messages/:contactId",
isAuth,
MessangeController.postCreateContactMessage
);
module.exports = routes;

View File

@@ -0,0 +1,11 @@
const express = require("express");
const isAuth = require("../middleware/is-auth");
const MessageController = require("../controllers/MessageController");
const routes = express.Router();
routes.get("/messages/:contactId", isAuth, MessageController.index);
routes.post("/messages/:contactId", isAuth, MessageController.store);
module.exports = routes;

View File

@@ -6,17 +6,7 @@ const WhatsappController = require("../controllers/whatsapp");
const routes = express.Router(); const routes = express.Router();
routes.get("/whatsapp/session", isAuth, WhatsappController.getSession); routes.get("/whatsapp/session", isAuth, WhatsappController.getSession);
// routes.post(
// "/messages/:contactId",
// isAuth,
// WhatsappController.postCreateContactMessage
// );
routes.get("/whatsapp/contacts", isAuth, WhatsappController.getContacts); routes.get("/whatsapp/contacts", isAuth, WhatsappController.getContacts); // fetch contacts in user cellphone, not in use
// routes.post(
// "/messages/:contactId",
// isAuth,
// WhatsappController.postCreateContactMessage
// );
module.exports = routes; module.exports = routes;

View File

@@ -64,11 +64,11 @@ const SignUp = () => {
const handleSignUp = async e => { const handleSignUp = async e => {
e.preventDefault(); e.preventDefault();
try { try {
await api.put("/auth/signup", user); await api.post("/auth/signup", user);
history.push("/login");
} catch (err) { } catch (err) {
alert(err); alert(err);
} }
history.push("/login");
}; };
return ( return (