]> git.agnieray.net Git - galette.git/commitdiff
Use decimal for amount, review defaults
authorJohan Cwiklinski <johan@x-tnd.be>
Sat, 23 Mar 2024 08:13:59 +0000 (09:13 +0100)
committerJohan Cwiklinski <johan@x-tnd.be>
Mon, 25 Mar 2024 19:48:03 +0000 (20:48 +0100)
galette/docs/CHANGES
galette/install/scripts/mysql.sql
galette/install/scripts/pgsql.sql
galette/install/scripts/sql/upgrade-to-1.10-mysql.sql
galette/install/scripts/sql/upgrade-to-1.10-pgsql.sql
tests/Galette/Entity/tests/units/Contribution.php

index 39321e4ea507abd2fbce0b295b98af94e2ea1330..4731422cc587e1318e81fb48b2b4e381c9a97cb7 100644 (file)
@@ -18,7 +18,8 @@ Changes
 - Option to disable sociel networks on member form/view
 - Factorize permissions on core and dynamic fields
 - Manage administrative documents
-- Allow plugins to provide tjheir own fonts
+- Allow plugins to provide their own fonts
+- Use decimal for all amounts, drop defaults
 
 1.0.3 -> 1.0.4
 
index 9ee85c3e8e1a5c97febb2573c5b1c518b51fcd05..04f40921a99bd56bc86d09eed55b1a2fb95a9101 100644 (file)
@@ -52,7 +52,7 @@ CREATE TABLE galette_cotisations (
   id_cotis int(10) unsigned NOT NULL auto_increment,
   id_adh int(10) unsigned NOT NULL default '0',
   id_type_cotis int(10) unsigned NOT NULL default '0',
-  montant_cotis decimal(15, 2) unsigned default '0',
+  montant_cotis decimal(15, 2) NOT NULL,
   type_paiement_cotis int(10) unsigned NOT NULL,
   info_cotis text,
   date_enreg date NOT NULL default '1901-01-01',
@@ -70,7 +70,7 @@ DROP TABLE IF EXISTS galette_transactions;
 CREATE TABLE galette_transactions (
   trans_id int(10) unsigned NOT NULL auto_increment,
   trans_date date NOT NULL default '1901-01-01',
-  trans_amount decimal(15, 2) default '0',
+  trans_amount decimal(15, 2) NOT NULL,
   trans_desc varchar(255) NOT NULL default '',
   id_adh int(10) unsigned default NULL,
   type_paiement_trans int(10) unsigned NULL DEFAULT NULL,
@@ -99,7 +99,7 @@ DROP TABLE IF EXISTS galette_types_cotisation;
 CREATE TABLE galette_types_cotisation (
   id_type_cotis int(10) unsigned NOT NULL auto_increment,
   libelle_type_cotis varchar(255) NOT NULL default '',
-  amount double NULL,
+  amount decimal(15,2) NULL DEFAULT NULL,
   cotis_extension tinyint(1) NOT NULL default 0,
   PRIMARY KEY (id_type_cotis)
 ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci;
index 92bbe0099cfcb06486b17043cec4ae4d0df668f1..28646e8562232325ba708e400e388664673b5c55 100644 (file)
@@ -245,7 +245,7 @@ DROP TABLE IF EXISTS galette_types_cotisation CASCADE;
 CREATE TABLE galette_types_cotisation (
   id_type_cotis integer DEFAULT nextval('galette_types_cotisation_id_seq'::text) NOT NULL,
   libelle_type_cotis character varying(255) DEFAULT '' NOT NULL,
-  amount real DEFAULT '0',
+  amount decimal(15,2) NULL DEFAULT NULL,
   cotis_extension boolean DEFAULT FALSE,
   PRIMARY KEY (id_type_cotis)
 );
@@ -254,7 +254,7 @@ DROP TABLE IF EXISTS galette_transactions CASCADE;
 CREATE TABLE galette_transactions (
     trans_id integer DEFAULT nextval('galette_transactions_id_seq'::text)  NOT NULL,
     trans_date date DEFAULT '19010101' NOT NULL,
-    trans_amount real DEFAULT '0',
+    trans_amount decimal(15,2) NOT NULL,
     trans_desc character varying(255) NOT NULL DEFAULT '',
     id_adh integer REFERENCES galette_adherents (id_adh) ON DELETE RESTRICT ON UPDATE CASCADE,
     type_paiement_trans integer REFERENCES galette_paymenttypes (type_id) ON DELETE RESTRICT ON UPDATE CASCADE NULL,
@@ -266,7 +266,7 @@ CREATE TABLE galette_cotisations (
     id_cotis integer DEFAULT nextval('galette_cotisations_id_seq'::text)  NOT NULL,
     id_adh integer REFERENCES galette_adherents (id_adh) ON DELETE RESTRICT ON UPDATE CASCADE,
     id_type_cotis integer REFERENCES galette_types_cotisation (id_type_cotis) ON DELETE RESTRICT ON UPDATE CASCADE,
-    montant_cotis real DEFAULT '0',
+    montant_cotis decimal(15,2) NOT NULL,
     type_paiement_cotis integer REFERENCES galette_paymenttypes (type_id) ON DELETE RESTRICT ON UPDATE CASCADE NOT NULL,
     info_cotis text,
     date_enreg date DEFAULT '19010101' NOT NULL,
index 1469fbc81ca0d9ac91a5690996723ac3699a705a..3112cda18ecc11bf1e48b25d7e258eca74caee55 100644 (file)
@@ -1,5 +1,5 @@
 -- Add amount to payment types
-ALTER TABLE galette_types_cotisation ADD amount double NULL;
+ALTER TABLE galette_types_cotisation ADD amount decimal(15,2) NULL DEFAULT NULL;
 -- Add region to members
 ALTER TABLE galette_adherents ADD region_adh varchar(200) NOT NULL DEFAULT '';
 -- Add payment type to transactions
@@ -60,3 +60,8 @@ CREATE TABLE galette_documents (
   PRIMARY KEY (id_document),
   KEY (type)
 ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci;
+
+
+-- change fields types and default values
+ALTER TABLE galette_cotisations CHANGE montant_cotis montant_cotis decimal(15,2) NOT NULL;
+ALTER TABLE galette_transactions CHANGE trans_amount trans_amount decimal(15,2) NOT NULL;
index 08a6499807543c41bf2bc933f7b694f6d3137993..c4cbe2faaee62007a70eaa2d07262114b60a2d8a 100644 (file)
@@ -1,5 +1,5 @@
 -- Add amount to payment types
-ALTER TABLE galette_types_cotisation ADD amount real DEFAULT '0';
+ALTER TABLE galette_types_cotisation ADD amount decimal(15,2) NULL DEFAULT NULL;
 -- Add region to members
 ALTER TABLE galette_adherents ADD region_adh character varying(200) DEFAULT '' NOT NULL;
 -- Add payment type to transactions
@@ -39,3 +39,11 @@ CREATE TABLE galette_documents (
 );
 -- add index on table to look for type
 CREATE INDEX galette_documents_idx ON galette_documents (type);
+
+-- change fields types and default values
+ALTER TABLE galette_cotisations ALTER COLUMN montant_cotis TYPE decimal(15,2);
+ALTER TABLE galette_cotisations ALTER COLUMN montant_cotis DROP DEFAULT;
+ALTER TABLE galette_cotisations ALTER COLUMN montant_cotis SET NOT NULL;
+ALTER TABLE galette_transactions ALTER COLUMN trans_amount TYPE decimal(15,2);
+ALTER TABLE galette_transactions ALTER COLUMN trans_amount DROP DEFAULT;
+ALTER TABLE galette_transactions ALTER COLUMN trans_amount SET NOT NULL;
\ No newline at end of file
index 5f73ade15d8b8a465458f10c9ea2519f577ef793..6a368086d1c6028564fa65f107d747f2bc7791b3 100644 (file)
@@ -257,7 +257,7 @@ class Contribution extends GaletteTestCase
         $data = [
             'id_adh' => $this->adh->id,
             'id_type_cotis' => 4, //donation
-            'montant_cotis' => '',
+            'montant_cotis' => 0,
             'type_paiement_cotis' => 4,
             'info_cotis' => 'FAKER' . $this->seed,
             'date_enreg' => $begin_date->format('Y-m-d'),
@@ -794,7 +794,7 @@ class Contribution extends GaletteTestCase
         $contrib = new \Galette\Entity\Contribution($this->zdb, $this->login, ['type' => 1, 'adh' => $this->adh->id, 'payment_type' => 1]);
         $this->assertSame($ny_begin_date->format('Y-m-d'), $contrib->begin_date);
 
-        $check = $contrib->check(['type_paiement_cotis' => 1, 'info_cotis' => 'FAKER' . $this->seed], [], []);
+        $check = $contrib->check(['type_paiement_cotis' => 1, 'montant_cotis' => 1, 'info_cotis' => 'FAKER' . $this->seed], [], []);
         if (is_array($check)) {
             var_dump($check);
         }