Selaa lähdekoodia

后台,用户钱包操作,钱包日志操作,冻结

lizhen_gitee 11 kuukautta sitten
vanhempi
commit
b2f31810b6

+ 1 - 1
application/admin/controller/Usergoldlog.php

@@ -22,7 +22,7 @@ class Usergoldlog extends Backend
     {
         parent::_initialize();
         $this->model = new \app\admin\model\Usergoldlog;
-
+        $this->view->assign("MoneyTypeList", $this->model->getMoneyTypeList());
     }
 
     public function import()

+ 31 - 1
application/admin/controller/Userwallet.php

@@ -85,9 +85,39 @@ class Userwallet extends Backend
 
             $user_id = input('user_id');
             $gold = input('gold');
+            $remark = input('remark','后台调节');
 
             Db::startTrans();
-            $rs = model('wallet')->lockChangeAccountRemain($user_id,'gold',$gold,1,'后台调节');
+            $rs = model('wallet')->lockChangeAccountRemain($user_id,'gold',$gold,1,$remark);
+            if($rs['status'] === false){
+                Db::rollback();
+                $this->error($rs['msg']);
+            }
+
+            Db::commit();
+            $this->success('充值完成');
+        }
+
+        $this->assign('row',$info);
+        return $this->view->fetch();
+    }
+    /**
+     * 收益金币
+     */
+    public function updatejewel(){
+        $id = input('id');
+        $info = Db::name('user_wallet')
+            ->where('id',$id)
+            ->find();
+
+        if ($this->request->isPost()) {
+
+            $user_id = input('user_id');
+            $jewel = input('jewel');
+            $remark = input('remark','后台调节');
+
+            Db::startTrans();
+            $rs = model('wallet')->lockChangeAccountRemain($user_id,'jewel',$jewel,2,$remark);
             if($rs['status'] === false){
                 Db::rollback();
                 $this->error($rs['msg']);

+ 2 - 0
application/admin/lang/zh-cn/usergoldlog.php

@@ -5,6 +5,8 @@ return [
     'User_id'       => '用户ID',
     'Log_type'      => '日志类型',
     'Money_type'    => '钱包类型',
+    'gold'    => '充值金币',
+    'jewel'    => '收益金币',
     'Before'        => '之前余额',
     'Change_value'  => '变动金额',
     'Remain'        => '剩余金额',

+ 12 - 3
application/admin/model/Usergoldlog.php

@@ -25,13 +25,22 @@ class Usergoldlog extends Model
 
     // 追加属性
     protected $append = [
-
+        'money_type_text'
     ];
-    
 
-    
 
 
+    public function getMoneyTypeList()
+    {
+        return ['gold' => __('gold'), 'jewel' => __('jewel')];
+    }
+
+    public function getMoneyTypeTextAttr($value, $data)
+    {
+        $value = $value ? $value : (isset($data['money_type']) ? $data['money_type'] : '');
+        $list = $this->getMoneyTypeList();
+        return isset($list[$value]) ? $list[$value] : '';
+    }
 
 
 

+ 3 - 3
application/admin/view/userwallet/edit.html

@@ -3,10 +3,10 @@
     <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" data-field="nickname" class="form-control selectpage" name="row[user_id]" type="text" value="{$row.user_id|htmlentities}">
+            <input id="c-user_id" data-rule="required" disabled data-source="user/user/index" data-field="username" class="form-control selectpage" name="row[user_id]" type="text" value="{$row.user_id|htmlentities}">
         </div>
     </div>
-    <div class="form-group">
+    <!--<div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Gold')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-gold" data-rule="required" class="form-control" step="0.1" name="row[gold]" type="number" value="{$row.gold|htmlentities}">
@@ -29,7 +29,7 @@
         <div class="col-xs-12 col-sm-8">
             <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>-->
     <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label>
         <div class="col-xs-12 col-sm-8">

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

@@ -36,6 +36,7 @@
                            data-operate-edit="{:$auth->check('userwallet/edit')}" 
                            data-operate-del="{:$auth->check('userwallet/del')}" 
                            data-operate-updatemoney="{:$auth->check('userwallet/updatemoney')}"
+                           data-operate-updatejewel="{:$auth->check('userwallet/updatejewel')}"
                            data-operate-updatevip="{:$auth->check('userwallet/updatevip')}"
                            width="100%">
                     </table>

+ 32 - 0
application/admin/view/userwallet/updatejewel.html

@@ -0,0 +1,32 @@
+<form id="edit-form" class="form-horizontal" role="form" data-toggle="validator" method="POST" action="">
+    <input type="hidden" name="id" value="{$row.id}">
+    <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" disabled data-rule="required" data-source="user/user/index" data-field="username" class="form-control selectpage" name="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">增加收益金币:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-jewel" data-rule="required" class="form-control" name="jewel" type="number" value="">
+            负数可以减少
+        </div>
+    </div>
+
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">备注:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-remark" data-rule="required" class="form-control" name="remark" type="text" value="">
+        </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">
+            <button type="submit" class="btn btn-success btn-embossed disabled">{:__('OK')}</button>
+            <button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button>
+        </div>
+    </div>
+</form>

+ 9 - 1
application/admin/view/userwallet/updatemoney.html

@@ -8,9 +8,17 @@
     </div>
 
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">增加金币数量:</label>
+        <label class="control-label col-xs-12 col-sm-2">增加充值金币:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-gold" data-rule="required" class="form-control" name="gold" type="number" value="">
+            负数可以减少
+        </div>
+    </div>
+
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">备注:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-remark" data-rule="required" class="form-control" name="remark" type="text" value="">
         </div>
     </div>
 

+ 6 - 0
application/common/model/Wallet.php

@@ -116,6 +116,12 @@ class Wallet extends Model
             return $result;
         }
 
+        //钱包冻结
+        if($wallet['status'] == 2 && in_array($logtype,[11,12,13,14,30,55])){
+            $result['msg'] = '您的钱包已被冻结,请联系客服';
+            return $result;
+        }
+
         //扣除金币单独方法
         if($accountType == 'gold' && bccomp($number, 0) === -1){
             //两个钱包的合,是否足够

+ 2 - 2
application/extra/wallet.php

@@ -14,10 +14,10 @@ return [
         14 => '赠送礼物',//gold -  ,jewel -
 
 /////////////////////////////////////
-
+        2  => '系统调节',//jewel + -
         21 => '视频通话',//jewel+
         22 => '语音通话',//jewel+
-        23 => '聊天',//jewel+
+        23 => '聊天',   //jewel+
         24 => '获得礼物',//jewel +
 
         30 => '提现',      //jewel-

+ 1 - 1
public/assets/js/backend/usergoldlog.js

@@ -29,7 +29,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 //                        {field: 'user_id', title: __('User_id')},
                         {field: 'user.username', title: __('User.username')},
                         {field: 'type_text', title: __('Log_type')},
-                        {field: 'money_type', title: __('Money_type')},
+                        {field: 'money_type', title: __('Money_type'),searchList: {"gold":__('gold'),"jewel":__('jewel')}, formatter: Table.api.formatter.status},
                         {field: 'before', title: __('Before'), operate:'BETWEEN'},
                         {field: 'change_value', title: __('Change_value'), operate:'BETWEEN'},
                         {field: 'remain', title: __('Remain'), operate:'BETWEEN'},

+ 13 - 1
public/assets/js/backend/userwallet.js

@@ -7,7 +7,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 extend: {
                     index_url: 'userwallet/index' + location.search,
                     add_url: 'userwallet/add',
-//                    edit_url: 'userwallet/edit',
+                    edit_url: 'userwallet/edit',
 //                    del_url: 'userwallet/del',
                     multi_url: 'userwallet/multi',
                     import_url: 'userwallet/import',
@@ -47,6 +47,15 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     url:'userwallet/updatemoney/id/{ids}?dialog=1',
                                     target:'_self',
                                 },
+                                {
+                                    name:'updatejewel',
+                                    text:'收益金币',
+                                    title:'收益金币',
+                                    icon:'fa fa-exclamation-circle',
+                                    classname:'btn btn-xs btn-info btn-dialog',
+                                    url:'userwallet/updatejewel/id/{ids}?dialog=1',
+                                    target:'_self',
+                                },
                                /* {
                                     name:'updatevip',
                                     text:'充值vip会员',
@@ -74,6 +83,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         updatemoney: function () {
             Controller.api.bindevent();
         },
+        updatejewel: function () {
+            Controller.api.bindevent();
+        },
         updatevip: function () {
             Controller.api.bindevent();
         },