X-Git-Url: http://gitweb.pimeys.fr/?a=blobdiff_plain;f=bde%2Fcredits_duplicates.py;h=7cb2fcb822cea95bac50ac2fdad123d1f4b32789;hb=3e4a8414d0c72fca4581138640771157841d2b78;hp=a96815ee5afae2cd5b430b00422be9da34cbd269;hpb=f455d43f9a00f280ea3e8766fc79700c450bc1df;p=scripts-20-100.git diff --git a/bde/credits_duplicates.py b/bde/credits_duplicates.py index a96815e..7cb2fcb 100755 --- a/bde/credits_duplicates.py +++ b/bde/credits_duplicates.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # -*- encoding: utf-8 -*- -""" Pour trouver les chèque dupliqués sur la note. """ +""" Pour trouver les chèques dupliqués sur la note. """ import psycopg2 import psycopg2.extras @@ -10,12 +10,9 @@ import pprint import subprocess import argparse +import base import pretty_print -def getcursor(): - con = psycopg2.connect(database="note") - con.set_client_encoding("utf-8") - return (con, con.cursor(cursor_factory = psycopg2.extras.DictCursor)) def get_data(cur, delai='1 minute', date='1970-01-01'): """ @@ -62,7 +59,7 @@ def get_data(cur, delai='1 minute', date='1970-01-01'): c.pseudo AS destp, t1.description AS desc1, t2.description AS desc2 - FROM credits t1,credits t2, comptes c + FROM credits t1, credits t2, comptes c WHERE t1.destinataire = c.idbde AND t1.date >= %(date)s AND t2.date >= %(date)s AND t1.type='crédit' @@ -107,6 +104,7 @@ def sort_by_blocks(data): l.sort() result = [", ".join([str(i) for i in l]) for l in result] result = list(set(result)) + result.sort(key=lambda x : int(x.split(",")[0])) return result def get_transactions(cur, ids): @@ -132,7 +130,7 @@ def interactive(blocks, cur, args): if not args.noless: p = subprocess.Popen(["less"], stdin=subprocess.PIPE) p.communicate(formatted.encode("utf-8")) - print formatted + print formatted.encode("utf-8") print "IDs : %s" % b idkeep = lb[0] question = "Ne garder que %s (= dévalider les autres) ? [o/N/s]" % idkeep @@ -163,7 +161,7 @@ if __name__ == "__main__": args = parser.parse_args() - con, cur = getcursor() + con, cur = base.getcursor() data = get_data(cur, delai=args.deltat, date=args.date) blocks = sort_by_blocks(data) interactive(blocks, cur, args)