description=_( "Date from which the instrument is under validation"), ), ), DateTimeField( 'DownTo', with_time=1, with_date=1, widget=DateTimeWidget( label=_("To"), description=_("Date until the instrument will not be available"), ), ), StringField('Validator', widget=StringWidget( label=_("Validator"), description=_("The analyst responsible of the validation"), )), TextField( 'Considerations', default_content_type='text/plain', allowed_content_types=('text/plain', ), default_output_type="text/plain", widget=TextAreaWidget( label=_("Considerations"), description=_("Remarks to take into account before validation"), ), ), TextField( 'WorkPerformed', default_content_type='text/plain',
from openerp.tools.translate import _ from fields.string_field import StringField from fields.file_field import FileField from fields.widget.widget import StringWidget from openerp import fields, models from base_olims_model import BaseOLiMSModel schema = ( StringField('DocumentID', required=1, validators=('uniquefieldvalidator',), widget = StringWidget( label=_("Document ID"), ) ), FileField('File', required=1, ), StringField('DocumentVersion', widget = StringWidget( label=_("Document Version"), ) ), StringField('DocumentLocation', widget = StringWidget( label=_("Document Location"), description=_("Location where the document set is shelved"), ) ),
FileWidget, IntegerWidget # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema( schema = ( # ~~~~~~~ To be implemented ~~~~~~~ # StringField('ImportOption', # widget = SelectionWidget( # label = _("Import Option"), # format='select', # ), # vocabulary = ARIMPORT_OPTIONS, # ), StringField('FileName', searchable = True, widget = StringWidget( label = _("Filename"), ), ), FileField('OriginalFile', searchable = True, widget = FileWidget( label = _("Original File"), visible={'edit': 'invisible', 'view': 'visible', 'add': 'invisible'}, ), ), StringField('ClientTitle', searchable = True, widget = StringWidget( label = _("Client Name"), ),
# import json import sys from dependencies.dependency import getToolByName from dependencies.dependency import safe_unicode from lims import bikaMessageFactory as _ from openerp import fields, models from fields.string_field import StringField from fields.text_field import TextField from fields.boolean_field import BooleanField from fields.widget.widget import TextAreaWidget, BooleanWidget, StringWidget from base_olims_model import BaseOLiMSModel from lims.utils import t # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema(( schema = (StringField('Sample Type', required=1, ), TextField('Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.')), ), fields.Char(string='Days', required=True), fields.Char(string='Hours', required=True), fields.Char(string='Minutes', required=True), BooleanField('Hazardous', default = False, widget = BooleanWidget(
from dependencies.dependency import getToolByName from dependencies.dependency import safe_unicode from lims import PMF, bikaMessageFactory as _ from lims.workflow import getCurrentState, StateFlow, InactiveState import json import sys #schema = Organisation.schema.copy() + atapi.Schema(( schema = ( StringField('Name', required = 1, searchable = True, validators = ('uniquefieldvalidator',), widget = StringWidget( label=_("Name"), ), ), StringField('TaxNumber', widget = StringWidget( label=_("VAT number"), ), ), StringField('Phone', widget = StringWidget( label=_("Phone"), ), ), StringField('Fax', widget = StringWidget(
# from lims.browser.widgets import DateTimeWidget, ReferenceWidget # from lims.config import PROJECTNAME # from lims.content.bikaschema import BikaSchema from lims import bikaMessageFactory as _ from fields.string_field import StringField from fields.text_field import TextField from fields.date_time_field import DateTimeField from fields.widget.widget import StringWidget, TextAreaWidget, DateTimeWidget from openerp import fields, models from base_olims_model import BaseOLiMSModel #schema = BikaSchema.copy() + Schema(( schema = ( StringField('AssetNumber', required=1, widget=StringWidget(label=_("Asset Number"), )), # ReferenceField('Instrument', # allowed_types=('Instrument',), # relationship='InstrumentCalibrationInstrument', # widget=StringWidget( # visible=False, # ) # ), fields.Many2one( string='Instruments', comodel_name='olims.instrument', required=False, ),
"""The contact person at a reference supplier organisation. """ from openerp import fields, models, api from fields.string_field import StringField from base_olims_model import BaseOLiMSModel from fields.widget.widget import StringWidget from openerp.tools.translate import _ schema = ( StringField('Salutation', widget = StringWidget( label = ("Salutation", "Title"), description=_("Greeting title eg. Mr, Mrs, Dr"), ), ), StringField('Firstname', required = 1, widget = StringWidget( label=_("Firstname"), ), ), StringField('Middleinitial', required = 0, widget = StringWidget( label=_("Middle initial"), ), ), StringField('Middlename', required = 0, widget = StringWidget(
from dependencies.dependency import getToolByName from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.boolean_field import BooleanField from fields.fixed_point_field import FixedPointField from fields.widget.widget import StringWidget, AnalysisProfileAnalysesWidget, \ TextAreaWidget, ComputedWidget, \ BooleanWidget, DecimalWidget # ~~~~~ Useful code that need to be converted in Odoo style ~~~~~~ # schema = BikaSchema.copy() + Schema( schema = (StringField('Profile', required=1, ), TextField('Description', widget = TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), StringField('ProfileKey', widget = StringWidget( label = _("Profile Keyword"), description = _("The profile's keyword is used to uniquely identify " + \ "it in import files. It has to be unique, and it may " + \ "not be the same as any Calculation Interim field ID."), ), ),
_logger = logging.getLogger(__name__) from lims.idserver import renameAfterCreation from lims import bikaMessageFactory as _ from base_olims_model import BaseOLiMSModel from fields.integer_field import IntegerField from fields.file_field import FileField from fields.boolean_field import BooleanField from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import IntegerWidget, BooleanWidget, FileWidget, \ TextAreaWidget, StringWidget # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema(( schema = (StringField('name', required=1, ), TextField('Description', widget=TextAreaWidget( description = _('Used in item listings and search results.'), ) ), IntegerField('sortKey', widget=IntegerWidget( label = _("Sort Key"), description = _("Numeric value indicating the sort order of objects that are prioritised"), ), ), IntegerField('pricePremium', widget=IntegerWidget( label = _("Price Premium Percentage"),
"""Analysis result range specifications for a client """ from openerp.tools.translate import _ from openerp import fields, models from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget schema = (fields.Many2one(string='Sample Type', comodel_name='olims.sample_type', required=False, help="Sample Type", ), StringField('Title', required=1, ), TextField('Description', widget=TextAreaWidget( description = _('Used in item listings and search results.'), ) ), fields.Many2many(string='Specifications', comodel_name='olims.specification', relation='analysis_service_specification', help="Click on Analysis Categories (against shaded background" \ "to see Analysis Services in each category. Enter minimum " \ "and maximum values to indicate a valid results range. " \ "Any result outside this range will raise an alert. " \ "The % Error field allows for an % uncertainty to be " \ "considered when evaluating results against minimum and " \
from lims import bikaMessageFactory as _ from fields.string_field import StringField from fields.fixed_point_field import FixedPointField from fields.text_field import TextField from fields.widget.widget import StringWidget, DecimalWidget, TextAreaWidget from openerp import fields, models from base_olims_model import BaseOLiMSModel #schema = BikaSchema.copy() + Schema(( schema = ( StringField( 'Title', required=1, widget=StringWidget( label=_('Title'), description=_('Title is required.'), ), ), TextField( 'Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), StringField('Volume', widget=StringWidget(label=_("Volume"), )), StringField('Unit', widget=StringWidget(label=_("Unit"), )), FixedPointField( 'VAT', default=14.00,
compute='compute_analysisRequestId', ), fields.Many2one( string='Client', comodel_name='olims.client', required=False, ), fields.Many2one(string='Contact', comodel_name='olims.contact', relation='ar_contact', required=True), fields.Many2one(string='CCContact', comodel_name='olims.contact', relation='ar__cc_contact', required=False), StringField('CCEmails', ), fields.Char( string='Sample', compute='Compute_AnalysisSample', ), fields.Many2one( string='Sample_id', comodel_name='olims.sample', ), fields.Many2one( string='Batch', comodel_name='olims.batch', ), fields.Many2one(string='SubGroup', comodel_name='olims.subgroup', relation='ar_subgroup'),
from dependencies.dependency import getToolByName from operator import itemgetter import json from openerp import fields, models from models.base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.boolean_field import BooleanField from fields.widget.widget import StringWidget, TextAreaWidget, \ BooleanWidget # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema(( schema = (StringField('name', required=1, widget=StringWidget( label=_('Title'), description=_('Title is required.'), ), ), TextField('Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), fields.Many2one(string='ContainerType', required = False, comodel_name='olims.container_type', # vocabulary_display_path_bound = sys.maxint, # allowed_types = ('ContainerType',), # vocabulary = 'getContainerTypes',
_logger = logging.getLogger(__name__) from lims import bikaMessageFactory as _ from dependencies.dependency import getToolByName from dependencies.dependency import WorkflowException from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget from models.base_olims_model import BaseOLiMSModel import sys from dependencies import transaction # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema( schema = ( StringField( 'name', required=1, ), TextField( 'Description', widget=TextAreaWidget( description=_('Used in item listings and search results.'), )), TextField( 'Comments', default_output_type='text/plain', allowable_content_types=('text/plain', ), widget=TextAreaWidget(description=_( "To be displayed below each Analysis " "Category section on results reports."), label=_("Comments")), ), # ~~~~~~~ Using Odoo fields.Reference ~~~~~~~
# widget = ComputedWidget( # visible=False, # ), # ), ) schema_order_line = ( TextField( 'Description', compute='_ComputeFieldsValues', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), StringField('Volume', compute='_ComputeFieldsValues', widget=StringWidget(label=_("Volume"), )), StringField( 'Unit', # store=True, compute='_ComputeFieldsValues', widget=StringWidget(label=_("Unit"), )), FixedPointField( 'VAT', compute='_ComputeFieldsValues', default=14.00, default_method='getDefaultVAT', widget=DecimalWidget( label=_("VAT %"), description=_("Enter percentage value eg. 14.0"), ),
from openerp import models from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import StringWidget, TextAreaWidget from base_olims_model import BaseOLiMSModel from openerp.tools.translate import _ schema = ( StringField( 'Container Type', required=1, widget=StringWidget( label=_('Title'), description=_('Title is required.'), ), ), TextField( 'Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), ) class ContainerType(models.Model, BaseOLiMSModel): _name = 'olims.container_type' _rec_name = 'Container Type'
from fields.string_field import StringField from fields.fixed_point_field import FixedPointField from fields.widget.widget import StringWidget, DecimalWidget from lims import bikaMessageFactory as _ _logger = logging.getLogger(__name__) schema = ( StringField( 'CommercialID', searchable=0, required=1, schemata='Accounting', tumbakto='blabla', widget=StringWidget( visible={ 'view': 'visible', 'edit': 'visible' }, label=_('Commercial ID'), description=_( "The profile's commercial ID for accounting purposes."), ), ), StringField('MyTestField', searchable=1, required=0, schemata='Accounting', tumbakto='blabla'), StringField('NewField', searchable=1, required=1,
# expression = 'here.getRequestID()', # widget = ComputedWidget( # visible = True, # ), # ), FileField( 'AttachmentFile', widget=FileWidget(label=_("Attachment"), ), ), fields.Many2one(string='AttachmentType', comodel_name='olims.attachment_type', required=False, help='Attachment Type'), StringField( 'AttachmentKeys', searchable=True, widget=StringWidget(label=_("Attachment Keys"), ), ), DateTimeField( 'DateLoaded', required=1, default_method='current_date', widget=DateTimeWidget(label=_("Date Loaded"), ), ), # ~~~~~~~ To be implemented ~~~~~~~ # ComputedField('ClientUID', # expression = 'here.aq_parent.UID()', # widget = ComputedWidget( # visible = False, # ), # ),
from openerp import fields, models from openerp.tools.translate import _ from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget from base_olims_model import BaseOLiMSModel schema = ( StringField( 'Sample Matrix', required=1, ), TextField( 'Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.')), ), ) class SampleMatrix(models.Model, BaseOLiMSModel): #(BaseFolder): _name = 'olims.sample_matrix' _rec_name = 'Sample Matrix' _at_rename_after_creation = True def _renameAfterCreation(self, check_auto_id=False): from lims.idserver import renameAfterCreation renameAfterCreation(self)
schema = ( fields.Many2one( string='Analysis', comodel_name='olims.analysis', required=True, # 'Analysis', # required=1, # allowed_types=('Analysis',), # referenceClass=HoldingReference, # relationship='DuplicateAnalysisAnalysis', ), # InterimFieldsField( # 'InterimFields', # ), StringField('Result', ), StringField('ResultDM', ), BooleanField('Retested', ), # ~~~~~~~ To be implemented ~~~~~~~ # fields.One2many(string='Attachment', # comodel_name='olims.analysis', # # multiValued=1, # # allowed_types=('Attachment',), # # referenceClass=HoldingReference, # # relationship='DuplicateAnalysisAttachment', # ), # ReferenceField( # 'Attachment', # multiValued=1, # allowed_types=('Attachment',),
from dependencies.dependency import safe_unicode from lims import bikaMessageFactory as _ from openerp import fields, models, api from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget, StringWidget from base_olims_model import BaseOLiMSModel schema = ( StringField('name', required = 1, searchable = True, validators = ('uniquefieldvalidator',), widget = StringWidget( label=_("Name"), ), ), StringField('TaxNumber', widget = StringWidget( label=_("VAT number"), ), ), StringField('Phone', widget = StringWidget( label=_("Phone"), ), ), StringField('Fax', widget = StringWidget(
# from openerp import fields, models, api, _ from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget import logging _logger = logging.getLogger(__name__) # # schema = BikaSchema.copy() + Schema(( # # )) schema = (StringField('name', required=1, ), TextField('Description', widget=TextAreaWidget( description = ('Used in item listings and search results.'), ) ), ) # schema['description'].schemata = 'default' # schema['description'].widget.visible = True class SamplingDeviation(models.Model, BaseOLiMSModel): #BaseFolder _name = 'olims.sampling_deviation' # security = ClassSecurityInfo() # displayContentsTab = False
# from lims.content.bikaschema import BikaSchema # from lims.fields import * # from dependencies.dependency import * # from dependencies.dependency import implements from lims import bikaMessageFactory as _ from openerp import fields, models from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget, StringWidget # ~~~~~~~~~~ Irrelevant code for Odoo ~~~~~~~~~~~ # schema = BikaSchema.copy() + Schema(( schema = ( StringField( 'name', required=1, ), TextField( 'Description', widget=TextAreaWidget( description=('Used in item listings and search results.'), )), StringField('SortKey', widget=StringWidget( label=_("Sort Key"), description=_( "Subgroups are sorted with this key in group views"))), ) # schema['description'].widget.visible = True # schema['description'].schemata = 'default'
""" AnalysisRequests often use the same configurations. ARTemplate includes all AR fields, including preset AnalysisProfile """ from openerp.tools.translate import _ from openerp import fields, models from base_olims_model import BaseOLiMSModel from fields.widget.widget import BooleanWidget, TextAreaWidget from fields.boolean_field import BooleanField from fields.string_field import StringField from fields.text_field import TextField schema = ( StringField( 'Template', required=1, ), TextField( 'Description', widget=TextAreaWidget( description=_('Used in item listings and search results.'), )), ## SamplePoint and SampleType references are managed with ## accessors and mutators below to get/set a string value ## (the Title of the object), but still store a normal Reference. ## Form autocomplete widgets can then work with the Titles. fields.Many2one( string='Sample Point', comodel_name='olims.sample_point', help="Location where sample was taken", required=False, ),
from openerp import fields, models, api from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.integer_field import IntegerField from fields.boolean_field import BooleanField from fields.file_field import FileField from fields.widget.widget import StringWidget, BooleanWidget, IntegerWidget, FileWidget from dependencies.dependency import safe_unicode from lims import PMF, bikaMessageFactory as _ #schema = Organisation.schema.copy() + Schema(( schema = ( StringField( 'Name', required=1, searchable=True, validators=('uniquefieldvalidator', ), widget=StringWidget(label=_("Name"), ), ), StringField( 'TaxNumber', widget=StringWidget(label=_("VAT number"), ), ), StringField( 'Phone', widget=StringWidget(label=_("Phone"), ), ), StringField( 'Fax', widget=StringWidget(label=_("Fax"), ), ),
from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.reference_field import ReferenceField from fields.widget.widget import TextAreaWidget from lims import bikaMessageFactory as _ WORKSHEET_STATES = ( ('open', 'open'), ('attachment_due', 'Attachment Outstanding'), ('to_be_verified', 'To be verified'), ('verified', 'Verified'), ('rejected', 'Rejected'), ) #schema = BikaSchema.copy() + Schema(( schema = ( StringField(string='Worksheet', compute='_ComputeWorksheetId'), fields.Many2one( string='Template', comodel_name='olims.worksheet_template', required=False, ), # ~~~~~~~ To be implemented ~~~~~~~ # HistoryAwareReferenceField('WorksheetTemplate', # allowed_types=('WorksheetTemplate',), # relationship='WorksheetAnalysisTemplate', # ), # ComputedField('WorksheetTemplateTitle', # searchable=True, # expression="context.getWorksheetTemplate() and context.getWorksheetTemplate().Title() or ''", # widget=ComputedWidget(
from lims import bikaMessageFactory as _ from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import StringWidget, TextAreaWidget from openerp import fields, models from base_olims_model import BaseOLiMSModel PRESERVATION_CATEGORIES = ( ('field', _('Field Preservation')), ('lab', _('Lab Preservation')), ) # schema = BikaSchema.copy() + Schema( schema = ( StringField( 'name', required=1, widget=StringWidget( label=_('Title'), description=_('Title is required.'), ), ), TextField( 'Description', widget=TextAreaWidget( label=_('Description'), description=_('Used in item listings and search results.'), ), ), fields.Selection( string='Category', selection=PRESERVATION_CATEGORIES, default='lab', # vocabulary=PRESERVATION_CATEGORIES,
"""Analysis Category - the category of the analysis service """ from openerp import fields, models from openerp.tools.translate import _ from fields.string_field import StringField from fields.text_field import TextField from fields.widget.widget import TextAreaWidget from base_olims_model import BaseOLiMSModel schema = ( StringField( 'Category', required=1, ), TextField( 'Description', widget=TextAreaWidget( description=_('Used in item listings and search results.'), )), TextField( 'Comments', default_output_type='text/plain', allowable_content_types=('text/plain', ), widget=TextAreaWidget(description=_( "To be displayed below each Analysis " "Category section on results reports."), label=_("Comments")), ), fields.Many2one(string='Department', comodel_name='olims.department', required=False, help='The laboratory department'), )
from openerp.tools.translate import _ from datetime import date from openerp import fields, models, api from base_olims_model import BaseOLiMSModel from fields.string_field import StringField from fields.text_field import TextField from fields.boolean_field import BooleanField from fields.date_time_field import DateTimeField from fields.file_field import FileField from fields.reference_field import ReferenceField from fields.widget.widget import StringWidget, TextAreaWidget, BooleanWidget, FileWidget, DateTimeWidget import datetime from openerp.exceptions import Warning schema = ( StringField(string='title', required=1), StringField(string='InvoiceNumber', compute='_ComputeInvoiceId', required=0), fields.Many2one( string='Client', required=0, comodel_name='olims.client', ), DateTimeField('Invoice Date', ), DateTimeField( 'StartDate', required=1, default_method='current_date', widget=DateTimeWidget(label=_("Date"), ), ),
from fields.widget.widget import StringWidget, FileWidget from openerp import fields, models from models.base_olims_model import BaseOLiMSModel #schema = BikaSchema.copy() + Schema(( schema = ( FileField('ReportFile', widget = FileWidget( label=_("Report"), ), ), StringField('ReportType', widget = StringWidget( label=_("Report Type"), description=_("Report type"), ), ), fields.Many2one(string='Client', comodel_name='olims.client', # allowed_types = ('Client',), # relationship = 'ReportClient', # widget = ReferenceWidget( # label=_("Client"), # ), ), # ~~~~~~~ To be implemented ~~~~~~~ # ComputedField('ClientUID', # expression = 'here.getClient() and here.getClient().UID()',