/// - Lấy danh mục theo mã nhóm và mã /// - Input: /// + maNhom: string - mã nhóm danh mục, lấy trong Constants.CodeSystem /// + ma: string - mã của danh mục trong nhóm /// - Output: /// + danhMuc: DanhMuc - Danh mục nếu tìm thấy, null nếu không tìm thấy public DanhMuc GetDanhMuc(string maNhom, string ma) { var param = new Dictionary <string, string>() { { "system", maNhom }, { "code", ma } }; string url = Constants.FHIR_URL + "/CodeSystem/$lookup"; var json = FhirClientUtils.get(url, param); if (json != null) { var obj = JsonValue.Parse(json); return(DanhMuc.FromParams(maNhom, obj["parameter"].AsJsonArray)); } return(null); }
/// - Lấy toàn bộ danh mục trong một nhóm /// - Input: /// + maNhom: string - mã nhóm danh mục, lấy trong Constants.CodeSystem /// /// - Output: /// + dsDanhMuc: List<DanhMuc> - Toàn bộ Danh Mục trong nhóm public List <DanhMuc> GetDanhMucByGroup(string maNhom) { string codeSytemId = GetCodeSystemId(maNhom); List <DanhMuc> dsDanhMuc = new List <DanhMuc>(); if (codeSytemId != null) { string url = Constants.FHIR_URL + "/CodeSystem/" + codeSytemId; var json = FhirClientUtils.get(url); var obj = JsonValue.Parse(json); var concepts = obj["concept"].AsJsonArray; foreach (var concept in concepts) { dsDanhMuc.Add(DanhMuc.FromConcept(maNhom, concept)); } } return(dsDanhMuc); }
private string GetCodeSystemId(string codeSystemUrl) { var param = new Dictionary <string, string>() { { "url", codeSystemUrl }, { "status", "active" } }; string url = Constants.FHIR_URL + "/CodeSystem"; string json = FhirClientUtils.get(url, param); if (json != null) { var obj = JsonValue.Parse(json); var entry = obj["entry"].AsJsonArray; if (entry.Count > 0) { return(entry[0]["resource"]["id"].AsString); } } return(null); }