Overview
Comment:Simplification des cibles
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | dev
Files: files | file ages | folders
SHA1: a3184ce2f125c8df816912af64376c91dd408f28
User & Date: bohwaz on 2020-06-22 21:27:37
Other Links: branch diff | manifest | tags
Context
2020-06-23
00:32
Merge avec trunk check-in: eea005f855 user: bohwaz tags: dev
2020-06-22
21:27
Simplification des cibles check-in: a3184ce2f1 user: bohwaz tags: dev
2020-04-24
02:23
Renommer "Plans" en "Charts" (anglais correct) check-in: 70ab5d00ec user: bohwaz tags: dev
Changes

Modified src/include/lib/Garradin/Compta/Comptes.php from [0bf699eef0] to [7cc9fbed31].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php

namespace Garradin\Compta;

use Garradin\Entity;
use Garradin\DB;
use Garradin\Utils;
use Garradin\UserException;

class Comptes
{
    const CAISSE = '530';

    const CHEQUE_A_ENCAISSER = '5112';
    const CARTE_A_ENCAISSER = '5115';

    const PASSIF = 0x01;
    const ACTIF = 0x02;
    const PRODUIT = 0x04;
    const CHARGE = 0x08;

    /**
     * Importe un plan comptable











<
<
<
<
<







1
2
3
4
5
6
7
8
9
10
11





12
13
14
15
16
17
18
<?php

namespace Garradin\Compta;

use Garradin\Entity;
use Garradin\DB;
use Garradin\Utils;
use Garradin\UserException;

class Comptes
{





    const PASSIF = 0x01;
    const ACTIF = 0x02;
    const PRODUIT = 0x04;
    const CHARGE = 0x08;

    /**
     * Importe un plan comptable
444
445
446
447
448
449
450




















451
452
453
454
455
456
457
458
459
460
461
462
463
            {
                throw new UserException('Le compte '.$data['id'].' n\'est pas un sous-compte de '.$data['parent'].'.');
            }
        }

        return true;
    }





















    public function getPositions()
    {
        return [
            self::ACTIF     =>  'Actif',
            self::PASSIF    =>  'Passif',
            self::ACTIF | self::PASSIF      =>  'Actif ou passif (déterminé automatiquement au bilan selon le solde du compte)',
            self::CHARGE    =>  'Charge',
            self::PRODUIT   =>  'Produit',
            self::CHARGE | self::PRODUIT    =>  'Charge et produit',
        ];
    }
}







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>













439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
            {
                throw new UserException('Le compte '.$data['id'].' n\'est pas un sous-compte de '.$data['parent'].'.');
            }
        }

        return true;
    }

    public function listSimpleTargetAccounts()
    {
        $accounts = DB::getInstance()->get('SELECT id, parent, label, b.label AS parent_label
            FROM acc_accounts a
            INNER JOIN acc_accounts b ON b.id = a.parent
            WHERE type != 0 ORDER BY type, parent, code;');

        $out = [];

        foreach ($accounts as $account) {
            if (!isset($out[$account->parent_label])) {
                $out[$account->parent_label] = [];
            }

            $out[$account->parent_label][$account->id] = $account->label;
        }

        return $out;
    }

    public function getPositions()
    {
        return [
            self::ACTIF     =>  'Actif',
            self::PASSIF    =>  'Passif',
            self::ACTIF | self::PASSIF      =>  'Actif ou passif (déterminé automatiquement au bilan selon le solde du compte)',
            self::CHARGE    =>  'Charge',
            self::PRODUIT   =>  'Produit',
            self::CHARGE | self::PRODUIT    =>  'Charge et produit',
        ];
    }
}

Modified src/templates/admin/compta/operations/saisir.tpl from [6f6ae84b30] to [b6541e1492].

21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
            {input type="radio" name="type" value="avance" label="Saisie avancée" help="Choisir les comptes du plan comptable, ventiler une écriture sur plusieurs comptes, etc."}
        </dl>
    </fieldset>

    <fieldset>
        <legend>Informations</legend>
        <dl>
            {input type="date" name="date" value=$date label="Date" required}
            {input type="text" name="libelle" label="Libellé" required}
            {input type="number" name="montant" label="Montant" min="0.00" step="0.01" value="0.00" required} {$config.monnaie}
        </dl>
        <dl class="type_recette type_depense">
            {input type="select" name="moyen" label="Moyen de paiement" required options=$moyens_paiement}
            {input type="select" name="compte" options=$comptes_encaissement label="Compte d'encaissement" required}
            {input type="text" name="reference_paiement" label="Référence de paiement" help="Numéro de chèque, numéro de transaction CB, etc."}
        </dl>
        <dl class="type_avance">
            {input type="compta_lignes" name="lignes" label="Lignes de l'écriture"}
        </dl>
    </fieldset>

    <fieldset class="type_virement">
        <legend>Virement</legend>
        <dl>
            {input type="select" name="from" options=$comptes label="De" required}
            {input type="select" name="to" options=$comptes label="Vers" required}
        </dl>
    </fieldset>

    <fieldset>
        <legend>Détails</legend>
        <dl>
            {input type="datalist" name="membre" label="Membres associés"}







|
|
|


|
<










|
|







21
22
23
24
25
26
27
28
29
30
31
32
33

34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
            {input type="radio" name="type" value="avance" label="Saisie avancée" help="Choisir les comptes du plan comptable, ventiler une écriture sur plusieurs comptes, etc."}
        </dl>
    </fieldset>

    <fieldset>
        <legend>Informations</legend>
        <dl>
            {input type="date" name="date" value=$date label="Date" required=1}
            {input type="text" name="label" label="Libellé" required=1}
            {input type="number" name="amount" label="Montant" min="0.00" step="0.01" value="0.00" required=1} {$config.monnaie}
        </dl>
        <dl class="type_recette type_depense">
            {input type="select_groups" name="account" label="Compte" required=1}

            {input type="text" name="reference_paiement" label="Référence de paiement" help="Numéro de chèque, numéro de transaction CB, etc."}
        </dl>
        <dl class="type_avance">
            {input type="compta_lignes" name="lignes" label="Lignes de l'écriture"}
        </dl>
    </fieldset>

    <fieldset class="type_virement">
        <legend>Virement</legend>
        <dl>
            {input type="select" name="from" options=$comptes label="De" required=1}
            {input type="select" name="to" options=$comptes label="Vers" required=1}
        </dl>
    </fieldset>

    <fieldset>
        <legend>Détails</legend>
        <dl>
            {input type="datalist" name="membre" label="Membres associés"}

Modified src/www/admin/compta/_inc.php from [da7b17d045] to [c1d56da526].

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php

namespace Garradin;

require_once __DIR__ . '/../_inc.php';

$session->requireAccess('compta', Membres::DROIT_ACCES);

$comptes = new Compta\Comptes;

$tpl->assign('id_caisse', Compta\Comptes::CAISSE);
$tpl->assign('id_cheque_a_encaisser', Compta\Comptes::CHEQUE_A_ENCAISSER);
$tpl->assign('id_carte_a_encaisser', Compta\Comptes::CARTE_A_ENCAISSER);









<
<
<
<
1
2
3
4
5
6
7
8
9




<?php

namespace Garradin;

require_once __DIR__ . '/../_inc.php';

$session->requireAccess('compta', Membres::DROIT_ACCES);

$comptes = new Compta\Comptes;




Modified src/www/admin/compta/operations/saisir.php from [294cef7d9f] to [e22f5542d2].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
namespace Garradin;

require_once __DIR__ . '/../_inc.php';

$session->requireAccess('compta', Membres::DROIT_ECRITURE);

$journal = new Compta\Journal;

$journal->checkExercice();

$cats = new Compta\Categories;
$banques = new Compta\Comptes_Bancaires;

$type = f('type') ?: 'recette';

if (f('save'))
{
    $form->check('compta_saisie', [
        'libelle' => 'required',












<







1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19
<?php
namespace Garradin;

require_once __DIR__ . '/../_inc.php';

$session->requireAccess('compta', Membres::DROIT_ECRITURE);

$journal = new Compta\Journal;

$journal->checkExercice();

$cats = new Compta\Categories;


$type = f('type') ?: 'recette';

if (f('save'))
{
    $form->check('compta_saisie', [
        'libelle' => 'required',
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
        }
    }
}

$tpl->assign('type', $type);

$tpl->assign('comptes', $comptes->listTree());
$tpl->assign('moyens_paiement', $cats->listMoyensPaiement());
$tpl->assign('moyen_paiement', f('moyen_paiement') ?: 'ES');
$tpl->assign('categories_depenses', $cats->getList(Compta\Categories::DEPENSES));
$tpl->assign('categories_recettes', $cats->getList(Compta\Categories::RECETTES));
$tpl->assign('comptes_bancaires', $banques->getList());
$tpl->assign('banque', f('banque'));
$tpl->assign('compte_cheque_e_encaisser', Compta\Comptes::CHEQUE_A_ENCAISSER);
$tpl->assign('compte_carte_e_encaisser', Compta\Comptes::CARTE_A_ENCAISSER);
$tpl->assign('projets', (new Compta\Projets)->getAssocList());

if (!$session->get('context_compta_date'))
{
    $session->set('context_compta_date', date('Y-m-d'));
}

$tpl->assign('date', $session->get('context_compta_date') ?: false);
$tpl->assign('ok', (int) qg('ok'));

$tpl->display('admin/compta/operations/saisir.tpl');







<
<


|
<
<
<
<










153
154
155
156
157
158
159


160
161
162




163
164
165
166
167
168
169
170
171
172
        }
    }
}

$tpl->assign('type', $type);

$tpl->assign('comptes', $comptes->listTree());


$tpl->assign('categories_depenses', $cats->getList(Compta\Categories::DEPENSES));
$tpl->assign('categories_recettes', $cats->getList(Compta\Categories::RECETTES));
$tpl->assign('comptes_simples', $comptes->listSimpleTargetAccounts());





if (!$session->get('context_compta_date'))
{
    $session->set('context_compta_date', date('Y-m-d'));
}

$tpl->assign('date', $session->get('context_compta_date') ?: false);
$tpl->assign('ok', (int) qg('ok'));

$tpl->display('admin/compta/operations/saisir.tpl');

Modified src/www/admin/static/gdin_bg.png from [99cd57a4b4] to [d9ebe3bac2].

cannot compute difference between binary files