Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in
F
finwise-miniapp-be
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • ThinhNC
  • finwise-miniapp-be
  • Merge Requests
  • !15

Merged
Opened Jul 31, 2026 by ThinhNC@ThinhNC
  • Report abuse
Report abuse

feat(saving-goals): add saving goals and contribution management

Summary

Add Saving Goals Management, allowing users to create financial goals, track saving progress, and manage contribution history.

Key Changes

  • Add CRUD, archive, and restore APIs for saving goals.
  • Add list, create, update, and delete APIs for contributions.
  • Calculate saved amount, remaining amount, progress percentage, remaining days, and overdue status.
  • Automatically synchronize ACTIVE, PAUSED, and COMPLETED statuses.
  • Protect all resources with authentication and user ownership checks.
  • Use Serializable transactions when updating contributions and goal progress.
  • Lock goal currency after the first contribution to preserve reporting consistency.
  • Add Prisma models, constraints, indexes, and database migration.
  • Update Swagger documentation for all Saving Goals endpoints.
  • Update project memory with the new module decisions.

Notes

  • Contributions are tracked independently and do not modify wallet balances.
  • The database migration is included but was not applied automatically.

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch origin
git checkout -b feature/saving-goals-management origin/feature/saving-goals-management

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git fetch origin
git checkout origin/develop
git merge --no-ff feature/saving-goals-management

Step 4. Push the result of the merge to GitLab

git push origin develop

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 0
  • Commits 1
  • Changes 12
Assignee
No assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: ThinhNC/finwise-miniapp-be!15

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.