lizhen_gitee 11 місяців тому
батько
коміт
60c337f8b6

+ 2 - 2
application/admin/controller/Userwallet.php

@@ -23,7 +23,7 @@ class Userwallet extends Backend
     {
         parent::_initialize();
         $this->model = new \app\admin\model\Userwallet;
-
+        $this->view->assign("statusList", $this->model->getStatusList());
     }
 
     public function import()
@@ -62,7 +62,7 @@ class Userwallet extends Backend
 
             foreach ($list as $row) {
                 
-                $row->getRelation('user')->visible(['username','nickname','mobile']);
+                $row->getRelation('user')->visible(['username']);
             }
 
             $result = array("total" => $list->total(), "rows" => $list->items());

+ 11 - 13
application/admin/lang/zh-cn/userwallet.php

@@ -3,17 +3,15 @@
 return [
     'Id'            => 'ID',
     'User_id'       => '用户ID',
-    'Money'         => '余额',
-    'Gold'          => '金币',
-    'Vip_endtime'   => 'vip到期时间',
-    'User.username' => '用户名',
-    'User.nickname' => '昵称',
-    'User.mobile'   => '手机号',
-    'Vip_level'       => 'vip等级',
-    'Vip_level 0'      => '无',
-    'Vip_level 10'     => '月度会员',
-    'Vip_level 20'     => '季度会员',
-    'Vip_level 30'     => '半年会员',
-    'Vip_level 40'     => '年度会员',
-
+    'Gold'          => '充值账户',
+    'Jewel'         => '收益账户',
+    'Agentjewel'    => '代理收益账户',
+    'Vip_endtime'   => 'vip结束时间',
+    'Status'        => '资金状态',
+    'Status 1'      => '正常',
+    'Status 2'      => '冻结',
+    'Audio_sec'     => '赠送语音分钟数',
+    'Video_sec'     => '赠送视频分钟数',
+    'Typing_times'  => '赠送文字条数',
+    'User.username' => '用户名'
 ];

+ 12 - 14
application/admin/model/Userwallet.php

@@ -26,12 +26,15 @@ class Userwallet extends Model
     // 追加属性
     protected $append = [
         'vip_endtime_text',
-       // 'vip_level_text'
+        'status_text'
     ];
     
 
     
-
+    public function getStatusList()
+    {
+        return ['1' => __('Status 1'), '2' => __('Status 2')];
+    }
 
 
     public function getVipEndtimeTextAttr($value, $data)
@@ -40,23 +43,18 @@ class Userwallet extends Model
         return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
     }
 
-    protected function setVipEndtimeAttr($value)
-    {
-        return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
-    }
 
-   /* public function getVipLevelList()
+    public function getStatusTextAttr($value, $data)
     {
-        return ['0' => __('Vip_level 0'),'10' => __('Vip_level 10'),'20' => __('Vip_level 20'),'30' => __('Vip_level 30'),'40' => __('Vip_level 40'),];
+        $value = $value ? $value : (isset($data['status']) ? $data['status'] : '');
+        $list = $this->getStatusList();
+        return isset($list[$value]) ? $list[$value] : '';
     }
 
-    public function getVipLevelTextAttr($value, $data)
+    protected function setVipEndtimeAttr($value)
     {
-        $value = $value ? $value : (isset($data['vip_level']) ? $data['vip_level'] : '');
-        $list = $this->getVipLevelList();
-        return isset($list[$value]) ? $list[$value] : '';
-    }*/
-
+        return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
+    }
 
 
     public function user()

+ 40 - 4
application/admin/view/userwallet/add.html

@@ -7,15 +7,21 @@
         </div>
     </div>
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Money')}:</label>
+        <label class="control-label col-xs-12 col-sm-2">{:__('Gold')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-money" data-rule="required" class="form-control" step="0.01" name="row[money]" type="number" value="0.00">
+            <input id="c-gold" data-rule="required" class="form-control" step="0.1" name="row[gold]" type="number" value="0.0">
         </div>
     </div>
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Gold')}:</label>
+        <label class="control-label col-xs-12 col-sm-2">{:__('Jewel')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-jewel" data-rule="required" class="form-control" step="0.1" name="row[jewel]" type="number" value="0.0">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Agentjewel')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-gold" data-rule="required" class="form-control" name="row[gold]" type="number" value="0">
+            <input id="c-agentjewel" data-rule="required" class="form-control" step="0.01" name="row[agentjewel]" type="number" value="0.00">
         </div>
     </div>
     <div class="form-group">
@@ -24,6 +30,36 @@
             <input id="c-vip_endtime" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[vip_endtime]" type="text" value="{:date('Y-m-d H:i:s')}">
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            
+            <div class="radio">
+            {foreach name="statusList" item="vo"}
+            <label for="row[status]-{$key}"><input id="row[status]-{$key}" name="row[status]" type="radio" value="{$key}" {in name="key" value="1"}checked{/in} /> {$vo}</label> 
+            {/foreach}
+            </div>
+
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Audio_sec')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-audio_sec" data-rule="required" class="form-control" name="row[audio_sec]" type="number" value="0">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Video_sec')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-video_sec" data-rule="required" class="form-control" name="row[video_sec]" type="number" value="0">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Typing_times')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-typing_times" data-rule="required" class="form-control" name="row[typing_times]" type="number" value="0">
+        </div>
+    </div>
     <div class="form-group layer-footer">
         <label class="control-label col-xs-12 col-sm-2"></label>
         <div class="col-xs-12 col-sm-8">

+ 41 - 5
application/admin/view/userwallet/edit.html

@@ -3,19 +3,25 @@
     <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('User_id')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-user_id" data-rule="required" data-source="user/user/index" disabled data-field="username" class="form-control selectpage" name="row[user_id]" type="text" value="{$row.user_id|htmlentities}">
+            <input id="c-user_id" data-rule="required" data-source="user/user/index" data-field="nickname" class="form-control selectpage" name="row[user_id]" type="text" value="{$row.user_id|htmlentities}">
         </div>
     </div>
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Money')}:</label>
+        <label class="control-label col-xs-12 col-sm-2">{:__('Gold')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-money" data-rule="required" class="form-control" step="0.01" name="row[money]" type="number" value="{$row.money|htmlentities}">
+            <input id="c-gold" data-rule="required" class="form-control" step="0.1" name="row[gold]" type="number" value="{$row.gold|htmlentities}">
         </div>
     </div>
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Gold')}:</label>
+        <label class="control-label col-xs-12 col-sm-2">{:__('Jewel')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-jewel" data-rule="required" class="form-control" step="0.1" name="row[jewel]" type="number" value="{$row.jewel|htmlentities}">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Agentjewel')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input id="c-gold" data-rule="required" class="form-control" name="row[gold]" type="number" value="{$row.gold|htmlentities}">
+            <input id="c-agentjewel" data-rule="required" class="form-control" step="0.01" name="row[agentjewel]" type="number" value="{$row.agentjewel|htmlentities}">
         </div>
     </div>
     <div class="form-group">
@@ -24,6 +30,36 @@
             <input id="c-vip_endtime" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[vip_endtime]" type="text" value="{:$row.vip_endtime?datetime($row.vip_endtime):''}">
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            
+            <div class="radio">
+            {foreach name="statusList" item="vo"}
+            <label for="row[status]-{$key}"><input id="row[status]-{$key}" name="row[status]" type="radio" value="{$key}" {in name="key" value="$row.status"}checked{/in} /> {$vo}</label> 
+            {/foreach}
+            </div>
+
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Audio_sec')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-audio_sec" data-rule="required" class="form-control" name="row[audio_sec]" type="number" value="{$row.audio_sec|htmlentities}">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Video_sec')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-video_sec" data-rule="required" class="form-control" name="row[video_sec]" type="number" value="{$row.video_sec|htmlentities}">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Typing_times')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-typing_times" data-rule="required" class="form-control" name="row[typing_times]" type="number" value="{$row.typing_times|htmlentities}">
+        </div>
+    </div>
     <div class="form-group layer-footer">
         <label class="control-label col-xs-12 col-sm-2"></label>
         <div class="col-xs-12 col-sm-8">

+ 11 - 1
application/admin/view/userwallet/index.html

@@ -1,5 +1,15 @@
 <div class="panel panel-default panel-intro">
-    {:build_heading()}
+    
+    <div class="panel-heading">
+        {:build_heading(null,FALSE)}
+        <ul class="nav nav-tabs" data-field="status">
+            <li class="{:$Think.get.status === null ? 'active' : ''}"><a href="#t-all" data-value="" data-toggle="tab">{:__('All')}</a></li>
+            {foreach name="statusList" item="vo"}
+            <li class="{:$Think.get.status === (string)$key ? 'active' : ''}"><a href="#t-{$key}" data-value="{$key}" data-toggle="tab">{$vo}</a></li>
+            {/foreach}
+        </ul>
+    </div>
+
 
     <div class="panel-body">
         <div id="myTabContent" class="tab-content">

+ 15 - 12
public/assets/js/backend/userwallet.js

@@ -25,14 +25,17 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 columns: [
                     [
                         {checkbox: true},
-//                        {field: 'id', title: __('Id')},
-//                        {field: 'user_id', title: __('User_id')},
-                        {field: 'user.username', title: __('User.username'), operate: 'LIKE',sortable:true},
-                        {field: 'user.nickname', title: __('User.nickname'), operate: 'LIKE'},
-                        {field: 'user.mobile', title: __('User.mobile'), operate: 'LIKE'},
-                        {field: 'money', title: __('Money'), operate:'BETWEEN',sortable:true},
-                        {field: 'gold', title: __('Gold'),sortable:true},
-                        {field: 'vip_endtime', title: __('Vip_endtime'), operate:'RANGE',sortable:true, addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
+                        {field: 'id', title: __('Id')},
+                        {field: 'user_id', title: __('User_id')},
+                        {field: 'user.username', title: __('User.username'), operate: 'LIKE'},
+                        {field: 'gold', title: __('Gold'), operate:'BETWEEN'},
+                        {field: 'jewel', title: __('Jewel'), operate:'BETWEEN'},
+                        {field: 'agentjewel', title: __('Agentjewel'), operate:'BETWEEN'},
+                        {field: 'vip_endtime', title: __('Vip_endtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
+                        {field: 'status', title: __('Status'), searchList: {"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
+                        {field: 'audio_sec', title: __('Audio_sec')},
+                        {field: 'video_sec', title: __('Video_sec')},
+                        {field: 'typing_times', title: __('Typing_times')},
                         {field: 'operate', title: __('Operate'), table: table,
                             buttons:[
                                 {
@@ -47,7 +50,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                      return row.status==100 ? false : false;
                                      }*/
                                 },
-                                {
+                               /* {
                                     name:'updatevip',
                                     text:'充值vip会员',
                                     title:'充值vip会员',
@@ -55,10 +58,10 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     classname:'btn btn-xs btn-info btn-dialog',
                                     url:'userwallet/updatevip/id/{ids}?dialog=1',
                                     target:'_self',
-                                    /*hidden:function(row){
+                                    *//*hidden:function(row){
                                      return row.status==100 ? false : false;
-                                     }*/
-                                }
+                                     }*//*
+                                }*/
                             ],
                             events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]