adminui/adminui-address

GetAddress.io的Admin UI地址查找包

安装: 150

依赖项: 0

建议者: 0

安全: 0

星星: 1

监视者: 4

分支: 0

开放问题: 0

类型:laravel

2.0.2 2021-12-29 09:03 UTC

This package is auto-updated.

Last update: 2024-09-04 19:45:35 UTC


README

版本 2.x - Vue JS

此包是为AdminUI框架内部使用而构建的,但由于多个系统的需求,它也可以在任何Laravel 7+项目中运行。

要求

Laravel 8包
VueJS
GetAddress.io API密钥

安装

composer require adminui/adminui-address

安装完成后,Laravel将自动找到此包。

此包使用Laravel HTTP类从getaddress.io获取结果

此包附带了一个国家迁移和种子,以及一个美国州迁移和种子。
国家表包含一些额外的字段,如iso代码、邮编要求、区号和状态。
如果状态为0,则不可选择,因此可以限制某些国家。
如果邮编为1,则邮编字段是必需的。

请运行

php artisan vendor:publish --tag adminui-address
php artisan migrate
php artisan db:seed --class=AdminUI\AdminUIAddress\Database\Seeds\DatabaseSeeder

完成后,您需要更新配置文件'adminuiaddress'或将以下变量添加到.env文件中

AUI_ADDRESS_APIKEY=""
AUI_ADDRESS_ADMINKEY=""
AUI_ADDRESS_CACHETIME=""
AUI_ADDRESS_LNG=""
AUI_ADDRESS_LAT=""
AUI_UNIT="M"

地址组件已移动到您的views/components文件夹。
并且其JS用于blade组件的public/vendor/adminui/address-block.js
可以使用以下方式轻松调用

@addressBlock()

如果选择了英国,您将有机会进行邮编查找。如果找到邮编,查找将出现在下拉菜单中。选择地址后,将出现完整的地址块。

系统使用Laravel的缓存来存储邮编结果,以节省重复查找。

请确保在模板中添加Jquery。同时请添加

@stack('scripts')

这将允许所需的JavaScript在Jquery调用之后推送。

距离辅助类

此包附带一个距离辅助类。它可以计算从您的'lat/lng'(如配置所示)到您从邮编查找脚本获取的地址的距离。

只需使用变量和测量单位调用类,即可返回结果距离

use Distance;
...
$distance  =  round(Distance::between(['lng'  => request('lng'),  'lat'  => request('lat')]), 2);

这将接受3个参数
TO - 数组 [lng, lat]
FROM - 数组[lng, lat] 可选,默认情况下这是在env或配置文件中设置的lng和lat

距离可以以3种测量单位返回。M - 英里 ** 默认 ** KM - 千米 NM - 海里 这可以在.env中设置或直接在配置文件中设置。

返回距离。

感谢
altrozero/get-address-io-php
在部分编码结构上的贡献。

下一个分支中还将包括
添加一些管理员功能,如白名单、黑名单、发票

享受。