diff --git a/app/Admin/Common/Order.php b/app/Admin/Common/Order.php
index 77255ad..70e61f7 100644
--- a/app/Admin/Common/Order.php
+++ b/app/Admin/Common/Order.php
@@ -55,7 +55,9 @@ class Order
->toArray();
$result = count($result);
}elseif ($params['data_type']=='number'){//订单数
+ //DB::connection()->enableQueryLog();
$result = $buildData->count();
+ //dd(DB::connection()->getQueryLog());
}elseif ($params['data_type']=='amount'){//订单金额
$result = $buildData->sum('money');
}elseif ($params['data_type']=='shipping'){//配送方式
diff --git a/app/Admin/Common/Rpc.php b/app/Admin/Common/Rpc.php
index e53655b..bb143e1 100644
--- a/app/Admin/Common/Rpc.php
+++ b/app/Admin/Common/Rpc.php
@@ -3,7 +3,6 @@
namespace App\Admin\Common;
-
use Graze\GuzzleHttp\JsonRpc\Client;
class Rpc
@@ -16,6 +15,7 @@ class Rpc
const DO_BY_ORDER = "/badge/doByOrder";//订单状态变更
const ALI_SMS_SENT = "/alisms/sent";//发短信
const FEI_E_PRINT = '/feie/doPrint';//订单打印
+ const ORDER_DELIVERY_START= '/orders/onlineDeliveryStart';//订单打印
@@ -152,4 +152,16 @@ class Rpc
return $response->getBody()->getContents();
}
+
+ public static function onlineDeliveryStart($global_order_id)
+ {
+ $client = Client::factory(env('RPC_SITE_HOST'));
+ $request = $client->request(uniqid(),
+ self::ORDER_DELIVERY_START,
+ ['global_order_id' => $global_order_id]
+ );
+ $response = $client->send($request);
+ return $response->getBody()->getContents();
+ }
+
}
diff --git a/app/Admin/Controllers/v3/Salesman.php b/app/Admin/Controllers/v3/Salesman.php
index 4fecc7d..4589575 100644
--- a/app/Admin/Controllers/v3/Salesman.php
+++ b/app/Admin/Controllers/v3/Salesman.php
@@ -4,17 +4,15 @@
namespace App\Admin\Controllers\v3;
-use App\Admin\Actions\Lazy\CsInfo;
use App\Admin\Actions\Tools\SalesmanOption;
use App\Admin\Actions\Tools\SalesmanOptionCopy;
-use App\Http\Controllers\TestController;
-use App\Models\LanzuMarket;
+use App\Admin\Common\Order;
+use App\Models\LanzuUserRelationBind;
use App\Models\v3\LanzuEmployees;
use App\Models\v3\SalesmanData;
use Dcat\Admin\Admin;
use Dcat\Admin\Controllers\AdminController;
use Dcat\Admin\Grid;
-use Dcat\Admin\Widgets\Modal;
use Maatwebsite\Excel\Facades\Excel;
class Salesman extends AdminController
@@ -42,54 +40,56 @@ class Salesman extends AdminController
});
} else {
$adu = Admin::user();
- return Grid::make(new \App\Admin\Repositories\v3\Salesman(), function (Grid $grid)use ($adu) {
+ return Grid::make(new \App\Admin\Repositories\v3\Salesman(), function (Grid $grid) use ($adu) {
$grid->tools(new SalesmanOption());
- $name = request()->get('name') ?(request()->get('name')=='全部'?'总':request()->get('name')): '';
+ $name = request()->get('name') ? (request()->get('name') == '全部' ? '总' : request()->get('name')) : '';
$option = request()->get('option') ?? 0;
+ list($beginTime,$endTime) = Order::beginAndEnd($option);
$searchTime = request()->input('created_at');//搜索时间
- if ($searchTime){
+ if ($searchTime) {
$content = " 导出 ";
- }else{
+ } else {
$content = " 导出 ";
}
$grid->tools($content);
$grid->paginate(10);
$grid->column('person_id', '懒ID');
- $grid->column('nick_name', '拓展员')->display(function (){
- $row = LanzuEmployees::where('user_id',$this->person_id)->where('status',1)->first();
- if ($row){
+ $grid->column('nick_name', '拓展员')->display(function () {
+ $row = LanzuEmployees::where('user_id', $this->person_id)->where('status', 1)->first();
+ if ($row) {
return $row->name;
}
return $this->nick_name;
});
$grid->column('total', '社区总数');
- $grid->column('user_id', '绑定用户数')->display(function ($uid) {
+ $grid->column('user_id', $name.'绑定用户数')->display(function ($uid) use ($beginTime,$endTime) {
if ($uid) {
- return count(explode(',', $uid));
+ $count = LanzuUserRelationBind::whereIn('user_id',explode(',', $uid))->whereBetween('created_at',[$beginTime,$endTime])->count();
+ return $count;
}
return 0;
});
//$grid->column('order_user_num', $name.'下单人数');
$grid->column('order_num', $name . '订单数');
$grid->column('order_amount', $name . '成交额');
- $grid->actions(function (Grid\Displayers\Actions $actions) use ($name, $option,$searchTime) {
+ $grid->actions(function (Grid\Displayers\Actions $actions) use ($name, $option, $searchTime) {
$row = $actions->row->toArray();
- $actions->append(new \App\Admin\Extensions\Salesman($row['admin_user_id'], $name, $option,$searchTime, '详情'));
+ $actions->append(new \App\Admin\Extensions\Salesman($row['admin_user_id'], $name, $option, $searchTime, '详情'));
});
$grid->disableCreateButton();
$grid->disableEditButton();
$grid->disableDeleteButton();
$grid->disableViewButton();
- $grid->filter(function (Grid\Filter $filter)use ($option,$adu) {
- if (!$adu->isRole('lanzu_cs')){
- $filter->equal('person_id','懒ID');
- $filter->equal('user_id','拓展员')->select(
- LanzuEmployees::where('status',1)->pluck('name','user_id')
+ $grid->filter(function (Grid\Filter $filter) use ($option, $adu) {
+ if (!$adu->isRole('lanzu_cs')) {
+ $filter->equal('person_id', '懒ID');
+ $filter->equal('user_id', '拓展员')->select(
+ LanzuEmployees::where('status', 1)->pluck('name', 'user_id')
);
}
- if ($option==0){
- $filter->between('created_at','日期')->datetime();
+ if ($option == 0) {
+ $filter->between('created_at', '日期')->datetime();
}
});
});
@@ -104,8 +104,8 @@ class Salesman extends AdminController
{
$name = request()->get('name');
$option = request()->get('option');
- $time = date('Y-m-d H:i:s',time());
- return Excel::download(new \App\Admin\Actions\Excel\SalesMan($option,$name), $time.'.xlsx');
+ $time = date('Y-m-d H:i:s', time());
+ return Excel::download(new \App\Admin\Actions\Excel\SalesMan($option, $name), $time . '.xlsx');
}
diff --git a/app/Admin/Forms/SelectHorseman.php b/app/Admin/Forms/SelectHorseman.php
index 2354a6b..c0d86fe 100644
--- a/app/Admin/Forms/SelectHorseman.php
+++ b/app/Admin/Forms/SelectHorseman.php
@@ -3,6 +3,7 @@
namespace App\Admin\Forms;
use App\Admin\Common\Auth;
+use App\Admin\Common\Rpc;
use App\Libs\SsdbClient;
use App\Models\ImsCjdcMarket;
use App\Models\ImsCjdcOrderMain;
@@ -28,19 +29,19 @@ class SelectHorseman extends Form
{
$hid = request()->input('horseman_id');
$oid = request()->input('order_id');
-
$current_page = request()->input('current_page');
$horseman = LanzuEmployees::getName($hid);//骑手名称
$result = ImsCjdcOrderMain::where('id',$oid)->update(['shipping_type'=>1,'horseman_id'=>$hid,'shipping_name'=>$horseman,'updated_at'=>time()]);
-
if ($result){
- //指定骑手后,初始化骑手位置,默认将市场经纬做为骑手默认经纬
- $mid = ImsCjdcOrderMain::where('id',$oid)->pluck('market_id');
+ //>>1.指定骑手后,初始化骑手位置,默认将市场经纬做为骑手默认经纬
+ $row = ImsCjdcOrderMain::where('id',$oid)->select('market_id','global_order_id')->first();
+ $mid = $row->market_id;
$market = ImsCjdcMarket::where('id',$mid)->first();
$ssdb = SsdbClient::client(env('SSDB_HOST'), env('SSDB_PORT'));
$coordinate = $market->lng.','.$market->lat;
$ssdb->set("horseman_coordinate_{$hid}",$coordinate);
-
+ //>>2.配送开始后,给用户发送消息通知
+ Rpc::onlineDeliveryStart($row->global_order_id);
return $this->success('操作成功',"order?page={$current_page}");
}else{
return $this->error('操作失败');