lims: add Number of days for Laboratory and Number of days for Reporting

This commit is contained in:
Adrián Bernardi 2020-04-21 12:10:24 -03:00
parent 22cfb5d2c5
commit 56f9297764
19 changed files with 335 additions and 64 deletions

View File

@ -912,6 +912,12 @@ class Analysis(Workflow, ModelSQL, ModelView):
comments = fields.Text('Warnings/Comments')
pending_fractions = fields.Function(fields.Integer('Pending fractions'),
'get_pending_fractions', searcher='search_pending_fractions')
estimated_waiting_laboratory = fields.Integer(
'Number of days for Laboratory',
help='Estimated number of days needed to perform the analysis')
estimated_waiting_report = fields.Integer('Number of days for Reporting',
help='Estimated number of days needed to report the result of the '
'analysis')
@classmethod
def __setup__(cls):

View File

@ -82,6 +82,14 @@ msgctxt "field:lims.analysis,end_date:"
msgid "Leaving date"
msgstr "Fecha de baja"
msgctxt "field:lims.analysis,estimated_waiting_laboratory:"
msgid "Number of days for Laboratory"
msgstr "Cantidad de días en Laboratorio"
msgctxt "field:lims.analysis,estimated_waiting_report:"
msgid "Number of days for Reporting"
msgstr "Cantidad de días para Informar"
msgctxt "field:lims.analysis,formula:"
msgid "Formula"
msgstr "Fórmula"
@ -1023,10 +1031,22 @@ msgctxt "field:lims.create_sample.service,divide:"
msgid "Divide"
msgstr "Dividir"
msgctxt "field:lims.create_sample.service,estimated_waiting_laboratory:"
msgid "Number of days for Laboratory"
msgstr "Cantidad de días en Laboratorio"
msgctxt "field:lims.create_sample.service,estimated_waiting_report:"
msgid "Number of days for Reporting"
msgstr "Cantidad de días para Informar"
msgctxt "field:lims.create_sample.service,laboratory:"
msgid "Laboratory"
msgstr "Laboratorio"
msgctxt "field:lims.create_sample.service,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.create_sample.service,laboratory_domain:"
msgid "Laboratory domain"
msgstr "Dominio para Laboratorio"
@ -1047,6 +1067,10 @@ msgctxt "field:lims.create_sample.service,report_date:"
msgid "Date agreed for result"
msgstr "Fecha pactada de resultado"
msgctxt "field:lims.create_sample.service,report_date_readonly:"
msgid "Report deadline Readonly"
msgstr "Fecha límite Informe sólo lectura"
msgctxt "field:lims.create_sample.service,urgent:"
msgid "Urgent"
msgstr "Urgente"
@ -2811,6 +2835,10 @@ msgctxt "field:lims.notebook.line,laboratory:"
msgid "Laboratory"
msgstr "Laboratorio"
msgctxt "field:lims.notebook.line,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.notebook.line,laboratory_professionals:"
msgid "Preparation professionals"
msgstr "Profesionales de preparación"
@ -3083,6 +3111,10 @@ msgctxt "field:lims.notebook.line.all_fields,laboratory:"
msgid "Laboratory"
msgstr "Laboratorio"
msgctxt "field:lims.notebook.line.all_fields,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.notebook.line.all_fields,laboratory_professionals:"
msgid "Preparation professionals"
msgstr "Profesionales de preparación"
@ -3979,6 +4011,10 @@ msgctxt "field:lims.planification.detail,label:"
msgid "Label"
msgstr "Rótulo"
msgctxt "field:lims.planification.detail,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.planification.detail,matrix:"
msgid "Matrix"
msgstr "Matriz"
@ -4236,6 +4272,10 @@ msgctxt "field:lims.planification.search_fractions.detail,label:"
msgid "Label"
msgstr "Rótulo"
msgctxt "field:lims.planification.search_fractions.detail,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.planification.search_fractions.detail,matrix:"
msgid "Matrix"
msgstr "Matriz"
@ -5262,6 +5302,14 @@ msgctxt "field:lims.service,entry:"
msgid "Entry"
msgstr "Ingreso"
msgctxt "field:lims.service,estimated_waiting_laboratory:"
msgid "Number of days for Laboratory"
msgstr "Cantidad de días en Laboratorio"
msgctxt "field:lims.service,estimated_waiting_report:"
msgid "Number of days for Reporting"
msgstr "Cantidad de días para Informar"
msgctxt "field:lims.service,fraction:"
msgid "Fraction"
msgstr "Fracción"
@ -5282,6 +5330,10 @@ msgctxt "field:lims.service,laboratory:"
msgid "Laboratory"
msgstr "Laboratorio"
msgctxt "field:lims.service,laboratory_date:"
msgid "Laboratory deadline"
msgstr "Fecha límite Laboratorio"
msgctxt "field:lims.service,laboratory_domain:"
msgid "Laboratory domain"
msgstr "Dominio para Laboratorio"
@ -5326,6 +5378,10 @@ msgctxt "field:lims.service,report_date:"
msgid "Date agreed for result"
msgstr "Fecha pactada de resultado"
msgctxt "field:lims.service,report_date_readonly:"
msgid "Report deadline Readonly"
msgstr "Fecha límite Informe sólo lectura"
msgctxt "field:lims.service,sample:"
msgid "Sample"
msgstr "Muestra"
@ -5819,6 +5875,15 @@ msgctxt "field:user.department,user:"
msgid "User"
msgstr "Usuario"
msgctxt "help:lims.analysis,estimated_waiting_laboratory:"
msgid "Estimated number of days needed to perform the analysis"
msgstr "Cantidad estimada de días necesarios para realizar el análisis"
msgctxt "help:lims.analysis,estimated_waiting_report:"
msgid "Estimated number of days needed to report the result of the analysis"
msgstr ""
"Cantidad estimada de días necesarios para informar el resultado del análisis"
msgctxt "help:lims.configuration,mail_ack_subject:"
msgid "In the text will be added suffix with the entry report number"
msgstr "En el texto se añadirá sufijo con el número de ingreso del informe"
@ -11766,6 +11831,10 @@ msgctxt "view:lims.analysis:"
msgid "Relate analysis"
msgstr "Relacionar análisis"
msgctxt "view:lims.analysis:"
msgid "Times"
msgstr "Tiempos"
msgctxt "view:lims.analysis:"
msgid "Warnings/Comments"
msgstr "Advertencias/Observaciones"
@ -12219,12 +12288,8 @@ msgid "Laboratories"
msgstr "Laboratorios"
msgctxt "view:lims.lab.method:"
msgid "Method"
msgstr "Método"
msgctxt "view:lims.lab.method:"
msgid "Methods"
msgstr "Métodos"
msgid "Times"
msgstr "Tiempos"
msgctxt "view:lims.lab.professional.method.requalification.control:"
msgid "Control"

View File

@ -372,8 +372,6 @@ class NotebookLine(ModelSQL, ModelView):
urgent = fields.Boolean('Urgent')
priority = fields.Function(fields.Integer('Priority'),
'get_service_field', searcher='search_service_field')
report_date = fields.Function(fields.Date('Date agreed for result'),
'get_service_field', searcher='search_service_field')
fraction = fields.Function(fields.Many2One('lims.fraction', 'Fraction'),
'get_service_field', searcher='search_service_field')
fraction_type = fields.Function(fields.Many2One('lims.fraction.type',
@ -401,6 +399,10 @@ class NotebookLine(ModelSQL, ModelView):
'Estimated number of days for results', states={'readonly': True})
results_estimated_date = fields.Function(fields.Date(
'Estimated date of result'), 'get_results_estimated_date')
laboratory_date = fields.Function(fields.Date('Laboratory deadline'),
'get_service_field', searcher='search_service_field')
report_date = fields.Function(fields.Date('Date agreed for result'),
'get_service_field', searcher='search_service_field')
department = fields.Many2One('company.department', 'Department',
readonly=True)
icon = fields.Function(fields.Char("Icon"), 'get_icon')
@ -957,7 +959,6 @@ class NotebookLineAllFields(ModelSQL, ModelView):
analysis_origin = fields.Char('Analysis origin', readonly=True)
urgent = fields.Boolean('Urgent', readonly=True)
priority = fields.Integer('Priority', readonly=True)
report_date = fields.Date('Date agreed for result', readonly=True)
initial_concentration = fields.Char('Initial concentration', readonly=True)
final_concentration = fields.Char('Final concentration', readonly=True)
laboratory_professionals = fields.Function(fields.Many2Many(
@ -1025,9 +1026,11 @@ class NotebookLineAllFields(ModelSQL, ModelView):
readonly=True)
confirmation_date = fields.Date('Confirmation date', readonly=True)
results_estimated_waiting = fields.Integer(
'Estimated number of days for results')
'Estimated number of days for results', readonly=True)
results_estimated_date = fields.Function(fields.Date(
'Estimated date of result'), 'get_line_field')
laboratory_date = fields.Date('Laboratory deadline', readonly=True)
report_date = fields.Date('Date agreed for result', readonly=True)
department = fields.Many2One('company.department', 'Department',
readonly=True)
@ -1088,7 +1091,6 @@ class NotebookLineAllFields(ModelSQL, ModelView):
line.analysis_origin,
line.urgent,
service.priority,
service.report_date,
line.initial_concentration,
line.final_concentration,
line.initial_unit,
@ -1122,6 +1124,8 @@ class NotebookLineAllFields(ModelSQL, ModelView):
line.planification,
detail.confirmation_date,
line.results_estimated_waiting,
service.laboratory_date,
service.report_date,
line.department,
]
where = Literal(True)

View File

@ -652,6 +652,8 @@ class PlanificationDetail(ModelSQL, ModelView):
urgent = fields.Function(fields.Boolean('Urgent'), 'get_service_field',
setter='set_urgent')
priority = fields.Function(fields.Integer('Priority'), 'get_service_field')
laboratory_date = fields.Function(fields.Date('Laboratory deadline'),
'get_service_field')
report_date = fields.Function(fields.Date('Date agreed for result'),
'get_service_field')
comments = fields.Function(fields.Text('Comments'), 'get_fraction_field')
@ -3715,6 +3717,8 @@ class SearchFractionsDetail(ModelSQL, ModelView):
urgent = fields.Function(fields.Boolean('Urgent'), 'get_service_field')
priority = fields.Function(fields.Integer('Priority'), 'get_service_field')
repetition = fields.Boolean('Repetition', readonly=True)
laboratory_date = fields.Function(fields.Date('Laboratory deadline'),
'get_service_field')
report_date = fields.Function(fields.Date('Date agreed for result'),
'get_service_field')
completion_percentage = fields.Function(fields.Numeric('Complete',

View File

@ -313,7 +313,27 @@ class Service(ModelSQL, ModelView):
'on_change_with_analysis_type', searcher='search_analysis_field')
urgent = fields.Boolean('Urgent')
priority = fields.Integer('Priority')
report_date = fields.Date('Date agreed for result')
estimated_waiting_laboratory = fields.Integer(
'Number of days for Laboratory',
states={'readonly': Or(
Bool(Eval('context', {}).get('readonly', True)),
~Eval('report_date_readonly'))},
depends=['report_date_readonly'])
estimated_waiting_report = fields.Integer(
'Number of days for Reporting',
states={'readonly': Or(
Bool(Eval('context', {}).get('readonly', True)),
~Eval('report_date_readonly'))},
depends=['report_date_readonly'])
laboratory_date = fields.Date('Laboratory deadline',
states={'readonly': True})
report_date = fields.Date('Date agreed for result',
states={'readonly': Or(
Bool(Eval('context', {}).get('readonly', True)),
Bool(Eval('report_date_readonly')))},
depends=['report_date_readonly'])
report_date_readonly = fields.Function(fields.Boolean(
'Report deadline Readonly'), 'get_report_date_readonly')
laboratory = fields.Many2One('lims.laboratory', 'Laboratory',
domain=[('id', 'in', Eval('laboratory_domain'))],
states={
@ -830,6 +850,10 @@ class Service(ModelSQL, ModelView):
Laboratory(laboratory), True)
if len(devices) == 1:
device = devices[0]
self.estimated_waiting_laboratory = (
self.analysis.estimated_waiting_laboratory)
self.estimated_waiting_report = (
self.analysis.estimated_waiting_report)
self.laboratory = laboratory
self.method = method
self.device = device
@ -911,6 +935,37 @@ class Service(ModelSQL, ModelView):
return result['party'][self.id]
return None
@staticmethod
def default_report_date_readonly():
return True
@classmethod
def get_report_date_readonly(cls, services, name):
readonly = cls.default_report_date_readonly()
result = {}
for s in services:
result[s.id] = readonly
return result
@fields.depends('estimated_waiting_laboratory')
def on_change_with_laboratory_date(self, name=None):
if self.estimated_waiting_laboratory:
date_ = Pool().get('ir.date').today()
date_ += relativedelta(days=self.estimated_waiting_laboratory)
return date_
return None
@fields.depends('estimated_waiting_laboratory', 'estimated_waiting_report')
def on_change_with_report_date(self, name=None):
if self.estimated_waiting_laboratory or self.estimated_waiting_report:
date_ = Pool().get('ir.date').today()
if self.estimated_waiting_laboratory:
date_ += relativedelta(days=self.estimated_waiting_laboratory)
if self.estimated_waiting_report:
date_ += relativedelta(days=self.estimated_waiting_report)
return date_
return None
@fields.depends('analysis', 'laboratory',
methods=['_on_change_with_device_domain'])
def on_change_laboratory(self):
@ -3069,6 +3124,11 @@ class ManageServices(Wizard):
'analysis': service.analysis.id,
'urgent': service.urgent,
'priority': service.priority,
'estimated_waiting_laboratory': (
service.estimated_waiting_laboratory),
'estimated_waiting_report': (
service.estimated_waiting_report),
'laboratory_date': service.laboratory_date,
'report_date': service.report_date,
'laboratory': (service.laboratory.id if service.laboratory
else None),
@ -3178,7 +3238,8 @@ class ManageServices(Wizard):
def _get_comparison_fields(self):
return ('analysis', 'laboratory', 'method', 'device', 'urgent',
'priority', 'report_date', 'comments', 'divide')
'priority', 'estimated_waiting_laboratory',
'estimated_waiting_report', 'report_date', 'comments', 'divide')
class CompleteServices(Wizard):
@ -3295,6 +3356,11 @@ class EditSampleService(Wizard):
'device': s.device and s.device.id or None,
'urgent': s.urgent,
'priority': s.priority,
'estimated_waiting_laboratory': (
s.estimated_waiting_laboratory),
'estimated_waiting_report': (
s.estimated_waiting_report),
'laboratory_date': s.laboratory_date,
'report_date': s.report_date,
'divide': s.divide,
})
@ -3342,6 +3408,11 @@ class EditSampleService(Wizard):
'device': service.device.id if service.device else None,
'urgent': service.urgent,
'priority': service.priority,
'estimated_waiting_laboratory': (
service.estimated_waiting_laboratory),
'estimated_waiting_report': (
service.estimated_waiting_report),
'laboratory_date': service.laboratory_date,
'report_date': service.report_date,
'divide': service.divide,
}]
@ -4738,7 +4809,20 @@ class CreateSampleService(ModelView):
None, None, 'Device domain')
urgent = fields.Boolean('Urgent')
priority = fields.Integer('Priority')
report_date = fields.Date('Date agreed for result')
estimated_waiting_laboratory = fields.Integer(
'Number of days for Laboratory',
states={'readonly': ~Eval('report_date_readonly')},
depends=['report_date_readonly'])
estimated_waiting_report = fields.Integer(
'Number of days for Reporting',
states={'readonly': ~Eval('report_date_readonly')},
depends=['report_date_readonly'])
laboratory_date = fields.Function(fields.Date('Laboratory deadline'),
'on_change_with_laboratory_date')
report_date = fields.Date('Date agreed for result',
states={'readonly': Bool(Eval('report_date_readonly'))},
depends=['report_date_readonly'])
report_date_readonly = fields.Boolean('Report deadline Readonly')
divide = fields.Boolean('Divide')
@staticmethod
@ -4753,6 +4837,10 @@ class CreateSampleService(ModelView):
def default_divide():
return False
@staticmethod
def default_report_date_readonly():
return True
@fields.depends('analysis')
def on_change_analysis(self):
analysis_id = self.analysis.id if self.analysis else None
@ -4770,17 +4858,19 @@ class CreateSampleService(ModelView):
laboratory_domain = self._get_laboratory_domain(analysis_id)
if len(laboratory_domain) == 1:
laboratory_id = laboratory_domain[0]
method_domain = self._get_method_domain(analysis_id,
product_type_id, matrix_id)
if len(method_domain) == 1:
method_id = method_domain[0]
if laboratory_id:
device_domain = self._get_device_domain(analysis_id,
laboratory_id)
if len(device_domain) == 1:
device_id = device_domain[0]
self.estimated_waiting_laboratory = (
self.analysis.estimated_waiting_laboratory)
self.estimated_waiting_report = (
self.analysis.estimated_waiting_report)
self.laboratory_domain = laboratory_domain
self.laboratory = laboratory_id
@ -4853,6 +4943,26 @@ class CreateSampleService(ModelView):
return []
return [x[0] for x in res]
@fields.depends('analysis', 'estimated_waiting_laboratory')
def on_change_with_laboratory_date(self, name=None):
if self.estimated_waiting_laboratory:
date_ = Pool().get('ir.date').today()
date_ += relativedelta(days=self.estimated_waiting_laboratory)
return date_
return None
@fields.depends('analysis', 'estimated_waiting_laboratory',
'estimated_waiting_report')
def on_change_with_report_date(self, name=None):
if self.estimated_waiting_laboratory or self.estimated_waiting_report:
date_ = Pool().get('ir.date').today()
if self.estimated_waiting_laboratory:
date_ += relativedelta(days=self.estimated_waiting_laboratory)
if self.estimated_waiting_report:
date_ += relativedelta(days=self.estimated_waiting_report)
return date_
return None
class CreateSample(Wizard):
'Create Sample'
@ -4960,6 +5070,11 @@ class CreateSample(Wizard):
'device': service.device.id if service.device else None,
'urgent': service.urgent,
'priority': service.priority,
'estimated_waiting_laboratory': (
service.estimated_waiting_laboratory),
'estimated_waiting_report': (
service.estimated_waiting_report),
'laboratory_date': service.laboratory_date,
'report_date': service.report_date,
'divide': service.divide,
}

View File

@ -54,6 +54,12 @@
<page string="Warnings/Comments" id="comments" >
<field name="comments" colspan="4"/>
</page>
<page id="times" string="Times">
<label name="estimated_waiting_laboratory"/>
<field name="estimated_waiting_laboratory"/>
<label name="estimated_waiting_report"/>
<field name="estimated_waiting_report"/>
</page>
</notebook>
<group id="buttons" colspan="4" col="8">
<label name="state"/>

View File

@ -7,8 +7,6 @@
<field name="methods"/>
<field name="devices"/>
<field name="included_analysis"/>
<field name="start_date"/>
<field name="end_date"/>
<field name="behavior"/>
<field name="result_formula"/>
<field name="converted_result_formula"/>
@ -16,5 +14,9 @@
<field name="formula"/>
<field name="order"/>
<field name="disable_as_individual"/>
<field name="estimated_waiting_laboratory"/>
<field name="estimated_waiting_report"/>
<field name="state"/>
<field name="start_date"/>
<field name="end_date"/>
</tree>

View File

@ -8,12 +8,28 @@
<field name="method"/>
<label name="device"/>
<field name="device"/>
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
<label name="report_date"/>
<field name="report_date"/>
<group id="priority" colspan="2" col="4">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
</group>
<label name="divide"/>
<field name="divide"/>
<group id="estimated_waiting_laboratory" colspan="2" col="2">
<label name="estimated_waiting_laboratory"/>
<field name="estimated_waiting_laboratory"/>
</group>
<group id="estimated_waiting_report" colspan="2" col="2">
<label name="estimated_waiting_report"/>
<field name="estimated_waiting_report"/>
</group>
<group id="laboratory_date" colspan="2" col="2">
<label name="laboratory_date"/>
<field name="laboratory_date"/>
</group>
<group id="report_date" colspan="2" col="2">
<label name="report_date"/>
<field name="report_date"/>
</group>
</form>

View File

@ -16,7 +16,12 @@
<field name="deprecated_since"/>
<label name="pnt"/>
<field name="pnt"/>
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
<field name="results_waiting" colspan="4"/>
<notebook>
<page id="times" string="Times">
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
<newline/>
<field name="results_waiting" colspan="4"/>
</page>
</notebook>
</form>

View File

@ -18,10 +18,14 @@
<field name="service"/>
<label name="analysis_origin"/>
<field name="analysis_origin"/>
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
<group id="priority" colspan="2" col="4">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
</group>
<label name="laboratory_date"/>
<field name="laboratory_date"/>
<label name="report_date"/>
<field name="report_date"/>
<label name="initial_concentration"/>
@ -33,10 +37,14 @@
<field name="initial_unit"/>
<label name="final_unit"/>
<field name="final_unit"/>
<label name="result_modifier"/>
<field name="result_modifier"/>
<label name="converted_result_modifier"/>
<field name="converted_result_modifier"/>
<group id="result_modifier" colspan="2" col="2">
<label name="result_modifier"/>
<field name="result_modifier"/>
</group>
<group id="converted_result_modifier" colspan="2" col="2">
<label name="converted_result_modifier"/>
<field name="converted_result_modifier"/>
</group>
<label name="result"/>
<field name="result"/>
<label name="converted_result"/>
@ -88,10 +96,14 @@
<field name="results_report"/>
<label name="planification"/>
<field name="planification"/>
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
<label name="results_estimated_date"/>
<field name="results_estimated_date"/>
<group id="results_estimated_waiting" colspan="2" col="2">
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
</group>
<group id="results_estimated_date" colspan="2" col="2">
<label name="results_estimated_date"/>
<field name="results_estimated_date"/>
</group>
<label name="department"/>
<field name="department"/>
</form>

View File

@ -18,6 +18,7 @@
<field name="analysis_origin"/>
<field name="urgent"/>
<field name="priority"/>
<field name="laboratory_date"/>
<field name="report_date"/>
<field name="initial_concentration"/>
<field name="final_concentration"/>

View File

@ -18,10 +18,14 @@
<field name="service"/>
<label name="analysis_origin"/>
<field name="analysis_origin"/>
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
<group id="priority" colspan="2" col="4">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
</group>
<label name="laboratory_date"/>
<field name="laboratory_date"/>
<label name="report_date"/>
<field name="report_date"/>
<label name="initial_concentration"/>
@ -37,10 +41,14 @@
<field name="initial_unit"/>
<label name="final_unit"/>
<field name="final_unit"/>
<label name="result_modifier"/>
<field name="result_modifier"/>
<label name="converted_result_modifier"/>
<field name="converted_result_modifier"/>
<group id="result_modifier" colspan="2" col="2">
<label name="result_modifier"/>
<field name="result_modifier"/>
</group>
<group id="converted_result_modifier" colspan="2" col="2">
<label name="converted_result_modifier"/>
<field name="converted_result_modifier"/>
</group>
<label name="result"/>
<field name="result"/>
<label name="converted_result"/>
@ -96,10 +104,14 @@
<field name="annulment_date"/>
<label name="results_report"/>
<field name="results_report"/>
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
<label name="results_estimated_date"/>
<field name="results_estimated_date"/>
<group id="results_estimated_waiting" colspan="2" col="2">
<label name="results_estimated_waiting"/>
<field name="results_estimated_waiting"/>
</group>
<group id="results_estimated_date" colspan="2" col="2">
<label name="results_estimated_date"/>
<field name="results_estimated_date"/>
</group>
<label name="department"/>
<field name="department"/>
</form>

View File

@ -11,6 +11,7 @@
<field name="analysis_origin"/>
<field name="urgent"/>
<field name="priority"/>
<field name="laboratory_date"/>
<field name="report_date"/>
<field name="initial_concentration"/>
<field name="final_concentration"/>

View File

@ -14,11 +14,13 @@
<field name="matrix"/>
<field name="details" colspan="2"/>
<field name="comments" colspan="2"/>
<group col="6" colspan="4" id="priority">
<group id="priority" colspan="8" col="4">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
<label name="laboratory_date"/>
<field name="laboratory_date"/>
<label name="report_date"/>
<field name="report_date"/>
</group>

View File

@ -8,6 +8,7 @@
<field name="matrix"/>
<field name="urgent"/>
<field name="priority"/>
<field name="laboratory_date"/>
<field name="report_date"/>
<field name="comments" tree_invisible="1"/>
</tree>

View File

@ -12,7 +12,7 @@
<field name="product_type"/>
<label name="matrix"/>
<field name="matrix"/>
<group col="6" colspan="2" id="priority">
<group id="priority" colspan="2" col="6">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
@ -20,10 +20,12 @@
<label name="repetition"/>
<field name="repetition"/>
</group>
<group col="4" colspan="2" id="dates">
<label name="report_date"/>
<field name="report_date"/>
<group id="dates" colspan="2" col="6">
<label name="create_date2"/>
<field name="create_date2" widget="date"/>
<label name="laboratory_date"/>
<field name="laboratory_date"/>
<label name="report_date"/>
<field name="report_date"/>
</group>
</form>

View File

@ -9,8 +9,9 @@
<field name="urgent"/>
<field name="priority"/>
<field name="repetition"/>
<field name="report_date"/>
<field name="create_date2" widget="date"/>
<field name="laboratory_date"/>
<field name="report_date"/>
<field name="completion_percentage" widget="progressbar"/>
<field name="department"/>
</tree>

View File

@ -26,16 +26,32 @@
<field name="method"/>
<label name="device"/>
<field name="device"/>
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
<label name="report_date"/>
<field name="report_date"/>
<group id="priority" colspan="2" col="4">
<label name="urgent"/>
<field name="urgent"/>
<label name="priority"/>
<field name="priority"/>
</group>
<label name="divide"/>
<field name="divide"/>
<label name="confirmation_date"/>
<field name="confirmation_date"/>
<group id="estimated_waiting_laboratory" colspan="2" col="2">
<label name="estimated_waiting_laboratory"/>
<field name="estimated_waiting_laboratory"/>
</group>
<group id="estimated_waiting_report" colspan="2" col="2">
<label name="estimated_waiting_report"/>
<field name="estimated_waiting_report"/>
</group>
<group id="laboratory_date" colspan="2" col="2">
<label name="laboratory_date"/>
<field name="laboratory_date"/>
</group>
<group id="report_date" colspan="2" col="2">
<label name="report_date"/>
<field name="report_date"/>
</group>
</page>
<page string="Comments" id="comments">
<separator string="Comments" colspan="4" id="comments"/>

View File

@ -11,10 +11,10 @@
<field name="analysis_type"/>
<field name="urgent"/>
<field name="priority"/>
<field name="confirmation_date"/>
<field name="report_date"/>
<field name="divide"/>
<field name="comments"/>
<field name="confirmation_date"/>
<field name="confirmed" tree_invisible="1" />
<field name="has_results_report" tree_invisible="1" />
</tree>