File: res_currency.py

package info (click to toggle)
odoo 18.0.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 878,716 kB
  • sloc: javascript: 927,937; python: 685,670; xml: 388,524; sh: 1,033; sql: 415; makefile: 26
file content (26 lines) | stat: -rw-r--r-- 931 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from odoo import api, models


class ResCurrency(models.Model):
    _inherit = "res.currency"

    @api.model
    def get_company_currency_for_spreadsheet(self, company_id=None):
        """
        Returns the currency structure for the currency of the company.
        This function is meant to be called by the spreadsheet js lib,
        hence the formatting of the result.

        :company_id int: Id of the company
        :return: dict of the form `{ "code": str, "symbol": str, "decimalPlaces": int, "position":str }`
        """
        company = self.env["res.company"].browse(company_id) if company_id else self.env.company
        if not company.exists():
            return False
        currency = company.currency_id
        return {
            "code": currency.name,
            "symbol": currency.symbol,
            "decimalPlaces": currency.decimal_places,
            "position": currency.position,
        }