Refine user role permissions and data handling logic.

Update backend routes and frontend logic to correctly apply user role-based access controls and ensure accurate data processing for various features, including order and DLC management, while also addressing specific production errors and improving code robustness.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc8ba926-557c-4bf1-a2ea-ceabbcf38824
Replit-Commit-Checkpoint-Type: full_checkpoint
This commit is contained in:
michaelschal committed 2025-08-12 19:16:48 +00:00
1 parent b7adbd9ee8
commit 479577c4ff
299 files changed
+76 -16139

No files matched your search

-1
View File
@@ -1 +0,0 @@
# Assets placeholder
@@ -1,175 +0,0 @@
🔗 Database initialization: {
NODE_ENV: 'production',
isProduction: true,
hasDbUrl: true,
dbHost: 'logiflow-db'
}
🐳 PRODUCTION: Using standard PostgreSQL
✅ PostgreSQL connection test successful
🐳 PRODUCTION: Using PostgreSQL storage
🐳 PRODUCTION: Local auth configured with PostgreSQL sessions
🐳 PRODUCTION: Starting LogiFlow application
🐳 Environment: { NODE_ENV: 'production', DATABASE_URL: 'Present', PORT: '3000' }
🐳 Serving static files from: /app/dist/public
🐳 PRODUCTION: LogiFlow serving on port 3000
✅ Production admin user found: { id: 'admin_local', username: 'admin', passwordFormat: 'present' }
🔐 Production password comparison { suppliedLength: 5, storedFormat: '21ff482668...' }
✅ Password matched with hash.salt format
✅ Admin password works with current system
Server error: {
status: 500,
message: 'column user_groups.created_at does not exist',
error: error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3051:20 {
length: 120,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '59',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_relation.c',
line: '3665',
routine: 'errorMissingColumn'
}
}
error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3051:20
HEAD /api/health 200 in 3ms
Server error: {
status: 500,
message: 'column user_groups.created_at does not exist',
error: error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3051:20 {
length: 120,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '59',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_relation.c',
line: '3665',
routine: 'errorMissingColumn'
}
}
error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3051:20
@@ -1,182 +0,0 @@
🔗 Database initialization: {
NODE_ENV: 'production',
isProduction: true,
hasDbUrl: true,
dbHost: 'logiflow-db'
}
🐳 PRODUCTION: Using standard PostgreSQL
✅ PostgreSQL connection test successful
🐳 PRODUCTION: Using PostgreSQL storage
🐳 PRODUCTION: Local auth configured with PostgreSQL sessions
🐳 PRODUCTION: Starting LogiFlow application
🐳 Environment: { NODE_ENV: 'production', DATABASE_URL: 'Present', PORT: '3000' }
🔍 Using development storage and authentication
🔧 Using memory session store for development
Warning: connect.session() MemoryStore is not
designed for a production environment, as it will leak
memory, and will not scale past a single process.
🐳 Serving static files from: /app/dist/public
🐳 PRODUCTION: LogiFlow serving on port 3000
✅ Production admin user found: { id: 'admin_local', username: 'admin', passwordFormat: 'present' }
🔐 Production password comparison { suppliedLength: 5, storedFormat: '63d2ce518b...' }
✅ Password matched with hash.salt format
✅ Admin password works with current system
HEAD /api/health 200 in 5ms
Error updating user: error: duplicate key value violates unique constraint "users_email_key"
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.updateUser (file:///app/dist/index.js:1085:24)
at async file:///app/dist/index.js:4051:27 {
length: 210,
severity: 'ERROR',
code: '23505',
detail: 'Key (email)=(admin@logiflow.com) already exists.',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'users',
column: undefined,
dataType: undefined,
constraint: 'users_email_key',
file: 'nbtinsert.c',
line: '664',
routine: '_bt_check_unique'
}
PUT /api/users/_1754936203292 500 in 96ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 0ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 16ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 4ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 3ms
Error updating user: error: duplicate key value violates unique constraint "users_email_key"
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.updateUser (file:///app/dist/index.js:1085:24)
at async file:///app/dist/index.js:4051:27 {
length: 210,
severity: 'ERROR',
code: '23505',
detail: 'Key (email)=(admin@logiflow.com) already exists.',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'users',
column: undefined,
dataType: undefined,
constraint: 'users_email_key',
file: 'nbtinsert.c',
line: '664',
routine: '_bt_check_unique'
}
PUT /api/users/_1754936203292 500 in 44ms
HEAD /api/health 200 in 1ms
@@ -1,199 +0,0 @@
✅ Processed 0 groups for user admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: undefined,
endDate: undefined,
storeId: undefined,
userRole: 'admin'
}
Admin filtering with groupIds: undefined
Fetching all orders
GET /api/publicities 304 in 143ms
GET /api/user 304 in 37ms
Deliveries returned: 80 items
Customer orders returned from storage: 32 items
GET /api/deliveries 200 in 182ms
Orders returned: 46 items
GET /api/customer-orders 200 in 177ms
GET /api/tasks 200 in 162ms
GET /api/orders 200 in 191ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/dlc-products/stats 200 in 180ms
🔍 Querying user_groups for user: admin_local
GET /api/user 304 in 7ms
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getPublicities called with: { year: 2025, groupIds: undefined }
📢 Raw publicities found: 29
🏪 Participations found: 26
✅ Final publicities with participations: 29
📄 Sample publicity: {

,
pubNumber: '2526',
participations: [ { groupId: 2, groupName: 'Houdemont' } ]
}
GET /api/publicities 200 in 47ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/groups 200 in 8ms
HEAD /api/health 200 in 1ms
HEAD /api/health 200 in 0ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 33ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 ===== DÉBUT SCAN SCHÉMA BASE DE DONNÉES =====
⏰ Timestamp: 2025-08-12T08:18:10.753Z
❌ ERREUR lors du scan du schéma: TypeError: Cannot read properties of undefined (reading 'query')
at file:///app/dist/index.js:4455:45
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
GET /api/debug/log-schema 500 in 16ms
HEAD /api/health 200 in 0ms
@@ -1,201 +0,0 @@
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: undefined,
endDate: undefined,
storeId: undefined,
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: undefined
Fetching all deliveries
Deliveries returned: 80 items
GET /api/deliveries 304 in 28ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
userRole: 'admin'
}
Admin filtering with groupIds: [ 1 ]
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
Orders returned: 9 items
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
GET /api/orders 304 in 23ms
Deliveries returned: 20 items
GET /api/deliveries 304 in 31ms
HEAD /api/health 200 in 0ms
@@ -1,156 +0,0 @@
User-related
Environment-related
Registries
Logs
Notifications
Settings
New version available 2.27.9
DismissSee what's new
Community Edition
2.27.6 LTS
Containers>logiflow-logiflow-1>Logs
Container logs
admin
Log viewer settings
Auto-refresh logs
Wrap lines
Display timestamps
Fetch
All logs
Search
Filter...
Lines
100
Actions
🔗 Database initialization: {
NODE_ENV: 'production',
isProduction: true,
hasDbUrl: true,
dbHost: 'logiflow-db'
}
🐳 PRODUCTION: Using standard PostgreSQL
✅ PostgreSQL connection test successful
🐳 PRODUCTION: Using PostgreSQL storage
🐳 PRODUCTION: Local auth configured with PostgreSQL sessions
🐳 PRODUCTION: Starting LogiFlow application
🐳 Environment: { NODE_ENV: 'production', DATABASE_URL: 'Present', PORT: '3000' }
🐳 Serving static files from: /app/dist/public
🐳 PRODUCTION: LogiFlow serving on port 3000
✅ Production admin user found: { id: 'admin_local', username: 'admin', passwordFormat: 'present' }
🔐 Production password comparison { suppliedLength: 5, storedFormat: '21ff482668...' }
✅ Password matched with hash.salt format
✅ Admin password works with current system
HEAD /api/health 200 in 8ms
📄 SPA: Serving index.html for /users
GET /api/user 304 in 7ms
GET /api/user 304 in 7ms
GET /api/user 304 in 6ms
GET /api/user 304 in 9ms
GET /api/groups 304 in 15ms
GET /api/users 404 in 37ms
GET /api/roles 404 in 52ms
GET /api/users 404 in 8ms
GET /api/roles 404 in 6ms
GET /api/user 401 in 2ms
GET /api/user 401 in 2ms
GET /api/default-credentials-check 200 in 2ms
GET /api/user 304 in 8ms
GET /api/deliveries 404 in 7ms
GET /api/deliveries 404 in 5ms
GET /api/deliveries 404 in 8ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 5ms
GET /api/deliveries 404 in 14ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 4ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 5ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 6ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 4ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 4ms
🔐 Production password comparison { suppliedLength: 8, storedFormat: 'c81960e064...' }
❌ No password format matched
POST /api/login 400 in 4ms
HEAD /api/health 200 in 1ms
@@ -1,206 +0,0 @@
User-related
Environment-related
Registries
Logs
Notifications
Settings
New version available 2.27.9
DismissSee what's new
Community Edition
2.27.6 LTS
Containers>logiflow-logiflow-1>Logs
Container logs
admin
Log viewer settings
Auto-refresh logs
Wrap lines
Display timestamps
Fetch
All logs
Search
Filter...
Lines
100
Actions
🔗 Database initialization: {
NODE_ENV: 'production',
isProduction: true,
hasDbUrl: true,
dbHost: 'logiflow-db'
}
🐳 PRODUCTION: Using standard PostgreSQL
✅ PostgreSQL connection test successful
🐳 PRODUCTION: Using PostgreSQL storage
🐳 PRODUCTION: Local auth configured with PostgreSQL sessions
🐳 PRODUCTION: Starting LogiFlow application
🐳 Environment: { NODE_ENV: 'production', DATABASE_URL: 'Present', PORT: '3000' }
🔍 Using development storage and authentication
🔧 Using memory session store for development
🐳 Serving static files from: /app/dist/public
Warning: connect.session() MemoryStore is not
designed for a production environment, as it will leak
memory, and will not scale past a single process.
🐳 PRODUCTION: LogiFlow serving on port 3000
✅ Production admin user found: { id: 'admin_local', username: 'admin', passwordFormat: 'present' }
🔐 Production password comparison { suppliedLength: 5, storedFormat: '63d2ce518b...' }
✅ Password matched with hash.salt format
✅ Admin password works with current system
HEAD /api/health 200 in 5ms
📄 SPA: Serving index.html for /users
GET /api/user 304 in 8ms
GET /api/user 304 in 5ms
GET /api/user 304 in 6ms
GET /api/user 304 in 6ms
GET /api/groups 304 in 16ms
GET /api/roles 304 in 33ms
🔍 getUsersWithRolesAndGroups called
📊 Base users found: 7
🔍 Processing user: admin
🔍 Processing user: ff292
🔍 Processing user: Rudolph
🔍 Processing user: ff579
🔍 Processing user: ff579m
🔍 Processing user: Nicolas
🔍 Processing user: AnneLaure
📊 getUserWithRoles(_1754936203292): { userRoleDataLength: 0 }
📊 getUserWithRoles(admin_local): { userRoleDataLength: 1 }
📊 User ff292 groups: 0
📊 User admin groups: 0
📊 getUserWithRoles(_1753340243216): { userRoleDataLength: 0 }
📊 getUserWithRoles(directionfrouard_1753264272043): { userRoleDataLength: 0 }
📊 getUserWithRoles(_1753266881822): { userRoleDataLength: 0 }
📊 getUserWithRoles(_1753266816257): { userRoleDataLength: 0 }
📊 User Rudolph groups: 1
📊 getUserWithRoles(_1753266851515): { userRoleDataLength: 0 }
📊 User AnneLaure groups: 1
📊 User ff579 groups: 1
📊 User Nicolas groups: 1
📊 User ff579m groups: 1
🔍 Final users with roles and groups: 7
🔐 API /api/users - Returning: { isArray: true, length: 7 }
GET /api/users 304 in 126ms
PUT /api/users/_1754936203292 200 in 15ms
🔍 getUsersWithRolesAndGroups called
📊 Base users found: 7
🔍 Processing user: admin
🔍 Processing user: ff292
🔍 Processing user: Rudolph
🔍 Processing user: ff579
🔍 Processing user: ff579m
🔍 Processing user: Nicolas
🔍 Processing user: AnneLaure
📊 getUserWithRoles(admin_local): { userRoleDataLength: 1 }
📊 getUserWithRoles(_1754936203292): { userRoleDataLength: 0 }
📊 getUserWithRoles(_1753266851515): { userRoleDataLength: 0 }
📊 getUserWithRoles(_1753266881822): { userRoleDataLength: 0 }
📊 getUserWithRoles(directionfrouard_1753264272043): { userRoleDataLength: 0 }
📊 getUserWithRoles(_1753266816257): { userRoleDataLength: 0 }
📊 User admin groups: 0
📊 User ff292 groups: 0
📊 getUserWithRoles(_1753340243216): { userRoleDataLength: 0 }
📊 User Rudolph groups: 1
📊 User Nicolas groups: 1
📊 User ff579m groups: 1
📊 User ff579 groups: 1
📊 User AnneLaure groups: 1
🔍 Final users with roles and groups: 7
🔐 API /api/users - Returning: { isArray: true, length: 7 }
GET /api/users 200 in 40ms
@@ -1,133 +0,0 @@
📊 User system groups: 0
📊 User AnneLaure groups: 1
🔍 Final users with roles and groups: 7
🔐 API /api/users - Returning: { isArray: true, length: 7 }
GET /api/users 200 in 80ms
Error deleting user: error: update or delete on table "users" violates foreign key constraint "database_backups_created_by_fkey" on table "database_backups"
at /app/node_modules/pg/lib/client.js:545:17
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/dist/index.js:1109:11
at async NodePgSession.transaction (file:///app/node_modules/drizzle-orm/node-postgres/session.js:142:22)
at async DatabaseStorage.deleteUser (file:///app/dist/index.js:1090:9)
at async file:///app/dist/index.js:4095:7 {
length: 327,
severity: 'ERROR',
code: '23503',
detail: 'Key (id)=(system) is still referenced from table "database_backups".',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'database_backups',
column: undefined,
dataType: undefined,
constraint: 'database_backups_created_by_fkey',
file: 'ri_triggers.c',
line: '2609',
routine: 'ri_ReportViolation'
}
DELETE /api/users/system 500 in 28ms
HEAD /api/health 200 in 1ms
Error creating user: ZodError: [
{
"validation": "email",
"code": "invalid_string",
"message": "Invalid email",
"path": [
"email"
]
}
]
at get error [as error] (file:///app/node_modules/zod/v3/types.js:39:31)
at ZodObject.parse (file:///app/node_modules/zod/v3/types.js:114:22)
at file:///app/dist/index.js:3988:41
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
issues: [
{
validation: 'email',
code: 'invalid_string',
message: 'Invalid email',
path: [Array]
}
],
addIssue: [Function (anonymous)],
addIssues: [Function (anonymous)],
errors: [
{
validation: 'email',
code: 'invalid_string',
message: 'Invalid email',
path: [Array]
}
]
}
POST /api/users 400 in 26ms
HEAD /api/health 200 in 1ms
@@ -1,202 +0,0 @@
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: undefined,
endDate: undefined,
storeId: undefined,
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: undefined
Fetching all deliveries
Deliveries returned: 80 items
GET /api/deliveries 304 in 44ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
userRole: 'admin'
}
Admin filtering with groupIds: [ 1 ]
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
Orders returned: 9 items
GET /api/orders 304 in 23ms
Deliveries returned: 20 items
GET /api/deliveries 304 in 36ms
@@ -1,199 +0,0 @@
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /bl-reconciliation
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 7ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 8ms
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/suppliers 304 in 31ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 5ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 9ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: undefined,
endDate: undefined,
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching all deliveries
Deliveries returned: 44 items
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
GET /api/deliveries 304 in 67ms
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/groups 304 in 26ms
HEAD /api/health 200 in 0ms
@@ -1,201 +0,0 @@
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-07-28 18:25:49.452346'
}
]
✅ Processed 1 groups for user _1753266816257
🔐 API /api/users - Returning: { isArray: true, length: 7, totalGroups: 6 }
GET /api/users 304 in 81ms
HEAD /api/health 200 in 1ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 POST /api/users - Creating new user
📥 Request body: {
"email": "",
"firstName": "",
"lastName": "",
"username": "ff292m",
"password": "ff292m",
"role": "manager",
"id": "_1754942821925"
}
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 Parsing user data...
✅ User data parsed successfully
🔒 Hashing password...
✅ Password hashed successfully
🔍 Generated user ID: _1754942821925
🔍 Creating user in database...
🔍 Storage createUser called with: ff292m
❌ Storage createUser error: error: duplicate key value violates unique constraint "users_email_key"
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.createUser (file:///app/dist/index.js:989:26)
at async file:///app/dist/index.js:3993:23 {
length: 192,
severity: 'ERROR',
code: '23505',
detail: 'Key (email)=() already exists.',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'users',
column: undefined,
dataType: undefined,
constraint: 'users_email_key',
file: 'nbtinsert.c',
line: '664',
routine: '_bt_check_unique'
}
❌ Storage error code: 23505
❌ Storage error constraint: users_email_key
❌ Error creating user: error: duplicate key value violates unique constraint "users_email_key"
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.createUser (file:///app/dist/index.js:989:26)
at async file:///app/dist/index.js:3993:23 {
length: 192,
severity: 'ERROR',
code: '23505',
detail: 'Key (email)=() already exists.',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'users',
column: undefined,
dataType: undefined,
constraint: 'users_email_key',
file: 'nbtinsert.c',
line: '664',
routine: '_bt_check_unique'
}
❌ Error type: DatabaseError
❌ Error code: 23505
❌ Error constraint: users_email_key
❌ Error stack: error: duplicate key value violates unique constraint "users_email_key"
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.createUser (file:///app/dist/index.js:989:26)
at async file:///app/dist/index.js:3993:23
POST /api/users 409 in 109ms
@@ -1,204 +0,0 @@
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 DLC Products API called with: {
userId: '_1753266816257',
userRole: 'employee',
userGroups: [ { groupId: 2, groupName: 'Houdemont' } ],
groupIds: [ 2 ],
filters: {},
queryStoreId: undefined
}
GET /api/dlc-products/stats 304 in 18ms
📋 DLC Products returned: 133 items
📋 Sample DLC products groupIds: [
{ id: 178, name: 'Nesta grenier strawberry aloe vera', groupId: 2 },
{ id: 48, name: 'Gressins sésame', groupId: 2 },
{ id: 154, name: 'M&m’s crispy 240g', groupId: 2 }
]
GET /api/dlc-products 304 in 26ms
HEAD /api/health 200 in 1ms
@@ -1,204 +0,0 @@
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 DLC Products API called with: {
userId: '_1753266816257',
userRole: 'employee',
userGroups: [ { groupId: 2, groupName: 'Houdemont' } ],
groupIds: [ 2 ],
filters: {},
queryStoreId: undefined
}
📋 DLC Products returned: 133 items
📋 Sample DLC products groupIds: [
{ id: 178, name: 'Nesta grenier strawberry aloe vera', groupId: 2 },
{ id: 48, name: 'Gressins sésame', groupId: 2 },
{ id: 154, name: 'M&m’s crispy 240g', groupId: 2 }
]
🔍 getUserWithGroups called for user: _1753266816257
GET /api/dlc-products 304 in 34ms
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
GET /api/dlc-products/stats 304 in 45ms
HEAD /api/health 200 in 1ms
@@ -1,199 +0,0 @@
status: 500,
message: 'connect ECONNREFUSED 172.20.0.10:443',
error: ErrorEvent {
[Symbol(kTarget)]: WebSocket {
_events: [Object: null prototype],
_eventsCount: 4,
_maxListeners: undefined,
_binaryType: 'arraybuffer',
_closeCode: 1006,
_closeFrameReceived: false,
_closeFrameSent: false,
_closeMessage: <Buffer >,
_closeTimer: null,
_errorEmitted: true,
_extensions: {},
_paused: false,
_protocol: '',
_readyState: 3,
_receiver: null,
_sender: null,
_socket: null,
_bufferedAmount: 0,
_isServer: false,
_redirects: 0,
_autoPong: true,
_url: 'wss://logiflow-db/v2',
_req: null,
[Symbol(shapeMode)]: false,
[Symbol(kCapture)]: false
},
[Symbol(kType)]: 'error',
[Symbol(kError)]: Error: connect ECONNREFUSED 172.20.0.10:443
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1611:16) {
errno: -111,
code: 'ECONNREFUSED',
syscall: 'connect',
address: '172.20.0.10',
port: 443
},
[Symbol(kMessage)]: 'connect ECONNREFUSED 172.20.0.10:443'
}
}
POST /api/login 500 in 9ms
Error: connect ECONNREFUSED 172.20.0.10:443
at file:///app/node_modules/@neondatabase/serverless/index.mjs:1345:74
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async NeonPreparedQuery.execute (file:///app/node_modules/drizzle-orm/neon-serverless/session.js:76:20)
at async DatabaseStorage.getUserByUsername (file:///app/dist/index.js:893:20)
at async Strategy._verify (file:///app/dist/index.js:2461:24)
Server error: {
status: 500,
message: 'connect ECONNREFUSED 172.20.0.10:443',
error: ErrorEvent {
[Symbol(kTarget)]: WebSocket {
_events: [Object: null prototype],
_eventsCount: 4,
_maxListeners: undefined,
_binaryType: 'arraybuffer',
_closeCode: 1006,
_closeFrameReceived: false,
_closeFrameSent: false,
_closeMessage: <Buffer >,
_closeTimer: null,
_errorEmitted: true,
_extensions: {},
_paused: false,
_protocol: '',
_readyState: 3,
_receiver: null,
_sender: null,
_socket: null,
_bufferedAmount: 0,
_isServer: false,
_redirects: 0,
_autoPong: true,
_url: 'wss://logiflow-db/v2',
_req: null,
[Symbol(shapeMode)]: false,
[Symbol(kCapture)]: false
},
[Symbol(kType)]: 'error',
[Symbol(kError)]: Error: connect ECONNREFUSED 172.20.0.10:443
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1611:16) {
errno: -111,
code: 'ECONNREFUSED',
syscall: 'connect',
address: '172.20.0.10',
port: 443
},
[Symbol(kMessage)]: 'connect ECONNREFUSED 172.20.0.10:443'
}
}
POST /api/login 500 in 23ms
Error: connect ECONNREFUSED 172.20.0.10:443
at file:///app/node_modules/@neondatabase/serverless/index.mjs:1345:74
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async NeonPreparedQuery.execute (file:///app/node_modules/drizzle-orm/neon-serverless/session.js:76:20)
at async DatabaseStorage.getUserByUsername (file:///app/dist/index.js:893:20)
at async Strategy._verify (file:///app/dist/index.js:2461:24)
HEAD /api/health 200 in 1ms
@@ -1,205 +0,0 @@
Actions
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
userRole: 'admin'
}
Admin filtering with groupIds: [ 1 ]
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
Orders returned: 9 items
Deliveries returned: 20 items
GET /api/orders 304 in 32ms
GET /api/deliveries 304 in 30ms
🔍 Querying user_groups for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
GET /api/user 304 in 45ms
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
userRole: 'admin'
}
Admin filtering with groupIds: [ 1 ]
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
Orders returned: 9 items
Deliveries returned: 20 items
GET /api/orders 304 in 23ms
GET /api/deliveries 304 in 22ms
@@ -1,158 +0,0 @@
Administration
User-related
Environment-related
Registries
Logs
Notifications
Settings
New version available 2.27.9
DismissSee what's new
Community Edition
2.27.6 LTS
Containers>logiflow-logiflow-1>Logs
Container logs
admin
Log viewer settings
Auto-refresh logs
Wrap lines
Display timestamps
Fetch
All logs
Search
Filter...
Lines
100
Actions
🔗 Database initialization: {
NODE_ENV: 'production',
isProduction: true,
hasDbUrl: true,
dbHost: 'logiflow-db'
}
🐳 PRODUCTION: Using standard PostgreSQL
✅ PostgreSQL connection test successful
🐳 PRODUCTION: Using PostgreSQL storage
🐳 PRODUCTION: Local auth configured with PostgreSQL sessions
🐳 PRODUCTION: Starting LogiFlow application
🐳 Environment: { NODE_ENV: 'production', DATABASE_URL: 'Present', PORT: '3000' }
🐳 Serving static files from: /app/dist/public
🐳 PRODUCTION: LogiFlow serving on port 3000
✅ Production admin user found: { id: 'admin_local', username: 'admin', passwordFormat: 'present' }
🔐 Production password comparison { suppliedLength: 5, storedFormat: '21ff482668...' }
✅ Password matched with hash.salt format
✅ Admin password works with current system
HEAD /api/health 200 in 5ms
GET /api/user 401 in 24ms
🔐 Production password comparison { suppliedLength: 9, storedFormat: '21ff482668...' }
❌ No password format matched
POST /api/login 400 in 60ms
🔐 Production password comparison { suppliedLength: 5, storedFormat: '21ff482668...' }
✅ Password matched with hash.salt format
POST /api/login 200 in 69ms
Server error: {
status: 500,
message: 'column user_groups.created_at does not exist',
error: error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3046:20 {
length: 120,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '59',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_relation.c',
line: '3665',
routine: 'errorMissingColumn'
}
}
error: column user_groups.created_at does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getUserWithGroups (file:///app/dist/index.js:1364:28)
at async file:///app/dist/index.js:3046:20
@@ -1,238 +0,0 @@
Administration
User-related
Environment-related
Registries
Logs
Notifications
Settings
New version available 2.27.9
DismissSee what's new
Community Edition
2.27.6 LTS
Containers>logiflow-logiflow-1>Logs
Container logs
admin
Log viewer settings
Auto-refresh logs
Wrap lines
Display timestamps
Fetch
All logs
Search
Filter...
Lines
100
Actions
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Customer orders - Admin filtering by store: { storeId: '1', groupIds: [ 1 ] }
Customer orders returned from storage: 9 items
GET /api/customer-orders 304 in 12ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 6ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 4ms
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
GET /api/user 304 in 8ms
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
userRole: 'admin'
}
Admin filtering with groupIds: undefined
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
Orders returned: 15 items
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: undefined
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
GET /api/orders 304 in 27ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/stats/monthly 304 in 33ms
GET /api/user 304 in 9ms
Deliveries returned: 40 items
GET /api/deliveries 304 in 36ms
@@ -1,188 +0,0 @@
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
node:internal/modules/esm/resolve:873
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);

^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
node:internal/modules/esm/resolve:873
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);

^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
node:internal/modules/esm/resolve:873
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);

^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
node:internal/modules/esm/resolve:873
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);

^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
node:internal/modules/esm/resolve:873
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);

^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite' imported from /app/dist/index.js
at packageResolve (node:internal/modules/esm/resolve:873:9)
at moduleResolve (node:internal/modules/esm/resolve:946:18)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.19.4
@@ -1,200 +0,0 @@
GET /api/deliveries 500 in 24ms
GET /api/orders 500 in 27ms
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
userRole: 'admin'
}
Admin filtering with groupIds: undefined
Fetching orders by date range: 2025-08-01 to 2025-08-31
Error fetching orders: error: column orders_supplier.email does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getOrdersByDateRange (file:///app/dist/index.js:1127:16)
at async file:///app/dist/index.js:3633:21 {
length: 120,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '555',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_relation.c',
line: '3665',
routine: 'errorMissingColumn'
}
GET /api/orders 500 in 13ms
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: undefined
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
Error fetching deliveries: error: column deliveries_supplier.email does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.getDeliveriesByDateRange (file:///app/dist/index.js:1186:25)
at async file:///app/dist/index.js:3848:25 {
length: 124,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '856',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_relation.c',
line: '3665',
routine: 'errorMissingColumn'
}
GET /api/deliveries 500 in 42ms
HEAD /api/health 200 in 1ms
@@ -1,108 +0,0 @@
GET /api/users 200 in 33ms
Error deleting user: error: update or delete on table "users" violates foreign key constraint "user_roles_assigned_by_fkey" on table "user_roles"
at /app/node_modules/pg/lib/client.js:545:17
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/dist/index.js:1108:11
at async NodePgSession.transaction (file:///app/node_modules/drizzle-orm/node-postgres/session.js:142:22)
at async DatabaseStorage.deleteUser (file:///app/dist/index.js:1090:9)
at async file:///app/dist/index.js:4094:7 {
length: 299,
severity: 'ERROR',
code: '23503',
detail: 'Key (id)=(system) is still referenced from table "user_roles".',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'user_roles',
column: undefined,
dataType: undefined,
constraint: 'user_roles_assigned_by_fkey',
file: 'ri_triggers.c',
line: '2609',
routine: 'ri_ReportViolation'
}
DELETE /api/users/system 500 in 29ms
HEAD /api/health 200 in 1ms
Error deleting user: error: update or delete on table "users" violates foreign key constraint "user_roles_assigned_by_fkey" on table "user_roles"
at /app/node_modules/pg/lib/client.js:545:17
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/dist/index.js:1108:11
at async NodePgSession.transaction (file:///app/node_modules/drizzle-orm/node-postgres/session.js:142:22)
at async DatabaseStorage.deleteUser (file:///app/dist/index.js:1090:9)
at async file:///app/dist/index.js:4094:7 {
length: 299,
severity: 'ERROR',
code: '23503',
detail: 'Key (id)=(system) is still referenced from table "user_roles".',
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: 'public',
table: 'user_roles',
column: undefined,
dataType: undefined,
constraint: 'user_roles_assigned_by_fkey',
file: 'ri_triggers.c',
line: '2609',
routine: 'ri_ReportViolation'
}
DELETE /api/users/system 500 in 19ms
@@ -1,140 +0,0 @@
HEAD /api/health 200 in 1ms
Error updating user: Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/app/dist/localAuth.production.js' imported from /app/dist/index.js
at finalizeResolution (node:internal/modules/esm/resolve:283:11)
at moduleResolve (node:internal/modules/esm/resolve:952:10)
at defaultResolve (node:internal/modules/esm/resolve:1188:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
at ModuleLoader.import (node:internal/modules/esm/loader:539:34)
at defaultImportModuleDynamicallyForModule (node:internal/modules/esm/utils:221:31)
at importModuleDynamicallyCallback (node:internal/modules/esm/utils:260:12) {
code: 'ERR_MODULE_NOT_FOUND',
url: 'file:///app/dist/localAuth.production.js'
}
PUT /api/users/admin_local 500 in 14ms
HEAD /api/health 200 in 1ms
Error assigning user to group: error: column "created_at" of relation "user_groups" does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.assignUserToGroup (file:///app/dist/index.js:1225:32)
at async file:///app/dist/index.js:3842:25 {
length: 134,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '51',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_target.c',
line: '1075',
routine: 'checkInsertTargets'
}
POST /api/users/admin_local/groups 500 in 55ms
Error assigning user to group: error: column "created_at" of relation "user_groups" does not exist
at /app/node_modules/pg-pool/index.js:45:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/node_modules/drizzle-orm/node-postgres/session.js:83:22
at async DatabaseStorage.assignUserToGroup (file:///app/dist/index.js:1225:32)
at async file:///app/dist/index.js:3842:25 {
length: 134,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '51',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'parse_target.c',
line: '1075',
routine: 'checkInsertTargets'
}
POST /api/users/admin_local/groups 500 in 27ms
HEAD /api/health 200 in 2ms
@@ -1,207 +0,0 @@
ctions
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
GET /api/groups 304 in 88ms
GET /api/suppliers 304 in 95ms
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
Customer orders - User assigned stores: { groupIds: [ 2 ] }
Customer orders returned from storage: 23 items
GET /api/customer-orders 304 in 130ms
HEAD /api/health 200 in 1ms
🔍 getUserWithGroups called for user: _1753266816257
🔍 Querying user_groups for user: _1753266816257
🔍 Found 1 group assignments for user _1753266816257
🔍 Raw query result: [
{
user_id: '_1753266816257',
group_id: 2,
group_id_ref: 2,
group_name: 'Houdemont',
group_color: '#455A64',
nocodb_config_id: 1,
nocodb_table_id: 'my7zunxprumahmm',
nocodb_table_name: 'CommandeH',
invoice_column_name: 'RefFacture',
group_created_at: '2025-07-22 11:09:08.977622',
group_updated_at: '2025-08-12 09:39:32.989'
}
]
✅ Processed 1 groups for user _1753266816257
GET /api/user 304 in 7ms
HEAD /api/health 200 in 1ms
@@ -1,208 +0,0 @@
ions
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: undefined
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
🔍 getUserWithGroups called for user: admin_local
GET /api/user 304 in 67ms
GET /api/stats/monthly 304 in 57ms
Deliveries returned: 40 items
GET /api/deliveries 304 in 64ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 5ms
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: undefined,
userRole: 'admin'
}
Admin filtering with groupIds: undefined
Fetching orders by date range: 2025-08-01 to 2025-08-31
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 13ms
Orders returned: 15 items
GET /api/orders 304 in 111ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/user 304 in 7ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
GET /api/groups 304 in 10ms
HEAD /api/health 200 in 1ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
@@ -1,208 +0,0 @@
ions
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Deliveries API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
withBL: undefined,
userRole: 'admin'
}
Admin filtering deliveries with groupIds: [ 1 ]
Fetching deliveries by date range: 2025-08-01 to 2025-08-31
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
Orders API called with: {
startDate: '2025-08-01',
endDate: '2025-08-31',
storeId: '1',
userRole: 'admin'
}
Admin filtering with groupIds: [ 1 ]
Fetching orders by date range: 2025-08-01 to 2025-08-31
Deliveries returned: 20 items
Orders returned: 9 items
GET /api/orders 304 in 28ms
GET /api/deliveries 304 in 30ms
HEAD /api/health 200 in 1ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
HEAD /api/health 200 in 2ms
HEAD /api/health 200 in 1ms
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
🔍 getUserWithGroups called for user: admin_local
🔍 Querying user_groups for user: admin_local
🔍 Found 0 group assignments for user admin_local
🔍 Raw query result: []
✅ Processed 0 groups for user admin_local
📄 SPA: Serving index.html for /[object%20Object]
Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 174 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 198 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 250 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Loaded 100 of 299 files, more files were not shown because too many files have changed in this diff. Show more