|
|
|
|
@ -32,9 +32,27 @@ class AttachAffectedOrders
|
|
|
|
|
return $order;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$model = Orders::with([
|
|
|
|
|
"bed" => function ($query) {
|
|
|
|
|
$query->select("bed.id", "bed.name")
|
|
|
|
|
->leftJoin("building", "building.id", "=", "bed.building_id")
|
|
|
|
|
->leftJoin("area", "area.id", "=", "bed.area_id")
|
|
|
|
|
->leftJoin("room", "room.id", "=", "bed.room_id")
|
|
|
|
|
->addSelect("room.name as room_name", "area.name as area_name", "building.name as building_name");
|
|
|
|
|
},
|
|
|
|
|
"patient" => function ($query) {
|
|
|
|
|
$query->select("id", "name", "sex", "age", "mobile");
|
|
|
|
|
},
|
|
|
|
|
"paramedic" => function ($query) {
|
|
|
|
|
$query->select("paramedic.id", "paramedic.name", "paramedic.mobile")
|
|
|
|
|
->leftJoin("paramedic_level", "paramedic_level.id", "=", "paramedic.paramedic_level_id")
|
|
|
|
|
->addSelect("paramedic_level.name as paramedic_level_name");
|
|
|
|
|
}
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
//更换护工,查询从原护工手上退出订单后,原护工的其他订单是否变成了1对1
|
|
|
|
|
if ($from_paramedic) {
|
|
|
|
|
$last_orders = Orders::where("paramedic_id", $from_paramedic)
|
|
|
|
|
$last_orders = $model->where("paramedic_id", $from_paramedic)
|
|
|
|
|
->where("status", Orders::STATUS_ONGOING)
|
|
|
|
|
->where("paramedic_id", "<>", $order->paramedic_id) //剔除未更换护工的情况
|
|
|
|
|
->get();
|
|
|
|
|
@ -48,7 +66,7 @@ class AttachAffectedOrders
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询护工新接手一张单之后,是否有订单从1对1变成了1对多
|
|
|
|
|
$new_same_paramedic_orders = Orders::where("paramedic_id", $order->paramedic_id)
|
|
|
|
|
$new_same_paramedic_orders = $model->where("paramedic_id", $order->paramedic_id)
|
|
|
|
|
->where("status", Orders::STATUS_ONGOING)
|
|
|
|
|
->where("id", "<>", $order->id) //剔除订单本身
|
|
|
|
|
->get();
|
|
|
|
|
|