예제 #1
0
class PurchaseSchema(MappingSchema):
    db = sqlite()
    categories = db.getAllCategories()
    categories = [(cat, cat) for (cat, comment) in categories]
    availableFlags = (
            ('L', 'Ledger'),
    )
    shop = SchemaNode(String(),
                        description = 'Shop')
    payment_method = SchemaNode(
                String(),
                widget=widget.SelectWidget(values=categories),
                        description = 'Bezahlmethode'
                )
    date = SchemaNode(Date(),
                      description = 'Rechnungsdatum')
    flags = SchemaNode(colander.Set(),
                       widget=widget.CheckboxChoiceWidget(values=availableFlags),
                       )
    positions = PositionsSchema()
    title='Neue Transaktion'

    def update(self):
        categories = self.db.getAllCategories()
        categories = [(cat, cat) for (cat, comment) in categories]
        self['payment_method'].widget = widget.SelectWidget(values=categories)
        self['positions'].update()
예제 #2
0
class DuoVoBoard(MappingSchema):
    address = general_rules.Address()
    correspondence_address = general_rules.Address()
    board_id = general_rules.board_id
    name = general_rules.name
    phone = general_rules.phone
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    administrative_office_id = SchemaNode(Int())
    denomination = general_rules.denomination
    financial_key_indicators_per_year_reference_date = SchemaNode(Date(),
        missing=True)
    reference_year = general_rules.reference_year
    website = general_rules.website

    vavo_students_reference_url = general_rules.website
    vavo_students_reference_date = SchemaNode(Date(), missing=True)
    vavo_students = VavoStudents()
예제 #3
0
class DuoVoBranch(MappingSchema):
    address = general_rules.Address()
    correspondence_address = general_rules.Address()
    name = general_rules.name
    branch_id = general_rules.branch_id
    board_id = general_rules.board_id
    brin = general_rules.brin
    corop_area = general_rules.corop_area
    corop_area_code = general_rules.corop_area_code
    denomination = general_rules.denomination
    education_area = general_rules.education_area
    education_area_code = general_rules.education_area_code
    education_structures = general_rules.EducationStructures()
    graduations = Graduations()
    graduations_reference_date = SchemaNode(Date())
    graduations_reference_url = general_rules.reference_url
    student_residences = StudentResidences()
    student_residences_reference_date = SchemaNode(Date())
    student_residences_reference_url = general_rules.reference_url
    students_by_structure = StudentsByStructure()
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    nodal_area = general_rules.nodal_area
    nodal_area_code = general_rules.nodal_area_code
    phone = general_rules.phone
    province = general_rules.province
    reference_year = general_rules.reference_year
    rmc_region = general_rules.rmc_region
    rmc_region_code = general_rules.rmc_region_code
    rpa_area = general_rules.rpa_area
    rpa_area_code = general_rules.rpa_area_code
    website = general_rules.url
    wgr_area = general_rules.wgr_area
    wgr_area_code = general_rules.wgr_area_code


    vavo_students_reference_url = general_rules.website
    vavo_students_reference_date = SchemaNode(Date(), missing=True)
    vavo_students = VavoStudents()

    students_by_finegrained_structure_reference_url = general_rules.website
    students_by_finegrained_structure_reference_date = SchemaNode(Date(), missing=True)
    students_by_finegrained_structure = FineGrainedStructureStudents()
예제 #4
0
class DuoVoSchool(MappingSchema):
    address = general_rules.Address()
    correspondence_address = general_rules.Address()
    board_id = general_rules.board_id
    brin = general_rules.brin
    denomination = general_rules.denomination
    corop_area = general_rules.corop_area
    corop_area_code = general_rules.corop_area
    dropouts = Dropouts(missing=True)
    dropouts_reference_date = SchemaNode(Date(), missing=True)
    dropouts_reference_url = general_rules.reference_url
    education_area = general_rules.education_area
    education_area_code = general_rules.education_area_code
    education_structures = general_rules.EducationStructures()
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    nodal_area = general_rules.nodal_area
    nodal_area_code = general_rules.nodal_area_code
    phone = general_rules.phone
    province = general_rules.province
    reference_year = general_rules.reference_year
    rmc_region = general_rules.rmc_region
    rmc_region_code = general_rules.rmc_region_code
    rpa_area = general_rules.rpa_area
    rpa_area_code = general_rules.rpa_area_code
    website = general_rules.url
    wgr_area = general_rules.wgr_area
    wgr_area_code = general_rules.wgr_area_code

    # TODO:
    #students_prognosis = StudentPrognosis()
    students_prognosis_reference_date = SchemaNode(Date(), missing=True)
    students_prognosis_url = general_rules.website

    vo_lo_collaboration_reference_url = general_rules.website
    vo_lo_collaboration_reference_date = SchemaNode(Date(), missing=True)
    vo_lo_collaboration = general_rules.collaboration_id

    pao_collaboration_reference_url = general_rules.website
    pao_collaboration_reference_date = SchemaNode(Date(), missing=True)
    pao_collaboration = general_rules.collaboration_id
예제 #5
0
class DuoPoSchool(MappingSchema):
    address = general_rules.Address()
    correspondence_address = general_rules.Address()
    board_id = general_rules.board_id
    brin = general_rules.brin
    denomination = general_rules.denomination
    corop_area = general_rules.corop_area
    corop_area_code = general_rules.corop_area
    education_area = general_rules.education_area
    education_area_code = general_rules.education_area_code
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    name = general_rules.name
    nodal_area = general_rules.nodal_area
    nodal_area_code = general_rules.nodal_area_code
    phone = general_rules.phone
    province = general_rules.province
    reference_year = general_rules.reference_year
    rmc_region = general_rules.rmc_region
    rmc_region_code = general_rules.rmc_region_code
    rpa_area = general_rules.rpa_area
    rpa_area_code = general_rules.rpa_area_code
    website = general_rules.website
    wgr_area = general_rules.wgr_area
    wgr_area_code = general_rules.wgr_area_code

    spo_students_per_cluster = SPOStudentsPerCluster()
    spo_students_per_cluster_reference_date = SchemaNode(Date(), missing=True)
    spo_students_per_cluster_reference_url = general_rules.website

    po_lo_collaboration_reference_url = general_rules.website
    po_lo_collaboration_reference_date = SchemaNode(Date(), missing=True)
    po_lo_collaboration = general_rules.collaboration_id

    pao_collaboration_reference_url = general_rules.website
    pao_collaboration_reference_date = SchemaNode(Date(), missing=True)
    pao_collaboration = general_rules.collaboration_id
예제 #6
0
class DuoPoBoard(MappingSchema):
    address = general_rules.Address()
    correspondence_address = general_rules.Address()
    board_id = general_rules.board_id

    name = general_rules.name
    phone = general_rules.phone
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    administrative_office_id = SchemaNode(Int())
    denomination = general_rules.denomination
    # TODO:
    #financial_key_indicators_per_year = FinancialKeyIndicatorsPerYear()
    financial_key_indicators_per_year_reference_date = SchemaNode(Date(),
        missing=True)
    financial_key_indicators_per_year_url = general_rules.website
    reference_year = general_rules.reference_year
    website = general_rules.website
예제 #7
0
 class DatesSchema(SequenceSchema):
     date = SchemaNode(Date())
예제 #8
0
nodal_area = lambda **kwargs: SchemaNode(
    String(), validator=Length(min=3, max=300), **kwargs)
nodal_area_code = lambda **kwargs: SchemaNode(Int(), **kwargs)
rmc_region = lambda **kwargs: SchemaNode(
    String(), validator=Length(min=3, max=300), **kwargs)
rmc_region_code = lambda **kwargs: SchemaNode(Int(), **kwargs)
rpa_area = lambda **kwargs: SchemaNode(
    String(), validator=Length(min=3, max=300), **kwargs)
rpa_area_code = lambda **kwargs: SchemaNode(Int(), **kwargs)
wgr_area = lambda **kwargs: SchemaNode(
    String(), validator=Length(min=3, max=300), **kwargs)
wgr_area_code = lambda **kwargs: SchemaNode(Int(), **kwargs)
city = lambda **kwargs: SchemaNode(
    String(), validator=Length(min=3, max=300), **kwargs)
publication_date = lambda **kwargs: SchemaNode(
    Date(), validator=date_today_or_earlier, **kwargs)
url = lambda **kwargs: SchemaNode(String(), validator=colander.url, **kwargs)


class Coordinates(MappingSchema):
    lat = SchemaNode(Float(), validator=Range(min=-180.0, max=180.0))
    lon = SchemaNode(Float(), validator=Range(min=-180.0, max=180.0))


class Viewport(MappingSchema):
    northeast = Coordinates()
    southwest = Coordinates()


class Address(MappingSchema):
    """
예제 #9
0
class DuoPoBranch(MappingSchema):
    address = general_rules.Address()
    # TODO:
    #ages_per_branch_by_student_weight = AgesPerBranchByStudentWeight()
    ages_per_branch_by_student_weight_reference_date = SchemaNode(Date(),
        missing=True)
    ages_per_branch_by_student_weight_reference_url = general_rules.website
    correspondence_address = general_rules.Address()
    name = general_rules.name
    branch_id = general_rules.branch_id
    board_id = general_rules.board_id
    brin = general_rules.brin
    corop_area = general_rules.corop_area
    corop_area_code = general_rules.corop_area_code
    denomination = general_rules.denomination
    education_area = general_rules.education_area
    education_area_code = general_rules.education_area_code
    municipality = general_rules.municipality
    municipality_code = general_rules.municipality_code
    nodal_area = general_rules.nodal_area
    nodal_area_code = general_rules.nodal_area_code
    phone = general_rules.phone
    province = general_rules.province
    # TODO:
    #pupils_by_origins = PupilsByOrigins()
    pupils_by_origins_reference_date = SchemaNode(Date(), missing=True)
    pupils_by_origins_reference_url = general_rules.website
    # TODO:
    #pupil_residences = PupilResidences()
    pupil_residences_reference_date = SchemaNode(Date(), missing=True)
    pupil_residences_reference_url = general_rules.website
    reference_year = general_rules.reference_year
    rmc_region = general_rules.rmc_region
    rmc_region_code = general_rules.rmc_region_code
    rpa_area = general_rules.rpa_area
    rpa_area_code = general_rules.rpa_area_code
    website = general_rules.url

    # TODO:
    #weights_per_school = WeightsPerSchool()
    weights_per_school_reference_date = SchemaNode(Date(), missing=True)
    weights_per_school_reference_url = general_rules.website
    
    wgr_area = general_rules.wgr_area
    wgr_area_code = general_rules.wgr_area_code

    # TODO:
    #student_year = StudentsByYear()
    student_year_reference_date = SchemaNode(Date(), missing=True)
    student_year_reference_url = general_rules.website
    
    spo_law = SchemaNode(String(), validator=Length(min=2, max=4))
    spo_edu_type = SchemaNode(String()) # possibly multiple with slash
    spo_cluster = SchemaNode(Int(), validator=Range(min=0, max=4))
    
    spo_students_by_birthyear_reference_url = general_rules.website
    spo_students_by_birthyear_reference_date = SchemaNode(Date(), missing=True)
    spo_students_by_birthyear = SPOStudentsByBirthyear()

    
    spo_students_by_edu_type_reference_url = general_rules.website
    spo_students_by_edu_type_reference_date = SchemaNode(Date(), missing=True)
    spo_students_by_edu_type = SPOStudentsByEduType()

    students_by_advice_reference_url = general_rules.website
    students_by_advice_reference_date = SchemaNode(Date(), missing=True)
    students_by_advice = StudentsByAdvice()
예제 #10
0
class ElasticSearchQuery(MappingSchema):
    start = SchemaNode(Date(), location='body', type='datetime.datetime')
    end = SchemaNode(Date(), location='body', type='datetime.datetime')
    names = SchemaNode(Seq(), location='body')
예제 #11
0
    def __init__(self,
                 title,
                 name,
                 round=1,
                 missing='',
                 widget=None,
                 mapinit=None,
                 processing_form=None,
                 desc=None,
                 table_reduce=False,
                 rank=0,
                 required=False,
                 missing_msg='champ requis',
                 primary_key=False):

        # Form display
        self.title = title
        self.name = name
        self.type = str
        self.required = required
        self.missing_msg = missing_msg
        self.missing = missing
        self.desc = desc

        if widget is None:
            self.widget = DateInputWidget(
                **{'key': '{}-date'.format(self.name)})
            self.mapinit = {'date': None}
            processing_form = lambda x: pd.Timestamp(x['date'])

        else:
            self.widget = widget
            self.mapinit = mapinit

        self.round = round

        # Db column
        self.dbcol_ = (name, Colsql(Strsql(250), primary_key=primary_key))

        # table display
        self.table_reduce, self.rank, = table_reduce, rank

        # Processing
        self.processing_form = {
            'form': processing_form,
            'db': lambda x: pd.Timestamp(x).date()
        }
        self.processing_db = {
            'upload': lambda x: str(pd.Timestamp(x).date()),
            'download': lambda x: str(x)
        }

        self.sn = sn(Date(),
                     title=self.title,
                     name=name,
                     widget=self.widget,
                     description=desc,
                     required=self.required,
                     missing_msg=self.missing_msg)

        if not required:
            self.sn.missing = missing
예제 #12
0
파일: rest.py 프로젝트: Py-AMS/pyams-utils
class DateRangeSchema(TupleSchema):
    """Dates range schema type"""
    after = SchemaNode(Date(), title=_("Range beginning date"), missing=null)
    before = SchemaNode(Date(),
                        title=_("Range ending date (excluded)"),
                        missing=null)
예제 #13
0
reference_url = url
year = SchemaNode(Int(), validator=Range(min=1990, max=datetime.now().year))
corop_area = SchemaNode(String(), validator=Length(min=3, max=300))
corop_area_code = SchemaNode(Int())
education_area = SchemaNode(String(), validator=Length(min=5, max=100))
education_area_code = SchemaNode(Int())
nodal_area = SchemaNode(String(), validator=Length(min=3, max=300))
nodal_area_code = SchemaNode(Int())
rmc_region = SchemaNode(String(), validator=Length(min=3, max=300))
rmc_region_code = SchemaNode(Int())
rpa_area = SchemaNode(String(), validator=Length(min=3, max=300))
rpa_area_code = SchemaNode(Int())
wgr_area = SchemaNode(String(), validator=Length(min=3, max=300))
wgr_area_code = SchemaNode(Int())
city = SchemaNode(String(), validator=Length(min=3, max=300))
publication_date = SchemaNode(Date(), validator=date_today_or_earlier)


class Coordinates(MappingSchema):
    lat = SchemaNode(Float(), validator=Range(min=-180.0, max=180.0))
    lon = SchemaNode(Float(), validator=Range(min=-180.0, max=180.0))


class Viewport(MappingSchema):
    northeast = Coordinates()
    southwest = Coordinates()


class AddressComponentTypes(SequenceSchema):
    address_type = SchemaNode(String(), validator=Length(min=4, max=100))