Selaa lähdekoodia

后台用户列表完成

BF-202210271038\Administrator 3 vuotta sitten
vanhempi
commit
ac9ab9c89f

+ 48 - 2
app/Http/Controllers/Member/MembersController.php

@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Member;
 use App\Http\Controllers\AdminBaseController;
 use App\Http\Requests\MemberCreateRequest;
 use App\Http\Requests\MemberUpdateRequest;
+use App\Models\Level;
 use App\Models\Member;
 use App\Repositories\Eloquent\MemberRepositoryEloquent;
 use App\Servers\MemberServer;
@@ -77,11 +78,56 @@ class MembersController extends AdminBaseController
     protected function _indexPost($data)
     {
         foreach ($data as $value){
-            $value->{'level_name'}=MemberServer::creatServer()->getLevelName($value->{'level_id'});
-
+            $value->{'level_name'}=Level::where('id',$value->{'level_id'})->value('name')?:'L0';
         }
         return $data;
     }
+    /**
+     * 修改数据组建
+     * @param $id
+     * @return array
+     */
+    function _editGet($id)
+    {
+        $model = $this->repository->find($id);
+        $level_list = $this->getLevelList($model->{'level_id'});
+        return ['model' => $model,  'levelList' => json_encode($level_list, JSON_UNESCAPED_SLASHES)];
+    }
+
+    function _updatePost($request, $id)
+    {
+        $level_id = request()->input('level_id', '0');
+        return Member::where('id', $id)->update(['level_id' => $level_id,'is_auto' => 0]);
+    }
+
+    /**
+     * 获取层级菜单组件
+     * @return array
+     */
+    private function getLevelList($level = '0')
+    {
+        $option = [
+            'checked' => $level . '',
+            'attr' => [
+                [
+                    'value' => '0',
+                    'label' => "L0",
+                    'disabled' => false,
+                    'notice' => '*'
+                ],
+            ]
+        ];
+        $levels=Level::select(['id','name'])->get();
+        foreach ($levels as $level){
+            $option['attr'][]=[
+                'value' => $level->{'id'}.'',
+                'label' =>  $level->{'name'},
+                'disabled' => false,
+                'notice' => '*'
+            ];
+        }
+        return $option;
+    }
 
 
     function selectAll()

+ 2 - 0
app/Models/Level.php

@@ -30,6 +30,8 @@ use Prettus\Repository\Traits\TransformableTrait;
  * @method static \Illuminate\Database\Eloquent\Builder|Level whereTotalNum($value)
  * @method static \Illuminate\Database\Eloquent\Builder|Level whereUpdatedAt($value)
  * @mixin \Eloquent
+ * @property int|null $lateral_num 平级比例
+ * @method static \Illuminate\Database\Eloquent\Builder|Level whereLateralNum($value)
  */
 class Level extends Model implements Transformable
 {

+ 2 - 0
app/Models/Member.php

@@ -81,6 +81,8 @@ use Prettus\Repository\Traits\TransformableTrait;
  * @property int|null $is_boss is_boss
  * @method static \Illuminate\Database\Eloquent\Builder|Member whereIsAuto($value)
  * @method static \Illuminate\Database\Eloquent\Builder|Member whereIsBoss($value)
+ * @property string $recom_address 推荐人手机号码
+ * @method static \Illuminate\Database\Eloquent\Builder|Member whereRecomAddress($value)
  */
 class Member extends Model implements Transformable
 {

+ 2 - 0
app/Models/Members.php

@@ -84,6 +84,8 @@ use Prettus\Repository\Traits\TransformableTrait;
  * @property int|null $is_boss is_boss
  * @method static \Illuminate\Database\Eloquent\Builder|Members whereIsAuto($value)
  * @method static \Illuminate\Database\Eloquent\Builder|Members whereIsBoss($value)
+ * @property string $recom_address 推荐人手机号码
+ * @method static \Illuminate\Database\Eloquent\Builder|Members whereRecomAddress($value)
  */
 class Members extends Model implements Transformable
 {

+ 9 - 7
app/Repositories/Eloquent/MemberRepositoryEloquent.php

@@ -21,9 +21,11 @@ class MemberRepositoryEloquent extends BaseRepository implements MemberRepositor
      * @return string
      */
     protected $fieldSearchable = [
-        'id'                => '=',
-        'nickname'          => 'like',
-        'phone'             => 'like'
+        'id' => '=',
+        'address' => 'like',
+        'recom_address' => 'like',
+        'level_id' => '=',
+        'is_auto' => '='
     ];
 
     /**
@@ -37,10 +39,10 @@ class MemberRepositoryEloquent extends BaseRepository implements MemberRepositor
     }
 
     /**
-    * Specify Validator class name
-    *
-    * @return mixed
-    */
+     * Specify Validator class name
+     *
+     * @return mixed
+     */
     public function validator()
     {
 

+ 2 - 1
app/Servers/MemberServer.php

@@ -42,7 +42,7 @@ class MemberServer
     static private $server = '';
 
     private $level_arr = [
-        0 => '系统',
+        0 => 'L0',
         1 => '省级代理',
         2 => '市级代理',
         3 => '区级代理',
@@ -116,6 +116,7 @@ class MemberServer
         $member_info['address'] = $address;
         $member_info['invite_code'] = $pass_server->getInviteCode();
         $member_info['recom_id'] = $p_id;
+        $member_info['recom_address'] = Member::where('id',$p_id)->value('address')?:'无';
         $member_info['status'] = 0;
         $member_info['level_id'] = empty($level_id)?0:$level_id;
         $member_info = Member::create($member_info);

+ 5 - 29
resources/views/admins/members/edit.blade.php

@@ -1,16 +1,12 @@
 <div style="margin-top: 10px;" id="members-app">
     <div style="text-align: center;margin-top: 5px;margin-bottom: 10px;font-size: 20px;">
-        编辑Member
+        编辑 - 会员
     </div>
     <el-form action="{{route('admin.member.update',array('id'=>$model->id))}}" method="post" id="form-create">
         <!-- 图片 -->
-        <ui-file label="图片(686*128)" size="0.5" name="image" :data="{uploadName:'members'}" imageurl="{{$model->image}}" tips="图片大小建议(686*128)"></ui-file>
-        <!-- 链接 -->
-{{--        <ui-input-text label="链接" name="link" value="{{$model->link}}" placeholder="跳转链接" maxlength="255" tips="请输入有效的链接" autofocus="true"></ui-input-text>--}}
-        <!-- 是否显示 -->
-        <ui-radio label="是否开启" :params="params" tips="消息开关-控制前台是否显示"></ui-radio>
-        <!-- 排序 -->
-        <ui-input-number label="排序" checked="checked" name="sort" value="{{$model->sort}}" min="1" max="100" tips="控制前台显示顺序"></ui-input-number>
+        <ui-input-text label="钱包地址:" disabled="disabled" value="{{ $model->address }}" maxlength="255" tips=""></ui-input-text>
+        <ui-select label="会员等级:" value="{{$model->level_id.''}}" @set-keys="setLevel" id="level" name="level_id" placeholder=""
+                   :options="levelList" :free="true"></ui-select>
         <ui-submit></ui-submit>
     </el-form>
 </div>
@@ -22,27 +18,7 @@
             el: '#members-app',
             data :function () {
                 return {
-                    params: {
-                        // 注意:group和attr连个属性都不能省略 就算为空
-                        group: {},
-                        attr: {
-                            name: 'show',   // 当前checkbox框的name属性  【必填】
-                            radioCheck:{{$model->show}},   // 当前选中项 int | string   【必填】
-                            label: 'el-radio-button', // 当前样式 默认 el-radio 样式 【非必填】
-                            radios: [ // 每个checkbox 就是一个json对象     【必填】
-                                {
-                                    value:0,      // 当前选中时值也就是value属性的值      【必填】
-                                    label: '关闭',    // 当前提示文字                 【必填】
-                                    disable: false   // 是否禁止点击 默认:false 不禁止
-                                },
-                                {
-                                    value:1,      // 当前选中时值也就是value属性的值      【必填】
-                                    label: '开启',    // 当前提示文字                 【必填】
-                                    disable: false   // 是否禁止点击 默认:false 不禁止
-                                }
-                            ]
-                        }
-                    }
+                    levelList:{!! $levelList !!}
                 };
             }
         });

+ 51 - 17
resources/views/admins/members/index.blade.php

@@ -17,12 +17,32 @@
                 <input class="form-control" type="text" name="id">
             </div>
             <div class="form-group">
-                <label for="name" class="label-css"> 昵称:</label>
-                <input class="form-control" type="text" name="nickname">
+                <label for="name" class="label-css"> 用户地址:</label>
+                <input class="form-control" type="text" name="address">
             </div>
             <div class="form-group">
-                <label for="name" class="label-css"> 手机号:</label>
-                <input class="form-control" type="text" name="phone">
+                <label for="name" class="label-css"> 推荐人地址:</label>
+                <input class="form-control" type="text" name="recom_address">
+            </div>
+            <div class="form-group">
+                <label for="is_sys_add" class="label-css"> 级别:</label>
+                <select class="form-control" name="level_id" style="margin-top: -8px;">
+                    <option value="">全部</option>
+                    <option value="0">L0</option>
+                    <option value="1">L1</option>
+                    <option value="2">L2</option>
+                    <option value="3">L3</option>
+                    <option value="4">L4</option>
+                    <option value="5">L5</option>
+                </select>
+            </div>
+            <div class="form-group">
+                <label for="is_sys_add" class="label-css"> 自动升级:</label>
+                <select class="form-control" name="is_auto" style="margin-top: -8px;">
+                    <option value="">全部</option>
+                    <option value="0">否</option>
+                    <option value="1">是</option>
+                </select>
             </div>
             <button type="button" class="btn btn-primary">查询</button>
         </div>
@@ -69,33 +89,48 @@
                         valign: 'middle',
                     },
                     {
-                        field: 'nickname',
-                        title: '会员昵称',
+                        field: 'address',
+                        title: 'BNB地址',
+                        align: 'center',
+                        valign: 'middle',
+                    },
+                    {
+                        field: 'level_name',
+                        title: '等级',
                         align: 'center',
                         valign: 'middle',
                     },
                     {
-                        field: 'phone',
-                        title: '会员电话',
+                        field: 'is_auto',
+                        title: '自动升级',
                         align: 'center',
                         valign: 'middle',
+                        formatter:yesOrNoTwo,
+                        bool_data:{
+                            'class' : 'cursor',
+                            'table' : 'members'
+                        }
                     },
                     {
-                        field: 'head_img',
-                        title: '头像',
+                        field: 'is_boss',
+                        title: 'BOSS',
                         align: 'center',
                         valign: 'middle',
-                        formatter:thumbFormatter
+                        formatter:yesOrNoTwo,
+                        bool_data:{
+                            'class' : 'cursor',
+                            'table' : 'members'
+                        }
                     },
                     {
                         field: 'money',
-                        title: '余额',
+                        title: '代币余额',
                         align: 'center',
                         valign: 'middle',
                     },
                     {
-                        field: 'consume_money',
-                        title: '消费金',
+                        field: 'recom_address',
+                        title: '推荐人地址',
                         align: 'center',
                         valign: 'middle',
                     },
@@ -126,11 +161,10 @@
                         formatter:operateFormatter,
                         btn_group:[
                             {
-                                'name'  : '设为客服',
-                                'message'  : '是否设置为客服',
+                                'name'  : '编辑',
                                 'class' : 'btn-primary createForm',
-                                'skip'  : 'skip',
                                 'url'   : 'javascript:;',
+                                'confirm_url': '{{ route('admin.member.edit', ['id'=>'-val-'])}}'
                             }
                         ]
                     }