Example #1
0
    def handle(self, provider, mail):
        from applications.order.service import OrderService
        from db import db
        order = OrderService.create_order(date_start=self.date_from, date_end=self.date_to, provider_id=provider.id)

        products = self.get_products()
        mail.order = order
        db.session.add(mail)

        for product in products:
            OrderService.handle_orderitem(
                full_name=product.full_name, name=product.name, number_local=product.number_local,
                number_global=product.number_global, date=product.date, remission=product.remission, NDS=product.NDS,
                price_prev=product.price_prev, price_post=product.price_post, order=order)
Example #2
0
    def post_save(self, obj, data, create_new=False):

        if obj.id:
            if datetime.now().date() > HelperService.convert_to_pydate(
                    obj.date_end).date():
                raise BaseCanoniseResource.CanonException(
                    u"Нельзя редактировать заказ с истекшим сроком.")

            OrderService.set_handling(obj.id)

            items = data['items'] if 'items' in data else []

            for item in items:
                OrderService.set_count_by_id(item['id'], item['count'])

        super(OrderCanon, self).post_save(obj, data, create_new=create_new)