Sinis - systém pro kolejní klub Sincoolka / Sinis - Sincoolka club system
- Authors
- Publication Date
- Jun 20, 2024
- Source
- Digital Library of the Czech Technical University in Prague
- Keywords
- License
- Unknown
Abstract
Tato bakalářská práce se zabývá analýzou, návrhem a implementací serverové části informačního systému pro kolejní klub Sincoolka. Klub nyní provozuje informační systém, avšak současné řešení má nedostatky v bezpečnosti, konkrétně SQL injekce a XSS. Nedokonalosti systému spočívají v členitosti a přehlednosti kódu. Po popisu stávajícího systému následuje analýza, návrh, implementace, testování a API dokumentace nového řešení. Serverová část systému je implementována pomocí frameworku Spring, který poskytuje REST API, jazyku Java a databázového systému PostgreSQL. Systém zpracovává osobní údaje o členech, ukládá a páruje platby se členem za účelem vytvoření členství nebo nabití konta pro tisk. Platby vznikly prostřednictvím platební brány nebo bankovním převodem. Systém umožňuje spočítat cenu vytisknutí dokumentu na kolejní tiskárně. Dále pomáhá s průběhem voleb do zastupitelstva koleje a klubu. V neposlední řadě podporuje správu místní sítě, především ukládá sítová zařízení a určuje, které se může připojit. / This bachelor thesis deals with the analysis, design, and implementation of the server-side component of the information system for the Sincoolka dormitory club. The club currently operates an information system, but the current solution has vulnerabilities such as SQL injection and XSS. Deficiencies of system are in code modularity and clarity. The thesis includes analysis, design, implementation, testing and API documentation of the new solution. The server-side component of the system is implemented using the Spring framework, which provides the REST API of the system, Java language and database system PostgreSQL. The system processes personal information about members, stores and matches payments with the member, in order to create a membership or charge an account for printing. Payments were made through a payment gateway or bank transfer. The system allows you to calculate the price of printing a document on a dormitory printer. It also helps with the organization of elections to the college council and the club. Last but not least, it supports local network management, mainly storing network devices and determining which ones can connect.