kevrocks67 / Computer-Carts

An application to manage the laptops and computer carts at the Columbia Secondary School

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Computer-Carts

A Qt5 based project created to manage the laptop inventory and laptop carts at the Columbia Secondary School.

Note: The original python/kivy version has been deprecated in favor of this C++/Qt version.

Build/Install Instructions (Linux)

  1. Install Qt build dependencies
  2. Change into the ComputerCartQT directory
  3. Make a build folder and run cmake .. inside of it
  4. Run make -j $(nproc)
  5. ./ComputerCartQT

Arch

sudo pacman -S qt5-base qt5-tools
git clone --recurse-submodules https://github.com/kevrocks67/Computer-Carts.git
cd Computer-Carts/ComputerCartQT
mkdir build && cd build
cmake .. && make -j$(nproc)
./ComputerCartQT

Ubuntu

sudo apt install git qt5-default qt5-qmake libqt5sql5-mysql g++ make
git clone --recurse-submodules https://github.com/kevrocks67/Computer-Carts.git
cd Computer-Carts/ComputerCartQT
mkdir build && cd build
cmake .. && make -j$(nproc)

CentOS/Fedora

sudo yum install qt5-qtbase qt5-qtbase-common qt5-qtbase-devel qt5-qtbase-gui \
qt5-qtbase-mysql git make gcc-c++
git clone --recurse-submodules https://github.com/kevrocks67/Computer-Carts.git
cd Computer-Carts/ComputerCartQT
mkdir build && cd build
cmake .. && make -j$(nproc)

Setting up to use SQL (Linux)

  1. Install mariadb/mysql and start the mysql service
  2. Enter the mysql commandline interpreter
  3. Create a database called ComputerCarts
CREATE DATABASE ComputerCarts;
  1. Open the newly created database
USE ComputerCarts;
  1. Copy/paste the provided schema (carts.sql) into the interpreter to create the necessary tables
  2. Create a user account you can use with the app for database ComputerCarts
CREATE USER 'SomeUsername' IDENTIFIED BY 'SomeSecurePassword';
GRANT USAGE ON ComputerCarts.* TO 'SomeUsername'@'%' IDENTIFIED BY 'SomeSecurePassword';
GRANT SELECT, UPDATE, INSERT, DELETE ON ComputerCarts TO 'SomeUsername'@'%';
GRANT SELECT, UPDATE, INSERT, DELETE ON Laptops TO 'SomeUsername'@'%';
GRANT SELECT, UPDATE, INSERT, DELETE ON Reservations TO 'SomeUsername'@'%';
  1. Confirm the permission changes
FLUSH PRIVILEGES;
  1. Set the proper options in the ComputerCart App settings

Changing between SQLite and SQL

  1. Open the settings tab
  2. Select SQL/SQLite in the dropdown menu
  3. If using SQL enter the appropriate information in the fields for authentication
  4. Restart the application

Screenshots

Cart Tab Laptop Inventory Tab Settings Panel

Video

Walkthrough Video

Credits

Themes come from the Phantom Style project

License

kevrocks67/Computer-Carts
Copyright (C) <2019> <Kevin Diaz>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

About

An application to manage the laptops and computer carts at the Columbia Secondary School

License:GNU General Public License v3.0


Languages

Language:C++ 75.5%Language:Python 20.8%Language:C 3.2%Language:CMake 0.5%Language:Shell 0.1%