|
|
|
|
@ -133,8 +133,8 @@ class OrdersController extends CommonController
|
|
|
|
|
$model = new Paramedic();
|
|
|
|
|
$model = $model->where("project_id", $bed->project_id);
|
|
|
|
|
$model = $model->where("status", 1);
|
|
|
|
|
$model = $model->with(["levelInProject"]);
|
|
|
|
|
$model = $model->select("id", "name", "avatar", "sex", "birthday", "hometown", "work_years", "paramedic_level_id");
|
|
|
|
|
$model = $model->with(["project", "levelInProject"]);
|
|
|
|
|
$model = $model->select("id", "name", "avatar", "sex", "birthday", "hometown", "work_years", "paramedic_level_id", "project_id");
|
|
|
|
|
//性别筛选:如果是女患者,选择女的护工
|
|
|
|
|
if ($request->sex == "女") {
|
|
|
|
|
$model = $model->where("sex", "女");
|
|
|
|
|
@ -238,7 +238,7 @@ class OrdersController extends CommonController
|
|
|
|
|
* @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"),
|
|
|
|
|
* @OA\Parameter(name="keyword", in="query", @OA\Schema(type="string"), required=false, description="查询关键词"),
|
|
|
|
|
* @OA\Parameter(name="page", in="query", @OA\Schema(type="integer"), required=false, description="当前页码,默认为1"),
|
|
|
|
|
* @OA\Parameter(name="pageLength", in="query", @OA\Schema(type="integer"), required=false, description="每页数量,默认为5"),
|
|
|
|
|
* @OA\Parameter(name="page_size", in="query", @OA\Schema(type="integer"), required=false, description="每页数量,默认为5"),
|
|
|
|
|
* @OA\Parameter(name="status", in="query", @OA\Schema(type="string"), required=false, description="订单状态:[unconfirmed=>待确认,unassigned=>待派单,ongoing=>进行中,finished=>已完成]"),
|
|
|
|
|
* @OA\Response(
|
|
|
|
|
* response="200",
|
|
|
|
|
@ -271,6 +271,7 @@ class OrdersController extends CommonController
|
|
|
|
|
//
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$page_size = request()->page_size ?? 5;
|
|
|
|
|
$data = $data->with([
|
|
|
|
|
"customer",
|
|
|
|
|
"project",
|
|
|
|
|
@ -282,7 +283,7 @@ class OrdersController extends CommonController
|
|
|
|
|
$query->with(["room", "building"]);
|
|
|
|
|
},
|
|
|
|
|
"paramedic"
|
|
|
|
|
])->paginate(5);
|
|
|
|
|
])->paginate($page_size);
|
|
|
|
|
foreach ($data as $order) {
|
|
|
|
|
$order = $order->refreshTotal();
|
|
|
|
|
}
|
|
|
|
|
@ -329,6 +330,51 @@ class OrdersController extends CommonController
|
|
|
|
|
return response()->json($order->toArray());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @OA\Get(
|
|
|
|
|
* path="/customer/get-project-paramedics/{project_id}",
|
|
|
|
|
* summary="V2-获取护工列表",
|
|
|
|
|
* description="获取护工列表",
|
|
|
|
|
* @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"),
|
|
|
|
|
* @OA\Parameter(name="project_id", in="path", @OA\Schema(type="integer"), required=true, description="project_id"),
|
|
|
|
|
* @OA\Parameter(name="order_by", in="query", @OA\Schema(type="string"), required=false, description="排序方式:age|work_years|stars(暂不支持)"),
|
|
|
|
|
* @OA\Parameter(name="asc_or_desc", in="query", @OA\Schema(type="string"), required=false, description="升序或降序,默认升序asc"),
|
|
|
|
|
* @OA\Parameter(name="page", in="query", @OA\Schema(type="integer"), required=false, description="当前页码,默认为1"),
|
|
|
|
|
* @OA\Parameter(name="page_size", in="query", @OA\Schema(type="integer"), required=false, description="每页数量,默认为5"),
|
|
|
|
|
* @OA\Response(
|
|
|
|
|
* response="200",
|
|
|
|
|
* description="获取护工列表"
|
|
|
|
|
* )
|
|
|
|
|
* )
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
public function getProjectParamedics($project_id)
|
|
|
|
|
{
|
|
|
|
|
$model = new Paramedic();
|
|
|
|
|
$model = $model->ofProject($project_id);
|
|
|
|
|
$model = $model->where("status", 1);
|
|
|
|
|
$model = $model->with(["project", "levelInProject"]);
|
|
|
|
|
$model = $model->select("id", "name", "avatar", "sex", "birthday", "hometown", "work_years", "paramedic_level_id", "project_id");
|
|
|
|
|
|
|
|
|
|
$asc_or_desc = request()->asc_or_desc == "desc" ? "desc" : "asc";
|
|
|
|
|
switch (request()->order_by) {
|
|
|
|
|
case "age":
|
|
|
|
|
$order_by = "birthday";
|
|
|
|
|
$asc_or_desc = $asc_or_desc == "desc" ? "asc" : "desc";
|
|
|
|
|
break;
|
|
|
|
|
case "work_years":
|
|
|
|
|
$order_by = "work_years";
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
$order_by = "id";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$page_size = request()->page_size ?? 5;
|
|
|
|
|
$paramedics = $model->orderBy($order_by, $asc_or_desc)->paginate($page_size);
|
|
|
|
|
|
|
|
|
|
return response()->json($paramedics ? $paramedics->toArray() : null);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @OA\Get(
|
|
|
|
|
* path="/customer/get-paramedic/{id}",
|
|
|
|
|
@ -345,7 +391,7 @@ class OrdersController extends CommonController
|
|
|
|
|
|
|
|
|
|
public function getParamedic($id)
|
|
|
|
|
{
|
|
|
|
|
$paramedic = (new Paramedic())->with(["level"])->find($id);
|
|
|
|
|
$paramedic = (new Paramedic())->with(["level", "project"])->find($id);
|
|
|
|
|
return response()->json($paramedic ? $paramedic->toArray() : null);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|