Api.php 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. <?php
  2. declare (strict_types=1);
  3. namespace app\zskk\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'];
  11. public function getToken(EmpowerServies $servies): void
  12. {
  13. $params = $this->request->post();
  14. $data = $servies->getInsToken($params['data']);
  15. $this->success($data['msg'], $data['data']);
  16. }
  17. public function getRecogToken(EmpowerServies $servies, PatientServies $patientServies): void
  18. {
  19. $params = $this->request->post();
  20. $params = $this->getDecryptData($params['data']);
  21. $params = $patientServies->makeMappingData($params,'0','getRecogToken');
  22. $data = $servies->getRecogToken($params);
  23. $data = $patientServies->makeMappingData($data,'0','getRecogToken',2);
  24. $data = $this->makeEncryptData($data);
  25. $this->success('', $data);
  26. }
  27. /**
  28. * 上传检查数据
  29. */
  30. public function postExamReport(PatientServies $servies): void
  31. {
  32. $params = $this->request->post();
  33. $params = $this->getDecryptData($params['data']);
  34. $params = $servies->makeMappingData($params,'0','postExamReport');
  35. $data = $servies->postExamReport($params);
  36. $this->success('', $data);
  37. }
  38. /**
  39. * 上传检验数据
  40. */
  41. public function postLabReport(PatientServies $servies): void
  42. {
  43. $params = $this->request->post();
  44. $params = $this->getDecryptData($params['data']);
  45. $params = $servies->makeMappingData($params,'0','postLabReport');
  46. $data = $servies->postLabReport($params);
  47. $this->success('', $data);
  48. }
  49. /**
  50. * 删除检查数据
  51. */
  52. public function delExamReport(PatientServies $servies)//: void
  53. {
  54. $params = $this->request->post();
  55. // $params = $this->getDecryptData($params['data']);
  56. $tokenData = $this->tokenData;
  57. if(empty($tokenData))
  58. {
  59. $this->error('无效的token');
  60. }
  61. $params = $servies->makeMappingData($params,'0','delExamReport');
  62. $data = $servies->delExamReport($params,$tokenData['orgCode']);
  63. $this->success('');
  64. }
  65. /**
  66. * 删除检验数据
  67. */
  68. public function delLabReport(PatientServies $servies): void
  69. {
  70. $params = $this->request->post();
  71. // $params = $this->getDecryptData($params['data']);
  72. $tokenData = $this->tokenData;
  73. $tokenData['orgCode'] = '001';
  74. if(empty($tokenData))
  75. {
  76. $this->error('无效的token');
  77. }
  78. $params = $servies->makeMappingData($params,'0','delLabReport');
  79. $data = $servies->delLabReport($params,$tokenData['orgCode']);
  80. $this->success('');
  81. }
  82. /**
  83. * 后台初始化请求
  84. * @return void
  85. * @throws Throwable
  86. */
  87. public function getShareCheck(HrServies $servies,PatientServies $patientServies): void
  88. {
  89. $params = $this->request->post();
  90. // $params = $this->getDecryptData($params['data']);
  91. $params = $patientServies->makeMappingData($params,'0','getShareCheck');
  92. $ID_CARDNUM = $params['ID_CARDNUM'] ?? '';
  93. $ORGCODE = $params['ORGCODE'] ?? '';
  94. $ORGNAME = $params['ORGNAME'] ?? '';
  95. $DOCTORNAME = $params['DOCTORNAME'] ?? '';
  96. $DOCTORCODE = $params['DOCTORCODE'] ?? '';
  97. $DEPARTMENT = $params['DEPTNAME'] ?? '';
  98. $data = $servies->getShareCheck($ID_CARDNUM, $ORGCODE,$DOCTORCODE,$DEPARTMENT,1);
  99. $data = $patientServies->makeMappingData(['RETURN'=>$data],'0','getShareCheck',2);
  100. // halt($data);
  101. // $data = $this->makeEncryptData($data);
  102. // halt($data);
  103. $this->success('', $data);
  104. }
  105. /**
  106. * 后台初始化请求
  107. * @return void
  108. * @throws Throwable
  109. */
  110. public function getRecogData(HrServies $servies,PatientServies $patientServies): void
  111. {
  112. $params = $this->request->post();
  113. // $params = $this->getDecryptData($param['data']);
  114. $params = $patientServies->makeMappingData($params,'0','getRecogData');
  115. $ID_CARDNUM = $params['ID_CARDNUM'] ?? '';
  116. $ORGCODE = $params['ORGCODE'] ?? '';
  117. $ORGNAME = $params['ORGNAME'] ?? '';
  118. $DOCTORNAME = $params['DOCTORNAME'] ?? '';
  119. $DOCTORCODE = $params['DOCTORCODE'] ?? '';
  120. $DEPARTMENT = $params['DEPTNAME'] ?? '';
  121. $data = $servies->getShareCheck($ID_CARDNUM, $ORGCODE,$DOCTORCODE,$DEPARTMENT,2);
  122. // halt($data);
  123. $data = $patientServies->makeMappingData(['DATA'=>$data],'0','getRecogData',2);
  124. var_dump($data);die;
  125. // $data = $this->makeEncryptData($data);
  126. // halt($data);
  127. $this->success('', $data);
  128. }
  129. /**
  130. * @throws ModelNotFoundException
  131. * @throws DataNotFoundException
  132. * @throws DbException
  133. */
  134. public function saveRecogResult(HrServies $servies, PatientServies $patientServies): void
  135. {
  136. $params = $this->request->post();
  137. // $params = $this->getDecryptData($params['data']);
  138. $params = $patientServies->makeMappingData($params,'0','saveRecogResult');
  139. $HR_RECORDS = $params['HR_RECORDS'] ?? array();
  140. $servies->saveRecogResult($HR_RECORDS);
  141. $this->success('');
  142. }
  143. public function getAllToken(EmpowerServies $servies, PatientServies $patientServies)
  144. {
  145. $params = $this->request->post();
  146. $data['clientid'] = '12371600494581158K'; //机构编码
  147. $data['clientsecret'] = '837ffb03803b72cd99a941770fb6b2be'; //授权码
  148. $data = $servies->getInsToken($data);
  149. $idCard = $patientServies->getIdCard($params['mpi']);
  150. $arr['ID_CARDNUM'] = $idCard;
  151. $arr['ORGCODE'] = '12371600494581158K';
  152. $arr['ORGNAME'] = '滨州市优抚医院';
  153. $arr['DOCTORNAME'] = '贝远';
  154. $arr['DOCTORCODE'] = '00010005';
  155. $return = $servies->getRecogToken($arr);
  156. $this->success('', $return);
  157. }
  158. }