|
|
|
|
@ -44,13 +44,18 @@ class StatisticsController extends CommonController
|
|
|
|
|
* type="integer",
|
|
|
|
|
* description="进行中订单数"
|
|
|
|
|
* ),
|
|
|
|
|
* @OA\Property(
|
|
|
|
|
* property="orders_ongoing_in_today",
|
|
|
|
|
* type="integer",
|
|
|
|
|
* description="今日开始服务订单数"
|
|
|
|
|
* ),
|
|
|
|
|
* @OA\Property(
|
|
|
|
|
* property="orders_finished",
|
|
|
|
|
* type="integer",
|
|
|
|
|
* description="已完成订单数"
|
|
|
|
|
* ),
|
|
|
|
|
* @OA\Property(
|
|
|
|
|
* property="orders_finished_today",
|
|
|
|
|
* property="orders_finished_in_today",
|
|
|
|
|
* type="integer",
|
|
|
|
|
* description="今日出院人数"
|
|
|
|
|
* ),
|
|
|
|
|
@ -73,8 +78,9 @@ class StatisticsController extends CommonController
|
|
|
|
|
* "orders_all": "999",
|
|
|
|
|
* "orders_pending": "60",
|
|
|
|
|
* "orders_ongoing": "50",
|
|
|
|
|
* "orders_ongoing_in_today": "10",
|
|
|
|
|
* "orders_finished": "889",
|
|
|
|
|
* "orders_finished_today": "12",
|
|
|
|
|
* "orders_finished_in_today": "12",
|
|
|
|
|
* "paramedics": "126",
|
|
|
|
|
* "bill_today": "9980.00",
|
|
|
|
|
* "paramedic_has_order" : "10"
|
|
|
|
|
@ -93,30 +99,24 @@ class StatisticsController extends CommonController
|
|
|
|
|
$counts["orders_all"] = (new Orders())->ofProject($project_id)->count();
|
|
|
|
|
$counts["orders_pending"] = (new Orders())->ofProject($project_id)->whereIn("status", [Orders::STATUS_UNCONFIRMED, Orders::STATUS_UNASSIGNED])->count();
|
|
|
|
|
$counts["orders_ongoing"] = (new Orders())->ofProject($project_id)->where("status", Orders::STATUS_ONGOING)->count();
|
|
|
|
|
$counts["orders_ongoing_in_today"] = (new Orders())->ofProject($project_id)
|
|
|
|
|
->where("status", Orders::STATUS_ONGOING)
|
|
|
|
|
->whereRaw("DATEDIFF(`from_date`,now()) = 0")
|
|
|
|
|
->count();
|
|
|
|
|
$counts["orders_finished"] = (new Orders())->ofProject($project_id)->where("status", Orders::STATUS_FINISHED)->count();
|
|
|
|
|
$counts["orders_finished_today"] = (new Orders())->ofProject($project_id)->where("to_date", date("Y-m-d"))->where("status", Orders::STATUS_FINISHED)->count();
|
|
|
|
|
$counts["orders_finished_in_today"] = (new Orders())->ofProject($project_id)
|
|
|
|
|
->where("status", Orders::STATUS_FINISHED)
|
|
|
|
|
->whereRaw("DATEDIFF(`updated_at`,now()) = 0")
|
|
|
|
|
->count();
|
|
|
|
|
$counts["paramedics"] = (new Paramedic())->ofProject($project_id)->count();
|
|
|
|
|
$counts["bill_today"] = (new OrderItems())->where("service_date", date("Y-m-d"))->whereHas("order", function ($query) use ($project_id) {
|
|
|
|
|
$query->ofProject($project_id);
|
|
|
|
|
})->sum("total");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$counts["paramedic_has_order"] = (new Paramedic())->ofProject($project_id)->whereHas("orders",function($query) {
|
|
|
|
|
$counts["paramedic_has_order"] = (new Paramedic())->ofProject($project_id)->whereHas("orders", function ($query) {
|
|
|
|
|
$query->where("status", Orders::STATUS_ONGOING);
|
|
|
|
|
})->count();
|
|
|
|
|
|
|
|
|
|
// $counts["orders_ongoing_in_today"] = (new Orders())->ofProject($project_id)->whereHas("audits", function($query) {
|
|
|
|
|
// $query->whereRaw("DATEDIFF(`created_at`,now()) = 0")
|
|
|
|
|
// ->where("field_name","status")
|
|
|
|
|
// ->where("new_value", Orders::STATUS_ONGOING);
|
|
|
|
|
// })->count();
|
|
|
|
|
//
|
|
|
|
|
// $counts["orders_finished_in_today"] = (new Orders())->ofProject($project_id)->whereHas("audits", function($query) {
|
|
|
|
|
// $query->whereRaw("DATEDIFF(`created_at`,now()) = 0")
|
|
|
|
|
// ->where("field_name","status")
|
|
|
|
|
// ->where("new_value", Orders::STATUS_FINISHED);
|
|
|
|
|
// })->count();
|
|
|
|
|
|
|
|
|
|
if ($request->is_test) {
|
|
|
|
|
dd(DB::getQueryLog());
|
|
|
|
|
}
|
|
|
|
|
@ -241,7 +241,7 @@ class StatisticsController extends CommonController
|
|
|
|
|
$recharge_by_payment = $model_recharge->select("payment", "paid_at", "money", "order_id")->addSelect(DB::raw("sum(`money`) as total"))->groupBy("payment")->get()->keyBy("payment")->toArray();
|
|
|
|
|
$recharge = [];
|
|
|
|
|
$recharge["total"] = collect($recharge_by_payment)->sum("total");
|
|
|
|
|
$recharge["total_online"] = collect($recharge_by_payment)->filter(function($item) use ($payment_online_methods) {
|
|
|
|
|
$recharge["total_online"] = collect($recharge_by_payment)->filter(function ($item) use ($payment_online_methods) {
|
|
|
|
|
return in_array($item["payment"], array_keys($payment_online_methods));
|
|
|
|
|
})->sum("total");
|
|
|
|
|
|
|
|
|
|
|