Uncomment foreign keys.
[platal.git] / upgrade / 1.0.1 / 13_payments.sql
CommitLineData
cc9dc1dd 1DROP TABLE IF EXISTS payment_bankaccounts;
f56ceafe
DB
2CREATE TABLE payment_bankaccounts (
3 id integer PRIMARY KEY auto_increment,
4 asso_id integer NOT NULL,
5 account varchar(23) NOT NULL,
6 owner varchar(100) NOT NULL,
7 status set('new','used','old') NOT NULL default 'new'
aaec4238 8) ENGINE=InnoDB, CHARSET=utf8;
f56ceafe
DB
9
10#INSERT INTO payment_bankaccounts VALUES (NULL,,"30002004690000008524R29","Amis de l'Espace Dirigea","used");
11INSERT INTO payment_bankaccounts VALUES (NULL,239,"10207001172019602580784","ASCCX","used");
12INSERT INTO payment_bankaccounts VALUES (NULL,42,"14707000010892101692291","AX (BPLC)","used");
13INSERT INTO payment_bankaccounts VALUES (NULL,42,"30066109310001022770164","AX (CIC)","used");
14INSERT INTO payment_bankaccounts VALUES (NULL,42,"30002004200000009372U74","AX (LCL)","used");
15INSERT INTO payment_bankaccounts VALUES (NULL,31,"10107001820002105034095","Binet Point Gamma","used");
16INSERT INTO payment_bankaccounts VALUES (NULL,73,"30003020600003729601589","GTX","used");
17INSERT INTO payment_bankaccounts VALUES (NULL,246,"20041000012241609M02035","Humanix - Jacques Bellev","used");
aaec4238
FB
18#INSERT INTO payment_bankaccounts VALUES (NULL,,"10107001820092105033751","Kes des élèves","used");
19INSERT INTO payment_bankaccounts VALUES (NULL,214,"30003022160005198020072","Khomiss (Aurélien Lajoie","used");
f56ceafe
DB
20#INSERT INTO payment_bankaccounts VALUES (NULL,,"30003021900002011521283","Maison des X","used");
21INSERT INTO payment_bankaccounts VALUES (NULL,181,"10107001820012105055968","Raid Polytechnique 2004","used");
22INSERT INTO payment_bankaccounts VALUES (NULL,165,"20041010123576371A03369","Sabix","used");
23INSERT INTO payment_bankaccounts VALUES (NULL,11,"30002089410000023857R03","X-eConfiance 'Mathieu Be","used");
24INSERT INTO payment_bankaccounts VALUES (NULL,251,"30003022200005041343575","X-Achats 'Francois Rena","used");
25INSERT INTO payment_bankaccounts VALUES (NULL,252,"30002008190000045217G86","X-Automobile 'F. Tronel","used");
26INSERT INTO payment_bankaccounts VALUES (NULL,6,"30002005940000434521B52","X-Aviation 'Francis Fouq","used");
27INSERT INTO payment_bankaccounts VALUES (NULL,96,"30003041110003726598647","X-Biotech (M.O.Bevierre)","used");
28INSERT INTO payment_bankaccounts VALUES (NULL,57,"15589335720697076254012","X-Bordelais (T Leblond)","used");
29INSERT INTO payment_bankaccounts VALUES (NULL,4,"30003005080003728293253","X-Consult","used");
30INSERT INTO payment_bankaccounts VALUES (NULL,18,"30066100210001067980188","X-Environnement (P Worbe","used");
31INSERT INTO payment_bankaccounts VALUES (NULL,3,"30003031900005066357935","X-Finance - Ariane Chaze","used");
32INSERT INTO payment_bankaccounts VALUES (NULL,7,"30002004200000009372U74","X-Gaziers - Compte AX LC","used");
33INSERT INTO payment_bankaccounts VALUES (NULL,21,"30588610978071800010189","X-Golf (Guy Marchand)","used");
34INSERT INTO payment_bankaccounts VALUES (NULL,202,"30003034210005003887246","X-HEC CapInvest (A Santo","used");
35INSERT INTO payment_bankaccounts VALUES (NULL,174,"30002006840000005831S15","X-Mer","used");
36INSERT INTO payment_bankaccounts VALUES (NULL,166,"30066108700001028630170","X-Mines au Feminin","used");
37INSERT INTO payment_bankaccounts VALUES (NULL,219,"30002004200000009372U74","X-Nucleaire - Compte AX","used");
38INSERT INTO payment_bankaccounts VALUES (NULL,82,"30003038320005055982303","X-Pierre (Quoc-Giao Tran","used");
39INSERT INTO payment_bankaccounts VALUES (NULL,233,"30002004200000009372U74","X-PI - Compte AX LCL","used");
40INSERT INTO payment_bankaccounts VALUES (NULL,248,"12548029983443030151039","X-Renouvelables 'Jerome","used");
41INSERT INTO payment_bankaccounts VALUES (NULL,179,"30066106410001050600128","X-Sursaut H Levy-Lambert","used");
42INSERT INTO payment_bankaccounts VALUES (NULL,223,"30066100410001126780124","X-Theatre","used");
43
cc9dc1dd 44DROP TABLE IF EXISTS payment_reconcilations;
f56ceafe
DB
45CREATE TABLE payment_reconcilations (
46 id INTEGER PRIMARY KEY auto_increment,
47 method_id INTEGER NOT NULL,
48 period_start DATE NOT NULL,
49 period_end DATE NOT NULL,
77b81d91 50 recongroup_id INTEGER DEFAULT NULL,
f56ceafe
DB
51 status ENUM('pending','transfering','closed') NOT NULL DEFAULT 'pending',
52 payment_count INTEGER NOT NULL,
53 sum_amounts DECIMAL(9,2) NOT NULL, # transaction amount, before taking the commission
54 sum_commissions DECIMAL(9,2) NOT NULL,
55 comments text NOT NULL
aaec4238 56) ENGINE=InnoDB, CHARSET=utf8;
f56ceafe
DB
57
58ALTER TABLE payment_transactions ADD method_id INTEGER DEFAULT NULL AFTER id; # NULL if not initiated from the site
59ALTER TABLE payment_transactions CHANGE timestamp ts_confirmed DATETIME DEFAULT NULL; # NULL = not confirmed
60ALTER TABLE payment_transactions ADD ts_initiated DATETIME DEFAULT NULL AFTER ts_confirmed; # NULL = not initiated
61ALTER TABLE payment_transactions CHANGE amount amount_tmp VARCHAR(15);
62ALTER TABLE payment_transactions ADD amount DECIMAL(9,2) NOT NULL AFTER amount_tmp; # only local currency allowed (EUR)
63ALTER TABLE payment_transactions ADD commission DECIMAL(9,2) DEFAULT NULL AFTER amount;
64ALTER TABLE payment_transactions ADD status ENUM('confirmed','pending','canceled') NOT NULL DEFAULT 'pending';
65ALTER TABLE payment_transactions ADD recon_id INTEGER DEFAULT NULL; # NULL = not reconciliated
66UPDATE payment_transactions SET method_id = 0 WHERE length(id)=7;
67UPDATE payment_transactions SET method_id = 1 WHERE length(id)=15 OR length(id)=17;
68UPDATE payment_transactions SET method_id = 2 WHERE length(id)=14;
69UPDATE payment_transactions SET status = 'confirmed';
70UPDATE payment_transactions SET amount=CONVERT(REPLACE(REPLACE(amount_tmp," EUR",""),",","."),DECIMAL(9,2));
71ALTER TABLE payment_transactions ADD KEY method_id (method_id);
72ALTER TABLE payment_transactions ADD KEY ref (ref);
cc9dc1dd 73# ALTER TABLE payment_transactions ADD UNIQUE KEY fullref (fullref);
aaec4238 74#fullref dupliqués :
f56ceafe
DB
75#select t1.* from payment_transactions as t1 join payment_transactions as t2 using(fullref) group by(t1.id) having count(*)!=1 order by fullref;
76ALTER TABLE payment_transactions DROP amount_tmp;
77
cc9dc1dd 78DROP TABLE IF EXISTS payment_transfers;
f56ceafe 79CREATE TABLE payment_transfers (
77b81d91
DB
80 id INTEGER PRIMARY KEY auto_increment,
81 recongroup_id INTEGER NOT NULL,
82 payment_id INTEGER NOT NULL,
f56ceafe 83 amount DECIMAL(9,2) NOT NULL,
77b81d91 84 account_id INTEGER DEFAULT NULL,
f56ceafe 85 message VARCHAR(255) NOT NULL,
77b81d91 86 date DATE DEFAULT NULL # NULL = not done
aaec4238 87) ENGINE=InnoDB, CHARSET=utf8;
f56ceafe 88
77b81d91
DB
89ALTER TABLE payment_methods ADD short_name VARCHAR(10) NOT NULL;
90ALTER TABLE payment_methods ADD flags SET('deferred_com') DEFAULT '';
91UPDATE payment_methods SET short_name='paypal', flags='' WHERE id=1;
92UPDATE payment_methods SET short_name='bplc2', flags='deferred_com' WHERE id=2;
454e7b4a
FB
93
94-- vim:set syntax=mysql:
77b81d91 95