链街Dcat后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

106 lines
3.9 KiB

<?php
namespace App\Admin\Extensions;
use App\Admin\Common\LinkUrl;
use App\Models\ImsCjdcOrder;
use App\Models\ImsCjdcOrderMain;
use App\Models\LanzuOrderGoods;
use App\Models\LanzuServiceHorseman;
use Dcat\Admin\Admin;
use Dcat\Admin\Support\LazyRenderable;
use Endroid\QrCode\Exceptions\DataDoesntExistsException;
class MyDetailPage extends LazyRenderable
{
protected static $js = [LinkUrl::VUE_JS, LinkUrl::ELEMENT_UI_JS];
protected static $css = [LinkUrl::DETAIL_CSS, LinkUrl::ELEMENT_UI_CSS];
public function render()
{
//>>1.主订单数据
$order = ImsCjdcOrderMain::where('id', $this->order_id)->first()->toArray();
if ($order) {
$order['created_at'] = date('Y-m-d H:i:s', $order['created_at']);
$order['updated_at'] = $order['updated_at'] ? date('Y-m-d H:i:s', $order['updated_at']) : null;
$order['pay_type'] = config('order.pay_type')[$order['pay_type']];
$order['shipping_type'] = config('order.shipping_type')[$order['shipping_type']];
$order['horseman_name'] = LanzuServiceHorseman::getName($order['horseman_id']);
//>>2.获取子订单
$orders = ImsCjdcOrder::with('user')->with('store')
->where('order_main_id', $order['id'])->get()->toArray();
if (count($orders)) {
foreach ($orders as &$or) {
if (substr($or['store']['logo'], 0, 4) != 'http') {
$or['store']['logo'] = env('IMG_HOST') . '/' . $or['store']['logo'];
}
$or['goods'] = LanzuOrderGoods::where('order_id', $or['id'])->get()->toArray();
}
}
//dd($orders);
$orders = json_encode($orders);
}
//配送距离
//配送费
//拒绝退款理由
//退款总备注原因,单个商品或者单个子订单
Admin::script(
<<<JS
var orders = JSON.stringify($orders)
var app = new Vue({
el:"#detail",
data:{
order_num: "{$order['order_num']}",
name: "{$order['name']}",
created_at: "{$order['created_at']}",
updated_at: "{$order['updated_at']}",
pay_type: "{$order['pay_type']}",
shipping_type: "{$order['shipping_type']}",
tel: "{$order['tel']}",
delivery_time_note: "{$order['delivery_time_note']}",
refuse_refund_note: "{$order['refuse_refund_note']}",
total_refund_note: "{$order['total_refund_note']}",
address: "{$order['address']}",
note: "{$order['note']}",
money: "{$order['money']}",
total_money: "{$order['total_money']}",
services_money: "{$order['services_money']}",
coupon_money: "{$order['coupon_money']}",
delivery_money: "{$order['delivery_money']}",
horseman_name: "{$order['horseman_name']}",
orders: JSON.parse(orders)
},
methods: {
refund() {
this.\$confirm('是否同意该商品退款?', '提示', {
confirmButtonText: '同意',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.\$message({
type: 'success',
message: '操作成功!'
});
}).catch(() => {
});
}
}
});
JS
);
return view('orderdetail');
}
}