Optinomic / apps

Optinomic applications
1 stars 2 forks source link

Rollen überarbeiten? #172

Closed schoenenb closed 6 years ago

schoenenb commented 6 years ago

Mit der Reorganisation würde es ev. Sinn machen, die Rollen nochmals zu überarbeiten. Was bisher EAS und EP war, ist nun QuEA und PTS, aber zusätzlich zu den PsychologInnen (was in der Rolle mit-definiert ist) gibt es nun auch ÄrztInnen, welche die Fallführung übernehmen und entsprechend den HoNOS ausfüllen dürfen. Was brauchst du hierfür? Einfach die Vorlage von Rollen-Bezeichnung und welche Berechtigungen sie haben sollten? Aktuell haben ja glaube ich

ottigerb commented 6 years ago

Hinweis: Die Patientengruppen Zugriff: EAS & Zugriff: EP können ab sofort auf alle Patienten der QuEA und PTS zugreifen.

LEFT JOIN stay ON(p.id = stay.patient) 
LEFT JOIN (SELECT *, cast(value as json) AS json FROM annotations) AS ann ON ann.patient_id = p.id AND ann.module = 'com.optinomic.init.poly_stay' 

WHERE 
    (ann.json#>>'{aktuell_letzter,bel_selector,org_current}' = 'QuEA') 
OR  (ann.json#>>'{aktuell_letzter,bel_selector,org_current}' = 'PTS') 
AND (stay.stop is null OR stay.stop >= (now() - interval '15 day'))
AND stay.start <= now()

Zugriff: EAS & Zugriff: EP nicht umbenennen, da diese Informationen im südhang.config.json Verwendung finden.

schoenenb commented 6 years ago

Die Patientengruppen interessieren mich in dem Sinn im Moment nicht bzw. möchte ich gar nicht antasten.

Was ich gerne ändern würde sind die Rollen der User: https://github.com/ottigerb/therapy-server/blob/master/api/clinics/config-suedhang.json#L286

Die folgenden Rollen mit ihren bestehenden Zugriffsrechten würden dann eine neue Bezeichnung erhalten: "Psychologe/in EAS": {...}, --> "Fallführung QuEA": {...}, "Psychologe/in EP": {...}, --> "Fallführung PTS": {...}, "Psychologe/in TK": {...}, --> "Fallführung TK": {...},

Wegen der Berechtigungen hatte ich mir nur überlegt, ob die Fallverantwortlichen noch mehr Berechtigungen brauchen, ähnlich der aktuellen Rolle "Therapieleitung", aber das müsste ich noch abklären bzw. wird sich das wohl auch erst mit der Zeit herauskristallisieren.

ottigerb commented 6 years ago

Korrekt.

Grundsätzlich können wir die Rollen hier überschreiben. Also z.B. Fallführung QuEA anstatt Psychologe/in EAS.

    "Psychologe/in EAS": {
      "constructors": [],
      "patient_accesses": ["patients_eas", "patients_ep", "own_patients"]
    },
    "Psychologe/in EP": {
      "constructors": [],
      "patient_accesses": ["patients_eas", "patients_ep", "own_patients"]
    },
    "Psychologe/in TK": {
      "constructors": [],
      "patient_accesses": ["patients_tk", "own_patients"]
    },

Wenn wir dies angehen würde ich vorschlagen, dass wir gleich die patient_accesses Bezeichnungen ebenfalls anpassen oder erweitern.

{
    "identifier": "patients_eas",
    "in_patient_groups": ["Zugriff: EAS"]
  }, {
    "identifier": "patients_ep",
    "in_patient_groups": ["Zugriff: EP"]
  }, {
    "identifier": "patients_tk",
    "in_patient_groups": ["Zugriff: TK"]
  },{
    "identifier": "patients_quea",
    "in_patient_groups": ["Zugriff: QuEA"]
  },{...}

Was ich mich noch frage: Gibt es eine Rolle Fallverantwortung QuEA resp. Fallverantwortung xxx ? Klär dies doch allenfalls mit WS ab. Thankx!

Nach diesen Änderungen müssen wir wohl die User nochmals den entsprechenden Gruppen zuordnen. Entsprechend müssen wir dies wohl mal auf "wenn wir mal beide an einer Randzeit da sind" planen.

schoenenb commented 6 years ago

Meinst du, ob es eine Rolle in Optinomic geben sollte? Und ob die zusätzliche Zugriffe / Funktionen erhalten sollten? Komme leider nicht ganz nach, was ich mit WS abklären soll...

In der Organisationsstruktur gibt es diese Rollen - bei der FV QuEA sind es 2 Ärzte, die bereits einen Ärztezugang haben. Die FV PTS haben 3 PsychologInnen, die momentan einfach einen regulären EP-Therapeuten-Zugriff haben. Bin mir aber nicht sicher, ob die noch mehr können müssen, als sie bisher Zugriff dazu haben.

Ich bin heute wahrscheinlich etwas länger da, wenn dir das so schnell auch passt...

ottigerb commented 6 years ago

Genau: Soll in Optinomic Fallführung und Fallverantwortung unterschieden werden?

Ich würde beide Rollen pro Abteilung anlegen. Die FV jeweils mit dem Ärztezugriff und die FF mit der bestehenden Zugriff xxx Berechtigung. Or?

Wir können dies gerne heute erledigen. Muss um 17h die Kinder abholen.

schoenenb commented 6 years ago

WS meint auch, dass es keine Unterscheidung braucht, da die Fallverantwortlichen gleichzeitig auch Fallführende sind. Da sie auf alle anwesenden PatientInnen zugreifen können, braucht es keine zusätzliche Kategorie.

Also Fallführung QuEA, Fallführung PTS, Fallführung TK und die Ärzte so lassen wie es schon ist.

Dann könnten wir z.B. um 16.30 starten? Sobald du die Anpassung gemacht hast, kann ich die Zuteilung vornehmen - gib einfach Bescheid. (Oder wenn ich die Anpassung auch machen kann, kann ich auch alles nach 17 Uhr machen.)

ottigerb commented 6 years ago

OK!

Ich habe mal das config-suedhang.json wie folgt angepasst:

{
  "base_url": "http://optinomic.cust.local/api",
  "front_end_base_url": "http://optinomic.cust.local/client.new",
  "port": 8082,
  "database": {
    "hostname": "127.0.0.1",
    "username": "optinomics",
    "password": "xhqV3H3vbU",
    "name": "therapy-server_production",
    "port": 5432
  },
  "permissions": {
    "Admin": {
      "constructors": [],
      "patient_accesses": ["all_patients"]
    },
    "QM": {
      "constructors": [],
      "patient_accesses": ["all_patients"]
    },
    "Forschung": {
      "constructors": [],
      "patient_accesses": ["study_participants"]
    },
    "Fallführung QuEA": {
      "constructors": [],
      "patient_accesses": ["patients_quea", "patients_pts", "own_patients"]
    },
    "Fallführung PTS": {
      "constructors": [],
      "patient_accesses": ["patients_quea", "patients_pts", "own_patients"]
    },
    "Fallführung TK": {
      "constructors": [],
      "patient_accesses": ["patients_tk", "own_patients"]
    },
    "Therapieleitung": {
      "constructors": [],
      "patient_accesses": ["patients_quea", "patients_pts", "patients_tk", "own_patients"]
    },
    "Arzt/Ärztin": {
      "constructors": [],
      "patient_accesses": ["all_patients"]
    },
    "Ambulatorium": {
      "constructors": [],
      "patient_accesses": ["no_patients"]
    }
  },
  "front_end_directories": [
    "/var/therapyserver/client/build/dist",
    "/var/therapyserver/client/app",
    "/var/therapyserver/client/build"
  ],
  "assessment_directories": [
    "/var/therapyserver/assessment/build/dist",
    "/var/therapyserver/assessment/app",
    "/var/therapyserver/assessment/build"
  ],
  "apps_directory": "/var/therapyserver/apps",
  "timezone": "Europe/Zurich",
  "repositories": [
    "https://github.com/Optinomic/apps.git"
  ],
  "lime_survey_base_urls": {
    "default": {
      "url": "http://xwp4105.cust.local/index.php?r=",
      "username": "admin",
      "password": "go4optinomic"
    },
    "limesurvey_v2": {
      "url": "http://xwp4105.cust.local:8000/limesurvey_v2/index.php",
      "username": "admin",
      "password": "go4optinomic"
    },
    "demo": {
      "url": "http://limesurvey.optinomic.org",
      "username": "admin",
      "password": "23or5P6gSv3YjAcJCUe4"
    }
  },
  "ng_survey_base_urls": {
    "default": "http://survey.demo.optinomic.org/"
  },
  "pdfs_directory": "/var/therapyserver/pdfs",
  "run_sql_files_directory": "/var/therapyserver/run_sql_files",
  "extra": {
    "key": "0",
    "client_permissions": {
      "access_export_toolbox": {
        "Forschung": {
          "allowed": true
        },
        "QM": {
          "allowed": true
        }
      }
    },
    "data": {
      "firebaseRoot": "https://suedhang.firebaseio.com/",
      "customer": {
        "id": 0,
        "contact": {
          "name": "Klinik Südhang",
          "slogan": "Kompetenzzentrum für Mensch und Sucht",
          "address": "Südhang 1, CH-3038 Kirchlindach",
          "phone": "+41 (0)31 828 14 14",
          "email": "info@suedhang.ch",
          "logo": "http://suedhang.ch/images/content/Logo_Suedhang_Retina.png",
          "www": "http://suedhang.ch/de/"
        },
        "admin": {
          "name": "Nora Schoenenberger",
          "phone": "+41 (0)31 828 14 14",
          "email": "Nora.Schoenenberger@suedhang.ch"
        }
      },
      "talksRooms": [{
        "id": 0,
        "name": "GeneralInformation",
        "icon": "mdi-duck",
        "journal": {
          "integrate_in_timeline": true
        }
      }, {
        "id": 1,
        "name": "QuestionsAndAnswers",
        "icon": "mdi-help",
        "journal": {
          "integrate_in_timeline": false
        }
      }]
    }
  },
  "origin_email": "noreply@optinomic.com",
  "sysadmin_emails": [
    "thomas.feron@redspline.com",
    "ottigerb@gmail.com"
  ],
  "cis": {
    "directory": "/media/cis_files",
    "delimiter": "|",
    "patient_columns": [
      "cisPid",
      "gender",
      "title",
      "firstName",
      "lastName",
      "birthName",
      "birthdate",
      "address1",
      "address2",
      "city",
      "zipCode",
      "country",
      "photo",
      "language",
      "yearOfDeath",
      "email",
      "phoneHome",
      "phoneMobile",
      "ignore_cisPid",
      "ahv",
      "notes",
      "ïgnore_extra"
    ],
    "stay_columns": [
      "cisFid",
      "patient",
      "photo",
      "status",
      "firstContact",
      "start",
      "ïgnore_empty",
      "stop",
      "class",
      "serviceProvider",
      "insuranceProvider",
      "insuranceNumber",
      "ignore_cisFid",
      "leadTherapist",
      "leadDoctor",
      "notes",
      "ignore_extra"
    ],
    "user_columns": [
      "cisPid",
      "gender",
      "title",
      "firstName",
      "lastName",
      "birthName",
      "birthdate",
      "address1",
      "address2",
      "city",
      "zipCode",
      "country",
      "photo",
      "language",
      "deceased",
      "email",
      "phoneHome",
      "phoneMobile",
      "ahv",
      "ignore_cisPid",
      "notes",
      "ignore_extra"
    ]
  },
  "access_forms": [{
    "identifier": "Behandlungsauftrag",
    "description": "Informationen zu Ihrem Behandlungsauftrag",
    "type": "patient",
    "title": "Behandlungsauftrag | Zugriff",
    "header": "Behandlungsauftrag: Es ist Ihnen kein impliziter Behandlungsauftrag zugeordnet.",
    "fields": [{
      "type": "select",
      "identifier": "FormBA_Select_Reason",
      "label": "Begründung",
      "options": [{
          "value": "1",
          "text": "Zur Fertigstellung von Berichten"
        },
        {
          "value": "2",
          "text": "Notfallsituation"
        },
        {
          "value": "3",
          "text": "Zur Vorbereitung | Geplanter Eintritt"
        },
        {
          "value": "4",
          "text": "Assessment"
        }
      ]
    }, {
      "type": "textarea",
      "identifier": "FormBA_Textarea_Remarks",
      "label": "Bemerkungen"
    }],
    "footer": "Begründen Sie, warum Sie auf den oben genannten Patienten zugreifen möchten. Danke.",
    "validity": 86400
  }],
  "patient_accesses": [{
    "identifier": "all_patients",
    "is_male": {
      "type": "all"
    },
    "city": {
      "type": "all"
    },
    "zip_code": {
      "type": "all"
    },
    "age": {
      "type": "all"
    },
    "in_stay": {
      "type": "all"
    },
    "stay_start": {
      "type": "all"
    },
    "stay_stop": {
      "type": "all"
    }
  }, {
    "identifier": "patients_quea",
    "in_patient_groups": ["Zugriff: QuEA"]
  }, {
    "identifier": "patients_pts",
    "in_patient_groups": ["Zugriff: PTS"]
  }, {
    "identifier": "patients_tk",
    "in_patient_groups": ["Zugriff: TK"]
  }, {
    "identifier": "own_patients",
    "in_stay": {
      "type": "all"
    },
    "user_is_lead_therapist_or_deputy": true
  }, {
    "identifier": "study_participants",
    "in_stay": {
      "type": "all"
    },
    "in_patient_groups": ["INTRA-Studie"]
  }, {
    "identifier": "no_patients",
    "age": {
      "type": "and",
      "left": {
        "type": "gt",
        "value": 9998
      },
      "right": {
        "type": "lt",
        "value": 9999
      }
    }
  }],
  "clinic": {
    "clinic_name": "Klinik Südhang",
    "clinic_slogan": "Kompetenzzentrum für Mensch und Sucht",
    "clinic_address": "Südhang 1, CH-3038 Kirchlindach",
    "clinic_phone": "+41 (0)31 828 14 14",
    "clinic_email": "info@suedhang.ch",
    "clinic_logo": "http://suedhang.ch/images/content/Logo_Suedhang_Retina.png",
    "clinic_www": "http://suedhang.ch/de/",
    "admin_name": "Nora Schoenenberger",
    "admin_phone": "+41 (0)31 828 14 14",
    "admin_email": "Nora.Schoenenberger@suedhang.ch"
  },
  "data_sources": [{
    "identifier": "Polypoint",
    "driver": "odbc",
    "dsn": "POLY",
    "username": "ODBC",
    "password": "odbc"
  }],
  "package_name": "therapyserversuedhang",
  "view_directory": "/var/therapyserver/views",
  "unassigned_patients_user_email": "QM-Assi@suedhang.ch"
}

Die Fallgruppen Zugriff: QuEA und Zugriff: PTS sind bereits angelegt.

Ich schlage vor, dass wir bereits um 15h starten. M.E. sollte es für allfällig angemeldeten User NICHT zu gröberem Chaos führen. What do you think?

schoenenb commented 6 years ago

Du meinst hoffentlich, es sollte NICHT zu gröberem Chaos führen?! Brauchen wir denn so viel Zeit dafür, dass wir bereits um 3 starten sollten? Muss man irgendwas abwarten, bis es tut? Oder kannst du nur das config-File aktualisieren und die neuen Rollen-Kategorien werden aufgeführt? Dann könnte ich mir z.B. einfach die Therapeuten rausschreiben, die heute da sind, und bei denen gleich sofort die Rolle neu einstellen.

ottigerb commented 6 years ago

Genau: Nicht! :-D

Ja, config-File aktualisieren, dann muss ein "new Stable" erstellt werden - dieses auf Südhang pushen etc. etc. => Somit wäre ich schon froh, wenn wir beginnen können. Falls was schief läuft können wir noch reagieren.

schoenenb commented 6 years ago

das passt :+1: bzw. würde ich um 15.15 dazustossen, damit ich mir noch ein Kaffee holen kann in der Pause, ok?

ottigerb commented 6 years ago

Waiting until: https://github.com/ottigerb/therapy-server/issues/495

schoenenb commented 6 years ago

Soweit ich sehen konnte, wurden die Rollenbezeichnungen angepasst und entweder automatisch überschrieben oder von dir bereits angepasst?

ottigerb commented 6 years ago

Von mir angepasst! :-) Bitte nochmals prüfen - Danke! :-)

Am 29.03.2018 um 13:55 schrieb schoenenb notifications@github.com:

Soweit ich sehen konnte, wurden die Rollenbezeichnungen angepasst und entweder automatisch überschrieben oder von dir bereits angepasst?

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/Optinomic/apps/issues/172#issuecomment-377211837, or mute the thread https://github.com/notifications/unsubscribe-auth/ACWz2Sbk2irBvWAMqbFJNWB37S7rIewFks5tjMu7gaJpZM4SgRBf.

schoenenb commented 6 years ago

i.O. habe nur noch drei Fallverantwortliche so eingetragen :+1: