forked from erp-dev/erp
feat: printing orders and jobs filter with external_order_id
This commit is contained in:
@@ -491,6 +491,45 @@ class PrintingJobAPITestCase(TestCase):
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(response.data['count'], 1)
|
||||
self.assertEqual(response.data['results'][0]['product'], self.product.id)
|
||||
|
||||
def test_filter_by_external_order_id_and_serializer_field(self):
|
||||
"""测试按所属订单 external_order_id 过滤,并返回该字段"""
|
||||
self.printing_order.external_order_id = 'KD20410611'
|
||||
self.printing_order.save(update_fields=['external_order_id'])
|
||||
|
||||
job = printing_models.PrintingJob.objects.create(
|
||||
printing_order=self.printing_order,
|
||||
product=self.product,
|
||||
quantity=100,
|
||||
unit='米',
|
||||
size='50*60',
|
||||
pieces=10
|
||||
)
|
||||
|
||||
other_order = printing_models.PrintingOrder.objects.create(
|
||||
customer=self.customer,
|
||||
fabric='其他布料',
|
||||
width='160cm',
|
||||
external_order_id='KD20419999'
|
||||
)
|
||||
printing_models.PrintingJob.objects.create(
|
||||
printing_order=other_order,
|
||||
product=self.product,
|
||||
quantity=200,
|
||||
unit='米',
|
||||
size='60*70',
|
||||
pieces=20
|
||||
)
|
||||
|
||||
response = self.client.get('/api/v1/printing-jobs/?external_order_id=KD20410611')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(response.data['count'], 1)
|
||||
self.assertEqual(response.data['results'][0]['id'], job.id)
|
||||
self.assertEqual(response.data['results'][0]['external_order_id'], 'KD20410611')
|
||||
|
||||
detail = self.client.get(f'/api/v1/printing-jobs/{job.id}/')
|
||||
self.assertEqual(detail.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(detail.data['external_order_id'], 'KD20410611')
|
||||
|
||||
def test_filter_by_quantity_range(self):
|
||||
"""测试按数量范围过滤"""
|
||||
|
||||
Reference in New Issue
Block a user