Fix fix fix!

This commit is contained in:
Stefan-5422
2022-06-14 20:03:17 +02:00
parent 58a113804e
commit 1e160a94d2
6 changed files with 6998 additions and 13 deletions
+6943
View File
File diff suppressed because it is too large Load Diff
+4 -2
View File
@@ -28,21 +28,23 @@
"@types/nodemailer": "^6.4.4",
"@types/redis": "^4.0.11",
"argon2": "^0.28.5",
"axios": "^0.26.1",
"cors": "^2.8.5",
"dotenv": "^16.0.0",
"express": "^4.17.3",
"handlebars": "^4.7.7",
"jsonwebtoken": "^8.5.1",
"mjml": "^4.12.0",
"nanoid": "^3.3.2",
"node-fetch": "^3.2.3",
"nodemailer": "^6.7.2",
"prisma": "^3.10.0",
"redis": "^4.0.4",
"axios": "^0.26.1",
"node-fetch": "^3.2.3",
"ts-node": "^10.5.0",
"typescript": "^4.5.5"
},
"devDependencies": {
"@types/cors": "^2.8.12",
"@types/node": "^8.9.5",
"nodemon": "^2.0.15"
}
+3 -3
View File
@@ -46,7 +46,7 @@ export const register = async (req: Request, res: Response) => {
}
const hash = await argon2.hash("salty" + password + "salty", {
type: argon2.argon2id
type: argon2.argon2id,
});
if (!(await prisma.organization.findUnique({ where: { id: organization } }))) {
@@ -97,7 +97,7 @@ export const authenthicate = async (req: Request, res: Response) => {
}
const hash = await argon2.hash("salty" + password + "salty", {
type: argon2.argon2id
type: argon2.argon2id,
});
const user = await prisma.user.findUnique({ where: { email: name } });
@@ -117,7 +117,7 @@ export const authenthicate = async (req: Request, res: Response) => {
req.headers.authorization = jwt.sign(userjwt, JWT_SECRET);
res.status(200).json(createDefaultSucces("Logged in succesfully",{}))
res.status(200).json(createDefaultSucces("Logged in succesfully", { token: req.headers.authorization }));
};
export const verifyEmail = async (req: Request, res: Response) => {
+14 -4
View File
@@ -2,22 +2,32 @@ import { Request, Response } from "express";
import { HttpStatusCodes } from "../statusCodes";
import { DataType } from "../datatypes";
import prisma from "../lib/prisma.lib";
import { connect } from "net";
export const addOrder = async (req: Request, res: Response) => {
if (typeof req.body.userId !== "number" || !Array.isArray(req.body.pizzas)) {
if (!Array.isArray(req.body.pizzas)) {
res.status(HttpStatusCodes.BAD_REQUEST).json({
userId: DataType.NUMBER,
pizzas: DataType.ARRAY,
});
return;
}
const userId = req.auth?.id;
if (!userId) return res.status(500).json();
console.log(req.body.pizzas);
const pizzas = req.body.pizzas.map((a: number) => ({
id: a,
}));
console.log(pizzas);
const order = await prisma.order.create({
data: {
userId: req.body.userId,
pizzas: req.body.pizzas,
userId: userId,
pizzas: {
connect: pizzas,
},
},
});
+30
View File
@@ -1,8 +1,11 @@
import express, { NextFunction, Request, Response } from "express";
import dotenv from "dotenv";
import argon2 from "argon2";
import cors from "cors";
import adminRoutes from "./routes/auth.route";
import { requireAuthentication } from "./middleware/auth.middle";
import prisma from "./lib/prisma.lib";
const ordersRoutes = require("./routes/orders.route");
const organizationsRoutes = require("./routes/organisations.route");
const pizzasRoutes = require("./routes/pizzas.route");
@@ -16,6 +19,8 @@ const app = express();
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
app.use(cors());
app.use((err: any, req: Request, res: Response, next: NextFunction) => {
if (err) {
res.status(400).send({
@@ -34,6 +39,31 @@ app.use("/pizza", pizzasRoutes);
app.use("/restaurant", restaurantsRoutes);
async function main() {
if ((await prisma.user.findUnique({ where: { email: "[email protected]" } })) == undefined)
await prisma.user.create({
data: {
role: "ADMIN",
email: "[email protected]",
passwordHash: await argon2.hash("salty" + "admin" + "salty", {
type: argon2.argon2id,
}),
status: "ENABLED",
organization: {
connectOrCreate: {
where: { id: 1 },
create: {
id: 1,
domain: "@admin.admin",
name: "admin_org",
},
},
},
passwordSalt: "salty",
},
});
console.log(await prisma.user.count());
app.get("/", (_req, res) => {
res.send("Hello World!");
});
+1 -1
View File
@@ -6,7 +6,7 @@ const router = express.Router();
router.get("/", requireAuthentication, getOrders);
router.get("/:id", getOrder);
router.post("/", addOrder);
router.post("/", requireAuthentication, addOrder);
router.put("/:id", updateOrder);
router.delete("/:id", deleteOrder);