config = config('taobao'); $this->client = new TopClient; $this->client->appkey = $this->config['app_key']; $this->client->secretKey = $this->config['secret_key']; $this->client->format = "json"; } /** * 查询上游企业的待签收药检报告信息 * @link https://open.taobao.com/api.htm?docId=70169&docType=2&scopeId=30361 * @param string $beginTime * @param string $endTime * @param int $page * @param int $pageSize * @return array * @throws \Exception */ public function queryDrugReport(string $beginTime, string $endTime, int $page = 1, int $pageSize = 20): array { $req = new AlibabaAlihealthSynergyYzwQuerydrugreportRequest; $req->setRefEntId($this->config['enterprise_id']); // $req->setFromRefEntId(""); // 发货企业(可选) // $req->setBillCode(""); // 单据编号(可选) $req->setBeginTime($beginTime); $req->setEndTime($endTime); // $req->setDrugId(""); // 药品ID(可选) // $req->setBatchNo(""); // 批号(可选) $pageObj = new Page; $pageObj->page = $page; $pageObj->page_size = $pageSize; $req->setPage(json_encode($pageObj)); $resp = $this->client->execute($req); if ('SUCCESS' <> $resp->res_result->msg_code) { throw new \Exception($resp->res_result->msg_info); } if (!isset($resp->res_result->model->result->onenet_drug_report_top_d_t_o)) { return []; } return json_decode(json_encode( $resp->res_result->model->result->onenet_drug_report_top_d_t_o ), true); } /** * 查询上传报告信息接口 * @link https://open.taobao.com/api.htm?docId=70145&docType=2&scopeId=30361 * @param string $beginTime * @param string $endTime * @param int $page * @param int $pageSize * @param int $isSeal * @return array * @throws \Exception */ public function querySealDrugReport(string $beginTime, string $endTime, int $page = 1, int $pageSize = 20, int $isSeal = 0): array { $req = new AlibabaAlihealthSynergyYzwQuerysealdrugreportRequest; $req->setRefEntId($this->config['enterprise_id']); $req->setBeginTime($beginTime); $req->setEndTime($endTime); $req->setPage($page); $req->setPageSize($pageSize); if ($isSeal) { $req->setStatus($isSeal); } $resp = $this->client->execute($req); if ('SUCCESS' <> $resp->result->msg_code) { throw new \Exception($resp->result->msg_info); } if (!isset($resp->result->model->result_list->ocr_seal_drug_report_d_t_o)) { return []; } return json_decode(json_encode( $resp->result->model->result_list->ocr_seal_drug_report_d_t_o ), true); } /** * 药检报告操作日志 * @link https://open.taobao.com/api.htm?docId=71189&docType=2&scopeId=30361 * @param string $beginDate * @param string $endDate * @param int $page * @param int $pageSize * @return array * @throws \Exception */ public function drugReportOptHistory(string $beginDate, string $endDate, int $page = 1, int $pageSize = 20): array { $req = new AlibabaAlihealthSynergyYzwDrugreportOptHistoryAllRequest; $req->setRefEntId($this->config['enterprise_id']); $req->setBeginTime($beginDate); $req->setEndTime($endDate); // $req->setBatchNo(""); // 批次号(可选) // $req->setDrugId(""); // 药品ID(可选) $req->setPage($page); $req->setPageSize($pageSize); $resp = $this->client->execute($req); if ('SUCCESS' <> $resp->result->msg_code) { throw new \Exception($resp->result->msg_info); } if (!isset($resp->result->model->result_list->top_drug_report_opt_log)) { return []; } return json_decode(json_encode( $resp->result->model->result_list->top_drug_report_opt_log ), true); } }