BF-202210271038\Administrator 3 жил өмнө
parent
commit
902c229d3c

+ 15 - 0
app/Http/Controllers/ContractDistribution/ContractDistributionsController.php

@@ -5,7 +5,9 @@ namespace App\Http\Controllers\ContractDistribution;
 use App\Http\Controllers\AdminBaseController;
 use App\Http\Requests\ContractDistributionCreateRequest;
 use App\Http\Requests\ContractDistributionUpdateRequest;
+use App\Models\ContractDistribution;
 use App\Repositories\Eloquent\ContractDistributionRepositoryEloquent;
+use App\Servers\ContractServer;
 use App\Validators\ContractDistributionValidator;
 
 /**
@@ -76,7 +78,20 @@ class ContractDistributionsController extends AdminBaseController
      */
     protected function _indexPost($datum)
     {
+        $status=['失败','成功','广播失败'];
+        foreach ($datum as $value){
+            $value->{'type'}=ContractServer::creatServer()->getDistributionArrStr($value->{'type'});
+            $value->{'status'}=empty($status[$value->{'status'}])?'状态异常':$status[$value->{'status'}];
+        }
         return $datum;
     }
 
+    function _indexJoin()
+    {
+        return ContractDistribution::from('contract_distributions as cb')
+            ->leftJoin('contracts as c','c.id','=','cb.contract_id')
+            ->leftJoin('broadcasts as b','b.id','=','cb.broadcast_id')
+            ->select(['cb.*','c.contract_sn','b.hash']);
+    }
+
 }

+ 9 - 5
app/Repositories/Eloquent/ContractDistributionRepositoryEloquent.php

@@ -21,7 +21,11 @@ class ContractDistributionRepositoryEloquent extends BaseRepository implements C
      * @return string
      */
     protected $fieldSearchable = [
-        'id'                => '=',
+        'id' => '=',
+        'c.contract_sn' => '=',
+        'cb.type' => '=',
+        'cb.status' => '=',
+        'cb.to_address' => '=',
     ];
 
     /**
@@ -35,10 +39,10 @@ class ContractDistributionRepositoryEloquent extends BaseRepository implements C
     }
 
     /**
-    * Specify Validator class name
-    *
-    * @return mixed
-    */
+     * Specify Validator class name
+     *
+     * @return mixed
+     */
     public function validator()
     {
 

+ 18 - 0
app/Servers/ContractServer.php

@@ -41,6 +41,24 @@ class ContractServer
       8=>'公排出局',
     ];
 
+    /**
+     * @return string[]
+     */
+    public function getDistributionArr(): array
+    {
+        return $this->distributionArr;
+    }
+
+    /**
+     * 获取清分类型
+     * @param $type
+     * @return string
+     */
+    public function getDistributionArrStr($type)
+    {
+        return empty($this->distributionArr[$type])?'无':$this->distributionArr[$type];
+    }
+
 
     private function __construct()
     {

+ 65 - 68
resources/views/admins/contractDistributions/index.blade.php

@@ -5,8 +5,7 @@
 @section('crumbs')
     <ol class="breadcrumb crumbs">
         <li><a href="{{ route('admin.index') }}#">后台导航</a></li>
-        <li><a href="{{ route('admin.contractDistribution.index') }}">后台ContractDistribution首页</a></li>
-        <li class="active">ContractDistribution列表</li>
+        <li class="active">清分列表</li>
     </ol>
 @endsection
 
@@ -14,10 +13,32 @@
     <form id="searchForm" class="form-inline">
         <div class="">
             <div class="form-group">
-                <label for="name" class="label-css"> ID:</label>
-                <input class="form-control" type="text" name="id">
+                <label for="name" class="label-css"> 合约编号:</label>
+                <input class="form-control" type="text" name="c.contract_sn">
+            </div>
+            <div class="form-group">
+                <label for="name" class="label-css"> 收款地址:</label>
+                <input class="form-control" type="text" name="cb.to_address">
+            </div>
+
+            &ensp;&ensp;<div class="form-group">
+                <label for="is_sys_add" class="label-css"> 清分状态:</label>
+                <select class="form-control" name="cd.status" style="margin-top: -8px;">
+                    <option value="">全部</option>
+                    <option value="0">失败</option>
+                    <option value="1">成功</option>
+                    <option value="2">广播失败</option>
+                </select>
+            </div>
+            &ensp;<div class="form-group">
+                <label for="is_sys_add" class="label-css"> 清分状态:</label>
+                <select class="form-control" name="cd.type" style="margin-top: -8px;">
+                    <option value="">全部</option>
+                    <option value="0">失败</option>
+                    <option value="1">成功</option>
+                    <option value="2">广播失败</option>
+                </select>
             </div>
-            &ensp;&ensp;
             <button type="button" class="btn btn-primary">查询</button>
         </div>
     </form>
@@ -25,16 +46,7 @@
     <div>
         <div id="toolbar">
             <div class="columns columns-left btn-group pull-left">
-                <a class="createForm" data-url="{{ route('admin.contractDistribution.store') }}" data-title="create">
-                    <button class="btn btn-default" type="button">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>&ensp;新增ContractDistribution
-                    </button>
-                </a>
-                <a>
-                    <button id="deleteAll" data-url="{{ route('admin.contractDistribution.destroys',['is_del'=>1]) }}" class="btn btn-default" type="button">
-                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>&ensp;删除
-                    </button>
-                </a>
+
             </div>
         </div>
         <table id="ContentTable"></table>
@@ -70,85 +82,70 @@
                         title: 'ID',
                         align: 'center',
                         valign: 'middle',
-                        sortable: true
                     },
                     {
-                        field: 'image',
-                        title: 'Image',
+                        field: 'contract_sn',
+                        title: '合约编号',
+                        align: 'center',
+                        valign: 'middle',
+                    },
+                    {
+                        field: 'nbn_money',
+                        title: 'BNB数量',
+                        align: 'center',
+                        valign: 'middle',
+                    },
+                    {
+                        field: 'db_money',
+                        title: '代币数量',
+                        align: 'center',
+                        valign: 'middle',
+                    },
+                    {
+                        field: 'type',
+                        title: '清分类型',
                         align: 'center',
                         valign: 'middle',
-                        formatter:thumbFormatter
                     },
-                    // {
-                    //     field: 'link',
-                    //     title: '链接',
-                    //     align: 'center',
-                    //     valign: 'middle'
-                    // },
                     {
                         field: 'status',
-                        title: '显示',
+                        title: '状态',
                         align: 'center',
                         valign: 'middle',
-                        sortable: true,
-                        formatter:yesOrNo,
-                        bool_data:{
-                            'class' : 'cursor',
-//                            'url'   : 'javascript:;',
-                            'table' : 'contractDistributions'
-//                            'pk' : 'id'   // 主键名称不写默认id主键
-                        }
                     },
                     {
-                        field: 'sort',
-                        title: '排序',
+                        field: 'to_address',
+                        title: '收款地址',
                         align: 'center',
                         valign: 'middle',
-                        sortable: true,
-                        formatter:inputData,
-                        input_data: {
-//                        'class' : 'cursor',     // 当前样式
-//                        'url'   : 'javascript', // url存在 及请求指定地址修改数据
-                            'table' : 'contractDistributions'   // url为空时采用,
-//                        'pk'    : 'id'          // 默认修改主键名称 不写 默认id为主键
-                        }
+                        formatter:aHttpAddress,
                     },
                     {
-                        field: 'created_at',
-                        title: '创建时间',
+                        field: 'hash',
+                        title: '广播哈希',
                         align: 'center',
                         valign: 'middle',
-                        sortable: true
+                        formatter:aHttpHash,
                     },
                     {
-                        field: 'updated_at',
-                        title: '更新时间',
+                        field: 'remark',
+                        title: '说明',
                         align: 'center',
                         valign: 'middle',
-                        sortable: true
                     },
                     {
-                        pkId: 'id',         // 当前主键id 兼容排序 field='id' 默认值id
-                        title: '操作',
+                        field: 'created_at',
+                        title: '创建时间',
+                        align: 'center',
+                        valign: 'middle',
+                    },
+                    {
+                        field: 'updated_at',
+                        title: '更新时间',
                         align: 'center',
                         valign: 'middle',
-                        width: '185px',
-                        formatter:operateFormatter,
-                        btn_group:[
-                            {
-                                'name'  : '编辑',
-                                'class' : 'btn-primary createForm',
-                                'url'   : 'javascript:;',
-                                'confirm_url': '{{ route('admin.contractDistribution.edit', ['id'=>'-val-'])}}'
-                            },
-                            {
-                                'name'  : '删除',
-                                'class' : 'btn-danger deleteBtn', // class标签 deleteBtn删除 layer弹出框
-                                'url'   : 'javascript:;',
-                                'confirm_url': '{{ route('admin.contractDistribution.destroy', ['id'=>'-val-','is_del'=>1])}}'   // 选择按钮
-                            }
-                        ]
                     }
+
                 ]
             });
         });