xieruidong 2 年之前
父节点
当前提交
1a60d8bb39

+ 26 - 0
application/admin/controller/Overview.php

@@ -30,6 +30,32 @@ class Overview extends Backend
         } catch (\Exception $e) {
 
         }
+        list($defDate)=$this->rangeTime('asdasdasd');
+        $this->assign('defDate',$defDate);
+        if($this->request->isAjax()){
+            $filter=json_decode(input('filter'),true);
+            $map=[];
+            if(!empty($filter['date'])){
+                list($time1,$time2)=explode(' - ',$filter['date']);
+                $map['create_time']=['between',[strtotime($time1),strtotime($time2)]];
+            }
+            list($where, $sort, $order, $offset, $limit) = $this->buildparams();
+            $offset=input('offset',0);
+            $limit=input('limit',20);
+            $page=$offset/$limit+1;
+            $list=\app\admin\model\Orders::payed()
+                ->where($map)
+                ->order($sort,$order)
+                ->paginate($limit,false,['page'=>$page]);
+            $index=$list->listRows()*$list->currentPage()-$list->listRows();
+            foreach ($list as $idx=>&$item){
+                $item['rank']=$index+$idx+1;
+            }
+            return json([
+                'rows'=>$list->items(),
+                'total'=>$list->total(),
+            ]);
+        }
         $postTime = input('startTime','');
         $where = [];
         $map = [];

+ 18 - 9
application/admin/view/overview/index.html

@@ -174,8 +174,7 @@
                             <input type="hidden" class="form-control operate" name="createtime-operate"
                                    data-name="createtime" value="RANGE" readonly="">
                             <input type="text" class="form-control datetimerange" name="startTime" value="{$post_time}"
-                                   id="start_time" data-index="12" onfocus="getdaterangepicker(form)"
-                                   autocomplete="off" style="width: 100%">
+                                   id="start_time" data-index="12" autocomplete="off" style="width: 100%">
                         </div>
                         <div class="col-xs-5">
                             <button type="submit" class="btn btn-success" formnovalidate="">提交</button>
@@ -280,14 +279,24 @@
         </div>
     </div>
 </div>
-
-<script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
-<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
-<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
-<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css"/>
+    <div class="panel panel-default panel-intro panel-nav">
+        <div class="panel-heading">
+            <ul class="nav nav-tabs">
+                <li class="active"><a href="#one1" data-toggle="tab"><i class="fa fa-magic"></i> 销售额排名</a></li>
+            </ul>
+        </div>
+        <div class="panel-body">
+            <div id="myTabContent1" class="tab-content">
+                <div class="tab-pane fade active in" id="one1">
+                    <div class="widget-body no-padding">
+                        <table id="table" class="table table-striped table-bordered table-hover table-nowrap" width="100%"></table>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
 <script>
-    $('input[name="dates"]').daterangepicker();
-
+var defDate='{$defDate}';
     function getdaterangepicker(form) {
         //绑定日期时间元素事件
         if ($(".datetimerange", form).size() > 0) {

+ 22 - 1
public/assets/js/backend/overview.js

@@ -2,7 +2,7 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
 
     return {
         index: function () {
-
+            Form.events.daterangepicker($('form'))
             // 基于准备好的dom,初始化echarts实例
             var myChart = Echarts.init(document.getElementById('echart'), 'walden');
             var myChart1 = Echarts.init(document.getElementById('echart1'), 'walden');
@@ -88,6 +88,27 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
             myChart.setOption(option);
             myChart1.setOption(option1);
 
+            Table.api.init()
+            var table = $("#table");
+            table.bootstrapTable({
+                url: location.href,
+                pk: 'id',
+                sortName: 'amount_profit',
+                searchFormVisible: true,
+                showExport: true,
+                commonSearch: true,
+                search: false,
+                columns: [
+                    [
+                        {field: 'rank', title: __('排名'), operate: false,},
+                        {field: 'order_no', title: __('订单号'), operate: false,},
+                        {field: 'amount_profit', title: __('毛利'), operate: false,sortable:true},
+                        {field: 'amount_profit_per', title: __('毛利率'), operate: false,sortable:true},
+                        {field: 'date', title: __('时间'), operate: 'range', addClass: 'datetimerange', visible: false,defaultValue:defDate},
+                    ]
+                ]
+            });
+            Table.api.bindevent(table);
         },
         seller_statistics() {
             Form.api.bindevent($('.form'))