weizong song 5 years ago
parent 3ae9bb3ae7
commit 36278a699e

@ -189,7 +189,9 @@ class OrdersController extends CommonController
$order = $model->with([
"orderItems" => function ($query) {
}
},
"recharges",
"refunds"
])->find($id);
$order = $order->refreshTotal();
$order->balance = $order->customer->balance;

@ -120,46 +120,33 @@ class Orders extends SoftDeletesModel
public function firstItem()
{
return $this->hasOne(OrderItems::class, "order_id")->with([
"productItem",
"productParamedicLevel",
"bed",
"paramedic"
]);
return $this->hasOne(OrderItems::class, "order_id");
}
public function lastItem()
{
return $this->hasOne(OrderItems::class, "order_id")->with([
"productItem",
"productParamedicLevel",
"bed",
"paramedic"
])->orderBy("id", "desc");
return $this->hasOne(OrderItems::class, "order_id");
}
public function orderItems()
{
return $this->hasMany(OrderItems::class, "order_id")->with([
"productItem",
"productParamedicLevel",
"bed",
"paramedic"
"paramedic" => function ($query) {
$query
->select("paramedic.id", "paramedic.name")
->leftJoin("paramedic_level", "paramedic_level.id", "=", "paramedic.paramedic_level_id")
->addSelect("paramedic_level.name as paramedic_level_name");
},
"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");
}
]);
}
public function handlingApprovalItem()
{
return $this->morphOne(ApprovalItems::class, "belongs")->whereHas("approval", function ($query) {
$query->where("status", Approval::STATUS_HANDLING)->whereRaw(" TIMESTAMPDIFF(SECOND,DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s'),`expire_at`) > 0 ");
})->orderBy("id", "desc");
}
public function lastApproval()
{
return $this->hasOne(Approval::class, "order_id", "id")->orderBy("id", "desc");
}
public function customer()
{
return $this->belongsTo(Customer::class)->select(["id", "name", "mobile", "username", "sex", "balance", "openid", "unionid"]);
@ -227,7 +214,10 @@ class Orders extends SoftDeletesModel
public function recharges()
{
return $this->hasMany(Recharge::class, "order_id", "id")->whereNotNull("paid_at");
return $this
->hasMany(Recharge::class, "order_id", "id")
->whereNotNull("paid_at")
->select("id", "order_id", "serial", "money", "payment", "payment_serial", "remark");
}
public function refunds()

@ -8,25 +8,26 @@ use App\Manager;
class Recharge extends SoftDeletesModel
{
protected $table = "recharge";
protected $appends = ["payment_name"];
public function getPaymentLabelAttribute()
public function getPaymentNameAttribute()
{
$payment_label = $this->payment;
$payment_name = $this->payment;
switch ($this->payment) {
case "weixin":
$payment_label = "微信";
$payment_name = "微信";
break;
case "alipay":
$payment_label = "支付宝";
$payment_name = "支付宝";
break;
case "cash":
$payment_label = "现金";
$payment_name = "现金";
break;
case "pos":
$payment_label = "POS机";
$payment_name = "POS机";
break;
}
return $payment_label;
return $payment_name;
}
public function customer()
@ -44,12 +45,14 @@ class Recharge extends SoftDeletesModel
return $this->belongsTo(Orders::class);
}
public function patient() {
return $this->hasOneThrough(Patient::class, Orders::class,"id","id","order_id","patient_id");
public function patient()
{
return $this->hasOneThrough(Patient::class, Orders::class, "id", "id", "order_id", "patient_id");
}
public function refunds() {
return $this->hasMany(Refund::class,"recharge_id");
public function refunds()
{
return $this->hasMany(Refund::class, "recharge_id");
}
public function getSerial()

Loading…
Cancel
Save