How mesuttekgoz0/printer_tracer works
Printer_Tracer is an internal printer-counter tracking system: users manage printers, trigger manual SNMP readings, review usage reports, and generate frozen, priced supplier settlement documents. The Next.js interface calls an ASP.NET JSON API; its services coordinate SNMP and repository access to SQL Server. The README documents the broader feature set, while sampled source confirms the reading/discovery orchestration and stored-procedure data layer. Some controller-to-repository and frontend route details are documented only at subsystem level, so those links cite the README.
Main entry points: SqlRepositoryBase.cs Stored-procedure access · PrinterReadingService.cs Manual readings · SnmpService.cs SNMP operations · PrinterRepository.cs Printer repository
Components 24
Web interface
- Printer management
web/components/PrintersClient.tsx - Counter reading
web/components/ReadingsClient.tsx - Usage reports
web/components/ReportClient.tsx - Supplier management
web/components/TedarikciDetailClient.tsx - Settlement documents
web/components/HakedisYeniClient.tsx - SNMP diagnostics
web/components/DiagnosticsClient.tsx
JSON API
- Printers API
Controllers/Api/PrintersApiController.cs - Readings API
Controllers/Api/ReadingsApiController.cs - Reports API
Controllers/Api/ReportApiController.cs - Suppliers API
Controllers/Api/TedarikcilerApiController.cs - Settlements API
Controllers/Api/HakedislerApiController.cs - Discovery API
Controllers/Api/DiscoveryApiController.cs - Diagnostics API
Controllers/Api/DiagnosticsApiController.cs
Printer operations
- Printer discovery
Services/PrinterDiscoveryService.cs - Manual readings
Services/PrinterReadingService.cs - SNMP operations
Services/SnmpService.cs
Data access
- Printer repository
Data/Repositories/PrinterRepository.cs - Reading repository
Data/Repositories/PrintReadingRepository.cs - Supplier and pricing data
Data/Repositories/FiyatRepository.cs - Settlement repository
Data/Repositories/HakedisRepository.cs - Stored-procedure access
Data/Repositories/SqlRepositoryBase.cs
External systems
- SQL Server
Other components
- Operator
- Network printers
Connections 29
- Operator → Printer management: manages
- Operator → Counter reading: requests readings
- Operator → Usage reports: reviews usage
- Operator → Supplier management: maintains suppliers
- Operator → Settlement documents: creates documents
- Operator → SNMP diagnostics: diagnoses devices
- Printer management → Printers API: calls API
- Counter reading → Readings API: calls API
- Usage reports → Reports API: calls API
- Supplier management → Suppliers API: calls API
- Settlement documents → Settlements API: calls API
- SNMP diagnostics → Diagnostics API: calls API
- Printers API → Printer repository: uses repository
- Readings API → Manual readings: invokes
Controllers/Api/ReadingsApiController.cs - Reports API → Reading repository: queries readings
- Suppliers API → Supplier and pricing data: uses repository
- Settlements API → Settlement repository: uses repository
- Discovery API → Printer discovery: invokes
Controllers/Api/DiscoveryApiController.cs - Diagnostics API → SNMP operations: diagnoses via
- Manual readings → Printer repository: loads printers
Services/PrinterReadingService.cs - Manual readings → Reading repository: loads and saves readings
Services/PrinterReadingService.cs - Manual readings → SNMP operations: reads counters
Services/PrinterReadingService.cs - Printer discovery → SNMP operations: probes hosts
Services/PrinterDiscoveryService.cs - SNMP operations → Network printers: queries SNMP
Services/SnmpService.cs - Printer repository → Stored-procedure access: uses
Data/Repositories/PrinterRepository.cs - Reading repository → Stored-procedure access: uses
Data/Repositories/PrintReadingRepository.cs - Supplier and pricing data → Stored-procedure access: uses
Data/Repositories/FiyatRepository.cs - Settlement repository → Stored-procedure access: uses
Data/Repositories/HakedisRepository.cs - Stored-procedure access → SQL Server: executes procedures
Data/Repositories/SqlRepositoryBase.cs