Feature #10561
openWorking Mobile App And BAckend
Description
Backend (BowlsAndBlends_be)
Customer model – Create Customer collection (name, email, phone, notes, isActive, sparse unique email/phone).
Customer service – List / search, get by id, create (with dedupe), update, soft-delete.
Customer validators – Validate create/update (at least one of name/email/phone; email/phone format).
Customer controller + routes – Wire CRUD under /api/customers.
Register router – Mount customers routes in main API router.
List status filter – Support ?status=active|inactive|all for management vs POS.
Update isActive – Allow activate/deactivate via PUT /api/customers/:id.
API response shape – Return client DTO (id, name, email, phone, isGuest, isActive, dates).
Mobile (BowlsAndBlends_mobile)
API client endpoints – Add /customers list/create/byId endpoints.
Customers service – Axios wrapper: list, get, create, update, delete.
Customers Redux slice – fetchCustomers, createCustomer, updateCustomer, deleteCustomer, toggleCustomerStatus, query/status filters, stats selectors.
POS customer selector – Search/select customer on order panel; guest if no details.
POS create customer modal – Optional name/phone/email; create via API or continue as guest.
Customers management screen – Full screen on sidebar Customers nav.
Customer stats cards – Total / Active / Inactive / With Contact.
Customer table – Columns: customer, phone, email, status, updated; zebra rows.
Table actions – View, Edit, Deactivate (+ status switch).
Customer view modal – Read-only profile details.
Customer form modal – Create/Edit with validation + notes.
Header filters – All / Active / Inactive + search.
Wire PosScreen – nav === 'customers' → CustomersScreen (same pattern as Menu).
Subtasks
Related issues
Updated by Thirupathirao Uppu 23 days ago
- % Done changed from 0 to 20
Backend (BowlsAndBlends_be)
Customer model – Create Customer collection (name, email, phone, notes, isActive, sparse unique email/phone).
Customer service – List / search, get by id, create (with dedupe), update, soft-delete.
Customer validators – Validate create/update (at least one of name/email/phone; email/phone format).
Customer controller + routes – Wire CRUD under /api/customers.
Register router – Mount customers routes in main API router.
List status filter – Support ?status=active|inactive|all for management vs POS.
Update isActive – Allow activate/deactivate via PUT /api/customers/:id.
API response shape – Return client DTO (id, name, email, phone, isGuest, isActive, dates).
Mobile (BowlsAndBlends_mobile)
API client endpoints – Add /customers list/create/byId endpoints.
Customers service – Axios wrapper: list, get, create, update, delete.
Customers Redux slice – fetchCustomers, createCustomer, updateCustomer, deleteCustomer, toggleCustomerStatus, query/status filters, stats selectors.
POS customer selector – Search/select customer on order panel; guest if no details.
POS create customer modal – Optional name/phone/email; create via API or continue as guest.
Customers management screen – Full screen on sidebar Customers nav.
Customer stats cards – Total / Active / Inactive / With Contact.
Customer table – Columns: customer, phone, email, status, updated; zebra rows.
Table actions – View, Edit, Deactivate (+ status switch).
Customer view modal – Read-only profile details.
Customer form modal – Create/Edit with validation + notes.
Header filters – All / Active / Inactive + search.
Wire PosScreen – nav === 'customers' → CustomersScreen (same pattern as Menu).