app.php 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkPHP [ WE CAN DO IT JUST THINK ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
  8. // +----------------------------------------------------------------------
  9. // | Author: liu21st <liu21st@gmail.com>
  10. // +----------------------------------------------------------------------
  11. use think\facade\Route;
  12. // ----------------------------- 注册 | 登录 ----------------------------------
  13. Route::rule('jmjk/register', 'Login/register');
  14. Route::rule('jmjk/login', 'Login/index')->allowCrossDomain();
  15. Route::rule('jmjk/send-email', 'login/sendEmail');
  16. Route::rule('jmjk/forget-password', 'login/forgetPassword');
  17. Route::rule('jmjk/zsk/index', 'NeojApi/index');
  18. Route::rule('v/test', 'Index/index');
  19. /**接口**/
  20. Route::post('OutPatientRecord', 'XyCdssInterface/OutPatientRecord');
  21. Route::group(function () {
  22. // ----------------------- Neo4j Knowledge [中医知识库 | 西医知识库] -----------------------
  23. //Route::rule('jmjk/zsk/index' , 'NeojApi/index');
  24. Route::rule('jmjk/zsk/search', 'NeojApi/search');
  25. Route::rule('jmjk/zsk/department/SickNess', 'NeojApi/getListByDepartment');
  26. Route::rule('jmjk/zsk/detail', 'NeojApi/detail');
  27. Route::rule('jmjk/zsk/graph', 'NeojApi/graph');
  28. Route::rule('jmjk/zsk/getZyList', 'NeojApi/getZyList');
  29. // -------------------------- 文献|指南 ------------------------
  30. Route::rule('jmjk/zsk/doc/index', 'Document/index');
  31. Route::rule('jmjk/zsk/doc/detail', 'Document/detail');
  32. Route::rule('jmjk/zsk/author/detail', 'Document/authorDetail');
  33. Route::rule('jmjk/zsk/doc/hots', 'Document/getHotList');
  34. Route::rule('jmjk/zsk/author/graph', 'Document/authorGraph');
  35. // ----------------------------- 视频 -------------------------
  36. Route::rule('jmjk/video', 'Video/index');
  37. Route::rule('jmjk/record_pv', 'Video/recordPv');
  38. // ----------------------------- 问答 -------------------------
  39. Route::rule('jmjk/zsk/qw', 'NeojApi/qw');
  40. // ----------------------------- cdss -------------------------
  41. Route::rule('jmjk/cdss', 'cdss/index');
  42. Route::rule('jmjk/about_result', 'cdss/getInspectionOrMedicineByDisease');
  43. Route::rule('jmjk/many_select', 'cdss/manySelectOptionList');
  44. Route::rule('jmjk/symptom/search', 'cdss/getSymptomBykeyword');
  45. Route::rule('jmjk/advisory/submit', 'cdss/storeUserSubmitAdvisory');
  46. Route::rule('jmjk/get_user_advisory', 'cdss/getUserAdvisory');
  47. Route::rule('jmjk/diagnosis', 'cdss/getDiagnosisField');
  48. Route::rule('jmjk/get_icd', 'cdss/getIcdByDiagnosis');
  49. Route::rule('jmjk/get_diseases', 'cdss/getDiseaseByKeyword');
  50. // 获取中医疾病相关信息
  51. Route::rule('jmjk/zh_about_result', 'Cdss/getZhInspectionOrMedicineByDisease');
  52. // ------------------------------ 知识库新版 -----------------------------
  53. //Route::rule('jmjk/index' , 'zsk/index');
  54. Route::rule('jmjk/department/exist/diseases/letters', 'zsk/getDepartmentExistDiseasesLetter');
  55. Route::rule('jmjk/letter/search', 'zsk/getDiseaseNameByFirstLetter');
  56. Route::rule('jmjk/labels', 'zsk/getLabels');
  57. // ----------------------------- 图像库 ------------------------------
  58. //Route::rule('jmjk/images' , 'zsk/documentImages');
  59. Route::rule('jmjk/image-detail', 'zsk/documentImagesDetail');
  60. Route::rule('jmjk/case-reports', 'zsk/documentCaseReports');
  61. // ---------------------------- 指南脑图 | 结构化 | 药物靶点 ---------------------------
  62. //Route::rule('jmjk/guide-mindMap-zh' , 'zsk/getmindMapZhList');
  63. Route::rule('jmjk/guide-structure', 'zsk/getGuideStructureList');
  64. Route::rule('jmjk/medicine-target-spot', 'zsk/getOmicsList');
  65. // Route::rule('jmjk/question-answer' , 'QuestionAnswer/index');
  66. // Route::rule('jmjk/question-list' , 'QuestionAnswer/questionList');
  67. //Route::rule('jmjk/question-detail' , 'QuestionAnswer/questionDetail');
  68. })->allowCrossDomain();
  69. //->middleware(\app\middleware\CheckJwtToken::class);
  70. /**
  71. * 个人信息
  72. */
  73. Route::rule('jmjk/profile', 'login/profile');
  74. Route::rule('jmjk/images', 'zsk/documentImages');
  75. /**
  76. * 智能问答机器人
  77. */
  78. Route::rule('jmjk/question-answer', 'QuestionAnswer/index');
  79. Route::rule('jmjk/question-list', 'QuestionAnswer/questionList');
  80. Route::rule('jmjk/question-detail', 'QuestionAnswer/questionDetail');
  81. /**
  82. * 智能问答chatgpt
  83. */
  84. Route::rule('jmjk/chatgpt-answer', 'Chatgpt/getAnswerByChatgpt');
  85. Route::rule('jmjk/chatgpt-recharge-list', 'Chatgpt/chatgptNumList');
  86. Route::rule('jmjk/wxnotify', 'Wxnotify/notify');
  87. Route::rule('jmjk/wxpay', 'Chatgpt/generateOrder');
  88. Route::rule('jmjk/order-detail', 'Chatgpt/orderDetail');
  89. Route::rule('jmjk/chatgpt-num', 'Chatgpt/user');
  90. Route::rule('jmjk/bind-invite-code', 'Chatgpt/inviteCode'); // 邀请
  91. Route::rule('jmjk/bind-history-list', 'Chatgpt/historyList');
  92. /**
  93. * 对外接口(症状匹配临床表现)
  94. */
  95. Route::rule('jmjk/match-clinicalFeature', 'Cdss/matchClinicalFeature');
  96. // ------------------------------- 外部访问 ------------------------------------
  97. Route::rule('api/zsk/detail', 'XyZskOther/getZskDetail'); // 外部接口访问
  98. // ------------------------------- 知识库(mysql版) ---------------------------------
  99. Route::rule('jmjk/new/detail', 'Cdss/detail'); // 检索详情
  100. Route::rule('jmjk/new/detail-multiple', 'Cdss/detailmultiple');
  101. Route::rule('jmjk/new/get-clinical-trial', 'Cdss/getClinicalTrial'); // 临床试验检索
  102. Route::rule('jmjk/new/get-interact', 'Cdss/getInteract'); // 药物相互作用
  103. Route::rule('jmjk/get-xyzztz', 'Cdss/getXyzztz'); // 症状体征
  104. Route::rule('jmjk/guide-mindMap-zh', 'zsk/getMindMapZhList');
  105. Route::rule('jmjk/index', 'zsk/index');
  106. Route::rule('jmjk/get-symptom', 'cdss/getSymptomByClinicalFeature');
  107. // ----------------------------------- 医院项目 ------------------------------
  108. Route::rule('jmjk/search-label', 'zskjsy/searchLable');
  109. Route::rule('jmjk/guide-detail', 'zskjsy/guideDetail');
  110. Route::rule('jmjk/get_medical_knowledge', 'cdss/getMedicalKnowledgeByKeyword'); // 医学知识查询
  111. Route::rule('jmjk/about_results', 'cdss/getInspection'); // 医疗疾病推断
  112. Route::rule('jmjk/get_department', 'cdss/getDepartment'); // 获取医疗疾病科室
  113. Route::rule('jmjk/get_departments', 'cdss/getDepartments'); // 获取各标签科室
  114. Route::rule('jmjk/detail', 'zsk/detail');
  115. Route::rule('jmjk/property/detail', 'zsk/propertyDetail');
  116. Route::rule('jmjk/image-type', 'zsk/imageType');
  117. Route::rule('jmjk/image-type-list', 'zsk/imageTypeList');
  118. Route::rule('jmjk/sms-send', 'login/smsSend');
  119. /**
  120. * 诊疗指南数据录入
  121. */
  122. Route::rule('jmjk/add-guide', 'zsk/addGuide');
  123. Route::rule('jmjk/add-keyword', 'zsk/addGuideKeyword');
  124. Route::rule('jmjk/add-dse', 'zsk/addDise');
  125. // ----------------------------- Es 索引 --------------------------------
  126. Route::rule('jmjk/es-create', 'EsIndex/create');
  127. Route::rule('jmjk/es-del', 'EsIndex/delete');
  128. Route::rule('jmjk/es-batch-update', 'EsIndex/batchUpdate');
  129. Route::rule('jmjk/es-multi-add', 'EsIndex/newAuthorVTwoMultiAdd');
  130. Route::rule('jmjk/es-add-doc', 'EsIndex/addDoc');
  131. Route::rule('jmjk/es-add-album', 'EsIndex/addAlbum');
  132. Route::rule('jmjk/es-add-doc-wf', 'EsDocument/addDocWf');
  133. // ------------------------------ Es 科研探索 ----------------------------
  134. Route::rule('jmjk/test', 'EsDocument/test');
  135. Route::rule('jmjk/search-tip', 'EsDocument/searchTip');
  136. Route::rule('jmjk/set-language', 'EsDocument/setLanguage');
  137. // ------------------------------ 文献首页 ------------------------------
  138. Route::rule('jmjk/es-test', 'EsDocument/test');
  139. Route::rule('jmjk/es-index', 'EsDocument/index');
  140. Route::rule('jmjk/es-detail', 'EsDocument/esDocumentDetail');
  141. Route::rule('jmjk/doc-search', 'EsDocument/conditionFilter');
  142. Route::rule('jmjk/es-history', 'EsDocument/history');
  143. Route::rule('jmjk/doc-recommend', 'EsDocument/getDocumentByTag');
  144. Route::rule('jmjk/set-fielddata', 'EsDocument/setFieldData');
  145. Route::rule('jmjk/es-collection', 'EsDocument/docCollection');
  146. Route::rule('jmjk/es-my-collection', 'EsDocument/myCollectionList');
  147. Route::rule('jmjk/es-collection-tags', 'EsDocument/docCollectionTags');
  148. Route::rule('jmjk/es-random-doc', 'EsDocument/randomDoc');
  149. Route::rule('jmjk/es-clear-history', 'EsDocument/clear');
  150. Route::rule('jmjk/es-recommend-disease', 'EsDocument/searchRecommendDisease');
  151. Route::rule('jmjk/es-single-recommend-disease', 'EsDocument/singleSearchRecommendDisease');
  152. // ------------------------------ 学科分析 ------------------------------
  153. Route::rule('jmjk/es-department-index', 'EsDepartment/index');
  154. Route::rule('jmjk/es-search-diseases', 'EsDepartment/searchDisease');
  155. Route::rule('jmjk/es-diseases', 'EsDepartment/getDiseaseByDepartment');
  156. Route::rule('jmjk/es-all-document', 'EsDepartment/allDocument');
  157. // ------------------------------ 学者分析 ------------------------------
  158. Route::rule('jmjk/es-author-index', 'EsAuthor/index');
  159. Route::rule('jmjk/es-author-search', 'EsAuthor/search');
  160. Route::rule('jmjk/es-author-detail', 'EsAuthor/getAuthorDetailByName');
  161. Route::rule('jmjk/es-representative-author', 'EsAuthor/representativeAuthor');
  162. Route::rule('jmjk/es-get-organization', 'EsAuthor/getOrganization');
  163. Route::rule('jmjk/es-get-select-organization', 'EsAuthor/getSelectOrgs');
  164. Route::rule('jmjk/es-doc-refresh-author', 'EsDocument/refreshAuthors');
  165. // ------------------------------ 期刊分析 ------------------------------
  166. Route::rule('jmjk/es-album-index', 'EsAlbum/index');
  167. Route::rule('jmjk/es-album-newindex', 'EsAlbum/newindex');
  168. Route::rule('jmjk/es-album-detail', 'EsAlbum/albumDetail');
  169. Route::rule('jmjk/album-recommend', 'EsDocument/getAlbumByTag');
  170. Route::rule('jmjk/album-count-detail', 'EsDocument/albumCountDetail');
  171. // ------------------------------ 机构分析 ------------------------------
  172. Route::rule('jmjk/es-organization-detail', 'EsOrganization/detail');
  173. //Route::rule('jmjk/es-get-organization' , 'EsOrganization/getOrganizationByTitle');
  174. // ------------------------------ 相关推荐 ------------------------------
  175. Route::rule('jmjk/es-relation-recommend', 'EsDocument/relationRecommend');
  176. // ------------------------------ 翻译 -------------------------------
  177. Route::rule('jmjk/translate', 'Translate/index');
  178. // --------------------------- 以下供后台数据展示调用 --------------------------
  179. Route::rule('neo4j/search', 'Neo4j/select');
  180. Route::rule('neo4j/index', 'Neo4j/index');
  181. Route::rule('neo4j/detail', 'Neo4j/singleNode');
  182. Route::rule('neo4j/getlabels', 'Neo4j/getLableById');
  183. Route::rule('neo4j/create_node', 'Neo4j/createLabel');
  184. Route::rule('neo4j/setNode', 'Neo4j/setNodeById');
  185. Route::rule('neo4j/add', 'Neo4j/insertDataIntoEs');
  186. // -------------------------- - Admin ----------------------------
  187. //Route::rule('jmjk/index' , 'Index/category');
  188. //Route::rule('jmjk/getIllness' , 'Index/getAllIllnessByPid');
  189. //Route::rule('jmjk/singleIllness', 'Index/singleIllness');
  190. //-------------------------- - OCR ----------------------------
  191. Route::rule('jmjk/submit', 'Ocr/submit')->allowCrossDomain();
  192. Route::rule('api/jmjk/ocr-xinlijiankang', 'Baidu/ocr'); //心理健康ocr
  193. //-------------------------- - 临沂导诊 ----------------------------
  194. Route::post('jmjk/getConfig', 'Guidance/getConfig');
  195. Route::post('jmjk/getSymptom', 'Guidance/getSymptom');
  196. Route::post('jmjk/getGuidance', 'Guidance/getGuidance');
  197. Route::post('jmjk/evaluate', 'Guidance/evaluate');
  198. //-------------------------- - 滨州导诊 ----------------------------
  199. Route::post('jmjk/getBzmptomList', 'GuidanceBz/getBzmptomList');
  200. Route::post('jmjk/getGuidanceBz', 'GuidanceBz/getGuidanceBz');
  201. Route::post('jmjk/evaluate', 'GuidanceBz/evaluate');
  202. //-------------------------- - 首页质控 ----------------------------
  203. Route::post('jmjk/getQcConfig', 'QualityControl/getConfig');
  204. Route::post('jmjk/getQcList', 'QualityControl/getQcList');
  205. Route::post('jmjk/getQcInfo', 'QualityControl/getInfo');
  206. //-------------------------- - NLP ----------------------------
  207. Route::post('jmjk/nlpSubmit', 'Nlp/submit');
  208. // 医嘱审核
  209. Route::rule('jmjk/yzEamine', 'QualityControl/yzEamine');
  210. // 患者辅助诊疗
  211. Route::rule('jmjk/save_patient_auxiliary_info', 'PatientAuxiliary/savePatientAuxiliaryInfo');
  212. // 获取患者辅助诊疗信息
  213. Route::rule('jmjk/get_patient_auxiliary_info', 'PatientAuxiliary/getPatientAuxiliaryInfo');
  214. // ------------------------------ 医学计算器 ------------------------------
  215. // 扩展功能路由(更具体的路由放在前面)
  216. Route::get('jmjk/medical-calculators/:id/questions', 'MedicalCalculatorApiController/getQuestions') // 获取问题
  217. ->pattern(['id' => '\d+']);
  218. Route::post('jmjk/medical-calculators/:id/calculate', 'MedicalCalculatorApiController/calculate') // 计算
  219. ->pattern(['id' => '\d+']);
  220. // 带ID的路由
  221. Route::get('jmjk/medical-calculators/:id', 'MedicalCalculatorApiController/show') // 详情
  222. ->pattern(['id' => '\d+']);
  223. Route::put('jmjk/medical-calculators/:id', 'MedicalCalculatorApiController/update') // 更新
  224. ->pattern(['id' => '\d+']);
  225. Route::delete('jmjk/medical-calculators/:id', 'MedicalCalculatorApiController/destroy') // 删除
  226. ->pattern(['id' => '\d+']);
  227. // 基础路由(最通用的放在最后)
  228. Route::get('jmjk/medical-calculators', 'MedicalCalculatorApiController/index'); // 列表
  229. Route::post('jmjk/medical-calculators', 'MedicalCalculatorApiController/create'); // 创建