Metadata-Version: 1.1
Name: carepoint
Version: 0.1.8b655
Summary: This library will allow you to interact with a remote CarePoint instance using Python.
Home-page: https://laslabs.github.io/carepoint
Author: LasLabs Inc.
Author-email: support@laslabs.com
License: MIT
Download-URL: https://github.com/LasLabs/carepoint
Description: | |Build Status| | |Coveralls Status| | |Codecov Status| | |Code Climate|
        
        Python CarePoint Library
        ========================
        
        This library will allow you to interact with CarePoint using Python.
        
        | For the most part, it just provides some convenience wrappers to
          encapsulate
        | all of the tables within one object/session for easy use.
        
        Most of the methods return SQLAlchemy ResultProxies.
        
        Installation
        ------------
        
        To install this module, you need to:
        
        -  Utilize a system able to access all CarePoint network resources
           (database, SMB)
        -  This includes things like DNS entries for the NETBIOS names
        -  Setup UnixODBC - http://help.interfaceware.com/kb/904
        -  Install UnixODBC development headers -
           ``apt-get install unixodbc-dev``
        -  Install dependencies - ``pip install -r requirements.txt``
        -  Install library - ``pip install .``
        
        Setup
        -----
        
        -  Create an Active Directory user
        -  Give AD user permissions to CarePoint images and data net shares
        -  Give AD user read & write permissions on the following databases:
        -  cph
        -  grx\_master
        
        Usage
        -----
        
        * `API Documentation <https://laslabs.github.io/python-carepoint>`_
        
        Connect to Database server
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            from carepoint import Carepoint
        
            cp = Carepoint(
                server='127.0.0.1',
                user='test_db_user',
                passwd='db_pass',
            )
        
        Perform a search for a patient with the last name Smith
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            res = cp.search(
                cp['Patient'],
                {'lname': 'Smith'},
            )
            for row in res:
                print row.fname
        
        Perform a search for a patient with the last name Smith or Jones
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            res = cp.search(
                cp['Patient'],
                {'lname': ['Smith', 'Jones']},
            )
            for row in res:
                print row.fname
        
        Perform a patient search, but only return the ``mname`` column
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            res = cp.search(
                cp['Patient'],
                {'lname': 'Smith'},
                ['mname'],
            )
            for row in res:
                print row.mname
        
        Get patients modified in 2015
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            res = cp.search(
                cp['Patient'],
                {
                    'chg_date': {
                        '<=': '2015-12-31',
                        '>=': '2015-01-01',
                    }
                },
            )
            for row in res:
                print row.fname
        
        Get image using SMB path from database
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
            cp = Carepoint(**opts)
            img_rec = cp.search(cp['FdbImg']).first()
            image_file = cp.get_file(img_rec.IMAGE_PATH)
            image_data = image_file.read()
        
        Known Issues / Road Map
        -----------------------
        
        -  More usage samples
        -  A decent amount of models are missing
        -  Create documentation of models
        -  Add some basic validations
        -  Create a column type that will retrieve file from SMB path in DB
        -  Better SMB support (allow ftimes, dir list, caching)
        -  FDB images only serve from store ID 1’s net share
        -  Having to pass the model to the Carepoint object is annoying, object
        
        .. |Build Status| image:: https://api.travis-ci.org/LasLabs/python-carepoint.svg?branch=release%2F0.1
           :target: https://travis-ci.org/LasLabs/python-carepoint
        .. |Coveralls Status| image:: https://coveralls.io/repos/laslabs/Python-Carepoint/badge.svg?branch=release%2F0.1
           :target: https://coveralls.io/r/laslabs/Python-Carepoint?branch=release%2F0.1
        .. |Codecov Status| image:: https://codecov.io/gh/laslabs/Python-Carepoint/branch/release%2F0.1/graph/badge.svg
           :target: https://codecov.io/gh/laslabs/Python-Carepoint
        .. |Code Climate| image:: https://codeclimate.com/github/laslabs/Python-Carepoint/badges/gpa.svg
           :target: https://codeclimate.com/github/laslabs/Python-Carepoint
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Healthcare Industry
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
