コード例 #1
0
ファイル: protein.py プロジェクト: ispyb/py-ispyb
def get_proteins(request):
    """
    Returns protein entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    is_admin, proposal_id_list = proposal.get_proposal_ids_by_username(request)

    run_query = False
    if is_admin:
        run_query = True
    else:
        if not proposal_id_list:
            msg = "No sessions returned. User has no proposals."
        else:
            if "proposalId" in query_params.keys():
                if query_params["proposalId"] in proposal_id_list:
                    run_query = True
                else:
                    msg = "Proposal with id %s is not associated with user" % query_params["proposalId"]
            else:
                query_params["proposalId"] = proposal_id_list

    if run_query:
        return db.get_db_items(
            models.Protein,
            schemas.protein.dict_schema,
            schemas.protein.ma_schema,
            query_params,
        )
    else:
        return create_response_item(msg=msg)
コード例 #2
0
ファイル: motion_correction.py プロジェクト: ispyb/py-ispyb
def get_motion_corrections(request):
    """
    Returns motion_correction based on query parameters.

    Args:
        query_params ([type]): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    #is_admin, proposal_id_list = proposal.get_proposal_ids_by_username(request)

    run_query = True
    #if is_admin:
    #    run_query = True
    msg = "Unable to run query"

    if run_query:
        return db.get_db_items(
            models.MotionCorrection,
            schemas.motion_correction.dict_schema,
            schemas.motion_correction.ma_schema,
            query_params,
        )
    else:
        return create_response_item(msg=msg)
コード例 #3
0
def get_lab_contacts(request):
    """Returns shipments by query parameters"""

    query_params = request.args.to_dict()

    return db.get_db_items(
        models.LabContact,
        schemas.lab_contact.dict_schema,
        schemas.lab_contact.ma_schema,
        query_params,
    )
コード例 #4
0
def get_persons(request):
    """Returns persons by query parameters"""

    query_params = request.args.to_dict()

    return db.get_db_items(
        models.Person,
        schemas.person.dict_schema,
        schemas.person.ma_schema,
        query_params,
    )
コード例 #5
0
def get_loaded_samples(request):
    """Returns loaded_samples by query parameters"""

    query_params = request.args.to_dict()

    return (
        db.get_db_items(
            models.LoadedSample,
            schemas.loaded_sample.dict_schema,
            schemas.loaded_sample.ma_schema,
            query_params,
        ),
        HTTPStatus.OK,
    )
コード例 #6
0
def get_crystals(request):
    """
    Returns crystal entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.Crystal,
        schemas.crystal.dict_schema,
        schemas.crystal.ma_schema,
        query_params,
    )
コード例 #7
0
def get_diffraction_plans(request):
    """
    Returns diffraction_plan entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.DiffractionPlan,
        schemas.diffraction_plan.dict_schema,
        schemas.diffraction_plan.ma_schema,
        query_params,
    )
コード例 #8
0
ファイル: sample.py プロジェクト: ispyb/py-ispyb
def get_samples(request):
    """
    Returns sample entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.BLSample,
        schemas.sample.dict_schema,
        schemas.sample.ma_schema,
        query_params,
    )
コード例 #9
0
ファイル: component.py プロジェクト: ispyb/py-ispyb
def get_component_types(request):
    """
    Returns component_type entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.ComponentType,
        schemas.component_type.dict_schema,
        schemas.component_type.ma_schema,
        query_params,
    )
コード例 #10
0
ファイル: proposal.py プロジェクト: ispyb/py-ispyb
def get_db_proposals(query_params={}):
    """Returns proposal db items

    Args:
        query_params (dict, optional): [description]. Defaults to {}.

    Returns:
        [type]: [description]
    """
    return db.get_db_items(
        models.Proposal,
        schemas.proposal.dict_schema,
        schemas.proposal.ma_schema,
        query_params,
    )
コード例 #11
0
ファイル: auto_proc.py プロジェクト: ispyb/py-ispyb
def get_auto_proc_program_messages(request):
    """
    Returns auto_proc_program_message entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.AutoProcProgramMessage,
        schemas.auto_proc_program_message.dict_schema,
        schemas.auto_proc_program_message.ma_schema,
        query_params,
    )
コード例 #12
0
ファイル: auto_proc.py プロジェクト: ispyb/py-ispyb
def get_auto_proc_status(request):
    """
    Returns auto_proc_status entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.AutoProcStatus,
        schemas.auto_proc_status.dict_schema,
        schemas.auto_proc_status.ma_schema,
        query_params,
    )
コード例 #13
0
ファイル: auto_proc.py プロジェクト: ispyb/py-ispyb
def get_auto_proc_program_attachments(request):
    """
    Returns auto_proc_program_attachment entries.

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.AutoProcProgramAttachment,
        schemas.auto_proc_program_attachment.dict_schema,
        schemas.auto_proc_program_attachment.ma_schema,
        query_params,
    )
コード例 #14
0
ファイル: dewar.py プロジェクト: ispyb/py-ispyb
def get_dewars(request):
    """
    Returns all dewars.

    Returns:
        dict: list with dewars]
    """

    query_params = request.args.to_dict()

    return db.get_db_items(
        models.Dewar,
        schemas.dewar.dict_schema,
        schemas.dewar.ma_schema,
        query_params,
    )
コード例 #15
0
ファイル: shipping.py プロジェクト: ispyb/py-ispyb
def get_shipments(request):
    """Returns shipments by query parameters"""

    query_params = request.args.to_dict()

    run_query, msg = proposal.get_proposal_ids_by_username(request)

    if run_query:
        return db.get_db_items(
            models.Shipping,
            schemas.shipping.dict_schema,
            schemas.shipping.ma_schema,
            query_params,
            )
    else:
        return create_response_item(msg=msg)
コード例 #16
0
def get_data_collections(request):
    """
    Returns data collection items based on query parameters.

    Args:
        query_params ([type]): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.DataCollection,
        schemas.data_collection.dict_schema,
        schemas.data_collection.ma_schema,
        query_params,
    )
コード例 #17
0
def get_robot_actions(request):
    """
    Returns robot_action items based on query parameters.

    Args:
        query_params (dict): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.RobotAction,
        schemas.robot_action.dict_schema,
        schemas.robot_action.ma_schema,
        query_params,
    )
コード例 #18
0
def get_beamline_setups(request):
    """
    Returns beamline_setup items based on query parameters.

    Args:
        query_params (dict): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.BeamLineSetup,
        schemas.beamline_setup.dict_schema,
        schemas.beamline_setup.ma_schema,
        query_params,
    )
コード例 #19
0
def get_beam_calendars(request):
    """
    Returns beam_calendar items based on query parameters.

    Args:
        query_params (dict): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.BeamCalendar,
        schemas.beam_calendar.dict_schema,
        schemas.beam_calendar.ma_schema,
        query_params,
    )
コード例 #20
0
def get_laboratories(request):
    """
    Returns laboratories based on query parameters.

    Args:
        query_params ([type]): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.Laboratory,
        schemas.laboratory.dict_schema,
        schemas.laboratory.ma_schema,
        query_params,
    )
コード例 #21
0
ファイル: detector.py プロジェクト: ispyb/py-ispyb
def get_detectors(request):
    """
    Returns detector items based on query parameters.

    Args:
        query_params (dict): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return db.get_db_items(
        models.Detector,
        schemas.detector.dict_schema,
        schemas.detector.ma_schema,
        query_params,
    )
コード例 #22
0
def get_sample_delivery_devices(request):
    """Returns all sample delivery devices.

    Args:
        query_params ([type]): [description]

    Returns:
        [type]: [description]
    """
    query_params = request.args.to_dict()

    return (
        db.get_db_items(
            models.SampleDeliveryDevice,
            schemas.sample_delivery_device.f_schema,
            schemas.sample_delivery_device.ma_schema,
            query_params,
        ),
        HTTPStatus.OK,
    )