✨ feat(account, order, plan, profile, redis): enhance functionality and security
- Updated CORS settings for frontend compatibility. - Integrated Redis URL configuration. - Improved login response structure in account service. - Added role-based authorization for order and plan management. - Enhanced error handling and logging in profile and plan services. - Updated Swagger documentation for clarity on order statuses. - Configured Redis connection for better performance.
This commit is contained in:
+2
-4
@@ -32,7 +32,7 @@ const verify_account_using_link = catchAsync(async (req, res) => {
|
||||
const login_user = catchAsync(async (req, res) => {
|
||||
const result = await account_services.login_user_into_db(req);
|
||||
// set access token into cookie
|
||||
res.cookie("access_token", result, {
|
||||
res.cookie("access_token", result.accessToken, {
|
||||
secure: configs.env === "production",
|
||||
httpOnly: true,
|
||||
});
|
||||
@@ -40,9 +40,7 @@ const login_user = catchAsync(async (req, res) => {
|
||||
statusCode: 200,
|
||||
success: true,
|
||||
message: "User logged in successfully",
|
||||
data: {
|
||||
accessToken: result,
|
||||
},
|
||||
data: result,
|
||||
});
|
||||
});
|
||||
const get_user_account = catchAsync(async (req, res) => {
|
||||
|
||||
+24
-1
@@ -60,6 +60,10 @@ const create_account_into_db = async (req) => {
|
||||
subject: "Welcome to Quick Launch - Verification OTP",
|
||||
email: payload.email,
|
||||
textBody: "You can use otp or verification link for verifying your account"
|
||||
}, {
|
||||
attempts: 1,
|
||||
removeOnComplete: true,
|
||||
removeOnFail: true,
|
||||
});
|
||||
return null;
|
||||
};
|
||||
@@ -143,6 +147,15 @@ const login_user_into_db = async (req) => {
|
||||
where: {
|
||||
email: payload.email,
|
||||
},
|
||||
select: {
|
||||
id: true,
|
||||
email: true,
|
||||
role: true,
|
||||
isAccountVerified: true,
|
||||
isDeleted: true,
|
||||
password: true,
|
||||
profile: true,
|
||||
},
|
||||
});
|
||||
// check if account exists
|
||||
if (!account) {
|
||||
@@ -167,7 +180,17 @@ const login_user_into_db = async (req) => {
|
||||
role: account.role,
|
||||
accountId: account.id,
|
||||
}, configs.jwt.access_token, configs.jwt.access_expires);
|
||||
return accessToken;
|
||||
const finalOutputData = {
|
||||
id: account.id,
|
||||
email: account.email,
|
||||
role: account.role,
|
||||
shopName: account?.profile?.shopName,
|
||||
shopLogo: account?.profile?.shopLogo,
|
||||
};
|
||||
return {
|
||||
accessToken,
|
||||
profile: finalOutputData
|
||||
};
|
||||
};
|
||||
const get_user_account_from_db = async (req) => {
|
||||
const user = req?.user;
|
||||
|
||||
Reference in New Issue
Block a user