from lims.browser.widgets.datetimewidget import DateTimeWidget from lims.config import PRICELIST_TYPES, PROJECTNAME from lims.content.bikaschema import BikaFolderSchema from lims.interfaces import IPricelist from dependencies.dependency import DateTime from dependencies.dependency import PersistentMapping from dependencies import folder from dependencies.dependency import * from dependencies.dependency import permissions from dependencies.dependency import implements from dependencies.dependency import getToolByName from dependencies.dependency import permissions schema = BikaFolderSchema.copy() + Schema(( StringField('Type', required=1, vocabulary=PRICELIST_TYPES, widget=SelectionWidget( format='select', label=_("Pricelist for"), ), ), BooleanField('BulkDiscount', default=False, widget=SelectionWidget( label=_("Bulk discount applies"), ), ), FixedPointField('BulkPrice',
def set(self, instance, value, **kwargs): _field = instance.Schema().getField('InheritedObjects') uids = [] if value: bc = getToolByName(instance, 'bika_catalog') ids = [x['ObjectID'] for x in value] if ids: proxies = bc(id=ids) if proxies: uids = [x.UID for x in proxies] RecordsField.set(self, instance, value) return _field.set(instance, uids) schema = BikaFolderSchema.copy() + Schema(( StringField('BatchID', searchable=True, required=False, validators=('uniquefieldvalidator', ), widget=StringWidget( visible=False, label=_("Batch ID"), )), ReferenceField( 'Client', required=0, allowed_types=('Client', ), relationship='BatchClient', widget=ReferenceWidget( label=_("Client"),
from dependencies.dependency import ClassSecurityInfo from dependencies.dependency import RecordWidget from dependencies.dependency import * from lims.config import PROJECTNAME from dependencies.dependency import permissions as CMFCorePermissions from dependencies.dependency import getToolByName from dependencies.dependency import safe_unicode from lims.content.bikaschema import BikaSchema, BikaFolderSchema from dependencies.dependency import ATFolder from lims.browser.fields import AddressField from lims.browser.widgets import AddressWidget from lims import PMF, bikaMessageFactory as _ schema = BikaFolderSchema.copy() + BikaSchema.copy() + ManagedSchema(( 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"), ),