openthc / cre-adapter
OpenTHC 大麻报告引擎 API 适配器
dev-main
2024-09-30 21:22 UTC
Requires
- chrome-php/chrome: 1.11.0
- openthc/common: dev-main
Requires (Dev)
- phpstan/phpstan: 1.11.8
- phpunit/phpunit: 9.6.20
This package is auto-updated.
Last update: 2024-09-30 21:22:22 UTC
README
API 适配器用于 BioTrack、LeafData 和 METRC 监管合规引擎 这些脚本为这些不同的 API 接口提供了一个通用接口。
示例
提供了一个方便的工厂方法,用于使用适当的配置(从 etc/cre.ini
加载)。
$cfg = \OpenTHC\CRE::getEngine('usa/wa'); $cre = \OpenTHC\CRE::factory($cfg); $res = $cre->license()->search(); $res = $cre->crop()->search(); foreach ($res as $rec) { echo $rec['variety']['name'] . "\n"; } $res = $cre->lot()->search(); foreach ($res as $rec) { echo $rec['id'] . ' ' . $rec['product_id'] . "\n"; }
支持的 cannabis 报告引擎
- BioTrack:夏威夷、伊利诺伊州、新墨西哥州、波多黎各、华盛顿*
- LeafData:宾夕法尼亚州*、犹他州*、华盛顿
- METRC:阿拉斯加、加利福尼亚州、科罗拉多州、缅因州、马萨诸塞州、密歇根州、蒙大拿州、内华达州、俄克拉荷马州、俄勒冈州
当然,还会添加其他引擎。一些特定的引擎适配器非常简单,它们实际上只存在以保持一致性。
BioTrack/Washington 服务的官方接口现在是为他们的 UCS 系统提供的。对于 LeafData,在宾夕法尼亚州或犹他州还没有可用的 API,但我们正在密切关注。
连接
$cre = \OpenTHC\CRE::factory($cfg); $cre->ping();
读取对象
存在一个低级、GET 和 POST/PUT 接口。
$res = $cre->get('/object?page=0&sort=created_at'); $res = $cre->post('/object', $arg); $res = $cre->put('/object/id', $arg);
高级 API
也可以以更高级别与对象进行接口。
$obj_list = $cre->license()->search($arg); $obj = $cre->license()->single($oid); $res = $cre->license()->create($obj); $res = $cre->license()->update($obj);