# coding: utf-8

from java.util import ArrayList

from nci._nci_orm import education_levelCursor


try:
    from ru.curs.showcase.core.jython import JythonDTO
    from ru.curs.showcase.core.selector import ResultSelectorData
    from ru.beta2.extra.gwt.ui.selector.api import DataRecord
except:
    from ru.curs.celesta.showcase import JythonDTO


def procListAndCount(context, main=None, add=None, filterinfo=None, session=None, params=None, curValue=None, startsWith=None, firstRecord=None, recordCount=None):
    '''ListAndCount для education_level'''

    education_level = education_levelCursor(context)
    education_level.orderBy('name')
    education_level.setFilter('name', "@%s'%s'%%" % ("%"*(not startsWith), curValue))
    education_level.limit(firstRecord, recordCount)

    count = education_level.count()

    recordList = ArrayList()
    for row in education_level.iterate():
        record = DataRecord()
        record.id = str(row.id)
        record.name = row.name
        recordList.add(record)

    return ResultSelectorData(recordList, count)