![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 7 Dołączył: 27.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Hej,
pracuje aktualnie nad jednym projektem i jest w nim kawałek CRM w związku z tym potrzebowałem czegoś do masowego generowania faktur dla klientów. Pomyślałem, że pewnie nie jestem pierwszy, który ma ten problem więc można by zrobić z tego osobną bibliotekę do używania w różnych projektach. I tak oto jest: https://github.com/loskoderos/faktura-php Przykładowa faktura: https://github.com/loskoderos/faktura-php/b..._invoice_pl.pdf (IMG:https://raw.githubusercontent.com/loskoderos/faktura-php/master/examples/screenshot1.png) Używanie jest dość proste:
Tutaj jest pełny przykład: https://github.com/loskoderos/faktura-php/b..._invoice_pl.php Projekt aktualnie bazuje na Xvfb i Wkhtmltopdf, które muszą być zainstalowane w systemie aby działało. Ponieważ, buduję aplikacje w Symfony to pewnie opakuje to w bundle i dodam support dla Twig'a, ale póki co to jest pierwsza beta. Wrzucam tutaj, fajnie jakbyście zajrzeli w kod i ocenili co warto by zmienić. W założeniu to musi być w stanie generować fakture dla dowolnego projektu i wspierać model faktury z dowolnego kraju. Z góry dzięki za feedback. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie przyglądałem się bliżej, ale jestem przekonany, że ta klasa ma za dużo odpowiedzialności. Fabryka, renderer i exporter w jednym. Rozdziel to na klasy posiadające pojedynczą odpowiedzialność i przy okazji skorzystaj z interfejsów.
Przy okazji też unikaj takich myków:
W ten sposób jesteś uzależniony od tych konkretnych implementacji. (Co jak będziesz chciał eksportować do docx, itp?). Użyj Dependency Injection z typowaniem za pomocą interfejsów. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 19:58 |