Skip to main content

A Django app to communicate with Swedish Labportalen. Suitable with eRemiss <= 3.1.0

Project description

django-labportalen is a Django app to communicate with swedish Labportalen service. Suitable till eRemiss version 3.1.0.

Features

  • Configure several analyses for different health checks.

  • Create remiss for a patient against a health check type.

  • Fetch analyses reports from SFTP server.

Quick start

  1. Install django-labportalen like this:

    pip install django-labportalen
  2. Add “labportalen” to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = [
        ...
        'labportalen',
    ]
  3. Include the labportalen URLconf in your project urls.py like this:

    path('labportalen/', include('labportalen.urls')),
  4. Run python manage.py migrate to create the labportalen models.

  5. Put the following codebase in settings.py and configure the Logger’s constructor according to your setup:

    from logstack.loggers import Logger
    HTTP_LOGGER = Logger(scheme='http', url='54.93.245.55', port='24225', log_name='health-check')
  1. Configure LABPORTALEN_SETTINGS with required values in your project’s settings.py:

    LABPORTALEN_SETTINGS = {
    'base_dir': BASE_DIR,                        ## -> project's base directory: (required for all services)
    'sftp_host': env('SFTP_HOSTNAME'),           ## -> SFTP server where XML reports will be uploaded: (required to use SFTP service)
    'sftp_username': env('SFTP_USERNAME'),       ## -> SFTP server where XML reports will be uploaded: (required to use SFTP service)
    'sftp_password': env('SFTP_PASSWORD'),       ## -> SFTP server where XML reports will be uploaded: (required to use SFTP service)
    'sftp_file_prefix': env('SFTP_FILE_PREFIX'), ## -> SFTP server where XML reports will be uploaded: (required to use SFTP service)
    'production_env_name': 'PRODUCTION',         ## -> production server name: (required for all services)
    'current_env_name': 'DEV',                   ## -> current server name where this code base is going to be executed: (required for all services)
    'soap_service_wsdl_url': env('SERVICE_URL'), ## -> WSDL url where remiss creation request will be posted: (required to use remiss creation service)
    'customer_code': env('CUSTOMER_CODE'),       ## -> customer code provided by labportalen: (required to use remiss creation service)
    'requnitcode': env('REQUNITCODE'),           ## -> requnitcode provided by labportalen: (required to use remiss creation service)
    'company_name': env('COMPANY_NAME'),         ## -> company name provided by labportalen: (required to use remiss creation service)
    'contact_person': env('CONTACT_PERSON'),     ## -> contact person name provided by labportalen: (required to use remiss creation service)
    'user_guid': os.environ.get('USER_GUID',''), ## -> user guid provided by labportalen: (optional)
    'department_id': env('DEPARTMENTID'),        ## -> department id provided by labportalen: (required to use remiss creation service)
    'reservenumber_prefix': env('RESERVENUMBER_PREFIX'),               ## -> reservenumber prefix provided by labportalen: (optional)
    'case_model': 'case.Case',                                         ## -> case model against which remisses will be created: (required)
    'rid_mapping_models': ['case.CaseRid', 'patient_tests.BloodTest'], ## -> if you want to map rids against cases to trace which rid belongs to which case.
    }                                                                  ##    should be many to one relation: (optional)
    ## It is recommended to take the credentials from a .env file.
  2. Start the development server and visit http://127.0.0.1:8000/labportalen/api/ to see available labportalen end-points.

Contributing

If you face any issues with project, please create and submit an issue, detailing the problem and providing examples to reproduce the problem.

If you wish to contribute to the project via enhancements, please submit an issue outlining how your suggested changes improves the project and the scope of the change.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-labportalen-0.0.16.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_labportalen-0.0.16-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file django-labportalen-0.0.16.tar.gz.

File metadata

  • Download URL: django-labportalen-0.0.16.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for django-labportalen-0.0.16.tar.gz
Algorithm Hash digest
SHA256 2d76dc6aed2279f2ad26e757d4f95875e6dbef97ce6a02a8496cf76b2d35b100
MD5 0214eaee6ec6e1d0fe9a9e230140ffbd
BLAKE2b-256 8367713c88f5d93ba183f4ecf81266949c321ea82ee5f32e9577cfa1d3ead22d

See more details on using hashes here.

File details

Details for the file django_labportalen-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: django_labportalen-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for django_labportalen-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 e6386d863a055f56f4d4f30f381a5aecbeb7c3aa574f2070b2fa34f6cd31a00d
MD5 c07310fdf1c53cc7b7c1bc560b33de7d
BLAKE2b-256 746440cd3f08c1c4b1c37be1a0265c191e537fd75fc31b1ca21345fe03f1e07b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page