lims_analysis_sheet: analysis sheet: remove permissions to view data

This commit is contained in:
Adrián Bernardi 2021-08-09 16:09:28 -03:00
parent f30eb72468
commit 8ff1359d93
5 changed files with 4 additions and 50 deletions

View File

@ -2,10 +2,6 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:lims.analysis_sheet,button_view_data_available:"
msgid "Button view data available"
msgstr "Botón ver datos disponible"
msgctxt "field:lims.analysis_sheet,compilation:"
msgid "Compilation"
msgstr "Compilación"
@ -758,10 +754,6 @@ msgctxt "model:lims.template.analysis_sheet.analysis.expression,name:"
msgid "Special Formula"
msgstr "Fórmula especial"
msgctxt "model:res.group,name:group_analysis_sheet_view_data"
msgid "Lims Analysis Sheet View Data"
msgstr "Lims Hoja de análisis Ver datos"
msgctxt "report:lims.analysis_sheet.report:"
msgid "("
msgstr "("

View File

@ -420,8 +420,6 @@ class AnalysisSheet(Workflow, ModelSQL, ModelView):
depends=['state', 'interface'])
interface = fields.Function(fields.Many2One('lims.interface', 'Interface'),
'get_interface')
button_view_data_available = fields.Function(fields.Boolean(
'Button view data available'), 'get_button_view_data_available')
@classmethod
def __setup__(cls):
@ -446,12 +444,12 @@ class AnalysisSheet(Workflow, ModelSQL, ModelView):
'depends': ['state'],
},
'view_data': {
'invisible': ~Eval('button_view_data_available'),
'depends': ['button_view_data_available'],
'invisible': Eval('state') == 'draft',
'depends': ['state'],
},
'view_grouped_data': {
'invisible': ~Eval('button_view_data_available'),
'depends': ['button_view_data_available'],
'invisible': Eval('state') == 'draft',
'depends': ['state'],
},
'validate_': {
'invisible': Eval('state') != 'active',
@ -605,29 +603,6 @@ class AnalysisSheet(Workflow, ModelSQL, ModelView):
def get_interface(self, name):
return self.compilation.interface.id
@classmethod
def get_button_view_data_available(cls, sheets, name):
ModelData = Pool().get('ir.model.data')
user_id = Transaction().user
group_id = ModelData.get_id('lims_analysis_sheet',
'group_analysis_sheet_view_data')
allowed_group = (group_id in Transaction().context.get('groups'))
result = {}
for s in sheets:
if s.state == 'draft':
result[s.id] = False
continue
if allowed_group:
result[s.id] = True
continue
if s.professional.party.lims_user.id == user_id:
result[s.id] = True
continue
result[s.id] = False
return result
@classmethod
def create(cls, vlist):
vlist = cls.set_number(vlist)

View File

@ -2,16 +2,5 @@
<tryton>
<data>
<!-- Groups -->
<record model="res.group" id="group_analysis_sheet_view_data">
<field name="name">Lims Analysis Sheet View Data</field>
</record>
<record model="res.user-res.group"
id="user_admin_group_analysis_sheet_view_data">
<field name="user" ref="res.user_admin"/>
<field name="group" ref="group_analysis_sheet_view_data"/>
</record>
</data>
</tryton>

View File

@ -33,7 +33,6 @@
<field name="confirmed_by"/>
<label name="confirmed_date"/>
<field name="confirmed_date"/>
<field name="button_view_data_available" colspan="4" invisible="1"/>
<button name="view_data" string="View data" colspan="4"/>
<label name="view"/>
<field name="view" widget="selection"/>

View File

@ -6,7 +6,6 @@
<field name="samples_qty"/>
<field name="completion_percentage" widget="progressbar"/>
<button name="view_data" string="View data"/>
<field name="button_view_data_available" tree_invisible="1"/>
<field name="date" widget="date"/>
<field name="urgent"/>
<field name="state"/>