定制 ilbullo/artisan-ledger 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ilbullo/artisan-ledger

最新稳定版本:v1.0.0

Composer 安装命令:

composer require ilbullo/artisan-ledger

包简介

Modulo agnostico per la gestione dei corrispettivi giornalieri

README 文档

README

La soluzione definitiva per la gestione dei corrispettivi giornalieri in Laravel.

Artisan Ledger nasce dall'esigenza di semplificare la contabilità quotidiana per artigiani, trasportatori e piccole imprese. Spesso i gestionali standard sono troppo complessi; questo pacchetto offre un'interfaccia pulita, reattiva e focalizzata solo su ciò che conta: quanto hai incassato e come.

✨ Perché scegliere Artisan Ledger?

Monitorare gli incassi non dovrebbe essere un lavoro a tempo pieno. Con questo pacchetto integrato nella tua applicazione Laravel, ottieni:

  • ⚡ Interfaccia Real-time: Grazie a Livewire, i dati vengono salvati e aggiornati istantaneamente in tutti i report senza mai ricaricare la pagina.
  • 📊 Analisi Multicanale: Non limitarti a un totale. Suddividi i tuoi incassi tra Contanti, POS, Bonifici o qualsiasi altro metodo configurabile.
  • 🔍 Controllo Totale: La "Griglia di Controllo" ti permette di individuare in un secondo i giorni dimenticati o i buchi nella registrazione.
  • 🏦 Architettura Professionale: Utilizza relazioni polimorfiche, il che significa che puoi collegare un registro a un Utente, a un'intera Ditta o a una specifica Filiale senza cambiare una riga di codice.

🛠 Funzionalità Incluse

📝 Editor Giornaliero Smart

Un componente minimalista per inserire le cifre di fine giornata. Include un campo note per segnare anomalie, turni o promemoria importanti.

📅 Dettaglio Mensile (Matrix View)

Una tabella avanzata che mostra i giorni del mese sulle righe e i tuoi canali di incasso sulle colonne. Include i totali di riga (giornalieri) e i totali di colonna (mensili per canale).

📈 Riepilogo Annuale

Una visione ad alto livello che raggruppa gli incassi mese per mese, ideale per il confronto delle performance stagionali e per la preparazione dei dati per il commercialista.

🏁 Griglia di Verifica

Una visualizzazione compatta 1-31 per tutti i 12 mesi dell'anno. Ogni cella indica se il dato è presente, rendendo il "check" di fine mese estremamente rapido.

🎨 Design Moderno

Il pacchetto è costruito con Tailwind CSS, offrendo un look pulito e professionale che si adatta perfettamente alla dashboard di Laravel Breeze o Jetstream. È completamente responsive: controlla i tuoi incassi anche da smartphone mentre sei in viaggio.

📦 Installazione

Segui questi passaggi per integrare Artisan Ledger nel tuo progetto Laravel.

1. Requisiti

Assicurati che il tuo progetto utilizzi:

  • PHP 8.2 o superiore
  • Laravel 10.x o 11.x
  • Livewire 3.x

2. Installazione tramite Composer

Esegui il comando dalla root del tuo progetto:

composer require ilbullo/artisan-ledger

3. Configurazione del Modello

Il pacchetto utilizza una relazione polimorfica per associare i dati del registro. Aggiungi il trait HasLedger al modello che gestirà i corrispettivi (solitamente User.php):

PHP

namespace App\Models;

use Ilbullo\ArtisanLedger\Traits\HasLedger;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    use HasLedger;

    // ... il resto del tuo modello
}

4. Database e Migrazioni

Crea le tabelle necessarie (ledger_days e ledger_entries) eseguendo le migrazioni:

Bash

php artisan migrate

5. Pubblicazione Asset

Per personalizzare i canali di incasso o lo stile dei componenti, pubblica i file del pacchetto:

Configurazione (Consigliato) Serve per definire i tuoi canali (Contanti, POS, ecc.):

Bash

php artisan vendor:publish --tag="artisan-ledger-config"

Viste Blade (Opzionale) Se desideri modificare il design dei componenti (Tailwind CSS):

Bash

php artisan vendor:publish --tag="artisan-ledger-views"

🛠 Setup Post-Installazione

Configura i tuoi canali

Apri il file config/artisan-ledger.php e adatta l'array channels alle tue esigenze lavorative:

PHP

'channels' => [
    'cash' => [
        'label' => 'Contanti',
        'icon'  => 'banknotes',
    ],
    'pos' => [
        'label' => 'POS / Carte',
        'icon'  => 'credit-card',
    ],
    // Aggiungi qui altri canali come 'bonifico', 'assegno', ecc.
],

🎨 Personalizzazione dei Template (Viste)

Se desideri modificare il design dei componenti per adattarlo perfettamente al tuo tema, puoi pubblicare i file Blade nella cartella delle risorse del tuo progetto.

1. Pubblicare le viste

Esegui questo comando nel terminale:

php artisan vendor:publish --tag="artisan-ledger-views"

2. Dove trovare i file

Dopo l'esecuzione, troverai tutti i template del pacchetto in: resources/views/vendor/artisan-ledger/

Qui potrai modificare liberamente:

  • livewire/ledger-editor.blade.php: Il form di inserimento.

  • livewire/ledger-monthly-detail.blade.php: La tabella dei corrispettivi.

  • ...e tutti gli altri componenti.

3. Note sul Design

I componenti sono costruiti utilizzando Tailwind CSS.

  • Se modifichi le classi Tailwind nelle viste pubblicate, assicurati che il tuo file tailwind.config.js includa il percorso delle viste vendor per compilare correttamente i nuovi stili:

JavaScript

content: [
    // ... altri percorsi
    "./resources/views/vendor/artisan-ledger/**/*.blade.php",
],

Nota: Una volta pubblicate, Laravel darà la precedenza ai file in resources/views/vendor/artisan-ledger/ rispetto a quelli originali contenuti nel pacchetto.

🏷️ Tag dei Componenti

Puoi inserire questi tag in qualsiasi file Blade (es. resources/views/dashboard.blade.php). Assicurati che l'utente sia autenticato, poiché il registro è collegato al profilo dell'utente loggato.

1. Editor di Inserimento (Giornaliero)

Utilizzato per caricare i dati della giornata selezionata.

<livewire:ledger-editor />

2. Tabella Mensile Dettagliata

Mostra la griglia completa del mese corrente con i totali per ogni canale.

HTML

    <livewire:ledger-monthly-detail />

3. Riepilogo Totali Annuali

Mostra una tabella sintetica con i totali incassati mese per mese.

HTML

    <livewire:ledger-yearly-overview />

4. Griglia di Controllo (Checklist)

Una matrice compatta (mesi/giorni) per individuare rapidamente i giorni senza registrazioni.

HTML

    <livewire:ledger-monthly-grid />

Esempio di implementazione rapida

Ecco come potresti organizzare la tua dashboard in Laravel Breeze:

HTML

    <x-app-layout>
        <div class="py-12">
            <div class="max-w-7xl mx-auto sm:px-6 lg:px-8 space-y-6">
                
                <div class="p-4 sm:p-8 bg-white shadow sm:rounded-lg">
                    <livewire:ledger-editor />
                </div>
    
                <div class="p-4 sm:p-8 bg-white shadow sm:rounded-lg">
                    <livewire:ledger-monthly-detail />
                </div>
    
            </div>
        </div>
    </x-app-layout>

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: Blade

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-19

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固