Skip to content

Capstone-Project-Alterra-Kelompok-8/e-complaint-api

Repository files navigation

E-Complaint API

Welcome to Our E-Complaint API Project

At KeluhProv, we are dedicated to revolutionizing the way people handle and manage complaints. Our mission is to create a seamless, efficient, and user-friendly platform that empowers individuals and organizations to voice their concerns and seek resolutions effortlessly.

About Us

The E-Complaint API project is designed to streamline the complaint submission and resolution process through a robust and scalable backend system. Our API serves as the backbone of various e-complaint applications, providing a reliable and secure way to manage complaint data, track the status of issues, and ensure timely responses.

Main Features

Admin & Super Admin

  • Manage Admin Account (Super Admin)
  • Register
  • Login
  • Get User Data
  • Delete User Account
  • Get Complaints
  • Delete Complaint
  • Get Regency Data
  • Get Categories
  • Create Categories
  • Update Categories
  • Delete Catagories
  • Get Complaint Processes
  • Create Complaint Processes
  • Update Complaint Processes
  • Delete Complaint Processes
  • Get Discussion
  • Create Discussion
  • Update Discussion
  • Delete Discussion
  • Get News
  • Create News
  • Update News
  • Delete News
  • Get News Comment
  • Create News Comment
  • Update News Comment
  • Delete News Comment
  • Get Dashboard (Summary, Statistic, Recent Complaints)

User

  • Register
  • Login
  • Update Profile
  • Forgot Password
  • Change Password
  • Get User Activities
  • Get User Complaints
  • Get Complaints
  • Create Complaint
  • Update Complaint
  • Delete Complaint
  • Get Regencies
  • Get Complaint Category
  • Get Complaint Processes
  • Get Discussion
  • Create Discussion
  • Update Discussion
  • Delete Discussion
  • Like Discussion
  • Get News
  • Get News Comment
  • Create News Comment
  • Update News Comment
  • Delete News Comment
  • Like News Comment
  • Get Chatbot History
  • Send Chat to Chatbot
  • Delete History Chatbot

Tech Stacks

  • Framework: Echo

  • ORM Library: GORM

  • Database: MySQL (Google Cloud Platform)

  • Storage: Cloud Storage (Google Cloud Platform)

  • Code Structure: Clean Architecture

  • Authentication: JWT

  • Deployment: Cloud Run (Google Cloud Platform)

  • External API: Mailtrap, Openai, and Indonesia Area API

Entity Relationship Diagram (ERD)

ERD

High Level Architecture (HLA)

HLA

API Documentation

https://documenter.getpostman.com/view/31634961/2sA3QngtbA

Task Management

https://docs.google.com/spreadsheets/d/1v_BGJRoif_1tqawjtOxRVz0vy32ZO_L2c-Opy3yZqv0/edit?usp=sharing

Setup

How To Setup This Project:

  1. Open a terminal and navigate to the project folder.
  2. If you don't have Go installed on your computer don't forget to install it
  3. Run the command go mod tidy to download all required dependencies.
  4. Copy the .env.example file and rename it to .env.
  5. Edit the configuration in the .env file.
  6. Run the command go run main.go to run the project.