Правки на backend Node.js
113 USDPOST / image
- private/common/upload/image тут може відправлятись FormData об’єкт з кількома полями картинок
3.2 POST / specialization
- Нужно, чтобы пользователь мог выбрать одну категорию(IT, либо Logistics, либо другую) и несколько подкатегорий с этой категории. То есть, если он выбирает IT, он может себе выбрать несколько подкатегорий с IT, например React и Node Js, и пройти далее
3.3 POST / document
- private/common/upload/document тут також може відправлятись FormData об’єкт з кількома полями документів
3.4 POST / verification request, POST/get/status
- private/specialist/verification/account/request . Можна перевірити цей ендпоінт, я так розумію, що потрібно відправляти id, які повертаються у попередніх реквестах(private/common/upload/image, private/common/upload/document тощо). Вірно?
- private/specialist/verification/account/get/status . Якщо isRejected = true, то потрібно у відповіді отримати, який саме параметр з помилкою(фото, спеціальність, чи документи?).
- Мы можем изменить роль пользователя на специалиста только после успешного прохождения верификации специалиста. И когда мы отправляем реквесты private/specialist/verification/account/request или private/specialist/verification/account/get/status у нас не всегда пользователь в статусе успешного прохождения верификации ( при реквесте /verification/account/request так точно он не прошел верификацию). Поэтому, я думаю, можно ли переделать private/specialist/verification/account/request на private/client а private/specialist/verification/account/get/status на private/common. Если есть другие идеи пиши в ТГ).
4. User Data
- common/profile/data/get , було б добре у відповіді отримувати статус акаунту спеціаліста користувача. Наприклад, isApproved: boolean, isRejected: boolean, isPending: boolean. Просто при зміні ролі користувача з клієнта на спеціаліст за допомогою функціоналу на сайті, я б дивився на ці флаги і якщо isApproved = true, переводив на спеціаліста, а якщо isRejected або isPending true, то переводив на сторінку register-specialist і там показував би статус верифікації.
- common/profile/data/get , потрібно у відповіді, якщо у користувача немає аватарки, поле image зробити пустим “” , на даний момент там дефолтне посилання default.male.png.
- common/profile/data/get , потрібно у відповідь додати категорію та підкатегорії в яких працює юзер.
5. Districts
- public/districts/get/by/city/id, потрібно також у відповіді, в списку районів отримувати all, тобто всі райони відповідного міста.
6. Categories
- /public/categories/get/all . виправити картинки категорій
7. Sub-categories
- public/sub-categories/get/by/category/id невідповідність id підкатегорій з /public/specializations/get/all (тут є notSelected підкатегорія, під id 1, а в public/sub-categories/get/by/category/id немає).
8. Specializations
- Потрібен ендпоінт щоб можна було отримати всі підкатегорії згруповані за категоріями, до яких вони відносяться. Бажано з кількість спеціалістів у всій категорії та у кожній з підкатегорій окремо. (для all-category page) Приклад:
9. Find specialist by id
- /public/specialist/find/all чи реалізований пошук за id категорії, просто коли передаю id категорії при відправці запиту завжди вертається один спеціаліст, а також можна передати неіснуюче id і помилки немає. В принципі, можна перевірити цей ендпоінт? Чи реалізований пошук по всім параметрам разом і окремо.
10. Get adverts
- public/adverts/find/all потрібно добавити у відповідь ще підкатегорії, в яких спеціаліст працює, а також його місто та додаткові умови (Договорная цена, Завершающая уборка, Хорошее настроение тощо).
- public/adverts/get/by/id повертає “Advert not-found “, хоча за id 2 має бути оголошення, оскільки public/adverts/find/all повертає оголошення з цим id.
- public/adverts/get/by/id потрібно також додати у відповідь рейтинг спеціаліста (ratingPunctuality, ratingPrice, ratingWorkQuality, ratingCommon, ratingAverage).
- public/adverts/get/by/id, потрібно додати у відповідь особливі відмітки. Приклад з дизайну:
- public/adverts/get/by/id, потрібно додати у відповідь ціну за послуги.
- public/adverts/get/by/id, потрібно додати у відповідь дату створення свого акаунту спеціалістом.
- public/adverts/get/by/id, потрібно додати у відповідь чи оголошення в обраних, чи ні.
- public/adverts/find/all, потрібно додати у відповідь чи оголошення знаходиться в обраному, чи ні.
- public/adverts/find/all, необхідне сортування за ratingPunctuality, ratingPrice, ratingWorkQuality, ratingCommon, ratingAverage.
- Потрібен ендпоінт для отримання відгуків спеціаліста за його Advert id, з можливістю пагінації та сортуванням за датою додавання цього відгуку на платформу. Бажано отримувати такого плану response: {
Specialist: { "isVerified": true, "ratingPunctuality": 0, "ratingPrice": 0, "ratingWorkQuality": 0, "ratingCommon": 20, "ratingAverage": 0, "User": { "image": "https://aws-s3.dev-rating-pro.ru/main", "id": 2, "firstName": "Slavik", "lastName": "Timoschenko", "createdAt": "2021-12-25T20:24:16.000Z" }},reviews: }Приклад відгуку з дизайну:
- Потрібен ендпоінт для отримання всіх виконаних робіт спеціаліста за його Advert id, з можливістю пагінації та сортуванням за датою додавання цієї роботи на платформу.
Приклад з дизайну (може бути до 3 фото):
Бажано відповідь такого типу структури:
11) public/advert-facility-types/get
- У ендпоінтах з отримання advert-facility-types у відповідь необхідно додати іконки для кожного facility-type
12. Client advert
- private/client/instruments/adverts/create має приймати також параметр фото. Клієнт під час створення оголошення має можливість додати максимум 3 фото.
- private/client/instruments/adverts/update/by/id/:id має приймати також наступні параметри: specializationId, price, visits та фото.
12. Create specialist advert
- /specialist/instruments/adverts/create має приймати ще параметр “Ціни за послуги” (масив об’єктів з назвою послуги та її ціною)
- /specialist/instruments/adverts/create. При створенні оголошення спеціаліст може додати роботи, які він вже виконав в секції “Виконані роботи”. Необхідно реалізувати додавання цих виконаних робіт на бекенді.
Після кліку на кнопку випливає модальне вікно, де спеціаліст заповнює інформацію про свій виконаний проект:Спеціаліст може додати декілька виконаних робіт собі в оголошення.
13. Get specialist advert
- /specialist/instruments/adverts/get/by/id необхідно додати у відповідь “Ціни за послуги” та “Виконані роботи”. Бажано з такою структурою:
14. Update specialist advert
- specialist/instruments/adverts/update/by/id відповідно потрібно в респонсі оновлення також приймати “Ціни за послуги” та “Виконані роботи”
15. Favorite-adverts
- client/favorite-adverts/lists/get/by/id, при передачі id FavoriteAdvertList, викидує помилку "FavoriteAdvertList not-found", хоча FavoriteAdvertList з таким id існує (client-adverts/find/all його видає).
- client/favorite-adverts/lists/delete/by/id, викидає помилку при видаленні ("failed to delete FavoriteAdvertList"), при цьому список видаляє.
16. switch-to specialist or client
19. Get category and subCategories where specialist work
- потрібна можливість отримувати категорію та підкатегорії спеціальностей в яких спеціаліст працює. Наприклад, добавити у відповідь цього ендпоінта: /private/specialist/profile/data/get
20. private/specialist/projects/create
- Спеціаліст, перед створенням нового проекту, має підтвердити номер замовника з яким він хоче створити проект. Це є підтвердженням того, що вони справді зв'язувались і оговорили замовлення. Потрібен ендпоінт, щоб відправляти на підтвердження номер замовника і якщо замовник з таким номером існує в базі даних приходить true та id замовника. А спеціаліст проходить далі до створення проекту.
- Можна уточнити по параметрам які передають в цей ендпоінт private/specialist/projects/create? clientId - це id замовника? categoryId, subCategoryId - це спеціаліста?
- Також потрібно додати в ендпоінт параметр візити (<array>: <string>: ISO-8601: eg: 2021-11-21T16:00:00") на вхід в private/specialist/projects/create.
- Необхідно додати в ендпоінт параметр startAt (дата початку проекту).
- Необхідно додати в ендпоінт параметри city та district.
21. /client/projects/get/all
- Поле Specialist у відповіді має вітдавати масив з об'єктами спеціалістів, оскільки на оголошення клієнта можуть подати заявку декілька спеціалістів. В залежності скільки спеціалістів подали заявку, на стільки і буде заповнено масив.
- В об'єкті спеціаліста має також бути advertId спеціаліста, за яким він подався на оголошення клієнта.
22. /client/projects/get/by/id/:id
- /client/projects/get/by/id/:id потрібно у відповідь добавити місто проекту.
- Також у відповідь потрібно добавити об'єкт наявного коментарю до завершеного проекту з його відповідним id.
23. client/projects/review
- /client/projects/review/create. Поле reviewFiles в боді запиту приймає <array>: . Upload.id - це з відповіді /common/upload/image ???
25) Notifications
- private/specialist/notifications/get/all?offset=0&limit=2&order=desc&by=id викидає 500 помилку ("Your request could not be processed at the moment")
- client/notifications/settings/get or client/notifications/settings/set. Настройки сповіщень мають бути і для спеціаліста також, на даний момент тільки для клієнта.
- Потрібен окремий ендпоiнт для сповіщень про перегляди контакту спеціаліста, або можливість отримувати сповіщення за окремим типом з specialist/notifications/get/all.
- Потрібен функціонал прочитування сповіщень, тобто переводити з isRead: false в isRead: true.
- Потрібно отримувати загальну кількість непрочитаних повідомлень.
26) Показники
- Реалізувати ендпоінт для отримання показників спеціаліста
27) agreementWithSpecialist
- потрібні два ендпоінти (get та post) для реалізації модального вікна: “Чи зв'язались із спеціалістом?”.
За функціоналом типу reminder. Це модальне вікно відкривається в клієнта через 5хв після кліку на кнопку “Показати контакт спеціаліста”. Я думаю, що мають бути такі параметри в реквесті: параметр time в форматі timestamp;
-
177 1 1 Hello, I have great commercial experience with React/Node/PWA.
Here is my last project: http://shoebacca.com/
If you are interested, please contact us to discuss more details.
-
20 I am a full-fledged developer who specializes in backend development. I have gone through all stages of the development cycle, from design to finished product. I have many programming languages, including JavaScript, Typescript, Python and Ruby. I have great experience working in the blockchain industry, having on my shoulder three fully developed decentralized programs.
-
243 Congratulations ! Our team is ready to implement your project. For a more accurate assessment, it would be good to get a contact to clarify the details. Details can be discussed individually. We are waiting for your comments! Congratulations to Brille.Dev team!
-
868 20 0 Good day !
The task is clear, it will be necessary to review the materials of the already existing site and the database.
Period: 8 days
Cost: 8,000 UAH (more accurate prices and deadlines after discussion)
My portfolio is:Freelancehunt
My steak:
… HTML/CSS/JS/SCSS/BEM/Figma/React.js/Node.js
Contact me and we will discuss all the details. I will be happy with our cooperation!
With respect, Tatiana.
-
688 12 0 Good Morning,
Ready to meet your tasks.
More accurate prices and deadlines after the project is introduced.
Let me write, I’m glad to work together.
-
1693 14 0 Good day, ready to deal with your tasks.
I can’t evaluate the time and volume of the work... I need to look at the project.
Write in person, let's discuss details I'm interested in fulfilling your tasks.
With respect to Denis.
Current freelance projects in the category Javascript and Typescript
Online clothing storeNeed a developer for an online clothing store Looking for an experienced developer to create a full-fledged online clothing store with a drop model of sales. What needs to be done: 6 pages: home, product, cart, checkout, account, admin panel Login via Google account Cart and… HTML & CSS, Javascript and Typescript ∙ 1 day 11 hours back ∙ 82 proposals |
Full-stack development — Amazon PPC Dashboard (Stage 1)Need a full-stack developer with experience working with Amazon API to implement Stage 1 of the internal PPC dashboard. The project is real, the data is live, everything is ready to start. Frontend prototype (5 pages, React + TypeScript): WHAT IS ALREADY READY — Frontend… Javascript and Typescript, Web Programming ∙ 3 days 23 hours back ∙ 30 proposals |
Development of a photo book and photo frame constructor websiteProject Goal A modern website needs to be developed for ordering photo books, photo frames, and other personalized photo products. The main task of the project is to provide the client with the ability to independently create a ready-made layout of the product directly on the… Javascript and Typescript, Web Programming ∙ 5 days 15 hours back ∙ 98 proposals |
Team for a custom marketplace of funeral services.We are looking for a team to launch and develop a custom national marketplace for funeral services. Right away: we are not looking for solo freelancers, juniors, or "website builders." We need a strong product team at the middle+/senior level with real cases in… Javascript and Typescript, Web Programming ∙ 6 days 9 hours back ∙ 27 proposals |
Improvement of the existing Next.js/Supabase project: offers, CRM, analytics, AI chatThere is an active project WatchGenius — a luxury watch analytics platform with a catalog of models, price analytics, external offers, application forms, and an AI chat. The project has already been partially developed. We need not a website from scratch, but an experienced… Javascript and Typescript, Web Programming ∙ 8 days 10 hours back ∙ 55 proposals |