def CRU_disciplinary_note_schema():
    """
    It call to SCmS to get a schema with options to ve showed in UI form to do a disciplinary note.
    :return: A dict
    """
    if request.method == 'GET':
        return CRUD.get(service='scms', resource='disciplinarynote/schema')

    if request.method == 'PUT':
        return CRUD.put(service='scms',
                        resource='disciplinarynote/schema',
                        id=None,
                        json=request.get_json())
def post_mark():
    """
    It call to SCmS to post a item of this kind.

    :return: Dict with id saved {'markId': <int>} in the body and specific HTTP status code in the header.
    """
    return CRUD.post(service='scms', resource='mark', json=request.get_json())
def delete_disciplinary_note(dn_id):
    """
    It call to SCmS to do a logic deletion of this kind of item in their data store.

    :param dn_id: dn id in data store.
    :return: Nothing in the body. Specific HTTP status code in the header.
    """
    return CRUD.delete(service='scms', resource='disciplinarynote', id=dn_id)
def get_disciplinary_note(dn_id=None):
    """
    It call to SCmS to get a minimal content list of all items of this kind or all info about specific one.

    :param ac_id: id of the item or None if the request is about all.
    :return: A dict with info about one or a list with dicts inside with info for each one.
    """
    return CRUD.get(service='scms', resource='disciplinarynote', id=dn_id)
def delete_mark(mark_id):
    """
    It call to SCmS to do a logic deletion of this kind of item in their data store.

    :param mark_id: mark id in data store.
    :return: Nothing in the body. Specific HTTP status code in the header.
    """
    return CRUD.delete(service='scms', resource='mark', id=mark_id)
def get_ac_base(ac_id):
    """
    It call to SCmS to request a item (base type).

    :param ac_id: The id of the item in the service.
    :return: A dict with data.
    """
    return CRUD.get(service='scms', resource='ac/base', id=ac_id)
def update_disciplinary_note(dn_id):
    """
    It call to SCmS to update a item ot this kind.

    :param dn_id: id of item to update.
    :return: Nothing in the body. Specific HTTP status code in the header.
    """
    return CRUD.put(service='scms',
                    resource='disciplinarynote',
                    id=dn_id,
                    json=request.get_json())
def update_mark(mark_id):
    """
    It call to SCmS to update a item ot this kind.

    :param mark_id: id of item to update.
    :return: Nothing in the body. Specific HTTP status code in the header.
    """
    return CRUD.put(service='scms',
                    resource='mark',
                    id=mark_id,
                    json=request.get_json())
def get_mark(mark_id=None):
    """
    It call to SCmS to get a minimal content list of all items of this kind or all info about specific one.

    Also in this case is possible get the item using enrollmentId as param in /mark url (/mark?enrollmentId=<int>).

    :param ac_id: id of the item or None if the request is about all.
    :return: A dict with info about one or a list with dicts inside with info for each one.
    """
    return CRUD.get(service='scms',
                    resource='mark',
                    id=mark_id,
                    args=request.args)