vchikalkin
81dfdec7a5
refactor(slots): rename validation methods for clarity and consistency in slot service
2025-08-05 13:48:21 +03:00
vchikalkin
d8e88d8934
fix(api): standardize error messages for customer and slot retrieval, and improve validation logic in slots service
2025-08-05 13:31:08 +03:00
vchikalkin
620d2eaff4
test(slots): add comprehensive tests for getAvailableTimeSlots method, including edge cases and error handling
2025-08-05 13:18:42 +03:00
vchikalkin
ae9488b2d0
refactor(slots): rename checkUpdateIsTimeChanging to checkUpdateDatetime for clarity in slot update validation
2025-08-05 10:43:28 +03:00
vchikalkin
3448bff1a2
fix(slots): update error messages and validation logic for slot creation and updates, including handling of datetime fields and master status
2025-08-04 23:06:34 +03:00
vchikalkin
3941377e78
fix(slots): update error messages for missing datetime fields and improve validation logic in slot updates
2025-08-04 22:05:08 +03:00
vchikalkin
6d86c0d2db
fix(slots): update error handling for customer and slot retrieval, enhance time validation in slot updates
2025-08-04 22:00:26 +03:00
vchikalkin
5ec324d207
packages/graphql: add slot tests
2025-08-04 17:59:51 +03:00
vchikalkin
d8f357b3f8
fix(jwt): update import path for isTokenExpired function to remove file extension
2025-08-04 11:30:56 +03:00
vchikalkin
ba88305bbf
feat(orders, slots, schedule): enhance order and slot button functionality with date validation and conditional rendering
2025-08-02 20:40:09 +03:00
vchikalkin
ee6ccbef84
feat(slots): add error handling for slot deletion when orders are present
2025-08-02 19:28:38 +03:00
vchikalkin
6c4e6113f6
refactor(api): replace CustomerProfile with UserProfile and streamline user retrieval across services
2025-08-02 18:53:23 +03:00
vchikalkin
25fb9269fc
refactor(calendar): comment out past date disabling logic for calendar component; refactor day slots list to improve slot display and add conditional rendering for add form
2025-08-02 18:07:00 +03:00
Vlad Chikalkin
ed197143d6
Feature/tma back button ( #70 )
...
* feat(layout): integrate TelegramProvider and BackButton into main layout for enhanced navigation
* refactor(layout): remove BackButton from main layout and update navigation imports
* use ui back button for non tma mode
2025-08-02 15:42:06 +03:00
vchikalkin
278da049a5
refactor(service-card): add text truncation to service name for improved layout
2025-08-02 11:11:29 +03:00
vchikalkin
9061c6eda3
feat(slots): add time validation to prevent past slot selection
2025-08-02 11:07:18 +03:00
Vlad Chikalkin
10981e2afb
Issues/66 ( #67 )
...
* feat(profile): add 'Услуги' link button to LinksCard for service management
* feat(services): add create and update service functionalities with corresponding API actions and hooks
2025-08-01 19:54:10 +03:00
Vlad Chikalkin
fde9305632
Fix/bugs features pt 3 ( #64 )
...
* chore(docker): add healthcheck to service in docker-compose.yml and update deploy workflow to include docker compose down
* refactor(orders): add useOrdersInfiniteQuery for improved pagination and add load more button in orders list components
* refactor(graphql): remove NotifyService and related notification logic from orders and API, clean up unused dependencies
* refactor(api): streamline customer, order, service, and slot actions by wrapping server functions with client action utility to rethrow error messages to client
2025-07-23 13:15:08 +03:00
vchikalkin
ae0e7cc1a7
refactor(orders-list): replace HorizontalCalendar with Calendar component and update date selection logic for improved clarity and functionality
2025-07-19 16:52:52 +03:00
Vlad Chikalkin
ccfc65ca9b
Fix/bugs features pt 2 ( #58 )
...
* refactor(profile): comment out change role feature
* refactor(orders): update OrderServices and ServiceSelect components to utilize ServiceCard, and enhance service fields with duration in GraphQL types
* refactor(schedule): implement forbidden order states to disable editing slots with active orders
* fix(deploy): update SSH configuration to use dynamic port from secrets for improved flexibility
* refactor(api/orders): simplify order creation logic by removing unnecessary validations and improving error handling
* refactor(contact-row): replace role display logic with useIsMaster hook for improved clarity
* refactor(profile/orders-list): update header text from "Общие записи" to "Недавние записи" for better clarity
gql: GetOrders add sort slot.date:desc
* refactor(profile/orders-list): enhance OrderCard component by adding avatarSource prop based on user role
* feat(order-form): implement date selection with event highlighting and monthly view for available time slots
* refactor(i18n/config): update timeZone from 'Europe/Amsterdam' to 'Europe/Moscow'
* refactor(order-form/datetime-select): enhance date selection logic to include slot availability check
* refactor(datetime-format): integrate dayjs timezone support with default Moscow timezone for date and time formatting
* fix(contact-row): replace useIsMaster hook with isCustomerMaster utility for role display logic
* refactor(service-card): replace formatTime with getMinutes for duration display
* refactor(order-datetime): update date and time handling to use datetime_start and datetime_end for improved consistency
* refactor(profile): streamline profile and slot pages by integrating session user retrieval and updating booking logic with BookButton component
* fix(navigation): append query parameter to bottom-nav links and enhance back navigation logic in success page
2025-07-18 17:11:43 +03:00
Vlad Chikalkin
1075e47904
Update message.ts
2025-07-04 10:08:05 +03:00
vchikalkin
6a8804abb1
refactor(api/notify): format orderCreated method parameters for improved readability
2025-07-03 22:52:16 +03:00
vchikalkin
53af172e34
feat(api/notify): enhance order creation notifications with dynamic emoji and confirmation text based on creator role
2025-07-03 22:51:03 +03:00
vchikalkin
cc91c5cb30
feat(api/notify): update notification messages with dynamic emojis based on order state
2025-07-03 22:44:28 +03:00
vchikalkin
686fe60b80
feat(api/orders): add validation to prevent masters from recording other masters as clients
2025-07-03 22:31:41 +03:00
vchikalkin
1e4e4aa336
fix(bot): improve text clarity in messages and commands list
2025-07-03 22:03:09 +03:00
vchikalkin
1c295a4b41
refactor(bot): add comments
2025-07-03 21:36:44 +03:00
vchikalkin
d9b054df14
feat(bot): add phone number validation and error handling for contact messages
...
set active: true after full registration
2025-07-03 21:30:17 +03:00
vchikalkin
ac897a77f8
chore(docker-compose): remove build context and dockerfile references for web and bot services
2025-07-03 20:55:50 +03:00
vchikalkin
9efa022cd6
fix build
2025-07-03 20:54:08 +03:00
vchikalkin
33a20b9f2e
refactor(bot): replace CustomersService with RegistrationService for customer management
2025-07-03 19:44:36 +03:00
vchikalkin
d41194f177
fix(bot): streamline customer creation logic by checking for existing customer before creating a new one
2025-07-03 19:02:25 +03:00
vchikalkin
28e88e02aa
fix(bot): remove extra newline in commands list for improved formatting
2025-07-03 18:19:44 +03:00
vchikalkin
8feb0d3c05
feat(bot): add profile editing prompt to commands list
2025-07-03 18:03:33 +03:00
vchikalkin
339fff1879
fix(api/orders): refine permission checks for order access based on client and master roles
2025-07-03 17:23:36 +03:00
vchikalkin
c8bf3d9358
deploy: add BOT_URL
2025-07-03 16:51:46 +03:00
Vlad Chikalkin
7bcae12d54
Fix/bugs after first release ( #26 )
...
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
* web/packages: upgrade next
* fix(api/orders): update master validation logic to handle optional masters
* fix(api/notify, api/orders): enhance notification messages and update order state handling for masters
* fix react typings
* refactor(order-buttons, action-panel): streamline button handlers and add return functionality
* fix(contacts, orders): replace empty state messages with DataNotFound component for better user feedback
* feat(bot): add share bot command and update environment configuration for BOT_URL
* fix: pnpm-lock.yaml
* feat(bot): implement add contact wizard scene and enhance contact handling logic
* feat(profile): add BookContactButton component to enhance booking functionality
* fix(order-buttons): update cancel and confirm button logic based on order state
* feat(service-select): share services list for all
enhance service card display with duration formatting and improve layout
2025-07-03 16:36:10 +03:00
vchikalkin
1772ea4ff8
docker-compose: comment ports
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 21:53:33 +03:00
vchikalkin
62af72d45f
docker-compose.yml: add networks
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 21:25:48 +03:00
vchikalkin
ae63e4cb3b
workflow: update deploy
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 21:20:00 +03:00
vchikalkin
b5da687dae
apps/web: improve Dockerfile
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 21:05:59 +03:00
vchikalkin
79c404749c
apps/bot: fix Dockerfile
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 20:50:30 +03:00
vchikalkin
7a3dd4688b
fix apps/bot build
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 19:55:15 +03:00
vchikalkin
ecc7b44d6d
fix build web with docker compose
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-07-02 17:46:33 +03:00
vchikalkin
ad4abdcb28
Update GitHub Actions workflow to use actions/checkout@v3 for consistency across deployment jobs
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-06-27 23:18:14 +03:00
vchikalkin
4a13044d3e
Refactor GitHub Actions workflow for Docker deployment
...
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
- Replace Docker Buildx setup with direct Docker installation.
- Update Docker Hub login method to use command line.
- Separate build and push steps for web and bot images for clarity and maintainability.
2025-06-27 23:16:26 +03:00
vchikalkin
aa8521fec7
add docker-compose and CI/CD workflow for web and bot services
Build & Deploy Web & Bot / Build and Push to Docker Hub (push) Has been cancelled
Build & Deploy Web & Bot / Deploy to VPS (push) Has been cancelled
2025-06-27 23:12:06 +03:00
vchikalkin
4369110076
order-card: add order_number to ui
2025-06-27 14:51:00 +03:00
vchikalkin
204e3b7581
order-buttons: add onComplete button
2025-06-27 14:19:58 +03:00
Vlad Chikalkin
c5799a7f00
Feature/orders ( #25 )
...
* add contacts scroller
* add service select
* add calendar & time picker
* context/order: add masterId
* Revert "context/order: add masterId"
This reverts commit d5d07d7b2f5b6673a621a30b00ad087c60675a3f.
* components/order-form: add back button
* disable submit button if no customer selected
* disable submit button if no service selected
* service component: comment span
* save selected date to context
* fix calendar padding
* hooks/slot: rename index -> master
* slot list: render immediately
* fix step components rendering
* add check icon for masters
* Revert "add check icon for masters"
This reverts commit cc81a9a504918ebbffcca8d035c7c4984f109957.
* prepare for split contacts grid into masters/clients grid
* create MastersGrid & master-select step
* optimize useCustomerContacts
* add ClientsGrid & 'client-select' step
* add self to masters list & border avatar
* context/order: split into files
* hooks/profile: allow pass empty args to useProfileQuery/useProfileMutation
* context/order: skip client-select in client steps
* packages: upgrade next@15.3.0
* .vscode: add launch.json
* back-button: fix steps using
* contacts: skip client step for client
* fix react types
* ServiceSelect: fix padding
* Revert "contacts: skip client step for client"
This reverts commit db9af07dab9df9428561a1952f5a2c91c5b9d88d.
* fix steps for client & master
* split datetime-select into files
* improve useSlots hook
* migrate from order context to zustand store
* pass order store via context
* fix submit button not working
* skip master select for master & client select for client
* select time feature & get final order values
* apps/web: rename actions/service -> actions/services
* create order works!
* split next-button into two buttons
* add result pages (success, error)
* packages/graphql: add eslint
* merge branch 'refactor-api' (#23 )
* refactor customer api
* refactor slots api
* hooks/customers: use invalidateQueries
* refactor services api
* optimize hooks queryKey
* refactor orders api
* typo refactor hooks
* fix telegramId type (number)
* fix bot with new api
* rename customers masters & clients query
* fix useClientsQuery & useMastersQuery query
* new line after 'use client' & 'use server' directives
* move getAvailableTimeSlots to server
* getAvailableTimeSlots: add filter by orders
* take into service duration when computing times
* fix GetSlotsOrders order
* take into existing orders when computing times
* fix build
* app/orders: fill page with content
* stores/order: split into slices
* components/orders: remove nested components dirs
* move order store -> orders\order-store
* replace ScheduleTimeContext with ScheduleStore
* fix slots queries
* context: rename contexts properly
* finally organized stores & context
* move order-card & time-range to @/components/shared
* Refactor/components folder structure (#24 )
* refactor components/navigation
* refactor components/orders
* refactor components/profile
* refactor components/schedule
* remove components/common/spinner
* add launch.json
* add horizontal calendar
* remove context/date.tsx
* optimize orders list fetching
* add numberOfDaysBefore param
* fix orders list in slot page
* graphql/api: remove throw new Error
* horizontal-calendar: switch months by arrow buttons
* SlotCard: use SlotComponentProps type
* stores/schedule: export useScheduleStore
* SlotPage: add page header title
* contacts: mark inactive contacts
* prefetchQuery customer profile pages
* fix create slot
* packages: radash -> radashi
* fix queries, using formatDate & formatTime on client
* graphql: remove rename operations files
* fix create order query
* fix show actual slot status after slot update
* order page
* slot page: replace buttons with floating panel
* fix blur & colors
* fix floating panel overflows content
* hide ClientsOrdersList for non masters
* hooks/services: rename input -> variables
* move OrderCard types close to component
* exact types for Slot components & page
* app/profile: show shared orders
* order-services: fix types
* order page: add buttons
* order-card: add colors
* add order status alert
* fix badges & alerts
* take into account cancelled and completed orders in the slot list
* action panel: hide if no handlers
* highlight days with slots in schedule calendar
* highlight days in horizontal calendar
* remove getSlotsOrders fn
* show masters avatar in orders list
* fix auth redirects
* fix orders list for client
* create useIsMaster hook to prevent duplication
* order: revert cancel button for master
* FloatingActionPanel: block buttons while pending request
* hooks: invalidate orders & slots after mutate & delete
* order: revert approve button for master
* api/orders: protect update order
* order-card: show date
* order-card: add showDate variables in props
* order: add repeat button
* disable dashboard button
* apps/bot: beautify messages
* order: notify to telegram messages
* orderUpdate: add status info
2025-06-27 13:44:17 +03:00