Правки на backend Node.js
111 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;
-
157 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!
-
852 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.
-
1623 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
Optimization of Core Web Vitals (OpenCart) for Google PageSpeed — Mobile and PC versionsOrder description: We are looking for an experienced frontend developer/OpenCart specialist to optimize the loading speed of the website (categories and product cards) according to Google Core Web Vitals requirements. About the project: * CMS: OpenCart. * Specifics: The site… Content Management Systems, Javascript and Typescript ∙ 2 days 12 hours back ∙ 18 proposals |
Optimization of WordPress site speed
113 USD
We will send full details in private messages Goal Maximize website loading speed, especially on mobile devices. KPI (mandatory) After the work is completed, the following metrics must be achieved. Mobile Performance 90+ LCP less than 2.2 sec INP less than 200 ms CLS less than… HTML & CSS, Javascript and Typescript ∙ 3 days 8 hours back ∙ 66 proposals |
Looking for an Odoo Developer — a solo developer with experience in Odoo 19 Community Edition.There is a working, well-designed project on Odoo 19 Community — CRM for a Ukrainian hotel, already in production-grade infrastructure. We do not plan to rewrite from scratch. We are looking for one person who will take over the project, maintain the working state, and lead it… Javascript and Typescript, Web Programming ∙ 5 days 9 hours back ∙ 3 proposals |
I am looking for an experienced Full Stack developer to create a SaaS service for online stores.Service idea: The client uploads a link to their product feed (XML or CSV). The service automatically retrieves the products, takes their photos, and creates new advertising images based on ready-made templates: price, discount, logo, promotional tags, etc. There should also be… Javascript and Typescript, Web Programming ∙ 6 days 15 hours back ∙ 87 proposals |
Development of a WebGL/Three.js scene with generation and export of 3D (snapshot) from an animated shaderObject Description:The project is a designer table shaped like a realistic, deep whirlpool (a central vortex that smoothly transitions from a wide horizontal tabletop to a thin elegant leg). Task Essence:A WebGL / Creative Coding developer is required to create an interactive 3D… Javascript and Typescript, Web Programming ∙ 7 days 12 hours back ∙ 30 proposals |