Skip to content
This repository has been archived by the owner on Jun 22, 2022. It is now read-only.

Latest commit

 

History

History
75 lines (56 loc) · 2.47 KB

README.md

File metadata and controls

75 lines (56 loc) · 2.47 KB

Chem Inventory

NOTE: This repo is archived, read-only access is provided.

Overview

This is a chemical inventory suitable for a medium-sized company. A very similar system is actually used in the industry.

Like any inventory, this system is designed to answer two questions:

  1. WHAT we have
  2. WHERE it is

Chemicals are structured in categories/subcategories. There are compounds, a compound can have batches and a batch can have many packs. Locationwise you can design laboratories (rooms), inside laboratories different storages (like cabinets, cupboards, fridges, etc.) and inside storages some sub- storages (e.g. shelves of a cupboard). Anyway, you can use any logic, nevertheless there is a pre-defined 3-tier location system.

Compound, batch and pack management is through the web interface. Locations & manufacturers are stored in the database as well as user right levels, so you can manipulate them with a database management software or plain SQL.

Barcodes are assigned to each pack, so you can use labels for identification in the lab. (barcode printing is not implemented yet in this application)

Adding and editing batches and packs is only allowed for admins. Users can add/edit compounds and upload documents, whereas guests only can view and search the database.

Features

  • Three user access levels (guest/user/admin)
  • Add/edit compounds, batches and packs (Partially implemented in this edition)
  • Inactivate packs when getting empty (Not implemented in this edition)
  • Changelog for audit trails (Not implemented in this edition)
  • Search chemicals with autocomplete (Not implemented in this edition)
  • Generate barcodes (Not implemented in this edition)
  • Drawing chemical structures (Not implemented in this edition)

Technical Details

  • Fully OOP
  • Custom-made core framework:
    • Routing
    • Session Management
    • Controllers
    • DataBase Handling
    • Exception handling
    • Rendering
    • etc.
  • Backend: PHP
  • Template engine: Smarty
  • jQuery
  • Not all inventory feature implemented

Installation

  1. Clone or download repository
  2. Set /public directory to be the web server document root
  3. Setup a MySQL server and import DB_structure.sql
  4. Edit config.php with your credentials (database)
  5. (optional) Load the database with sample data (DB_sample_data.sql)

License

MIT license

This is a free software ;)

Contact

If you need more information feel free to contact me:

Sandor Semsey semseysandor@gmail.com