Exemplo n.º 1
0
    def test_get_report_with_date(self):
        """test get profit with date"""

        in_transaction_1 = InTransaction.objects.create(
            in_product=self.phone_A,
            in_quantity=1,
            in_unit_price=10,
            in_serial='1111',
            in_purchase=self.purchase_1)

        out_transaction_1 = OutTransaction.objects.create(
            out_product=self.phone_A,
            out_quantity=1,
            out_unit_price=15,
            out_serial='1111',
            out_sales=self.sales_2)

        #make sure objects exists
        self.assertEqual(len(InTransaction.objects.all()), 1)
        self.assertEqual(len(OutTransaction.objects.all()), 1)

        print query.get_report_with_date(
                date=date(2013, 1, 3))

        #test profit
        self.assertEqual(
            query.get_report_with_date(
                date=date(2013, 1, 3))['profit'], 5)
Exemplo n.º 2
0
def report_list(request, store):
    """ handles report list function
        support GET to retrieve report
    """
    if request.method != "GET":
        return HttpResponse(
            'Method ' + request.method + " is not supported", status=403)
    
    try:
        if 'date' not in request.GET:
            raise ValidationError('invalid input %s' % request.GET)
        date = datetime.strptime(request.GET['date'], '%Y-%m-%d').date()
        data = query.get_report_with_date(date)
        return HttpResponse(json.dumps(data))
    except ValidationError as ex:
        return HttpResponse(ex.value, status=403)
    except ValueError as ex:
        return HttpResponse(ex, status=403)