| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- namespace app\modules\alliance\models\storeActivity;
- use app\constants\OptionSetting;
- use app\models\ActivityCutPriceGoods;
- use app\models\District;
- use app\models\Option;
- use app\models\PtActivityGoods;
- use app\models\SeckillActivityGoods;
- use yii\base\Model;
- class StoreActivityForm extends Model
- {
- public $latitude;
- public $longitude;
- public function rules()
- {
- return [
- [['latitude', 'longitude'], 'number']
- ];
- }
- //获取区级列表
- public function getDistrictList() {
- $latitude = !empty($this->latitude) ? $this->latitude : '0.00';
- $longitude = !empty($this->longitude) ? $this->longitude : '0.00';
- //获取区列表
- $tencent_map_key = Option::get('tencent_map_key', 0, 'saas', '')['value'];
- if (get_store_id() > 0) {
- $tencent_map_key = Option::get(OptionSetting::TENCENT_MAP_KEY, get_store_id(), 'pay', Option::get(OptionSetting::TENCENT_MAP_KEY, get_store_id(), 'store', '')['value'] ?: $tencent_map_key)['value'];
- }
- $place_url = 'https://apis.map.qq.com/ws/geocoder/v1/?location=' . $latitude . ',' . $longitude . '&key=' . $tencent_map_key;
- $json_place = file_get_contents($place_url);
- $place_arr = json_decode($json_place, true);
- $address = $place_arr['result']['address_component'];
- $city_id = District::findOne(['name' => $address['city'], 'level' => 'city'])->id;
- $district = [];
- if ($city_id) {
- $district = District::find()->where(['parent_id' => $city_id, 'level' => 'district'])->select('id, name')->asArray()->all();
- }
- return [
- 'code' => 0,
- 'msg' => 'success',
- 'data' => [
- 'district' => $district,
- ]
- ];
- }
- }
|