HWC Mobile App: Replace vanID with facilityID for facility-based HWC

XMLWordPrintable

    • Type: Task
    • Resolution: Unresolved
    • Priority: High
    • None
    • Affects Version/s: None
    • None

      Description:

      HWC is removing Van dependency. HWC users will be mapped to facilityID directly via Work Location Mapping. The HWC-API now uses facilityID instead of vanID for worklist, visit save, and login. The mobile app must update to match.


      Background:

      • HWC is a fixed facility, not a mobile van
      • Van/Zone/ParkingPlace no longer required for HWC
      • Admin maps users to facilityID in Work Location Mapping (m_UserServiceRoleMapping)
      • Old users: facilityID comes from m_van.FacilityID (Van still exists, backward compatible)
      • New users: facilityID comes from m_UserServiceRoleMapping (no Van at all)
      • Login API (getUserVanSpDetails) already returns facilityID in response for both old and new users

      Changes Required:

      1. Login — Read facilityID from response

      {{getUserVanSpDetails response:
      Old user: { userID: 1951, vanID: 295, facilityID: 278, providerServiceMapID: 1717 }
      New user: { userID: 2000, vanID: null, facilityID: 278, providerServiceMapID: 1717 }

      facilityID is ALWAYS present. User.kt already has facilityID field.
      Store facilityID in session/preference. Use for all subsequent API calls.}}
      2. Worklist URL — Replace last path parameter (9 endpoints)

      # Old URL New URL
      1 /getNurseWorklistNew/{psmid}/{serviceID}/{vanID} /getNurseWorklistNew/{psmid}/{serviceID}/{facilityID}
      2 /getNurseWorkListTcCurrentDate/{psmid}/{serviceID}/{vanID} /getNurseWorkListTcCurrentDate/{psmid}/{serviceID}/{facilityID}
      3 /getNurseWorkListTcFutureDate/{psmid}/{serviceID}/{vanID} /getNurseWorkListTcFutureDate/{psmid}/{serviceID}/{facilityID}
      4 /getDocWorklistNew/{psmid}/{serviceID}/{vanID} /getDocWorklistNew/{psmid}/{serviceID}/{facilityID}
      5 /getDocWorkListNewFutureScheduledForTM/{psmid}/{serviceID}/{vanID} /getDocWorkListNewFutureScheduledForTM/{psmid}/{serviceID}/{facilityID}
      6 /getLabWorklistNew/{psmid}/{serviceID}/{vanID} /getLabWorklistNew/{psmid}/{serviceID}/{facilityID}
      7 /getRadiologist-worklist-New/{psmid}/{serviceID}/{vanID} /getRadiologist-worklist-New/{psmid}/{serviceID}/{facilityID}
      8 /getOncologist-worklist-New/{psmid}/{serviceID}/{vanID} /getOncologist-worklist-New/{psmid}/{serviceID}/{facilityID}
      9 /getPharma-worklist-New/{psmid}/{serviceID}/{vanID} /getPharma-worklist-New/{psmid}/{serviceID}/{facilityID}

      3. Request Bodies — Replace vanID with facilityID in all POST requests

      All models that send vanID in request body → change to facilityID:

      {{// Old
      vanID = user?.vanId

      // New
      facilityID = user?.facilityID}}
      Files to update:

      • ExaminationDetails.kt
      • VisitDetails.kt
      • VitalDetails.kt
      • HistoryDetails.kt
      • PrescriptionUpsync.kt
      • DiagnosisUpsync.kt
      • ReferUpsync.kt
      • CBAC.kt
      • Procedure.kt
      • BenFlow.kt
      • Ben.kt
      • BenDetailsDownsync.kt
      • DoctorDataDownSync.kt
      • Prescription.kt

      4. Do NOT change (keep vanID)

      • SwyMed/Jitsi video call — TM feature, still uses vanID
      • Data sync — offline sync, still uses vanID
      • TC specialist patient app worklist — TM feature, still uses vanID

      Where facilityID and providerServiceMapID come from:

      {{Login → getUserVanSpDetails API
      Response: {
      "UserVanSpDetails": [

      { "userID": 1951, "vanID": null, ← may be null for new users "facilityID": 278, ← ALWAYS present "providerServiceMapID": 1717, ← ALWAYS present "vanSession": 3, "vanNoAndType": "MokrongTE" ← facility name for new users }

      ]
      }}}


      API Dependencies (must be deployed before mobile app):

      • HWC-API branch
      • Identity-API branch
      • DB migration: facilityID column on i_ben_flow_outreach

      Testing:

      •  Old user (has Van + facilityID) — login, all worklists, register, prescribe, dispense
      •  New user (no Van, only facilityID) — login, all worklists, register, prescribe, dispense
      •  Edit patient demographics — no error
      •  Search patient — details complete
      •  TC referral — TM specialist sees referred patient
      •  SwyMed/Jitsi video call — still works for old users
      •  Data sync — still works for old users
      •  Verify FLW mobile apps not affected

      Impact:

      • Zero impact on FLW-Mobile-App (separate app, separate API)
      • Zero impact on other services (MMU, TM, 104, 1097)
      • Old users with Van: backward compatible, facilityID from Van
      • New users without Van: facilityID from Work Location Mapping

              Assignee:
              Deepak Kumar
              Reporter:
              Vishwanath Balkur
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: