Esempio n. 1
0
def insert_banque(db):
    """ Create a banque """
    entity = App.check_data(Banque, request.body.readline())
    if entity:
        banque = Banque()
        for column, value in entity.iteritems():
            setattr(banque, column, value)
        db.add(banque)
        try:
            db.commit()
        except IntegrityError as ex:
            abort(404, ex.args)
        response.status = 201
        response.headers["Location"] = "/banque/%s" % (banque.id,)
        banque = loads(list_banque(db, banque.id))
        return banque[0]
Esempio n. 2
0
def update_banque(db, id=None):
    """ Update information for a banque """
    entity = App.check_data(Banque, request.body.readline())
    if entity:
        try:
            banque = db.query(Banque).filter(Banque.id == id).one()
        except NoResultFound:
            abort(404, "ID not found")
    for column, value in entity.iteritems():
        setattr(banque, column, value)
    try:
        db.commit()
        banque = loads(list_banque(db, banque.id))
        return banque[0]
    except IntegrityError as ex:
        abort(404, ex.args)
Esempio n. 3
0
def insert_compte(db):
    """ Create a  compte """
    entity = App.check_data(Compte, request.body.readline())
    if entity:
        compte = Compte()
        for column, value in entity.iteritems():
            setattr(compte, column, value)
        db.add(compte)
        try:
            db.commit()
        except IntegrityError as ex:
            abort(404, ex.args)
        response.status = 201
        response.headers["Location"] = "/compte/%s" % (compte.id,)
        compte = loads(list_compte(db, compte.id))
        return compte[0]
Esempio n. 4
0
def update_categorie(db, id):
    """ Update information for an categorie """
    entity = App.check_data(Categorie, request.body.readline())
    if entity:
        try:
            categorie = db.query(Categorie).\
                           filter(Categorie.id == id).\
                           one()
        except NoResultFound:
            abort(404, "ID not found")
    for column, value in entity.iteritems():
        setattr(categorie, column, value)
    try:
        db.commit()
        categorie = loads(list_categorie(db, categorie.id))
        return categorie[0]
    except IntegrityError as ex:
        abort(404, ex.args)
Esempio n. 5
0
def insert_ecriture(db):
    """ Create an ecriture """
    entity = App.check_data(Ecriture, request.body.readline())
    if entity:
        ecriture = Ecriture()
        for column, value in entity.iteritems():
            if column == 'date':
                ecriture.date = datetime.strptime(value, "%Y/%m/%d")
            #else:
            #    setattr(ecriture, column, value)
            elif column == 'nom':
                ecriture.nom = value
            elif column == 'type':
                ecriture.type = value
            elif column == 'valide':
                ecriture.valide = value
            elif column == 'compte_id':
                ecriture.compte_id = value
            elif column == 'nom_id':
                ecriture.nom_id = value
        try:
            db.add(ecriture)
            db.commit()
        except IntegrityError as ex:
            print ex
            abort(404, ex.args)
        montant = Montant()
        for column, value in entity.iteritems():
            if column == 'montant':
                montant.montant = int(round(locale.atof(value)*100,2))
            elif column == 'description':
                montant.description = value
            elif column == 'categorie_id':
                montant.categorie_id = value
        try:
            ecriture.montant.append(montant)
            db.commit()
        except IntegrityError as ex:
            print ex
            abort(404, ex.args)
        response.status = 201
        response.headers["Location"] = "/ecriture/%s/" % (ecriture.id,)
        ecriture = loads(list_ecriture(db, ecriture.id))
        return ecriture[0]
Esempio n. 6
0
def update_ecriture(db, id=None, montant_id=None):
    """ Update information for an ecriture """
    entity = App.check_data(Ecriture, request.body.readline())
    if entity:
        try:
            ecriture = db.query(Ecriture).\
                          filter(Ecriture.id == id).\
                          one()
            # if montant_id:
            #     ecriture = ecriture.filter(Montant.id == montant_id).\
            #ecriture = ecriture.one()
        except NoResultFound:
            abort(404, "ID not found")
        for column, value in entity.iteritems():
            if column == 'date':
                ecriture.date = datetime.strptime(value, "%Y/%m/%d")
            elif column == 'nom':
                ecriture.nom = value
            elif column == 'type':
                ecriture.type = value
            elif column == 'valide':
                ecriture.valide = value
            elif column == 'nom_id':
                ecriture.nom_id = value
        try:
            montant = db.query(Montant).\
                         filter(Montant.id == entity['montant_id']).\
                         one()
        except NoResultFound:
            abort(404, "ID not found")
        for column, value in entity.iteritems():
            if column == 'montant':
                montant.montant = int(round(locale.atof(value)*100,2))
            if column == 'description':
                montant.description = value
            elif column == 'categorie_id':
                montant.categorie_id = value
        try:
            db.commit()
            ecriture = loads(list_ecriture(db, id))
            return ecriture[0]
        except Exception as ex:
            abort(404, ex)
Esempio n. 7
0
def update_compte(db, id=None):
    """ Update information for a compte """
    entity = App.check_data(Compte, request.body.readline())
    if entity:
        try:
            compte = db.query(Compte).filter(Compte.id == id).one()
        except NoResultFound:
            abort(404, "ID not found")
    for column, value in entity.iteritems():
        if column == "archive":
            setattr(compte, "archive", App.convert_value(value))
        else:
            setattr(compte, column, value)
    try:
        db.commit()
        compte = loads(list_compte(db, compte.id))
        return compte[0]
    except IntegrityError as ex:
        abort(404, ex.args)