Giter VIP home page Giter VIP logo

be-right-backend's People

Contributors

malolebrin avatar renovate[bot] avatar

Stargazers

 avatar

Watchers

 avatar

be-right-backend's Issues

✨ Create Bills entity

Chaque utilisateurs ou account owner peut avoir un certains nombre de factures qui lui sont liées.

  • La facture est liée à un User owner
  • elle comprend un address
  • Une liste de champ précis et légals (siren, raison sociale, addresse de facturation).
  • Elle doit être liée à un Panier (Cart entity)

🔒 improve DB rules

Corsète unique rules for data relation
Ex: uniq pair employée.id & createdByUserId

  • Évent user
  • List user
  • Answer event employee

✨ Implement payments

  • Créer et enregistrer des payments avec Stripe.
  • Si le paiement est validé, sauvgarder les infos de l'event
  • Pouvoir créer des paniers
  • factures
  • pouvoir lier une addresse avec une facturation et/ou Panier

🩹RedisGetMany Bug

When getMany by ids and one of them is in redis, App send just data in redis, It should send all data asked

✨ Add reward badges

Ajouter des badges de récompenses drôles et fun comme sur steam.

les badges peuvent donner des récompenses :

  • codes promos

  • nb gratuits de destinataires

  • nb gratuits d’events

🧾Liste de tâches OPS

  • Ajuster les dockerfiles branche Dockerfile-optimization
  • Ajouter action pour créer une release lorqu'un tag est créé
  • Automatiser les deploiements sur Fly.io / ou autre

✨ Payments implementation

  • Créer et enregistrer des payments avec Stripe.
  • Si le paiement est validé, sauvgarder les infos de l'event
  • Pouvoir créer des paniers
  • factures
  • pouvoir lier une addresse avec une facturation et/ou Panier

integrate payment

Diviser cette features en plusieurs tâches

🔐 Add session stored in cache for backend security

This PR should solve the authentication problem today based on the token sent in the request. the user must not be able to request information that is not his.

one solution is to use the JWTs and/or sessions by storing them in the cache

https://medium.com/better-programming/what-is-json-web-token-authentication-a2962f8c5267

https://www.bezkoder.com/node-express-vue-jwt-auth/

💡Créer une entité session avec un userId en relation. Et un date d'expiration. Soft delete lorsque ça expire. Et soit en crée une nouvelle (et supprime définitivement l'ancienne) au relogin soit restaure l'ancienne avec une mise à jours des champs.

✨ Manage notifications subscriptions

Create possibility to manage notification's subscriptions

  • User can subscribe new type of notifications
  • User can unsubscribe type of notifications
  • User can subscribe again (in this case we can retrieved deleted subscriber to optimize DB size)

✨ create lists of recipients

be able to create lists of recipients (as if the photo agency had several clients and therefore a list of recipients per client)

✨ Manage multi account

Capture d’écran 2023-03-14 à 10 59 50

  • Add Roles for user and accounts (OWNER)
  • Create a company account => his id is the key to get all tree data
  • Migrate User data to company entity
  • add company & companyId relations on every entities who have createdByUserId
  • Update seeder
  • Create role owner
  • Company can have multiple Owner OneToMany

✨ Import Custom CSV

Maybe have modal or something which makes it possible to match the fields of the database and that of the csv of the user

Idea coded is : backend have, alone, to take translation of name of columns

  • Tester cette feature

✨ Automatic event archiving

  • archivage des événements à la main,
  • archivage automatique à +1an
  • Endpoint pour récupérer les events archivés

✨ Create Promocode entity

Voir si stripe ne propose pas cette fonctionnalité sinon

string $name;
string $description;
string $code; uniq
number $maxUses = null;
Date start
Date end
float $percentDiscount = null;

✨improve Import csv

  • Import csv for create groupe
  • Import csv for adding recipient

Make documentation for user : how to use csv import

Maybe have modal or something which makes it possible to match the fields of the database and that of the csv of the user

✨ Send notifications

Send notifications on :

  • Creation Event
  • Answer response
  • Update Status Event

Multiple possibilities to send notifications:

  1. Socket.io realtime notifications sender
  2. On each page refetch notifications
  3. Only on login fetch notifications
  4. Send évent from backend

📚Documentations:
Socket.io :

DB Architecture Proposition:
Capture d’écran 2023-02-15 à 14 40 21

  • See how can we implement one table of notification/évent with !== data structure

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

docker-compose
docker-compose.yml
  • postgres 15
dockerfile
Dockerfile
github-actions
.github/workflows/CI-Test.yml
  • actions/checkout v4
  • pnpm/action-setup v2
  • actions/setup-node v3
  • actions/checkout v4
  • pnpm/action-setup v2
  • actions/setup-node v3
.github/workflows/fly.yml
  • actions/checkout v4
.github/workflows/release.yml
  • actions/checkout v4
npm
package.json
  • @antfu/utils ^0.7.7
  • axios ^1.6.7
  • better-sse ^0.11.0
  • bullmq ^3.15.8
  • class-transformer ^0.5.1
  • cloudinary ^2.0.1
  • cors ^2.8.5
  • crypto-js ^4.2.0
  • csvtojson ^2.0.10
  • dayjs ^1.11.10
  • dotenv ^16.4.2
  • express ^4.18.2
  • express-handlebars ^7.1.2
  • express-pino-logger 7.0.0
  • helmet ^7.1.0
  • ioredis ^5.3.2
  • jsonwebtoken ^9.0.2
  • multer ^1.4.4
  • node-cron ^3.0.3
  • node-mailjet ^6.0.5
  • pg ^8.11.3
  • pino 8.16.2
  • pino-pretty 10.3.1
  • puppeteer 21.11.0
  • redis ^4.6.13
  • reflect-metadata ^0.2.0
  • stripe ^14.16.0
  • ts-node 10.9.2
  • typeorm 0.3.20
  • uid2 1.0.0
  • uuid ^9.0.1
  • yup ^0.32.11
  • @antfu/eslint-config ^0.37.0
  • @jest/globals ^29.7.0
  • @types/cors ^2.8.17
  • @types/crypto-js ^4.2.2
  • @types/express ^4.17.21
  • @types/jsonwebtoken ^9.0.5
  • @types/multer ^1.4.11
  • @types/node ^18.19.15
  • @types/node-cron ^3.0.11
  • @types/uid2 0.0.2
  • eslint ^8.56.0
  • eslint-plugin-security ^1.7.1
  • jest ^29.7.0
  • supertest ^6.3.4
  • ts-jest ^29.1.2
  • typescript ^5.3.3
  • pnpm 8.15.4

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.