diff --git a/modules/sale_don_confiao/routes.py b/modules/sale_don_confiao/routes.py index ec2689f..d841be3 100644 --- a/modules/sale_don_confiao/routes.py +++ b/modules/sale_don_confiao/routes.py @@ -36,6 +36,32 @@ def parties(request, pool): party.save() +@app.route( + '//sale_don_confiao/party/', + methods=['GET']) +@allow_null_origin +@with_pool +@with_transaction() +@don_confiao_application +def party(request, pool, party: int): + Party = pool.get('party.party') + if request.method == 'GET': + parties = Party.search_read( + [], + order=[('id', 'ASC')], + fields_names=['id', 'name']) + return parties + + if request.method == 'POST': + data = json.loads( + request.get_data().decode() + ) + + party = Party() + party.name = data['name'] + party.save() + + @app.route('//sale_don_confiao/products', methods=['GET']) @allow_null_origin @with_pool diff --git a/modules/sale_don_confiao/tests/test_api_donconfiao.py b/modules/sale_don_confiao/tests/test_api_donconfiao.py index 340c24f..64c8c00 100644 --- a/modules/sale_don_confiao/tests/test_api_donconfiao.py +++ b/modules/sale_don_confiao/tests/test_api_donconfiao.py @@ -46,6 +46,17 @@ class DonConfiaoApiRouteTestCase( self.assertEqual(response.status_code, HTTPStatus.OK) self.assertEqual(len(parties), 1) + def test_get_party(self): + client = self.client() + response = client.get( + f'/{self.db_name}/sale_don_confiao/party/1', + headers={ + 'Authorization': f'bearer {self.key}', + }) + + self.assertEqual(response.status_code, HTTPStatus.OK) + self.assertIsNotNone(response.get_data()) + def test_post_parties(self): client = self.client() response = client.post(