This commit is contained in:
2026-03-22 11:22:09 +01:00
parent 85bb272edf
commit d10d805753
6 changed files with 113 additions and 3 deletions

View File

@@ -760,6 +760,67 @@ class AssayElement(ModelSQL, ModelView):
('impurity', 'Impurity'),
], "Type")
class PayableRule(ModelSQL, ModelView):
"Payable Rule"
__name__ = 'payable.rule'
element = fields.Many2One('assay.element', "Element")
payable_percent = fields.Numeric("Payable %")
deduction_value = fields.Numeric("Deduction Value")
deduction_unit = fields.Many2One('assay.unit',"Unit")
class PenaltyRule(ModelSQL, ModelView):
"Penalty Rule"
__name__ = 'penalty.rule'
element = fields.Many2One('assay.element', "Element")
threshold = fields.Numeric("Treshold")
threshold_unit = fields.Many2One('assay.unit',"Unit")
step = fields.Numeric("Step")
penalty_value = fields.Numeric("Penalty Value")
currency = fields.Many2One('currency.currency',"Curr")
unit = fields.Many2One('product.uom',"Unit")
class ConcentrateTerm(ModelSQL, ModelView):
"Concentrate Term"
__name__ = 'concentrate.term'
line = fields.Many2One(
'purchase.line', "Line",
ondelete='CASCADE'
)
element = fields.Many2One('assay.element',"Element")
component = fields.Many2One(
'pricing.component',
"Price Component"
)
manual_price = fields.Numeric(
"Manual Price",
digits=(16, 6)
)
currency = fields.Many2One('currency.currency',"Curr")
unit = fields.Many2One('product.uom',"Unit")
payable_rule = fields.Many2One(
'payable.rule',"Payable Rule"
)
penalty_rules = fields.Many2One(
'penalty.rule',
"Penalties"
)
valid_from = fields.Date("Valid From")
valid_to = fields.Date("Valid To")
class QualityAnalysis(ModelSQL,ModelView):
"Quality Analysis"
__name__ = 'quality.analysis'
@@ -922,6 +983,7 @@ class Line(metaclass=PoolMeta):
quality_analysis = fields.One2Many('quality.analysis','line',"Quality analysis")
assays = fields.One2Many('assay.assay','line',"Assays")
terms = fields.One2Many('concentrate.term','line',"Terms")
@classmethod
def default_finished(cls):