fixes and admin data

This commit is contained in:
2021-02-09 18:30:17 +01:00
parent 9dd4d10396
commit 93bff025e9
73 changed files with 1638 additions and 2411 deletions

View File

@@ -2,6 +2,7 @@ const Restaurant = require("../models/restaurant.js");
const Dish = require("../models/dish.js");
const User = require("../models/users.js");
const Payments = require("../models/payments.js");
const Report = require("../models/reports.js")
const { deleteImage } = require("./oceanServices.js");
const { newError } = require("./services.js");
const mongoose = require("mongoose");
@@ -398,6 +399,18 @@ async function setRestaurantVisibility(restaurantId, visible) {
);
}
async function fetchAllAdminData(){
const restaurants = await Restaurant.find({}, "_id name city adress subscriptionActive subscriptionDue phone dishes");
const reports = await Report.find({});
const users = await User.find({}, "_id email firstname lastname login billing isRestaurant restaurants trialUsed photos");
const result = {
restaurants: restaurants,
reports: reports,
users: users
}
return result;
}
exports.changeUserPass = changeUserPass;
exports.removeDish = removeDish;
exports.removeRestaurant = removeRestaurant;
@@ -416,3 +429,4 @@ exports.fetchUser = fetchUser;
exports.initializePayment = initializePayment;
exports.setRestaurantVisibility = setRestaurantVisibility;
exports.startTrial = startTrial;
exports.fetchAllAdminData = fetchAllAdminData;

View File

@@ -6,7 +6,8 @@ const sanitizer = require("string-sanitizer");
const { renameBlob } = require("./oceanServices.js");
const jwt = require("jsonwebtoken");
const bcrypt = require("bcryptjs");
const { jwtSecret } = require("../config/index.js");
const crypto = require("crypto")
const { jwtSecret, publicKey } = require("../config/index.js");
function newError(message, status) {
const error = {
@@ -25,6 +26,17 @@ function handleError(error, responseObject) {
}
}
function encryptRSA(data) {
const encrypted = crypto.publicEncrypt({
key: publicKey,
padding: crypto.constants.RSA_PKCS1_OAEP_PADDING,
oaepHash: "sha256"
},
Buffer.from(JSON.stringify(data))
)
return encrypted;
}
async function validateRestaurant(id) {
if (!mongoose.Types.ObjectId.isValid(id))
throw newError("Nieprawidłowy ID", 204);
@@ -193,3 +205,4 @@ exports.hashPass = hashPass;
exports.saveImage = saveImage;
exports.generateRefreshToken = generateRefreshToken;
exports.validateRefreshToken = validateRefreshToken;
exports.encryptRSA = encryptRSA