Billing - Ticket System - Consumption - Efficiency
EXPLORE DOCS
Plenty of features
·
Report Bug
·
Request Feature
Table of Contents
This Cooling Grid Manager is a software solution designed to efficiently manage and optimize cooling grid systems. This project leverages the power of C# programming language and .NET technologies to deliver a robust and user-friendly application tailored for the needs of cooling grid operators and managers. See it as a starting point and develop and extend it as per your needs.
- Ticket Management: Streamline ticket creation, tracking, and resolution processes for maintenance, repairs, billing, and other operational tasks.
- Integration: Seamlessly integrate with existing data sources, IoT devices, and monitoring systems to centralize data management and enhance operational efficiency.
- Parameter Logging: Track and log grid parameters for each cooling grid system, facilitating loss analysis, root cause identification, and remedial action implementation.
- Billing: Efficiently manage billing processes for cooling grid services, including invoicing, payment tracking, and revenue management.
- Consumer Management: Centralize consumer data and interactions, enabling effective communication, service provisioning, and account management.
- Consumption Tracking: Monitor and analyze cooling grid consumption patterns to optimize resource allocation, identify inefficiencies, and implement cost-saving measures.
- C#: The primary programming language used for developing the Cooling Grid Manager, providing a powerful and versatile framework for application development.
- ASP.NET Core: Utilized for building scalable and high-performance web applications, enabling cross-platform compatibility and modern web development practices.
- Entity Framework Core: Facilitates object-relational mapping (ORM) for database interaction, simplifying data access and management.
- FluentValidation: Integrated for comprehensive validation of input data, ensuring data integrity and application reliability.
- Serilog: Employed for structured logging, enabling efficient monitoring and troubleshooting of application behavior and errors.
- Cron Jobs: Implemented for automating tasks such as creating bills and calculating grid efficiency and energy transfer at the start of each month, enhancing efficiency and reducing manual intervention.
- Swagger: Integrated Swagger for API documentation, offering a user-friendly interface to explore and interact with API endpoints, facilitating development and collaboration.
Run program by: dotnet run
Build program by: dotnet build
This server exposes various endpoints to facilitate authentication, file management, and plant-related operations. Please review implemented swagger information for more details at: http://localhost:5286/index.html
The files API '/tickets' provides functionality for creating and updating (eg. status "solved") support tickets. Currently available options for status are 'open', 'onhold' and 'solved'. For the purpose of Incident Management, support tickets can be submitted and managed to keep an eye on and solve adverse events.
API '/consumptions' offers endpoints for managing consumption data of consumers.
API '/billing' offers endpoints for managing consumer bills.
API '/consumers' offers endpoints for managing consumers, for example creation of a new consumer or retrieving consumer details connected to a grid section of a grid.
API '/grids' offers endpoints for managing cooling grid systems, for example creation of a new grid.
Subdivide each grid into sections with API '/gridsections' for better overview and management.
API '/gridparameters' offers endpoints for managing cooling grid systems. For example, add new grid parameter log, such as mass flow rate (in kg/s), specific heat capacity of the heating fluid (in J/kg⋅K) as well as temperature inlet and outlet (K) which is needed to calculate the temperature difference ΔT = T_in - T_out. The following formula can be used to calculate the energy flow (cooling energy transfer rate) through the pipe: Energy Flow (Q) = Mass Flow Rate (m) * Specific Heat Capacity (Cp) * Temperature Difference (ΔT). Determine the appropriate frequency for data collection based on your monitoring needs. A higher frequency provides more detailed information but requires more storage and processing resources.
API '/GridEnergyTransfer' offers endpoints for managing the transfered energy per month. Based on on the logged parameters of the grid, the entire energy transfer in kWh is calculated for each month based on E_month = (m_dot) * (cp) * (T_in - T_out) * (t) / (3600 * 1000). T_in represents the average flow temperature into the grid; T_out the return flow temperature. t reflects the time in seconds. The difference between energy transfer of the grid and total consumer consumption reflects grid losses.
- ✅ Cron job implementation calculating and storing grid energy transfer
- ✅ Cron job implementation calculating and storing grid efficiency
- ⬜️ Implementing Authentication and Authorization
- ⬜️ Providing statistical evaluation
- ⬜️ Extend testing
- ⬜️ Add email notifications
See the open issues to report bugs or request fatures.
Contributions to the Cooling Grid Manager project are welcome! Whether you're interested in adding new features, fixing bugs, or improving documentation, your contributions are highly valued. To get started, fork the repository, make your changes, and submit a pull request.
See CONTRIBUTING.md for more info.
Distributed under the GNU General Public License v2.0. See LICENSE for more information.
Paul Münzner: https://paulmuenzner.com
Project Link: https://github.com/paulmuenzner/CoolingGridManager