Browse Source

订单统计

master
liangyuyan 5 years ago
parent
commit
a3252812a9
  1. 37
      app/Admin/Controllers/v3/OrderReportController.php
  2. 136
      app/Admin/Extensions/OrderReportPage.php
  3. 3
      app/Admin/routes.php
  4. 19
      resources/views/orderReport.php

37
app/Admin/Controllers/v3/OrderReportController.php

@ -11,6 +11,9 @@ use Dcat\Admin\Layout\Content;
use Dcat\Admin\Form\Row; use Dcat\Admin\Form\Row;
use Dcat\Admin\Grid\Column; use Dcat\Admin\Grid\Column;
use App\Models\v3\Market as marketModel; use App\Models\v3\Market as marketModel;
use App\Models\ImsCjdcOrder as OrderModel;
use Illuminate\Support\Facades\DB;
use App\Admin\Extensions\OrderReportPage;
class OrderReportController extends AdminController class OrderReportController extends AdminController
{ {
@ -29,25 +32,21 @@ class OrderReportController extends AdminController
public function index(Content $content) public function index(Content $content)
{ {
return $content
->header('Dashboard')
->description('Description...')
->body(function (Row $row) {
$row->column(6, function (Column $column) {
$column->row();
$column->row();
});
// $marketId = request()->input('market_id');
$row->column(6, function (Column $column) {
$column->row(function (Row $row) {
$row->column();
$row->column();
});
$where = [];
$column->row();
$column->row();
});
});
$orderTable = 'lanzu_order_main';
// $order = DB::select('SELECT COUNT(id) AS total_num, SUM(money) AS total_money, FROM '.$orderTable.' WHERE state IN (4,5,10) ', $where);
// 实例化表单类并传递自定义参数
$detail = OrderReportPage::make();
return $content->header("")
->breadcrumb(
['text' => '详情', 'url' => 'detail']
)
->body(Lazy::make($detail));
} }
/** /**
@ -59,7 +58,7 @@ class OrderReportController extends AdminController
*/ */
protected function detail($id) protected function detail($id)
{ {
return Show::make($id, new StoreUserReport(), function (Show $show) {
return Show::make($id, new OrderModel(), function (Show $show) {
$show->id; $show->id;
$show->market_id; $show->market_id;
$show->name; $show->name;
@ -74,7 +73,7 @@ class OrderReportController extends AdminController
*/ */
protected function form() protected function form()
{ {
return Form::make(new StoreUserReport(), function (Form $form) {
return Form::make(new OrderModel(), function (Form $form) {
$form->display('id'); $form->display('id');
$form->text('market_id'); $form->text('market_id');
$form->text('name'); $form->text('name');

136
app/Admin/Extensions/OrderReportPage.php

@ -0,0 +1,136 @@
<?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 OrderReportPage 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::getOrderData($this->order_id);
if ($order) {
// $search = array(" "," ","\n","\r","\t");
// $replace = array("","","","","");
// $order['address'] = str_replace($search, $replace, $order['address']);
//>>2.获取子订单
$result = ImsCjdcOrder::getOrdersData($order['global_order_id'],$order['id']);
$orders = json_encode($result['orders']);
$showRefund = json_encode($result['show_refund']);
$path = "order?page=".$this->page;
Admin::script(
<<<JS
var orders = JSON.stringify($orders)
var show_refund = JSON.stringify($showRefund)
var app = new Vue({
el:"#detail",
data:{
dialogFormVisible: false,
order_num: "{$order['order_num']}",
name: "{$order['name']}",
state: "{$order['state']}",
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']}",
distance: "{$order['delivery_distance']}",
orders: JSON.parse(orders),
show_refund: JSON.parse(show_refund),
refund_2:"退款",
refund_3:"已同意退款",
refund_goods_name:"",
global_order_id:"{$order['global_order_id']}",
user_id:"{$order['user_id']}",
order_goods_id:null,
order_child_id:null,
show_refund_2:true,
show_refund_3:false,
path:"{$path}"
},
methods: {
refundNote(name,order_goods_id,order_child_id) {
this.dialogFormVisible = true;
this.order_goods_id=order_goods_id;
this.order_child_id=order_child_id;
this.refund_goods_name ="退款备注商品 ["+name+"]" ;
},
refundConfirm() {
if (this.total_refund_note==''){
this.\$message({message: '请备注退款原因!',type: 'warning'})
return false;
}
this.\$confirm('是否同意该商品退款?', '提示', {
confirmButtonText: '同意',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
that = this;
$.ajax({
url: "order_goods_refund",
type: "get",
contentType: "text/html; charset=utf-8",
dataType: "json",
data: {
user_id:that.user_id,
note:that.total_refund_note,
global_order_id:that.global_order_id,
order_child_id:that.order_child_id,
order_goods_id:that.order_goods_id
},
success: function (res) {
if (res.code==0){
that.\$message({
message: '退款成功',
type: 'success'
})
that.show_refund[that.order_goods_id].show_refund_2=false
that.show_refund[that.order_goods_id].show_refund_3=true
}else {
that.\$message.error('提现失败');
}
that.dialogFormVisible = false;
},
error: function (xhr, err) {
console.log("错误", err)
}
});
}).catch(() => {
});
}
}
});
JS
);
}
return view('orderdetail');
}
}

3
app/Admin/routes.php

@ -81,5 +81,8 @@ Route::group([
//地区 //地区
$router->any('/api/area', 'LanzuArea@getArea'); $router->any('/api/area', 'LanzuArea@getArea');
// 订单统计
$router->any('/order_report', 'v3\OrderReportController@index');
}); });

19
resources/views/orderReport.php

@ -0,0 +1,19 @@
<div id="orderReport">
<!-- 订单数据 -->
<div>
<div>
<p>订单总额(元)</p>
<p>{$order.total_money}</p>
</div>
</div>
<!-- 订单数据 end -->
<!-- 用户数据 -->
<div>
<div>
<p>现存用户(位)</p>
<p>1000</p>
</div>
<!-- 用户数据 end -->
</div>
Loading…
Cancel
Save