EmrController.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
  1. package thyyxxk.webserver.controller.zhuyuanyizheng.emr;
  2. import com.alibaba.fastjson.JSONObject;
  3. import org.springframework.validation.annotation.Validated;
  4. import org.springframework.web.bind.annotation.*;
  5. import thyyxxk.webserver.config.auth.PassToken;
  6. import thyyxxk.webserver.entity.ResultVo;
  7. import thyyxxk.webserver.entity.dictionary.CodeName;
  8. import thyyxxk.webserver.entity.fluorescenceTest.FluorescenceSpecimenResult;
  9. import thyyxxk.webserver.entity.medicalinsurance.inpatient.ZyPatientInfo;
  10. import thyyxxk.webserver.entity.mz.MzEmrPatientData;
  11. import thyyxxk.webserver.entity.zhuyuanyisheng.ZyZkList;
  12. import thyyxxk.webserver.entity.zhuyuanyisheng.emr.*;
  13. import thyyxxk.webserver.entity.zhuyuanyisheng.jianyanjiancha.YshYjReq;
  14. import thyyxxk.webserver.entity.zhuyuanyisheng.shoushu.OpRecord;
  15. import thyyxxk.webserver.service.zhuyuanyisheng.emr.EmrServer;
  16. import thyyxxk.webserver.utils.StringUtil;
  17. import java.util.List;
  18. import java.util.Map;
  19. /**
  20. * 肖蟾
  21. */
  22. @RequestMapping("/Emr")
  23. @RestController
  24. public class EmrController {
  25. private final EmrServer server;
  26. public EmrController(EmrServer server) {
  27. this.server = server;
  28. }
  29. @GetMapping("/getPatientDataTree")
  30. public ResultVo<List<EmrFolder>> getPatientDataTree(@RequestParam("patNo") String patNo,
  31. @RequestParam("times") Integer times) {
  32. return server.getPatientDataTree(patNo, times);
  33. }
  34. @GetMapping("/getSnippetTree")
  35. public ResultVo<List<JSONObject>> getSnippetTree() {
  36. return server.getSnippetTree();
  37. }
  38. @GetMapping("/getEmrTree")
  39. public ResultVo<Map<String, List<JSONObject>>> getEmrTree(@RequestParam("type") String type) {
  40. return server.getEmrTree(type);
  41. }
  42. @PostMapping("/insertEmrData")
  43. @PassToken
  44. public ResultVo<Map<String, Object>> insertEmrData(@RequestBody @Validated EmrPatientData param) {
  45. return server.insertEmrData(param);
  46. }
  47. @GetMapping("/deletePatientEmrByDocumentId")
  48. public ResultVo<List<String>> deletePatientEmrByDocumentId(@RequestParam("documentId") String documentId) {
  49. return server.deletePatientEmrByDocumentId(documentId);
  50. }
  51. @PostMapping("/queryWhetherThePatientHasASpecifiedMedicalRecord")
  52. public ResultVo<Boolean> queryWhetherThePatientHasASpecifiedMedicalRecord(@RequestBody EmrPatientData param) {
  53. return server.queryWhetherThePatientHasASpecifiedMedicalRecord(param);
  54. }
  55. @PassToken
  56. @GetMapping("/hotSearchSorting")
  57. public void hotSearchSorting(@RequestParam("userCode") String userCode,
  58. @RequestParam("code") String code,
  59. @RequestParam("tableName") String tableName) {
  60. server.hotSearchSorting(userCode, code, tableName);
  61. }
  62. @GetMapping("/submitMedicalRecord")
  63. public ResultVo<String> submitMedicalRecord(@RequestParam("documentId") String documentId) {
  64. return server.submitMedicalRecord(documentId);
  65. }
  66. @GetMapping("/audit")
  67. public ResultVo<String> audit(@RequestParam("documentId") String documentId) {
  68. return server.audit(documentId);
  69. }
  70. @GetMapping("/getDrgIntelligentGrouping")
  71. public ResultVo<String> getDrgIntelligentGrouping(@RequestParam("patNo") String patNo,
  72. @RequestParam("times") Integer times) {
  73. return server.getDrgIntelligentGrouping(patNo, times);
  74. }
  75. @GetMapping("/getDischargeTimes")
  76. public ResultVo<Integer> getDischargeTimes(String patNo) {
  77. return server.getDischargeTimes(patNo);
  78. }
  79. @GetMapping("/getExtractDataElement")
  80. public ResultVo<JSONObject> getExtractDataElement(@RequestParam("patNo") String patNo,
  81. @RequestParam("times") Integer times) {
  82. return server.getExtractDataElement(patNo, times);
  83. }
  84. @GetMapping("/getAllWards")
  85. public ResultVo<List<CodeName>> getAllWards() {
  86. return server.getAllWards();
  87. }
  88. @GetMapping("/getDeleteMedicalRecord")
  89. public ResultVo<List<EmrPatientData>> getDeleteMedicalRecord(@RequestParam("patNo") String patNo) {
  90. return server.getDeleteMedicalRecord(patNo);
  91. }
  92. @GetMapping("/getInvalidByDocumentId")
  93. public ResultVo<JSONObject> getInvalidByDocumentId(@RequestParam("id") String id) {
  94. return server.getInvalidByDocumentId(id);
  95. }
  96. @GetMapping("/resumeMedicalRecords")
  97. public ResultVo<String> resumeMedicalRecords(@RequestParam("documentId") String documentId) {
  98. return server.resumeMedicalRecords(documentId);
  99. }
  100. @GetMapping("/getDisReqEmr")
  101. public ResultVo<List<DischargedEmrModifyApply>> getDisReqEmr(@RequestParam("flag") Integer flag) {
  102. return server.getDisReqEmr(flag);
  103. }
  104. @GetMapping("/downloadTheDischargeEdit")
  105. public ResultVo<List<DischargedEmrModifyApply>> downloadTheDischargeEdit(@RequestParam("start") String start,
  106. @RequestParam("end") String end) {
  107. return server.downloadTheDischargeEdit(start, end);
  108. }
  109. @PostMapping("/saveDisEmrReq")
  110. public ResultVo<String> saveDisEmrReq(@RequestBody DischargedEmrModifyApply param) {
  111. return server.saveDisEmrReq(param);
  112. }
  113. @GetMapping("/deleteDisEmrDis")
  114. public ResultVo<String> deleteDisEmrDis(@RequestParam("patNo") String patNo) {
  115. return server.deleteDisEmrDis(patNo);
  116. }
  117. @GetMapping("/adoptEmrDisReq")
  118. public ResultVo<String> adoptEmrDisReq(@RequestParam("patNo") String patNo) {
  119. return server.adoptEmrDisReq(patNo);
  120. }
  121. @GetMapping("/refuseEmrDisReq")
  122. public ResultVo<String> refuseEmrDisReq(@RequestParam("patNo") String patNo,
  123. @RequestParam("reviewNotes") String reviewNotes) {
  124. return server.refuseEmrDisReq(patNo, reviewNotes);
  125. }
  126. @GetMapping("/isDisReqEdit")
  127. public ResultVo<Boolean> isDisReqEdit(String patNo) {
  128. return server.isDisReqEdit(patNo);
  129. }
  130. @GetMapping("/getHistory")
  131. public ResultVo<Object> getHistory(@RequestParam("documentId") String documentId) {
  132. return server.getHistory(documentId);
  133. }
  134. @GetMapping("/getEmrTips")
  135. public ResultVo<List<MedicalHistoryPrompts>> getEmrTips() {
  136. return server.getEmrTips();
  137. }
  138. @PostMapping("/addEmrTips")
  139. public ResultVo<String> addEmrTips(@RequestBody MedicalHistoryPrompts param) {
  140. return server.addEmrTips(param);
  141. }
  142. @PostMapping("/updateEmrTips")
  143. public ResultVo<String> updateEmrTips(@RequestBody MedicalHistoryPrompts param) {
  144. return server.updateEmrTips(param);
  145. }
  146. @GetMapping("/deleteEmrTips")
  147. public ResultVo<String> deleteEmrTips(@RequestParam("id") Integer id) {
  148. return server.deleteEmrTips(id);
  149. }
  150. @GetMapping("/getEmrTipsData")
  151. public ResultVo<List<MedicalHistoryPrompts>> getEmrTipsData(@RequestParam("name") String name) {
  152. int typeCode = 1;
  153. if (name.length() > 2) {
  154. typeCode = getTypeCode(name.substring(0, 2).toUpperCase());
  155. if (typeCode == 0) {
  156. typeCode = 1;
  157. } else {
  158. name = name.substring(2);
  159. if (StringUtil.isBlank(name)) {
  160. name = "%";
  161. }
  162. }
  163. }
  164. return server.getEmrTipsData(name, typeCode);
  165. }
  166. private int getTypeCode(String name) {
  167. switch (name) {
  168. case "G ":
  169. case "1 ":
  170. return 1;
  171. case "K ":
  172. case "2 ":
  173. return 2;
  174. case "Q ":
  175. case "3 ":
  176. return 3;
  177. default:
  178. return 0;
  179. }
  180. }
  181. @GetMapping("/getListOfDischargedPatients")
  182. public ResultVo<List<ZyPatientInfo>> getListOfDischargedPatients(@RequestParam("patNo") String patNo) {
  183. return server.getListOfDischargedPatients(patNo);
  184. }
  185. @PostMapping("/getYzTemperature")
  186. public ResultVo<JSONObject> getYzTemperature(@RequestBody YzTemperatureParam param) {
  187. return server.getYzTemperature(param);
  188. }
  189. @GetMapping("/getExamine")
  190. public ResultVo<List<YshYjReq>> getExamine(@RequestParam("patNo") String patNo,
  191. @RequestParam("times") Integer times) {
  192. return server.getExamine(patNo, times);
  193. }
  194. @GetMapping("/whetherItExistsInTheDepartment")
  195. public ResultVo<ZyZkList> whetherItExistsInTheDepartment(@RequestParam("patNo") String patNo,
  196. @RequestParam("times") Integer times) {
  197. return server.whetherItExistsInTheDepartment(patNo, times);
  198. }
  199. @GetMapping("/emrSocketUnlock")
  200. public ResultVo<String> emrSocketUnlock(@RequestParam("sid") String sid,
  201. @RequestParam("documentId") String documentId) {
  202. return server.emrSocketUnlock(sid, documentId);
  203. }
  204. @PostMapping("/electronicMedicalRecordSequencing")
  205. public ResultVo<String> electronicMedicalRecordSequencing(@RequestBody List<EmrPatientData> data) {
  206. return server.electronicMedicalRecordSequencing(data);
  207. }
  208. @GetMapping("/getPastHistory")
  209. public ResultVo<Map<String, List<EmrPatientData>>> getPastHistory(@RequestParam("patNo") String patNo,
  210. @RequestParam("times") Integer times) {
  211. return server.getPastHistory(patNo, times);
  212. }
  213. @GetMapping("/getMzPatientDataByPatNo")
  214. public ResultVo<Map<Integer, List<MzEmrPatientData>>> getMzPatientDataByPatNo(String patNo) {
  215. return server.getMzPatientDataByPatNo(patNo);
  216. }
  217. @GetMapping("/getFluorescenceSpecimenResult")
  218. @PassToken
  219. public ResultVo<List<FluorescenceSpecimenResult>> getFluorescenceSpecimenResult(@RequestParam("patNo") String patNo,
  220. @RequestParam("times") Integer times) {
  221. return server.getFluorescenceSpecimenResult(patNo, times);
  222. }
  223. @GetMapping("/getOpRecordList")
  224. public ResultVo<List<OpRecord>> getOpRecordList(@RequestParam("patNo") String patNo,
  225. @RequestParam("times") Integer times) {
  226. return server.getOpRecordList(patNo, times);
  227. }
  228. }