Пример #1
0
class Lead(__CreatedUpdated, BaseEntity):
    model_name = 'lead'
    model_plural_name = 'leads'
    schema = _CustomFieldsSchema

    name = fields.Str()
    account_id = fields.Int()
    responsible_user_id = UserIdField('responsible_user')
    group_id = GroupIdField('group')
    tags = TagsField()

    # For some reason it can't be changed using api
    # (tested with main_contact: {id:..} and changing order of contacts_id)
    main_contact = EntityField('contact', load_only=True)

    contacts = EntityField('contact',
                           dump_key='contacts_id',
                           flat_id=True,
                           many=True)
    company = EntityField('company')
    pipeline = EntityField('pipeline', only=['id'], unknown='exclude')

    status_id = fields.Int()
    is_deleted = fields.Bool(default=False)
    closed_at = TimestampField(zero_as_none=True, allow_none=True)
    closest_task_at = TimestampField(zero_as_none=True,
                                     allow_none=True,
                                     default=None)
    sale = fields.Int(default=0)
    loss_reason_id = fields.Int(default=0)
Пример #2
0
class Task(__CreatedUpdated, __ForElement, BaseEntity):
    model_name = 'task'
    model_plural_name = 'tasks'

    account_id = fields.Int()

    responsible_user_id = UserIdField('responsible_user')
    group_id = GroupIdField('group')

    is_completed = fields.Bool()
    task_type = fields.Int()
    complete_till_at = TimestampField()
    text = fields.Str()
Пример #3
0
class Contact(__CreatedUpdatedBy, BaseEntity):
    model_name = 'contact'
    model_plural_name = 'contacts'
    schema = _CustomFieldsSchema

    name = fields.Str()
    account_id = fields.Int()
    responsible_user_id = UserIdField('responsible_user')
    group_id = GroupIdField('group')
    tags = TagsField()

    company = EntityField('company', allow_none=True)
    customers = EntityField('customer', many=True)
    leads = EntityField('lead', many=True)

    closest_task_at = TimestampField(zero_as_none=True, allow_none=True)
Пример #4
0
class __CreatedUpdated:
    created_by_id = UserIdField(bind_attr='created_by', data_key='created_by')
    created_at = TimestampField()
    updated_at = TimestampField()