Add configuration values for frequency

issue8987
review260821002
This commit is contained in:
Sergi Almacellas Abellana committed 2020-01-29 22:24:40 +01:00
1 parent 5b7e67ce7f
commit 6b9cf5d51c
5 files changed
+40 -3

No files matched your search

+1
View File
@@ -1,3 +1,4 @@
* Add configuration value for frequency
* Use fixed year of 365 days
Version 5.4.0 - 2019-11-04
+1
View File
@@ -25,6 +25,7 @@ def register():
account.Configuration,
account.ConfigurationAssetSequence,
account.ConfigurationAssetDate,
account.ConfigurationAssetFrequency,
account.AccountTypeTemplate,
account.AccountType,
account.Move,
+31
View File
@@ -29,6 +29,18 @@ asset_bymonth = fields.Selection([
('12', "December"),
], "Month", sort=False,
help="The month to create the depreciation moves.")
asset_frequency = fields.Selection('get_asset_frequencies',
"Asset Depreciation Frequency",
required=True, help="The default depreciation frequency for new assets.")
def get_asset_selection(field_name):
@classmethod
def get_selection(cls):
pool = Pool()
Asset = pool.get('account.asset')
return Asset.fields_get([field_name])[field_name]['selection']
return get_selection
class Configuration(metaclass=PoolMeta):
@@ -42,6 +54,9 @@ class Configuration(metaclass=PoolMeta):
]))
asset_bymonthday = fields.MultiValue(asset_bymonthday)
asset_bymonth = fields.MultiValue(asset_bymonth)
asset_frequency = fields.MultiValue(asset_frequency)
get_asset_frequencies = get_asset_selection('frequency')
@classmethod
def multivalue_model(cls, field):
@@ -63,6 +78,11 @@ class Configuration(metaclass=PoolMeta):
def default_asset_bymonth(cls, **pattern):
return cls.multivalue_model('asset_bymonth').default_asset_bymonth()
@classmethod
def default_asset_frequency(cls, **pattern):
return cls.multivalue_model(
'asset_frequency').default_asset_frequency()
class ConfigurationAssetSequence(ModelSQL, CompanyValueMixin):
"Account Configuration Asset Sequence"
@@ -118,6 +138,17 @@ class ConfigurationAssetDate(ModelSQL, CompanyValueMixin):
return "12"
class ConfigurationAssetFrequency(ModelSQL, CompanyValueMixin):
"Account Configuration Asset Frequency"
__name__ = 'account.configuration.asset_frequency'
asset_frequency = asset_frequency
get_asset_frequencies = get_asset_selection('frequency')
@classmethod
def default_asset_frequency(cls):
return 'monthly'
def AccountTypeMixin(template=False):
class Mixin:
+5 -3
View File
@@ -260,9 +260,11 @@ class Asset(Workflow, ModelSQL, ModelView):
def default_state():
return 'draft'
@staticmethod
def default_frequency():
return 'monthly'
@classmethod
def default_frequency(cls, **pattern):
pool = Pool()
Configuration = pool.get('account.configuration')
return Configuration(1).get_multivalue('asset_frequency', **pattern)
@staticmethod
def default_depreciation_method():
+2
View File
@@ -6,6 +6,8 @@ this repository contains the full copyright notices and license terms. -->
<separator id="asset" string="Asset" colspan="4"/>
<label name="asset_sequence" string="Sequence"/>
<field name="asset_sequence"/>
<label name="asset_frequency" string="Depreciation Frequency"/>
<field name="asset_frequency"/>
<separator id="asset_move" string="Asset Move" colspan="4"/>
<label name="asset_bymonthday"/>
<field name="asset_bymonthday"/>