# Jubo API ## Read vitalsign list 列出機構內住民指定區間內的所有生命徵象紀錄。 ### Request GET /api/vitalLink/vitalsignList #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | patientId | string | 查詢指定 patient ID | | \*startTime | string | 查詢起始時間(YYYY-MM-DD) | | \*endTime | string | 查詢結束時間(YYYY-MM-DD),查詢區間最多 30 天 | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[VitalSign]` (參考 [VitalSign Schema](#VitalSign-Schema)) ### Response Example ```json= [ { "_id": "5f8644d4eabe0100285f18e1", "TP": 36.5, "PR": 70, "RR": 16, "SYS": 130, "DIA": 80, "SPO2": 100, "PAIN": 2, "mood": "calm", "patient": "5f6da4425b5c71002766e9f0", "organization": "5f6da126926446033e5f50a0", "user": [ "5f6da2f7926446033e5f50a2" ], "createdDate": "2020-10-14T00:22:42.823Z" } ] ``` ------------------------------------------------ ## Read latest vitalsign 列出機構內所有住民最新一筆生命徵象紀錄。 ### Request GET /api/vitalLink/vitalsign #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | patientId | string | 查詢指定 patient ID | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[VitalSign]` (參考 [VitalSign Schema](#VitalSign-Schema)) (Webhook 範例可參考 [VitalSign Webhook Example](#VitalSign-Webhook-Example)) ### Response Example ```json= [ { "_id": "5f8644d4eabe0100285f18e1", "TP": 36.5, "PR": 70, "RR": 16, "SYS": 130, "DIA": 80, "SPO2": 100, "PAIN": 2, "mood": "calm", "patient": "5f6da4425b5c71002766e9f0", "organization": "5f6da126926446033e5f50a0", "user": [ "5f6da2f7926446033e5f50a2" ], "createdDate": "2020-10-14T00:22:42.823Z" } ] ``` ------------------------------------------------ ## Create vitalsign list 新增生命徵象紀錄。 ### Request POST /api/vitalLink/vitalsign #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*vitalsigns | array | 生命徵象紀錄(參考 [Vitalsign Schema](#Vitalsign-Schema)) | | \*userId | string | 操作者 id | ### Response `[Vitalsign]` (參考最下方 [Vitalsign Schema](#Vitalsign-Schema)) ### Request Example ```json= { "vitalsigns": [{ "patient" : "5f1fd8df0dac9d003b2dc327", "DIA" : 78, "mood" : "happy", "O2THERAPY" : -1, "PAIN" : 0, "PR" : 90, "RR" : 16, "SPO2" : 99, "SYS" : 137, "TP" : 33.2 }, { "patient" : "5f34cb2d1a5ca30027ab2234", "DIA" : -1, "mood" : "happy", "O2THERAPY" : -1, "PAIN" : 0, "PR" : -1, "RR" : -1, "SPO2" : -1, "SYS" : -1, "TP" : 36.9 }], "userId": "5f1e6a8ec16426064e7ea1f2" } ``` ### Response Example ```json= [ { "_id": "5fd036a6a4f2c0240d76aa86", "patient": "5f1fd8df0dac9d003b2dc327", "DIA": 78, "mood": "happy", "O2THERAPY": -1, "PAIN": 0, "PR": 90, "RR": 16, "SPO2": 99, "SYS": 137, "TP": 33.2, "organization": "5f07ec8c412ac20b5b73360f", "user": "5f1e6a8ec16426064e7ea1f2", "createdDate": "2020-12-09T02:29:58.494Z", "__v": 0 }, { "_id": "5fd036a6a4f2c0240d76aa87", "patient": "5f34cb2d1a5ca30027ab2234", "DIA": -1, "mood": "happy", "O2THERAPY": -1, "PAIN": 0, "PR": -1, "RR": -1, "SPO2": -1, "SYS": -1, "TP": 36.9, "organization": "5f07ec8c412ac20b5b73360f", "user": "5f1e6a8ec16426064e7ea1f2", "createdDate": "2020-12-09T02:29:58.496Z", "__v": 0 } ] ``` ------------------------------------------------ ## Update vitalsign list 更新生命徵象紀錄。 ### Request PUT /api/vitalLink/vitalsign #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*vitalsigns | array | 生命徵象紀錄(參考 [Vitalsign Schema](#Vitalsign-Schema)) | | \*userId | string | 操作者 id | ### Response `[Vitalsign]` (參考最下方 [Vitalsign Schema](#Vitalsign-Schema)) ### Request Example ```json= { "vitalsigns": [{ "_id": "5fd036a6a4f2c0240d76aa87", "PR" : 93 }, { "_id" : "5fd036a6a4f2c0240d76aa86", "TP" : 35.8, "SPO2" : 98 }], "userId": "5f1e6a8ec16426064e7ea1f2" } ``` ### Response Example ```json= [ { "_id" : "5fd036a6a4f2c0240d76aa87", "PR" : 93 }, { "_id" : "5fd036a6a4f2c0240d76aa86", "TP" : 35.8, "SPO2" : 98 } ] ``` ------------------------------------------------ ## Delete vitalsign list 刪除生命徵象紀錄。 ### Request DELETE /api/vitalLink/vitalsign #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*vitalsigns | array | 生命徵象紀錄(參考 [Vitalsign Schema](#Vitalsign-Schema)) | | \*userId | string | 操作者 id | ### Response `[Vitalsign]` (參考最下方 [Vitalsign Schema](#Vitalsign-Schema)) ### Request Example ```json= { "vitalsigns": [{ "_id": "5fd036a6a4f2c0240d76aa87" }, { "_id" : "5fd036a6a4f2c0240d76aa86" }], "userId": "5f1e6a8ec16426064e7ea1f2" } ``` ### Response Example ```json= [ { "_id": "5fd036a6a4f2c0240d76aa87" }, { "_id": "5fd036a6a4f2c0240d76aa86" } ] ``` ------------------------------------------------ ## Read treatmentRecord list 列出住民指定區間內的就診紀錄。 ### Request GET /api/vitalLink/treatmentRecord #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | patientId | string | 查詢指定 patient ID(預設全機構) | | \*startTime | string | 查詢起始時間(YYYY-MM-DD) | | \*endTime | string | 查詢結束時間(YYYY-MM-DD),查詢區間最多 90 天 | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[TreatmentRecord]` (參考 [TreatmentRecord Schema](#TreatmentRecord-Schema)) ### Response Example ```json= [ { "_id": "610756b0492b9e0027d52674", "patientSelected": [ "5d886cb3484772002e4fefce" ], "deleted": false, "task": "1-109A 陳大明 金門縣-衛生福利部金門醫院 腎臟科", "startTime": "2021-09-04T00:30:00.000Z", "endTime": "2021-09-04T04:00:00.000Z", "category": "treatmentRecord", "subCategory": "取藥", "treatmentRecord": { "_id": "610756af492b9e0027d52672", "pickUpMethod": [ "facility" ], "Protective": [ "Masks" ], "status": "open", "patient": "5d886cb3484772002e4fefce", "visitDate": "2021-09-04T02:20:00.000Z", "visitTime": "morning", "hospital": "金門縣-衛生福利部金門醫院", "department": "腎臟科", "situation": "rgewrga", "accompany": "兒子", "type": "取藥", "organization": "5c10bdf47b43650f407de7d6", "user": "5c134df8d900d7002153d3b3", "createdDate": "2021-08-02T02:21:35.992Z", "updatedDate": "2021-08-02T02:21:35.992Z", "treatmentRecordTrackings": [ { "_id": "61711797a2a71500261e9252", "hospitalized": [], "recordDate": "2021-10-21T07:32:18.132Z", "method": "Visit", "trackingType": "contactFamily", "contactObject": "家屬親人", "note": "測試內容", "formMode": "tracking", "patient": "5d886cb3484772002e4fefce", "treatmentRecord": "610756af492b9e0027d52672", "organization": "5c10bdf47b43650f407de7d6", "user": "5c134df8d900d7002153d3b3", "createdDate": "2021-10-21T07:32:39.249Z", "updatedDate": "2021-10-21T07:32:39.249Z", } ] }, "user": "5c134df8d900d7002153d3b3", "organization": "5c10bdf47b43650f407de7d6", "createdDate": "2021-08-02T02:21:36.001Z", "updatedDate": "2021-08-02T02:21:36.001Z", } ] ``` ------------------------------------------------ ## Read transfermanage list 列出住民指定區間內的異動紀錄。 ### Request GET /api/vitalLink/transfermanage #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | patientId | string | 查詢指定 patient ID(預設全機構) | | \*startTime | string | 查詢起始時間(YYYY-MM-DD) | | \*endTime | string | 查詢結束時間(YYYY-MM-DD),查詢區間最多 90 天 | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[Transfermanage]` (參考 [Transfermanage Schema](#Transfermanage-Schema)) ### Response Example ```json= [ { "_id": "613ffd0681b0e400274e9048", "status": "unplannedHosp", "patient": "5ed4afcdbb8d2417c5c1db94", "user": "5c134df8d900d7002153d3b3", "organization": "5c10bdf47b43650f407de7d6", "room": "101", "bed": "A", "branch": "1", "reason": "fracture", "bedHold": "yes", "cause": "improperCare", "type": "uncontrollable", "afterwards": "observation", "createdDate": "2021-09-14T01:36:51.721Z", } ] ``` ------------------------------------------------ ## Read user 取得指定使用者資料。 ### Request GET /api/vitalLink/users/{userId} #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*userId | string | 使用者 id | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `User` (參考最下方 [User Schema](#User-Schema)) ### Response Example ```json= { "_id": "5f6da2f7926446033e5f50a2", "firstName": "理員", "lastName": "管", "roles": [ "organization-manager", "system-admin" ], "staffStatus": "employed", "displayName": "管理員", "organization": "5f6da126926446033e5f50a0" } ``` ------------------------------------------------ ## Read user list 列出機構內所有使用者資料。 ### Request GET /api/vitalLink/users #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[User]` (參考最下方 [User Schema](#User-Schema)) ### Response Example ```json= [ { "_id": "5f6da2f7926446033e5f50a2", "firstName": "理員", "lastName": "管", "roles": [ "organization-manager", "system-admin" ], "staffStatus": "employed", "displayName": "管理員", "organization": "5f6da126926446033e5f50a0" }, { "_id": "5f6f08d0b344970027cd54f9", "firstName": "Test", "lastName": "測試", "roles": [ "care-giver" ], "staffStatus": "employed", "displayName": "測試Test", "organization": "5f6da126926446033e5f50a0" } ] ``` ------------------------------------------------ ## Create user 新增使用者。 ### Request POST /api/vitalLink/users #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*employeeNumber | string | 人員編號 | | \*lastName | string | 人員姓氏 | | \*firstName | string | 人員名字 | | \*username | string | 人員帳號 | | \*password | string | 人員密碼 | | \*staffStatus | string | 在職狀態(employed/resigned) | | 其他 | | (參考 [User Schema](#User-Schema)) | | \*userId | string | 操作者 id | ### Response `[User]` (參考最下方 [User Schema](#User-Schema)) ------------------------------------------------ ## Update user 更新使用者資料。 ### Request PUT /api/vitalLink/users/{userId} #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*userId | string | 人員 id | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | 其他 | | (參考 [User Schema](#User-Schema)) | | \*userId | string | 操作者 id | ### Response `[User]` (參考最下方 [User Schema](#User-Schema)) ------------------------------------------------ ## Read patient 取得指定住民資料。 ### Request GET /api/vitalLink/patient/{patientId} #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*patientId | string | 住民 id | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `Patient` (參考最下方 [Patient Schema](#Patient-Schema)) ------------------------------------------------ ## Read patient list 列出機構內所有住民資料。 ### Request GET /api/vitalLink/patient #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response `[Patient]` (參考最下方 [Patient Schema](#Patient-Schema)) ### Response Example ```json= [ { "_id": "5f6da4425b5c71002766e9f0", "sex": "male", "lastName": "王", "firstName": "小明", "branch": "1", "room": "101", "bed": "A", "idNumber": "F128751604", "status": "present", "checkInDate": "2020-09-25T08:02:16.312Z", "createdDate": "2020-09-25T08:03:14.457Z", "organization": "5f6da126926446033e5f50a0" }, { "_id": "5f729e570e70da0028a4d855", "sex": "male", "lastName": "測", "firstName": "試個案", "branch": "1", "room": "101", "bed": "AE", "idNumber": "F128751640", "status": "present", "checkInDate": "2020-09-29T02:39:19.587Z", "createdDate": "2020-09-29T02:39:19.587Z", "organization": "5f6da126926446033e5f50a0" } ] ``` ------------------------------------------------ ## Create patient 新建住民資料。 ### Request POST /api/vitalLink/patient #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*lastName | string | 姓氏 | | \*firstName | string | 名字 | | \*branch | string | 院區 | | \*room | string | 房號 | | \*bed | string | 床號 | | \*idNumber | string | 身分證字號 | | \*sex | string | 性別 | | \*status | string | 住民狀態("present") | | 其他 | | (參考 [Patient Schema](#Patient-Schema)) | | \*userId | string | 操作者 id | ### Response `Patient` (參考最下方 [Patient Schema](#Patient-Schema)) ### Response Example ```json= { "_id": "5f6da4425b5c71002766e9f0", "sex": "male", "lastName": "王", "firstName": "小明", "branch": "1", "room": "101", "bed": "A", "idNumber": "F128751604", "status": "present", "checkInDate": "2020-09-25T08:02:16.312Z", "createdDate": "2020-09-25T08:03:14.457Z", "organization": "5f6da126926446033e5f50a0" } ``` ------------------------------------------------ ## Update patient 更新指定住民資料。 ### Request PUT /api/vitalLink/patient/{patientId} #### Query parameter(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*patientId | string | 住民 id | #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | 其他 | | (參考 [Patient Schema](#Patient-Schema)) | | \*userId | string | 操作者 id | ### Response `Patient` (參考最下方 [Patient Schema](#Patient-Schema)) ------------------------------------------------ ## Read organization branch 取得機構的分區列表。 ### Request GET /api/vitalLink/organization/branch #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | ### Response Example ```json= [ "0001", "0002", "0003", "0004", "0005" ] ``` ------------------------------------------------ ## Update organization branch 更新機構的分區列表。 ### Request PUT /api/vitalLink/organization/branch #### Header(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*apikey | string | APIKEY | #### Body(\*必填欄位) | 欄位 | 格式 | 說明 | | - | - | - | | \*branch | [string] | 新的分區列表 | ### Request Example ```json= { "branch": ["0001", "0002", "0003", "0004", "0005", "0006"] } ``` ------------------------------------------------ ## VitalSign Schema ```jsonld { organization: String, // 機構的 id patient: String, // 住民的 id user: String, // 操作者的 id TP: Number, // 體溫 PR: Number, // 脈搏 RR: Number, // 呼吸 SYS: Number, // 收縮壓 DIA: Number, // 舒張壓 SPO2: Number, // 血氧 PAIN: Number, // 疼痛 mood: String, // 心情 PAINRECORD: String, O2THERAPY: Number, uuid: String, reviewer: Object, vitalSignTrack: Object, deviceMac: String, deviceTime: Date, trackStatus: String, createdDate: Date, status: { sys: Number, dia: Number, pain: Number, pr: Number, rr: Number, spo2: Number, therapy: Number, tp: Number } } ``` ## VitalSign Webhook Example ```jsonld { type: 'vitalsign', data: [{ _id: 5f6b0c2c7158ef5552602055, createdDate: 2020-09-23T08:49:43.394Z, TP: 39.5, DIA: 80, PAIN: 5, PR: 84, RR: 18, SPO2: 99, SYS: 155, patient: 5ea0fce6e8fd14483aa55b3f, user: 5df705e3bf147d0217201a14, organization: 5df7030ebf147d0217201a13 }] } ``` ## Treatment Record Schema ```jsonld { organization: String, // 機構的 id patientSelected: [String], // 住民們的 id user: String, // 操作者的 id task: String, startTime: Date, endTime: Date, category: String, subCategory: String, // 就診類型 (使用者自定義) customCategory: String, note: String, freq: { // 重複頻率 type: { interval: Number, unit: String, hours: [Number], weekdays: [String], days: [Number], months: [Number], endType: String, tail: Date, date: Date, times: Number, }, }, deleted: Boolean, treatmentRecord: { organization: String, // 機構的 id patient: String, // 住民的 id user: String, // 操作者的 id visitDate: Date, // 就診日期 visitTime: String, // 就診時段 Enum:['morning'(上午), 'afternoon'(下午), 'night'(夜間)] hospital: String, // 就診院所 department: String, // 就診科別 doctor: String, // 就診醫師 consultationNumber: String, // 就診診號 situation: String, // 住民現況 reason: String, // 就診原因 pickUpMethod: [String], // 接送方式 Enum:['facility'(機構接送), 'family'(家屬接送)] Protective: [String], // 防護措施 Enum:['Masks'(口罩), 'gloves'(手套), 'gowns'(隔離衣), 使用者自定義] accompany: String, // 陪診者 note: String, // 備註 status: String, // 是否結案 Enum:['yes', 'no'] closeDate: Date, // 結案日期 treatmentRecordTrackings: [{ organization: String, // 機構的 id patient: String, // 住民的 id user: String, // 操作者的 id recordDate: Date, // 紀錄日期 formMode: String, // 追蹤 or 結案 note: String, // 追蹤(tracking)才會有的欄位 trackingType: String, // 追蹤類型 method: String, // 追蹤方式 Enum:['Visit'(探訪), 'Televise'(電話訪問), 'Message'(訊息), 'Email'(email), 使用者自定義] contactObject: String, // 聯繫對象 // 結案(result)才會有的欄位 hospitalized: [String], // 後續追蹤方式 Enum:['nextVisit'(回診), 'hospTransfer'(一般住院), 'unplannedHosp'(非計畫住院), 使用者自定義] reason_hospTransfer: String, // 一般住院原因 Enum:['outpatient'(門診治療), 'inpatient'(住院治療), 'examination'(醫療檢查), 使用者自定義] reason_unplannedHosp: String, // 非計畫住院原因 Enum:['fracture'(骨折治療或評估), 'infection'(感染), 'giBleeding'(腸胃道出血), 'decompensation'(心血管機能減退), 'innerOrSurgical'(其他內外科因素)] Handling: String, // 處理與說明 diagnosis: String, // 診斷 visitDate: Date, // 下次回診日期 visitTime: String, // 下次回診時段 Enum:['morning'(上午), 'afternoon'(下午), 'night'(夜間)] nextSchedule: String, // 下次回診的 id hospital: String, // 下次回診院所 department: String, // 下次回診科別 doctor: String, // 下次回診醫師 consultationNumber: String, // 下次回診診號 }] }, } ``` ## Transfermanage Schema ```jsonld { organization: String, // 機構的 id patient: String, // 住民的 id user: String, // 操作者的 id status: String, // 異動後狀態 Enum 如下 // newcomer: '新入住' // hospTransfer: '一般住院' // unplannedHosp: '非計畫住院' // return: '返院' // bedTransfer: '換床' // reservation: '預約入住' // present: '在院' // absent: '請假' // pause: '暫停服務' // discharge: '退住' // unpresented: '預約取消' // askAwait: '諮詢候補' // signAwait: '登記候補' // cancelAwait: '取消候補' // startSoon: '即將服務' // continue: '繼續服務' // branchTransfer: '換區域/組別' // startServer: '開始服務' // closed: '結案' // closedTracking: '結案追蹤' reason: String, // 住院原因 Enum 如下 // 請假(absent)時的 reason // Out: '外出' // goHome: '家人帶回' // 使用者自定義 // 一般住院(hospTransfer)時的 reason // outpatient: '門診治療' // inpatient: '住院治療' // examination: '醫療檢查' // 使用者自定義 // 非計畫住院(unplannedHosp)時的 reason // fracture: '骨折治療或評估' // infection: '感染' // giBleeding: '腸胃道出血' // decompensation: '心血管機能減退' // innerOrSurgical: '其他內外科因素' hospital: String, // 住院院所 hospitalRoom: String, // 住院房號 hospitalBed: String, // 住院床號 doctor: String, // 主治醫師 in72hours: String, // 是否入住 72 小時內 Enum:['yes', 'no'] cause: String, // 導因分析 Enum:['diseaseProgression'(本身疾病變化), 'unstableCondition'(入住時病情不穩), 'improperCare'(照護不當), 使用者自定義] type: String, // 類別分析 Enum:['controllable'(可控), 'uncontrollable'(不可控)] afterwards: String, // 後續動態 Enum:['observation'(留觀), 'treatment'(住院治療中), 'death'(死亡), 使用者自定義] bedHold: String, // 是否保留床位 Enum:['yes', 'no'] note: String, // 說明 oldBranch: String, // 舊區域/組別 oldRoom: String, // 舊房號 oldBed: String, // 舊床號 branch: String, // 新區域/組別 room: String, // 新房號 bed: String, // 新床號 checkInDate: Date, // 入住日期 firstServerDate: Date, // 首次服務時間 createdDate: Date, // 紀錄時間 } ``` ## User Schema ```jsonld { _id: String, // 操作者的 id lastName: String, // 姓氏 firstName: String, // 名字 displayName: String, // 姓氏+名字 staffContPhone: String, birthday: Date, sex: String, jobTitle: String, Address: String, employDate: Date, employeeNumber: String, staffRank: String, username: String, password: String, salt: String, staffStatus: String, photoUrl: String, provider: String, providerData: Object, additionalProvidersData: Object, roles: [String], updated: Date, organization: Object, created: Date, preference: Object, resetPasswordToken: String, resetPasswordExpires: Date, lineStatus: Boolean, lineId: String, lineVerificationCode: Number, lineVerificationExpires: Date, notificationLastOpenedDate: Date, employType: String, resignDate: Date, idNumber: String, education: String, sfaaAccount: String } ``` ## Patient Schema ```jsonld { _id: String,// 住民 ID organization: String, // 機構 ID photoUrl: String, // 大頭照網址 sex: String, // 性別 lastName: String, // 姓氏 firstName: String, // 名字 branch: String, // 分區 room: String, // 房號 bed: String, // 床號 idNumber: String, // 身分證字號 status: String, // 狀態("present" 表示在院) checkInDate: Date, // 住民實際入住日期 createdDate: Date, // 住民資料建立日期 birthday: Date, // 生日 patientNumber: String, // 住民編號 recordNumber: String, // 病歷號 serviceType: String, // 服務類型 patientNote: String, // 特殊備註 blood: String, // 血型 height: Number, // 身高(cm) weight: Number, // 體重(kg) registeredAddressFull: String, // 戶籍地址 nativeLanguage: [String], // 主要語言 religion: [String], // 宗教信仰 education: String, // 教育程度 marriage: String, // 婚姻狀況 habits: [String], // 習慣嗜好 medications: [String], // 個人病史 drugAllergies: [String], // 過敏藥物 foodAllergies: [String], // 過敏食物 surgeries: String, // 個人手術史 familyHealthProblems: [String], // 家族病史 hospital: String, // 指定醫院 1 hospitalPhone: String, // 醫院電話 1 doctor: String, // 主治醫生 1 doctorDivision: String, // 醫生科別 1 hospital1: String, // 指定醫院 2 hospitalPhone1: String, // 醫院電話 2 doctor1: String, // 主治醫生 2 doctorDivision1: String, // 醫生科別 2 hospital2: String, // 指定醫院 3 hospitalPhone2: String, // 醫院電話 3 doctor2: String, // 主治醫生 3 doctorDivision2: String, // 醫生科別 3 emgcyCont: String, // 緊急聯絡人 emgcyContRelation: String, // 緊急聯絡人關係 emgcyContPhone: String, // 聯絡電話 emgcyContAddressFull: String, // 聯絡人地址 cont: String, // 其他關係人 1 contRelation: String, // 關係 1 contPhone: String, // 聯絡電話 1 contAddressFull: String, // 聯絡地址 1 cont1: String, // 其他關係人 2 contRelation1: String, // 關係 2 contPhone1: String, // 聯絡電話 2 contAddress1Full: String, // 聯絡地址 2 cont2: String, // 其他關係人 3 contRelation2Full: String, // 關係 3 contPhone2: String, // 聯絡電話 3 contAddress2: String, // 聯絡地址 3 DNR: String, // DNR DNR_note: String, // DNR備註 hospitalBeforeResidency: String, // 入住前醫院 hospitalAfterResidencey: String, // 入住後醫院 sourceOfFinance: [String], // 經濟來源 assistiveDevice: [String], // 輔具 socialWelfareStatus: [String], // 福利身份 handBookKind: String, // 身障手冊新舊制 disabilityCategoryNew: [Object], // 新制身心障礙類別 disabilityCategory: String, // 障礙類別 1 disabilityLevel: String, // 障礙等級 1 disabilityCategory2: String, // 障礙類別 2 disabilityLevel2: String, // 障礙等級 2 disabilityCategory3: String, // 障礙類別 3 disabilityLevel3: String, // 障礙等級 3 } ```