fixes and admin data
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user