Add button Generate Samples

This commit is contained in:
cosmos 2022-12-12 11:53:38 -05:00
parent 5b8f627652
commit d7ff8ac268
4 changed files with 32 additions and 1 deletions

View File

@ -1304,4 +1304,8 @@ msgstr "Mantenimiento Inicial"
msgctxt "model:ir.model.button,string:maintenance_initial_button"
msgid "Maintenance Initial"
msgstr "Mantenimiento Inicial"
msgstr "Mantenimiento Inicial"
msgctxt "model:ir.model.button,string:maintenance_samples_button"
msgid "Generate Samples"
msgstr "Generar Muestras"

View File

@ -293,6 +293,7 @@ class Maintenance(Workflow, ModelSQL, ModelView):
'in_progress': {'invisible': Eval('state').in_(['draft', 'in_progress', 'finished'])},
'finished': {'invisible': (Eval('state').in_(['finished'])) |
((Eval('maintenance_type') == 'corrective') & (Eval('maintenance_lines') == ()))},
'samples': {'invisible': (Eval('state').in_(['finished'])) | (Eval('lines_calibration') != ())},
'calibrate': {'invisible': (Eval('lines_calibration') == ()) | (Eval('state').in_(['finished'])),
'depends': ['state'],}
})
@ -562,6 +563,26 @@ class Maintenance(Workflow, ModelSQL, ModelView):
maintenance.code = maintenance.id
maintenance.save()
@classmethod
@ModelView.button
def samples(cls, maintenances):
pool = Pool()
CalibrationSample = pool.get('optical_equipment.maintenance.calibration_sample')
for maintenance in maintenances:
patterns = maintenance.equipment.product.k_pattern_list
for pattern in patterns:
samples = []
calibrationSample = CalibrationSample(
maintenance=maintenance.id,
product=maintenance.equipment.product.template.id,
value_patterns=pattern.id,
value_equipment=pattern.pattern,
mistake=0,
mistake_rate=0)
samples = [calibrationSample]*5
maintenance.lines_calibration+=tuple(samples)
maintenance.save()
@classmethod
@ModelView.button
def calibrate(cls, maintenances):

View File

@ -102,6 +102,11 @@
<field name="name">finished</field>
<field name="string">Finished</field>
<field name="model" search="[('model', '=', 'optical_equipment.maintenance')]"/>
</record>
<record model="ir.model.button" id="maintenance_samples_button">
<field name="name">samples</field>
<field name="string">Generate Samples</field>
<field name="model" search="[('model', '=', 'optical_equipment.maintenance')]"/>
</record>
<record model="ir.model.button" id="maintenance_calibrate_button">
<field name="name">calibrate</field>

View File

@ -80,6 +80,7 @@
<group id="button">
<button name="in_progress"/>
<button name="finished"/>
<button name="samples"/>
<button name="calibrate"/>
</group>
</form>