diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-01-27 11:08:02 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-01-27 11:08:02 +0700 |
| commit | 39e27d0187d352dfea7db1bc1c9aece42e348caa (patch) | |
| tree | 97aa953bbc865669f7f813e50024866e4d6b826d /indoteknik_api/models/account_move.py | |
| parent | e48e4626b94f7e09b3bab95937cf4b7a5ca07e40 (diff) | |
sale order and invoice api
Diffstat (limited to 'indoteknik_api/models/account_move.py')
| -rw-r--r-- | indoteknik_api/models/account_move.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/indoteknik_api/models/account_move.py b/indoteknik_api/models/account_move.py index 9fd6fb18..3f85a447 100644 --- a/indoteknik_api/models/account_move.py +++ b/indoteknik_api/models/account_move.py @@ -6,7 +6,7 @@ from pytz import timezone class AccountMove(models.Model): _inherit = 'account.move' - def api_v1_single_response(self, account_move): + def api_v1_single_response(self, account_move, context=False): data = { 'id': account_move.id, 'name': account_move.name, @@ -17,4 +17,25 @@ class AccountMove(models.Model): 'amount_residual': account_move.amount_residual, 'invoice_date': account_move.invoice_date.strftime('%d/%m/%Y') or '' } + if context: + if context == 'with_detail': + res_users = self.env['res.users'] + data_with_detail = { + 'id': account_move.id, + 'name': account_move.name, + 'purchase_order_name': account_move.ref or '', + 'payment_term': account_move.invoice_payment_term_id.name or '', + 'sales': account_move.invoice_user_id.name, + 'amount_total': account_move.amount_total, + 'amount_residual': account_move.amount_residual, + 'invoice_date': account_move.invoice_date.strftime('%d/%m/%Y') or '', + 'invoice_date_due': account_move.invoice_date_due.strftime('%d/%m/%Y') or '', + 'customer': res_users.api_address_response(account_move.partner_id), + 'products': [], + } + for line in account_move.invoice_line_ids: + product = self.env['product.product'].api_single_response(line.product_id) + product['quantity'] = line.quantity + data_with_detail['products'].append(product) + data.update(data_with_detail) return data |
