ITC Expenses Management System

Overview

ITC Expenses Management

Installation

The installation of this project requires composer

  • Step 1: Clone this repository
    git clone [email protected]:ahmard/ict-expenses-management.git
    
  • Step 2: Change directory ownership
    chown www-data:www-data ict-expenses-management -R
    
  • Step 3: Install composer dependencies
    cd ict-expenses-management
    composer update
    
  • Step 4: Configure database connection, duplicate .env.example to .env and make following changes to .env
    • DB_DATABASE = your_database_name
    • DB_USERNAME = your_database_user
    • DB_PASSWORD = your_database_user_password
  • Step 5: Generate application key
    php artisan key:generate
    
  • Step 6: copy config/dev.conf to /etc/nginx/conf.d/dev.conf to configure nginx
  • Step 7: Restart nginx
    service nginx restart
    

You can alternatively use PHP's built-in server

cd ict-expenses-management
php artisan serve

And all your requests should be sent to http://localhost:8000

Usage

List expenses

Send GET request to /api/expenses endpoint

Create expenses

Send POST request to /api/expenses endpoint with following json-payload

{
    "user": 1,
    "reason" : "Your expense reason",
    "value": "Your expense value",
    "date": "YYYY-MM-DD"
}

If your expense is created, you'll receive something like

{
    "success": true,
    "status": 200,
    "data": {
        "user": 1,
        "reason": "Fri",
        "value": 2384,
        "date": "2021-08-19",
        "updated_at": "2021-08-19T11:44:27.000000Z",
        "created_at": "2021-08-19T11:44:27.000000Z",
        "expense_id": 8
    }
}

In case of any validation error, you'll receive response similar to below

{
    "success": false,
    "status": 500,
    "data": {
        "reason": [
            "The reason must be at least 3 characters."
        ]
    }
}

Testing the application

php artisan test
You might also like...
 A complete solution for group projects in organizations that lets you track your work in any scenario. Working in a team is a cumbersome task, ease it using our project management system.
A complete solution for group projects in organizations that lets you track your work in any scenario. Working in a team is a cumbersome task, ease it using our project management system.

SE-Project-Group24 What is Evolo? Evolo is Dashboard based Project Management System. A complete solution for group projects in organizations that let

Get the system resources in PHP, as memory, number of CPU'S, Temperature of CPU or GPU, Operating System, Hard Disk usage, .... Works in Windows & Linux

system-resources. A class to get the hardware resources We can get CPU load, CPU/GPU temperature, free/used memory & Hard disk. Written in PHP It is a

Tier3 POS SYSTEM - FBR Integrated POS System
Tier3 POS SYSTEM - FBR Integrated POS System

FBR-POS-INTEGRATION-SERVICES Tier3 POS SYSTEM - FBR Integrated POS System Minimum System Requirements : PHP version 7.2+ (openssl, curl, gd, intl and

Your private self hosted composer repository with user management

Devliver Your private self-hosted composer repository. Requirements Docker MariaDB/MySQL the running docker container has access to private git reposi

Nuber is an open source container management platform it provides a front end to manage your own cloud infrastructure, using Linux Containers virtualization technology

Nuber is an open source container management platform it provides a front end to manage your own cloud infrastructure, using Linux Containers virtualization technology

SuiteCRM is the award-winning open-source, enterprise-ready Customer Relationship Management (CRM) software application.
SuiteCRM is the award-winning open-source, enterprise-ready Customer Relationship Management (CRM) software application.

SuiteCRM is the award-winning open-source, enterprise-ready Customer Relationship Management (CRM) software application.

This project aims to facilitate the management of websites monitored by the blackbox exporter, via a web UI.

This project aims to facilitate the management of websites monitored by the blackbox exporter, via a web UI. The UI would allow to add/remove sites, groups, and even add different fields in the prometheus database.

A school management Software
A school management Software

Version 2.X is here!! For Version 1.X, view releases. School Management and Accounting Software Join Discord Server We like to challenge the quality o

Sends log messages to the Logentries log management service

Phalcon Logentries Phalcon library to connect and make log entries using Logentries. You can adapt it to your own needs or improve it if you want. Ple

Owner
Ahmad Mustapha
@php enthusiastic, love new ideas. Always learning programming & (space + astronomy) stuffs.
Ahmad Mustapha
Easy management of Virtualization technologies including KVM, Xen, OpenVZ, Virtuozzo, and LXC/LXD including unified commands, monitoring, template management, and many more features.

ProVirted About Easy management of Virtualization technologies including KVM, Xen, OpenVZ, Virtuozzo, and LXC/LXD including unified commands, monitori

null 2 Aug 22, 2022
OrangeHRM is a comprehensive Human Resource Management (HRM) System that captures all the essential functionalities required for any enterprise.

OrangeHRM Open Source Application OrangeHRM is a comprehensive Human Resource Management (HRM) System that captures all the essential functionalities

OrangeHRM 452 Jan 4, 2023
Sentrifugo is a FREE and powerful Human Resource Management System (HRMS) that can be easily configured to meet your organizational needs.

Sentrifugo Sentrifugo is a free and powerful new-age Human Resource Management System that can be easily configured to adapt to your organizational pr

Sentrifugo 447 Dec 27, 2022
Terminal management system.

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

HISTYLE 3 Sep 5, 2022
Project template for starting your new project based on the Sulu content management system

Sulu is a highly extensible open-source PHP content management system based on the Symfony framework. Sulu is developed to deliver robust multi-lingua

Sulu CMS 188 Dec 28, 2022
Terminal management system.

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

HISTYLE 2 May 14, 2022
MOFHY Lite is a priceless MyOwnFreeHost Client Area for account management, ticket support system and a free ssl service

MOFHY Lite is a priceless MyOwnFreeHost Client Area for account management, ticket support system and a free ssl service. It has easy to use features much like the WHMCS Digit UI interface.

MOFHY Developers 1 Oct 21, 2022
This is Laravel Framework. Referral User Management System, Payment using Coinpayment.net. etc

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Worlddev5007 12 Aug 26, 2022
Cadre is a free and open-source PHP staff management system that is built on Bootstrap and Core Boxx.

CADRE Cadre is a free and open-source PHP Staff Management System. Not the best in the world, but this simple portal has the basic features to help sm

Code Boxx 3 Sep 26, 2022
JohnCMS Content Management System

JohnCMS 10 This version is at an early stage of development. Many things may not work or work not as intended. System requirements PHP 8.0 and higher

JohnCMS 48 Dec 26, 2022