def submit_success(self, appstruct): """ fired on submit success, set Tvas """ # First we disable the elements that are no longer part of the # configuration self.disable_elements(Product, self.get_remaining_prod_ids(appstruct)) self.disable_elements(Tva, self.get_remaining_tva_ids(appstruct)) self.dbsession.flush() for data in appstruct['tvas']: products = data.pop('products') if 'id' in data: tva = Tva.get(data['id']) merge_session_with_post(tva, data) tva = self.dbsession.merge(tva) else: tva = Tva() merge_session_with_post(tva, data) self.dbsession.add(tva) for prod in products: if 'id' in prod: product = Product.get(prod['id']) product.tva = tva merge_session_with_post(product, prod) self.dbsession.merge(product) else: product = Product() merge_session_with_post(product, prod) product.tva = tva self.dbsession.add(product) self.request.session.flash(self.validation_msg) return HTTPFound(self.request.route_path("admin_tva"))
def add_tva(value, default=False): t = Tva(name="%s %%" % (value/100.0), value=value, default=default) session = DBSESSION() session.add(t) session.flush()
def tva(dbsession): tva = Tva(name='TVA 20%', value=2000, default=1) dbsession.add(tva) dbsession.flush() return tva
def factory(value, name, default=True): tva = Tva(value=value, name=name, default=default) dbsession.add(tva) dbsession.flush() return tva
def tva(dbsession): from autonomie.models.tva import Tva tva = Tva(value=2000, name='20%', default=True) dbsession.add(tva) dbsession.flush() return tva