作者 Cool

提现、社区管理调整

@@ -65,7 +65,7 @@ class House extends Backend @@ -65,7 +65,7 @@ class House extends Backend
65 if($v['admin_user_id'] == 0){ 65 if($v['admin_user_id'] == 0){
66 $v['admin_user_id'] = ''; 66 $v['admin_user_id'] = '';
67 }else{ 67 }else{
68 - $v['admin_user_id'] = Db::name('house_admin')->where('id',$v['admin_user_id'])->value('name'); 68 + $v['admin_user_id'] = Db::name('house_admin')->where('id',$v['admin_user_id'])->value('nickname');
69 } 69 }
70 70
71 } 71 }
@@ -2,6 +2,8 @@ @@ -2,6 +2,8 @@
2 2
3 namespace app\admin\controller\user; 3 namespace app\admin\controller\user;
4 4
  5 +use addons\third\library\Service;
  6 +use addons\wechat\library\Config as ConfigService;
5 use app\common\controller\Backend; 7 use app\common\controller\Backend;
6 use EasyWeChat\Foundation\Application; 8 use EasyWeChat\Foundation\Application;
7 use think\Db; 9 use think\Db;
@@ -107,27 +109,17 @@ class UserWithdraw extends Backend @@ -107,27 +109,17 @@ class UserWithdraw extends Backend
107 } 109 }
108 } 110 }
109 $row->status = $params['status']; 111 $row->status = $params['status'];
  112 + $withdraw_percent = config('site.withdraw_percent');
110 Db::startTrans(); 113 Db::startTrans();
111 try { 114 try {
112 $user_model = new \app\admin\model\User(); 115 $user_model = new \app\admin\model\User();
113 $user = $user_model->where('id', $row->user_id)->find(); 116 $user = $user_model->where('id', $row->user_id)->find();
114 if ($params['status'] == 2) { 117 if ($params['status'] == 2) {
115 // 微信提现 118 // 微信提现
116 - $options = get_addon_config('epay');  
117 - $wechat_option = [  
118 - 'app_id' => $options['wechat']['appid'],  
119 - 'app_secret' => $options['wechat']['app_secret'],  
120 - 'payment' => [  
121 - 'merchant_id' => $options['wechat']['mch_id'],  
122 - 'key' => $options['wechat']['key'],  
123 - 'cert_path' => ROOT_PATH . 'addons' . $options['wechat']['cert_client'],  
124 - 'key_path' => ROOT_PATH . 'addons' . $options['wechat']['cert_key'],  
125 - ]  
126 - ];  
127 - $app = new Application($wechat_option); 119 + $app = new Application(ConfigService::load());
128 $merchantPay = $app->merchant_pay; 120 $merchantPay = $app->merchant_pay;
129 $order_sn = $row->order_sn; 121 $order_sn = $row->order_sn;
130 - $user_openid = Db::name('third')->where('user_id', $row->user_id)->where('third_party', 'wechat')->value('openid'); 122 + $user_openid = Db::name('third')->where('user_id', $row->user_id)->where('platform', 'wechat')->value('openid');
131 $merchantPayData = [ 123 $merchantPayData = [
132 'partner_trade_no' => $order_sn, //随机字符串作为订单号,跟红包和支付一个概念。 124 'partner_trade_no' => $order_sn, //随机字符串作为订单号,跟红包和支付一个概念。
133 'openid' => $user_openid, //收款人的openid 125 'openid' => $user_openid, //收款人的openid
@@ -138,17 +130,31 @@ class UserWithdraw extends Backend @@ -138,17 +130,31 @@ class UserWithdraw extends Backend
138 ]; 130 ];
139 $result_pay = $merchantPay->send($merchantPayData); 131 $result_pay = $merchantPay->send($merchantPayData);
140 if ($result_pay['return_code'] == 'SUCCESS' && $result_pay['result_code'] == 'SUCCESS') { 132 if ($result_pay['return_code'] == 'SUCCESS' && $result_pay['result_code'] == 'SUCCESS') {
  133 + if($row->type == 1) {
  134 + // 余额变动记录
  135 + $log = [
  136 + 'user_id' => $row->user_id,
  137 + 'score' => $row->money * $withdraw_percent,
  138 + 'before' => $user['score'],
  139 + 'after' => $user['score'] - $row->money * $withdraw_percent,
  140 + 'createtime' => time(),
  141 + 'status' => 2,
  142 + 'memo' => '提现'
  143 + ];
  144 + $result_log = Db::name('user_score_log')->insertGetId($log);
  145 + } else{
141 // 余额变动记录 146 // 余额变动记录
142 $log = [ 147 $log = [
143 'user_id' => $row->user_id, 148 'user_id' => $row->user_id,
144 - 'score' => $row->money, 149 + 'money' => $row->money,
145 'before' => $user['money'], 150 'before' => $user['money'],
146 'after' => $user['money'] - $row->money, 151 'after' => $user['money'] - $row->money,
147 'createtime' => time(), 152 'createtime' => time(),
148 'status' => 2, 153 'status' => 2,
149 'memo' => '提现' 154 'memo' => '提现'
150 ]; 155 ];
151 - $result_log = Db::name('user_score_log')->insertGetId($log); 156 + $result_log = Db::name('user_money_log')->insertGetId($log);
  157 + }
152 $row->success_time = time(); 158 $row->success_time = time();
153 $row->more = json_encode($result_pay, JSON_UNESCAPED_UNICODE); 159 $row->more = json_encode($result_pay, JSON_UNESCAPED_UNICODE);
154 } else { 160 } else {
@@ -156,19 +162,35 @@ class UserWithdraw extends Backend @@ -156,19 +162,35 @@ class UserWithdraw extends Backend
156 $this->error($result_pay['err_code_des']); 162 $this->error($result_pay['err_code_des']);
157 } 163 }
158 } else { 164 } else {
  165 + if($row->type == 1) {
159 // 余额变动记录 166 // 余额变动记录
160 $log = [ 167 $log = [
161 'user_id' => $row->user_id, 168 'user_id' => $row->user_id,
162 - 'score' => $row->money, 169 + 'score' => $row->money * $withdraw_percent,
163 'before' => $user['score'], 170 'before' => $user['score'],
164 - 'after' => $user['score'] + $row->money, 171 + 'after' => $user['score'] + $row->money * $withdraw_percent,
165 'createtime' => time(), 172 'createtime' => time(),
166 'status' => 3, 173 'status' => 3,
167 'memo' => '提现审核失败' 174 'memo' => '提现审核失败'
168 ]; 175 ];
169 $result_log = Db::name('user_score_log')->insertGetId($log); 176 $result_log = Db::name('user_score_log')->insertGetId($log);
170 // 返还用户余额 177 // 返还用户余额
171 - $result_user = $user_model->where('id', $user['id'])->setInc('score', $row->money); 178 + $result_user = $user_model->where('id', $user['id'])->setInc('score', $row->money * $withdraw_percent);
  179 + } else {
  180 + // 余额变动记录
  181 + $log = [
  182 + 'user_id' => $row->user_id,
  183 + 'money' => $row->money,
  184 + 'before' => $user['money'],
  185 + 'after' => $user['money'] + $row->money,
  186 + 'createtime' => time(),
  187 + 'status' => 3,
  188 + 'memo' => '提现审核失败'
  189 + ];
  190 + $result_log = Db::name('user_money_log')->insertGetId($log);
  191 + // 返还用户余额
  192 + $result_user = $user_model->where('id', $user['id'])->setInc('money', $row->money);
  193 + }
172 if (!$result_log || !$result_user) { 194 if (!$result_log || !$result_user) {
173 Db::rollback(); 195 Db::rollback();
174 $this->error('提现审核失败'); 196 $this->error('提现审核失败');
@@ -1054,6 +1054,9 @@ class Store extends Api @@ -1054,6 +1054,9 @@ class Store extends Api
1054 $model = new Message(); 1054 $model = new Message();
1055 $comment = $model->pageSelect($page,$where,'*',$order,config('option.num')); 1055 $comment = $model->pageSelect($page,$where,'*',$order,config('option.num'));
1056 $list = $comment->items(); 1056 $list = $comment->items();
  1057 + foreach ($list as &$v) {
  1058 + $v['title'] = '留言消息';
  1059 + }
1057 $return = [ 1060 $return = [
1058 'list' => $list, 1061 'list' => $list,
1059 'this_page' => $comment->currentPage(), 1062 'this_page' => $comment->currentPage(),
@@ -6,10 +6,11 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin @@ -6,10 +6,11 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
6 Table.api.init({ 6 Table.api.init({
7 extend: { 7 extend: {
8 index_url: 'user/user_withdraw/index' + location.search, 8 index_url: 'user/user_withdraw/index' + location.search,
9 - add_url: 'user/user_withdraw/add',  
10 - edit_url: 'user/user_withdraw/edit',  
11 - del_url: 'user/user_withdraw/del',  
12 - multi_url: 'user/user_withdraw/multi', 9 + // add_url: 'user/user_withdraw/add',
  10 + // edit_url: 'user/user_withdraw/edit',
  11 + // del_url: 'user/user_withdraw/del',
  12 + // multi_url: 'user/user_withdraw/multi',
  13 + examine_url: 'user/user_withdraw/examine',
13 table: 'user_withdraw', 14 table: 'user_withdraw',
14 } 15 }
15 }); 16 });
@@ -25,7 +26,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin @@ -25,7 +26,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
25 [ 26 [
26 {checkbox: true}, 27 {checkbox: true},
27 {field: 'id', title: __('Id')}, 28 {field: 'id', title: __('Id')},
28 - {field: 'user_id', title: __('User_id')}, 29 + {field: 'user.nickname', title: __('User.nickname')},
29 {field: 'before_money', title: __('Before_money'), operate:'BETWEEN'}, 30 {field: 'before_money', title: __('Before_money'), operate:'BETWEEN'},
30 {field: 'after_money', title: __('After_money'), operate:'BETWEEN'}, 31 {field: 'after_money', title: __('After_money'), operate:'BETWEEN'},
31 {field: 'order_sn', title: __('Order_sn')}, 32 {field: 'order_sn', title: __('Order_sn')},
@@ -35,10 +36,47 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin @@ -35,10 +36,47 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
35 {field: 'success_time', title: __('Success_time'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime}, 36 {field: 'success_time', title: __('Success_time'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
36 {field: 'transaction_id', title: __('Transaction_id')}, 37 {field: 'transaction_id', title: __('Transaction_id')},
37 {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime}, 38 {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
38 - {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},  
39 - {field: 'percent', title: __('Percent'), operate:'BETWEEN'},  
40 - {field: 'user.nickname', title: __('User.nickname')},  
41 - {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate} 39 + {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
  40 + buttons: [
  41 + {
  42 + name: 'examine',
  43 + text: '通过',
  44 + title: '通过',
  45 + classname: 'btn btn-xs btn-primary btn-ajax',
  46 + icon: '',
  47 + url: $.fn.bootstrapTable.defaults.extend.examine_url+'/status/2',
  48 + confirm: '是否确认通过审核?',
  49 + visible:function (row) {
  50 + if(row.status == 0){
  51 + return true;
  52 + }else{
  53 + return false;
  54 + }
  55 + },
  56 + success: function (data) {
  57 + table.bootstrapTable('refresh');
  58 + }
  59 + },
  60 + {
  61 + name: 'examine',
  62 + text: '驳回',
  63 + title: '驳回',
  64 + classname: 'btn btn-xs btn-danger btn-ajax',
  65 + icon: '',
  66 + url: $.fn.bootstrapTable.defaults.extend.examine_url+'/status/3',
  67 + confirm: '是否确认驳回审核?',
  68 + visible:function (row) {
  69 + if(row.status == 0){
  70 + return true;
  71 + }else{
  72 + return false;
  73 + }
  74 + },
  75 + success: function (data) {
  76 + table.bootstrapTable('refresh');
  77 + }
  78 + }
  79 + ], formatter: Table.api.formatter.operate}
42 ] 80 ]
43 ] 81 ]
44 }); 82 });