Kirin 2 سال پیش
والد
کامیت
5041a696db
3فایلهای تغییر یافته به همراه41 افزوده شده و 11 حذف شده
  1. 18 2
      app/admin/controller/user/User.php
  2. 7 0
      app/admin/view/user/user/index.php
  3. 16 9
      app/models/store/StoreOrder.php

+ 18 - 2
app/admin/controller/user/User.php

@@ -124,10 +124,13 @@ class User extends AuthController
         $user = UserModel::where('uid', $uid)->find();
         if (!$user) return Json::fail('数据不存在!');
         $f = array();
-        $f[] = Form::radio('money_status', '修改余额', 1)->options([['value' => 1, 'label' => '增加'], ['value' => 2, 'label' => '减少']]);
-        $f[] = Form::number('money', '余额')->min(0);
+//        $f[] = Form::radio('money_status', '修改余额', 1)->options([['value' => 1, 'label' => '增加'], ['value' => 2, 'label' => '减少']]);
+//        $f[] = Form::number('money', '余额')->min(0);
         $f[] = Form::radio('integration_status', '修改积分', 1)->options([['value' => 1, 'label' => '增加'], ['value' => 2, 'label' => '减少']]);
         $f[] = Form::number('integration', '积分')->min(0);
+        $f[] = Form::radio('consumer_status', '修改消费券', 1)->options([['value' => 1, 'label' => '增加'], ['value' => 2, 'label' => '减少']]);
+        $f[] = Form::number('consumer', '修改消费券')->min(0);
+
         $form = Form::make_post_form('修改其他', $f, Url::buildUrl('update_other', array('uid' => $uid)));
         $this->assign(compact('form'));
         return $this->fetch('public/form-builder');
@@ -192,6 +195,8 @@ class User extends AuthController
             ['money', 0],
             ['integration_status', 0],
             ['integration', 0],
+            ['consumer_status', 0],
+            ['consumer', 0],
         ], $this->request);
         if (!$uid) return $this->failed('数据不存在');
         $user = UserModel::where('uid', $uid)->find();
@@ -246,6 +251,17 @@ class User extends AuthController
         } else {
             $res2 = true;
         }
+        if ($data['consumer_status'] && $data['consumer']) {//积分增加或者减少
+            if ($data['consumer_status'] == 1) {//增加
+                $edit['consumer'] = bcadd($user['consumer'], $data['consumer'], 2);
+                $res2 = UserBillAdmin::income('系统增加消费券', $user['uid'], 'consumer', 'system_add', $data['consumer'], $this->adminId, $edit['consumer'], '系统增加了' . floatval($data['consumer']) . '消费券');
+            } else if ($data['consumer_status'] == 2) {//减少
+                $edit['consumer'] = bcsub($user['consumer'], $data['consumer'], 2);
+                $res2 = UserBillAdmin::expend('系统减少消费券', $user['uid'], 'consumer', 'system_sub', $data['consumer'], $this->adminId, $edit['consumer'], '系统扣除了' . floatval($data['consumer']) . '消费券');
+            }
+        } else {
+            $res2 = true;
+        }
         if ($edit) $res3 = UserModel::where('uid', $uid)->update($edit);
         else $res3 = true;
         if ($res1 && $res2 && $res3) $res = true;

+ 7 - 0
app/admin/view/user/user/index.php

@@ -243,6 +243,10 @@
                                 <a href="javascript:void(0);" lay-event="pay">
                                     <i class="layui-icon layui-icon-edit"></i> 充值</a>
                             </li>
+                            <li>
+                                <a href="javascript:void(0);" lay-event="charge">
+                                    <i class="layui-icon layui-icon-edit"></i> 积分消费券</a>
+                            </li>
                             <li>
                             <a href="javascript:void(0);" lay-event="exchange">
                                 <i class="layui-icon layui-icon-edit"></i> 兑换充值卡</a>
@@ -450,6 +454,9 @@
             case 'pay':
                  $eb.createModalFrame(data.nickname+'-账号充值',layList.Url({a:'pay',p:{uid:data.uid}}));
                 break;
+            case 'charge':
+                 $eb.createModalFrame(data.nickname+'-积分消费券修改',layList.Url({a:'edit_other',p:{uid:data.uid}}));
+                break;
             case 'exchange':
                 $eb.createModalFrame(data.nickname+'-兑换充值卡',layList.Url({a:'exchange',p:{uid:data.uid}}));
                 break;

+ 16 - 9
app/models/store/StoreOrder.php

@@ -2593,19 +2593,26 @@ class StoreOrder extends BaseModel
 //                    }
 //                }
             }
-            if ($group_level) {
+//            if ($group_level) {
+            if (!$group_level) {
+                $group_award_basic = sys_config('group_award_basic', 0);
+                $integral_group_award_basic = sys_config('integral_group_award_basic', 0);
+                $brokeragePrice = bcmul(bcdiv($group_award_basic, 100, 4), bcsub(bcsub($order['pay_price'], $suit_price, 2), $extra_price, 2), 2);
+                if ($order['use_integral'] > 0) $brokeragePrice = bcmul(bcdiv($integral_group_award_basic, 100, 4), bcsub(bcsub($order['pay_price'], $suit_price, 2), $extra_price, 2), 2);
+            } else {
                 $brokeragePrice = bcmul(bcdiv($group_level['group_award'], 100, 4), bcsub(bcsub($order['pay_price'], $suit_price, 2), $extra_price, 2), 2);
                 if ($order['use_integral'] > 0) $brokeragePrice = bcmul(bcdiv($group_level['integral_group_award'], 100, 4), bcsub(bcsub($order['pay_price'], $suit_price, 2), $extra_price, 2), 2);
-                if ($brokeragePrice > $send_normal) {
-                    $real_send = bcsub($brokeragePrice, $send_normal, 2);
-                    if ($real_send > 0) {
-                        $mark = '用户' . $userInfo['nickname'] . '(' . $order['uid'] . ')' . '购买' . ($order['use_integral'] > 0 ? '积分' : '普通') . '商品,获得极差奖励' . $real_send;
-                        $res = $res && UserBill::income('极差奖', $spread['uid'], 'now_money', 'brokerage', $real_send, $order['id'], bcadd($spread['brokerage_price'], $real_send, 2), $mark);
-                        $res = $res && User::where('uid', $spread['uid'])->inc('brokerage_price', $real_send)->update();
-                        $send_normal = $brokeragePrice;
-                    }
+            }
+            if ($brokeragePrice > $send_normal) {
+                $real_send = bcsub($brokeragePrice, $send_normal, 2);
+                if ($real_send > 0) {
+                    $mark = '用户' . $userInfo['nickname'] . '(' . $order['uid'] . ')' . '购买' . ($order['use_integral'] > 0 ? '积分' : '普通') . '商品,获得极差奖励' . $real_send;
+                    $res = $res && UserBill::income('极差奖', $spread['uid'], 'now_money', 'brokerage', $real_send, $order['id'], bcadd($spread['brokerage_price'], $real_send, 2), $mark);
+                    $res = $res && User::where('uid', $spread['uid'])->inc('brokerage_price', $real_send)->update();
+                    $send_normal = $brokeragePrice;
                 }
             }
+//            }
             $spread = User::getUserInfo($spread['spread_uid']);
         }
         return $res;