Browse Source

骑手端

master
Lemon 5 years ago
parent
commit
663f2af3bd
  1. 10
      app/Constants/v3/ErrorCode.php
  2. 5
      app/Constants/v3/SsdbKeys.php
  3. 20
      app/Controller/v3/HorsemanController.php
  4. 64
      app/Service/v3/Implementations/HorsemanService.php
  5. 2
      app/Service/v3/Implementations/UserCenterBlockService.php
  6. 3
      app/Service/v3/Interfaces/HorsemanServiceInterface.php
  7. 5
      config/routes.php

10
app/Constants/v3/ErrorCode.php

@ -406,4 +406,14 @@ class ErrorCode extends AbstractConstants
* @Message("token解析失败") * @Message("token解析失败")
*/ */
const TOKEN_NOT_EXISTS = 1353; const TOKEN_NOT_EXISTS = 1353;
/************************************/
/* 骑手相关 1401-1450 */
/************************************/
/**
* 获取骑手坐标失败
* @Message("获取骑手坐标失败")
*/
const HORSEMAN_COORDINATE_FAIL = 1401;
} }

5
app/Constants/v3/SsdbKeys.php

@ -80,4 +80,9 @@ class SsdbKeys extends AbstractConstants
*/ */
const PARAMS_TOKEN = 'params_token_v3_'; const PARAMS_TOKEN = 'params_token_v3_';
/**
* @Message("骑手坐标")
*/
const HORSEMAN_COORDINATE = 'horseman_coordinate_';
} }

20
app/Controller/v3/HorsemanController.php

@ -19,4 +19,24 @@ class HorsemanController extends BaseController
{ {
return $this->success($this->horsemanService->getOrderList()); return $this->success($this->horsemanService->getOrderList());
} }
public function setHorsemanCoordinate()
{
$horsemanId = $this->request->input('horseman_id', -1);
$coordinate = $this->request->input('coordinate', -1);
return $this->success($this->horsemanService->setHorsemanCoordinate($horsemanId,$coordinate));
}
public function getHorsemanCoordinate()
{
$horsemanId = $this->request->input('horseman_id', -1);
$coordinate = $this->horsemanService->getHorsemanCoordinate($horsemanId);
return $this->success(['coordinate' => $coordinate]);
}
public function getOrderCoordinate()
{
$globalOrderId = $this->request->input('global_order_id', -1);
return $this->success($this->horsemanService->getOrderCoordinate($globalOrderId));
}
} }

64
app/Service/v3/Implementations/HorsemanService.php

@ -2,8 +2,15 @@
namespace App\Service\v3\Implementations; namespace App\Service\v3\Implementations;
use App\Model\v3\Market;
use App\Model\v3\OrderMain;
use Hyperf\Di\Annotation\Inject; use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\HorsemanServiceInterface; use App\Service\v3\Interfaces\HorsemanServiceInterface;
use Hyperf\Utils\ApplicationContext;
use App\Constants\v3\SsdbKeys;
use App\TaskWorker\SSDBTask;
use App\Constants\v3\ErrorCode;
use App\Exception\ErrorCodeException;
class HorsemanService implements HorsemanServiceInterface class HorsemanService implements HorsemanServiceInterface
{ {
public function do() public function do()
@ -24,4 +31,61 @@ class HorsemanService implements HorsemanServiceInterface
{ {
return '接入成功'; return '接入成功';
} }
/**
* 记录骑手坐标
*/
public function setHorsemanCoordinate($horsemanId,$coordinate){
$ssdb = ApplicationContext::getContainer()->get(SSDBTask::class);
if(false === $ssdb->exec('set', SsdbKeys::HORSEMAN_COORDINATE.$horsemanId,$coordinate)) {
return false;
}
return true;
}
/**
* 获取骑手坐标
*/
public function getHorsemanCoordinate($horsemanId){
$ssdb = ApplicationContext::getContainer()->get(SSDBTask::class);
$params = $ssdb->exec('get', SsdbKeys::HORSEMAN_COORDINATE.$horsemanId);
if ((false === $params) || empty($params)) {
throw new ErrorCodeException(ErrorCode::HORSEMAN_COORDINATE_FAIL, '获取骑手坐标失败');
}
return $params;
}
/**
* 获取订单起止坐标
*/
public function getOrderCoordinate($globalOrderId){
//获取订单信息
$order = OrderMain::where('global_order_id',$globalOrderId)
->select(
'lat as origi_lat',
'lng as origi_lng',
'state',
'market_id'
)
->first();
if($order->state != 3)
{
return false;
}
//获取市场信息
$market = Market::where('id',$order->market_id)
->select(
'lat as destination_lat',
'lng as destination_lng'
)
->first();
$res = [
'origi_lat' => $order->origi_lat,
'origi_lng' => $order->origi_lng,
'destination_lat' => $market->destination_lat,
'destination_lng' => $market->destination_lng
];
return $res;
}
} }

2
app/Service/v3/Implementations/UserCenterBlockService.php

@ -72,7 +72,7 @@ class UserCenterBlockService implements UserCenterBlockServiceInterface
[ [
'name' => '骑手端', 'icon' => $img_host . 'user_icons/service2.png', 'name' => '骑手端', 'icon' => $img_host . 'user_icons/service2.png',
'type' => 'page', 'type' => 'page',
'path' => '/pages/shopList/shopList?personal_id='.$item['data']['id'],
'path' => '/pages/deliverymanOrders/deliverymanOrders?employees_id='.$item['data']['id'],
'command'=>'sp_login' 'command'=>'sp_login'
] ]
); );

3
app/Service/v3/Interfaces/HorsemanServiceInterface.php

@ -10,4 +10,7 @@ interface HorsemanServiceInterface
public function check(); public function check();
public function undo(); public function undo();
public function getOrderList(); public function getOrderList();
public function setHorsemanCoordinate($horsemanId,$coordinate);
public function getHorsemanCoordinate($horsemanId);
public function getOrderCoordinate($globalOrderId);
} }

5
config/routes.php

@ -98,6 +98,10 @@ Router::addGroup('/v3/', function () {
Router::post('paramsToken/analyze', 'App\Controller\v3\ParamsTokenController@analyze'); Router::post('paramsToken/analyze', 'App\Controller\v3\ParamsTokenController@analyze');
Router::post('goods/getTags', 'App\Controller\v3\GoodsController@getTags'); Router::post('goods/getTags', 'App\Controller\v3\GoodsController@getTags');
Router::post('home/market', 'App\Controller\v3\HomeController@marketInfo'); Router::post('home/market', 'App\Controller\v3\HomeController@marketInfo');
Router::post('horseman/getOrderList', 'App\Controller\v3\HorsemanController@getOrderList');
Router::post('horseman/getHorsemanCoordinate', 'App\Controller\v3\HorsemanController@getHorsemanCoordinate');
Router::post('horseman/getOrderCoordinate', 'App\Controller\v3\HorsemanController@getOrderCoordinate');
Router::post('horseman/setHorsemanCoordinate', 'App\Controller\v3\HorsemanController@setHorsemanCoordinate');
},['middleware' => [\App\Middleware\Auth\ApiMiddleware::class]]); },['middleware' => [\App\Middleware\Auth\ApiMiddleware::class]]);
// 需要登录的路由 // 需要登录的路由
@ -167,7 +171,6 @@ Router::addGroup('/v3/', function () {
Router::post('store/updateIsRest', 'App\Controller\v3\StoreController@updateIsRest'); Router::post('store/updateIsRest', 'App\Controller\v3\StoreController@updateIsRest');
Router::post('coupon/getAvailableListByNewUser', 'App\Controller\v3\CouponController@getAvailableListByNewUser'); Router::post('coupon/getAvailableListByNewUser', 'App\Controller\v3\CouponController@getAvailableListByNewUser');
Router::post('coupon/receive', 'App\Controller\v3\CouponController@receive'); Router::post('coupon/receive', 'App\Controller\v3\CouponController@receive');
Router::post('horseman/getOrderList', 'App\Controller\v3\HorsemanController@getOrderList');
},['middleware' => [\App\Middleware\Auth\ApiMiddleware::class, \App\Middleware\Auth\UserMiddleware::class]]); },['middleware' => [\App\Middleware\Auth\ApiMiddleware::class, \App\Middleware\Auth\UserMiddleware::class]]);
// 微信支付回调 // 微信支付回调

Loading…
Cancel
Save