ExpressController.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace mall\controllers;
  3. use bizMall\order\classes\OrderClass;
  4. use Yii;
  5. use common\components\util;
  6. class ExpressController extends BaseController
  7. {
  8. //计算距离和运费【另外还有个地方要同步修改,关键词calc_freight_distance】 ssh 20221003
  9. public function actionGetUserDistance()
  10. {
  11. $get = Yii::$app->request->get();
  12. $lng = $get['lng'] ?? '';
  13. $lat = $get['lat'] ?? '';
  14. //花束重量默认1.5
  15. $weight = 1.5;
  16. if (empty($lng) || empty($lat)) {
  17. util::fail('请填写收花地址吧');
  18. }
  19. $shop = $this->shop;
  20. $shopLong = $shop->long ?? '';
  21. $shopLat = $shop->lat ?? '';
  22. if (empty($shopLong) || empty($shopLat)) {
  23. util::fail('门店地址有问题');
  24. }
  25. $respond = OrderClass::getDistanceFee($lat, $lng, $shopLat, $shopLong, $weight);
  26. $distance = $respond['distance'] ?? 0;
  27. $showDistance = $respond['showDistance'] ?? 0;
  28. $fee = $respond['fee'] ?? 0;
  29. util::success(['distance' => $distance, 'showDistance' => $showDistance, 'fee' => $fee]);
  30. }
  31. }