api.php 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. <?php
  2. declare (strict_types=1);
  3. namespace app\index\controller;
  4. use app\common\controller\ApiController;
  5. use app\zskk\servies\EmpowerServies;
  6. use app\zskk\servies\HrServies;
  7. use app\zskk\servies\PatientServies;
  8. class Api extends ApiController
  9. {
  10. protected array $noAuth = ['getToken','getAllToken','getShareToken','getRecogToken','login','getHospitalData','getCheck','getInpection'];
  11. public function getShareToken(EmpowerServies $servies, PatientServies $patientServies): void
  12. {
  13. $params = $this->request->post();
  14. $params = $this->getDecryptData($params['data']);
  15. $params = $patientServies->makeMappingData($params,'0','getRecogToken');
  16. $data = $servies->getRecogToken($params);
  17. $data = $patientServies->makeMappingData($data,'0','getRecogToken',2);
  18. $data = $this->makeEncryptData($data);
  19. $this->success('', $data);
  20. }
  21. public function getRecogToken(EmpowerServies $servies, PatientServies $patientServies): void
  22. {
  23. $params = $this->request->post();
  24. $params = $this->getDecryptData($params['data']);
  25. $params = $patientServies->makeMappingData($params,'0','getRecogToken');
  26. $data = $servies->getRecogToken($params);
  27. $data = $patientServies->makeMappingData($data,'0','getRecogToken',2);
  28. $data = $this->makeEncryptData($data);
  29. $this->success('', $data);
  30. }
  31. // /**
  32. // * 上传检查数据
  33. // */
  34. // public function postExamReport(PatientServies $servies): void
  35. // {
  36. // $params = $this->request->post();
  37. // $params = $this->getDecryptData($params['data']);
  38. // $params = $servies->makeMappingData($params,'0','postExamReport');
  39. // $data = $servies->postExamReport($params);
  40. // $this->success('', $data);
  41. // }
  42. /**
  43. * 上传检验数据
  44. */
  45. public function postLabReport(PatientServies $servies): void
  46. {
  47. $params = $this->request->post();
  48. $params = $this->getDecryptData($params['data']);
  49. $params = $servies->makeMappingData($params,'0','postLabReport');
  50. $data = $servies->postLabReport($params);
  51. $this->success('', $data);
  52. }
  53. /**
  54. * 删除检查数据
  55. */
  56. public function delExamReport(PatientServies $servies)//: void
  57. {
  58. $params = $this->request->post();
  59. $params = $this->getDecryptData($params['data']);
  60. $tokenData = $this->tokenData;
  61. if(empty($tokenData))
  62. {
  63. $this->error('无效的token');
  64. }
  65. $params = $servies->makeMappingData($params,'0','delExamReport');
  66. $data = $servies->delExamReport($params,$tokenData['orgCode']);
  67. $this->success('');
  68. }
  69. /**
  70. * 删除检验数据
  71. */
  72. public function delLabReport(PatientServies $servies): void
  73. {
  74. $params = $this->request->post();
  75. // $params = $this->getDecryptData($params['data']);
  76. $tokenData = $this->tokenData;
  77. if(empty($tokenData))
  78. {
  79. $this->error('无效的token');
  80. }
  81. $params = $servies->makeMappingData($params,'0','delLabReport');
  82. $data = $servies->delLabReport($params,$tokenData['orgCode']);
  83. $this->success('');
  84. }
  85. /**
  86. * 后台初始化请求
  87. * @return void
  88. * @throws Throwable
  89. */
  90. public function getShareCheck(HrServies $servies,PatientServies $patientServies): void
  91. {
  92. $params = $this->request->post();
  93. $params = $this->getDecryptData($params['data']);
  94. $params = $patientServies->makeMappingData($params,'0','getShareCheck');
  95. $ID_CARDNUM = $params['ID_CARDNUM'] ?? '';
  96. $ORGCODE = $params['ORGCODE'] ?? '';
  97. $ORGNAME = $params['ORGNAME'] ?? '';
  98. $DOCTORNAME = $params['DOCTORNAME'] ?? '';
  99. $DOCTORCODE = $params['DOCTORCODE'] ?? '';
  100. $DEPARTMENT = $params['DEPTNAME'] ?? '';
  101. $data = $servies->getShareCheck($ID_CARDNUM, $ORGCODE,$DOCTORCODE,$DEPARTMENT,1);
  102. $data = $patientServies->makeMappingData(['RETURN'=>$data],'0','getShareCheck',2);
  103. // halt($data);
  104. $data = $this->makeEncryptData($data);
  105. // halt($data);
  106. $this->success('', $data);
  107. }
  108. public function getRecogCheck(HrServies $servies,PatientServies $patientServies): void
  109. {
  110. $params = $this->request->post();
  111. $params = $this->getDecryptData($params['data']);
  112. $params = $patientServies->makeMappingData($params,'0','getShareCheck');
  113. $ID_CARDNUM = $params['ID_CARDNUM'] ?? '';
  114. $ORGCODE = $params['ORGCODE'] ?? '';
  115. $ORGNAME = $params['ORGNAME'] ?? '';
  116. $DOCTORNAME = $params['DOCTORNAME'] ?? '';
  117. $DOCTORCODE = $params['DOCTORCODE'] ?? '';
  118. $DEPARTMENT = $params['DEPTNAME'] ?? '';
  119. $data = $servies->getShareCheck($ID_CARDNUM, $ORGCODE,$DOCTORCODE,$DEPARTMENT,1,1);
  120. $data = $patientServies->makeMappingData(['RETURN'=>$data],'0','getShareCheck',2);
  121. // halt($data);
  122. $data = $this->makeEncryptData($data);
  123. // halt($data);
  124. $this->success('', $data);
  125. }
  126. /**
  127. * 后台初始化请求
  128. * @return void
  129. * @throws Throwable
  130. */
  131. public function getRecogData(HrServies $servies,PatientServies $patientServies): void
  132. {
  133. $params = $this->request->post();
  134. $params = $this->getDecryptData($params['data']);
  135. $params = $patientServies->makeMappingData($params,'0','getRecogData');
  136. $ID_CARDNUM = $params['ID_CARDNUM'] ?? '';
  137. $ORGCODE = $params['ORGCODE'] ?? '';
  138. $ORGNAME = $params['ORGNAME'] ?? '';
  139. $DOCTORNAME = $params['DOCTORNAME'] ?? '';
  140. $DOCTORCODE = $params['DOCTORCODE'] ?? '';
  141. $DEPARTMENT = $params['DEPTNAME'] ?? '';
  142. $data = $servies->getShareCheck($ID_CARDNUM, $ORGCODE,$DOCTORCODE,$DEPARTMENT,2);
  143. // halt($data);
  144. $data = $patientServies->makeMappingData(['DATA'=>$data],'0','getRecogData',2);
  145. $data = $this->makeEncryptData($data);
  146. // halt($data);
  147. $this->success('', $data);
  148. }
  149. /**
  150. * @throws ModelNotFoundException
  151. * @throws DataNotFoundException
  152. * @throws DbException
  153. */
  154. public function saveRecogResult(HrServies $servies, PatientServies $patientServies): void
  155. {
  156. $params = $this->request->post();
  157. $params = $this->getDecryptData($params['data']);
  158. $params = $patientServies->makeMappingData($params,'0','saveRecogResult');
  159. $HR_RECORDS = $params['HR_RECORDS'] ?? array();
  160. $servies->saveRecogResult($HR_RECORDS);
  161. $this->success('');
  162. }
  163. public function getAllToken(EmpowerServies $servies, PatientServies $patientServies)
  164. {
  165. $params = $this->request->post();
  166. $data['clientid'] = '12371600494581158K'; //机构编码
  167. $data['clientsecret'] = '837ffb03803b72cd99a941770fb6b2be'; //授权码
  168. $data = $servies->getInsToken($data);
  169. $idCard = $patientServies->getIdCard($params['mpi']);
  170. $arr['ID_CARDNUM'] = $idCard;
  171. $arr['ORGCODE'] = '12371600494581158K';
  172. $arr['ORGNAME'] = '滨州市优抚医院';
  173. $arr['DOCTORNAME'] = '贝远';
  174. $arr['DOCTORCODE'] = '00010005';
  175. $return = $servies->getRecogToken($arr);
  176. $this->success('', $return);
  177. }
  178. /**
  179. * 上传检查数据
  180. */
  181. public function postExamInfo(PatientServies $servies): void
  182. {
  183. try {
  184. $params = $this->request->post();
  185. $params = $this->getDecryptData($params['data']);
  186. $params = $servies->makeMappingData($params,'0','postExamInfo');
  187. $data = $servies->postExamInfo($params);
  188. $data = $this->makeEncryptData($data);
  189. $this->success($data,'');
  190. }catch (\Exception $e)
  191. {
  192. $this->error($e->getMessage());
  193. }
  194. }
  195. /**
  196. * 上传检查数据
  197. */
  198. public function postExamReport(PatientServies $servies): void
  199. {
  200. try {
  201. $params = $this->request->post();
  202. $params = $this->getDecryptData($params['data']);
  203. $params = $servies->makeMappingData($params,'0','postExamReport');
  204. $data = $servies->postExamReport($params);
  205. $data = $this->makeEncryptData($data);
  206. $this->success($data,'');
  207. }catch (\Exception $e)
  208. {
  209. $this->error($e->getMessage());
  210. }
  211. }
  212. /**
  213. * 上传检验数据
  214. */
  215. public function postLisReport(PatientServies $servies): void
  216. {
  217. try {
  218. $params = $this->request->post();
  219. $params = $this->getDecryptData($params['data']);
  220. $params = $servies->makeMappingData($params,'0','postLabReport');
  221. $data = $servies->postLabReport($params);
  222. $data = $this->makeEncryptData($data);
  223. $this->success($data,'');
  224. }catch (\Exception $e)
  225. {
  226. $this->error($e->getMessage());
  227. }
  228. }
  229. }