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]
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)
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]
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)
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]
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)
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)