feat: update user status initialization to use 'pending' instead of 'inactive'
This commit is contained in:
parent
964ff2f37e
commit
f475242f84
@ -17,7 +17,7 @@ class UserStatusController {
|
||||
// If no status exists, create one with default values
|
||||
if (!status) {
|
||||
logger.info(`[UserStatusController] No status found for userId: ${userId}, creating default status`);
|
||||
await userStatusRepo.initializeUserStatus(userId, 'inactive');
|
||||
await userStatusRepo.initializeUserStatus(userId, 'pending');
|
||||
status = await userStatusRepo.getStatusByUserId(userId);
|
||||
}
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ class UserStatusRepository {
|
||||
}
|
||||
}
|
||||
|
||||
async initializeUserStatus(userId, status = 'inactive') {
|
||||
async initializeUserStatus(userId, status = 'pending') {
|
||||
logger.info('UserStatusRepository.initializeUserStatus:start', { userId, status });
|
||||
try {
|
||||
const conn = this.unitOfWork.connection;
|
||||
@ -57,7 +57,8 @@ class UserStatusRepository {
|
||||
const conn = this.unitOfWork.connection;
|
||||
await conn.query(
|
||||
`UPDATE user_status
|
||||
SET registration_completed = TRUE, status = 'active'
|
||||
SET registration_completed = TRUE,
|
||||
status = CASE WHEN is_admin_verified = 1 THEN 'active' ELSE 'pending' END
|
||||
WHERE user_id = ?`,
|
||||
[userId]
|
||||
);
|
||||
|
||||
@ -46,7 +46,7 @@ async function createCompanyUser() {
|
||||
// Initialize user status (defaults: not verified, not completed)
|
||||
await uow.connection.query(
|
||||
`INSERT INTO user_status (user_id, status, is_admin_verified, email_verified, profile_completed, documents_uploaded, contract_signed)
|
||||
VALUES (?, 'active', 0, 0, 0, 0, 0)`,
|
||||
VALUES (?, 'pending', 0, 0, 0, 0, 0)`,
|
||||
[userId]
|
||||
);
|
||||
|
||||
|
||||
@ -45,7 +45,7 @@ async function createPersonalUser() {
|
||||
// Initialize user status
|
||||
await uow.connection.query(
|
||||
`INSERT INTO user_status (user_id, status, is_admin_verified, email_verified, profile_completed, documents_uploaded, contract_signed)
|
||||
VALUES (?, 'active', 0, 0, 0, 0, 0)`,
|
||||
VALUES (?, 'pending', 0, 0, 0, 0, 0)`,
|
||||
[userId]
|
||||
);
|
||||
|
||||
|
||||
@ -428,9 +428,14 @@ class AdminService {
|
||||
await unitOfWork.connection.query(
|
||||
`UPDATE user_status
|
||||
SET is_admin_verified = ?,
|
||||
admin_verified_at = ?
|
||||
admin_verified_at = ?,
|
||||
status = CASE
|
||||
WHEN status IN ('suspended','archived') THEN status
|
||||
WHEN ? = 1 THEN 'active'
|
||||
ELSE 'pending'
|
||||
END
|
||||
WHERE user_id = ?`,
|
||||
[isAdminVerified, timestamp, userId]
|
||||
[isAdminVerified, timestamp, isAdminVerified, userId]
|
||||
);
|
||||
|
||||
logger.info('AdminService.updateUserVerification:success', { userId, isAdminVerified });
|
||||
|
||||
@ -431,7 +431,7 @@ class ReferralService {
|
||||
const personalRepo = new PersonalUserRepository(unitOfWork);
|
||||
const user = await personalRepo.create(registrationData);
|
||||
|
||||
await UserStatusService.initializeUserStatus(user.id, 'personal', unitOfWork, 'inactive');
|
||||
await UserStatusService.initializeUserStatus(user.id, 'personal', unitOfWork, 'pending');
|
||||
|
||||
if (UserSettingsRepository) {
|
||||
const settingsRepo = new UserSettingsRepository(unitOfWork);
|
||||
@ -479,7 +479,7 @@ class ReferralService {
|
||||
contactPersonPhone
|
||||
});
|
||||
|
||||
await UserStatusService.initializeUserStatus(user.id, 'company', unitOfWork, 'inactive');
|
||||
await UserStatusService.initializeUserStatus(user.id, 'company', unitOfWork, 'pending');
|
||||
|
||||
if (UserSettingsRepository) {
|
||||
const settingsRepo = new UserSettingsRepository(unitOfWork);
|
||||
|
||||
@ -2,7 +2,7 @@ const UserStatusRepository = require('../../repositories/status/UserStatusReposi
|
||||
const { logger } = require('../../middleware/logger');
|
||||
|
||||
class UserStatusService {
|
||||
static async initializeUserStatus(userId, userType, unitOfWork, status = 'inactive') {
|
||||
static async initializeUserStatus(userId, userType, unitOfWork, status = 'pending') {
|
||||
logger.info('UserStatusService.initializeUserStatus:start', { userId, userType, status });
|
||||
try {
|
||||
const repo = new UserStatusRepository(unitOfWork);
|
||||
|
||||
@ -31,7 +31,7 @@ class CompanyUserService {
|
||||
logger.info('CompanyUserService.createCompanyUser:company_created', { companyId: newCompany.id });
|
||||
|
||||
// Initialize user status
|
||||
await UserStatusService.initializeUserStatus(newCompany.id, 'company', unitOfWork, 'inactive');
|
||||
await UserStatusService.initializeUserStatus(newCompany.id, 'company', unitOfWork, 'pending');
|
||||
logger.info('CompanyUserService.createCompanyUser:user_status_initialized', { companyId: newCompany.id });
|
||||
|
||||
// Send registration email to the new company user
|
||||
|
||||
@ -31,7 +31,7 @@ class PersonalUserService {
|
||||
logger.info('PersonalUserService.createPersonalUser:user_created', { userId: newUser.id });
|
||||
|
||||
// Initialize user status
|
||||
await UserStatusService.initializeUserStatus(newUser.id, 'personal', unitOfWork, 'inactive');
|
||||
await UserStatusService.initializeUserStatus(newUser.id, 'personal', unitOfWork, 'pending');
|
||||
logger.info('PersonalUserService.createPersonalUser:user_status_initialized', { userId: newUser.id });
|
||||
|
||||
// Handle referral if provided
|
||||
|
||||
Loading…
Reference in New Issue
Block a user