188 lines
5.4 KiB
PHP
188 lines
5.4 KiB
PHP
<?php
|
|
|
|
namespace app\worker\controller;
|
|
|
|
use app\common\controller\WorkerApi;
|
|
|
|
class OrderDispatch extends WorkerApi
|
|
{
|
|
protected $noNeedLogin = [];
|
|
|
|
/**
|
|
* 待接单列表
|
|
* @return void
|
|
*/
|
|
public function index()
|
|
{
|
|
$res = $this->getOrderDispatchService()->dispatchList($this->user['id'], $this->request->request('page_size', 20));
|
|
$this->success('获取成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 派单详情
|
|
* @return void
|
|
*/
|
|
public function info()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.info');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->dispatchInfo($this->user['id'], $this->request->request('order_dispatch_id'));
|
|
$this->success('获取成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 工作台订单列表
|
|
* @return void
|
|
*/
|
|
public function workbenchOrderList()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.workbenchOrderList');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$pageSize = $this->request->request('page_size', 20);
|
|
$type = $this->request->request('workbench_type');
|
|
$needVisitType = $this->request->request('need_visit_type');
|
|
$res = $this->getOrderDispatchService()->workbenchOrderList($this->user['id'], $type, $pageSize, $needVisitType);
|
|
$this->success('获取成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 统计工作台订单
|
|
*/
|
|
public function countWorkbenchOrder()
|
|
{
|
|
$res = $this->getOrderDispatchService()->countWorkbenchOrder($this->user['id']);
|
|
$this->success('获取成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 接单/拒接
|
|
* @return void
|
|
*/
|
|
public function orderConfirm()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.orderConfirm');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->orderConfirm($this->user['id'], $params);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 提交预约上门时间
|
|
* @return void
|
|
*/
|
|
public function appointmentTime()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.appointmentTime');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->appointmentTime($this->user['id'], $params['order_dispatch_id'], $params['plan_time']);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 更新施工进度
|
|
* @return void
|
|
*/
|
|
public function updateProgress()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.updateProgress');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->updateProgress($this->user['id'], $params);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 修改上门时间
|
|
* @return void
|
|
*/
|
|
public function updatePlanTime()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.appointmentTime');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->updatePlanTime($this->user['id'], $params['order_dispatch_id'], $params['plan_time']);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 提交上门信息
|
|
* @return void
|
|
*/
|
|
public function arrivedOnSite()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.arrivedOnSite');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->arrivedOnSite($this->user['id'], $params['order_dispatch_id'], $params['images']);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
public function completeService()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.completeService');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
if ($params['final_payment_method'] == 1 && empty($params['offline_total_type'])) {
|
|
$this->error('线下尾款需选择尾款收款方');
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->completeService($this->user['id'], $params);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
|
|
/**
|
|
* 保存师傅备注
|
|
* @return void
|
|
*/
|
|
public function saveWorkerRemark()
|
|
{
|
|
$params = $this->request->request();
|
|
$validate = $this->validate($params, \app\worker\validate\OrderDispatch::class . '.saveWorkerRemark');
|
|
if ($validate !== true) {
|
|
$this->error($validate);
|
|
}
|
|
|
|
$res = $this->getOrderDispatchService()->saveWorkerRemark($this->user['id'], $params['order_dispatch_id'], $params['worker_remark']);
|
|
$this->success('操作成功', $res);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|