Jonlin 6 роки тому
батько
коміт
7314e3b7de

+ 9 - 3
application/admin/controller/Base.php

@@ -26,11 +26,17 @@ class Base extends Controller
             }
         }
         $settings = db('settings')->where('id',1)->find();
-        if($settings['ip_disjunctor'] == 'on'){
-            $settings['disjunctor'] = '关闭ip限制';
+        if($settings['kf_white_list'] == 'on'){
+            $settings['white_list'] = '关闭客服白名单';
         }else{
-            $settings['disjunctor'] = '开启ip限制';
+            $settings['white_list'] = '开启客服白名单';
         }
+        if($settings['account_black_list'] == 'on'){
+            $settings['black_list'] = '关闭用户黑名单';
+        }else{
+            $settings['black_list'] = '开启用户黑名单';
+        }
+
         $material = db('material')->select();
 
         $this->assign([

+ 17 - 7
application/admin/controller/Iplimit.php

@@ -147,19 +147,29 @@ class Iplimit extends Base
     public function disjunctor(){
         if(request()->isAjax()){
             $disjunctor = input('param.disjunctor');
+            $type = input('param.type');
             try{
-                if($disjunctor == 'on'){
-                    $msg = '开启';
-                    db('settings')->where('id', 1)->update(['ip_disjunctor'=>$disjunctor]);
-                }else{
-                    $msg = '关闭';
-                    db('settings')->where('id', 1)->update(['ip_disjunctor'=>$disjunctor]);
+                if($disjunctor == 'on' && $type == 'kf'){
+                    $msg = '开启客服白名单';
+                    db('settings')->where('id', 1)->update(['kf_white_list'=>$disjunctor]);
+                }
+                if($disjunctor == 'off' && $type == 'kf'){
+                    $msg = '关闭客服白名单';
+                    db('settings')->where('id', 1)->update(['kf_white_list'=>$disjunctor]);
+                }
+                if($disjunctor == 'on' && $type == 'account'){
+                    $msg = '开启用户黑名单';
+                    db('settings')->where('id', 1)->update(['account_black_list'=>$disjunctor]);
+                }
+                if($disjunctor == 'off' && $type == 'account'){
+                    $msg = '关闭用户黑名单';
+                    db('settings')->where('id', 1)->update(['account_black_list'=>$disjunctor]);
                 }
             }catch(\Exception $e){
                 return json(['code' => -1, 'data' => '', 'msg' => $e->getMessage()]);
             }
 
-            return json(['code' => 1, 'data' => '', 'msg' => $msg.'ip限制成功']);
+            return json(['code' => 1, 'data' => '', 'msg' => $msg.'成功']);
         }
     }
 

+ 55 - 8
application/admin/view/iplimit/index.html

@@ -37,7 +37,9 @@
                 <div class="content clearfix m-b">
                     <div class="form-group" style="margin-left: 200px">
                         <a href="javascript:disjunctor()" class="btn" style="margin-top:5px;" >
-                            <input type="button" id="disjunctor" class="btn {if($settings['ip_disjunctor']=='on')}btn-primary{else}btn-danger{/if} btn-sm" value="{$settings['disjunctor']}" style="font-weight: bold;height: 34px;margin-top: -2px;">
+                            <input type="hidden" id="account_black_list" value="{$settings['account_black_list']}">
+                            <input type="hidden" id="kf_white_list" value="{$settings['kf_white_list']}">
+                            <input type="button" id="disjunctor" class="btn {if($settings['kf_white_list']=='on')}btn-primary{else}btn-danger{/if} btn-sm" value="{$settings['white_list']}" style="font-weight: bold;height: 34px;margin-top: -2px;">
                         </a>
                     </div>
                 </div>
@@ -92,10 +94,29 @@
             $("#current1").css("background","#eee");
             $("#current2").css("background","#fff");
             $("#add").attr('href','/admin/iplimit/add.html?type=1');
+            if($('#account_black_list').val() == 'on'){
+                $('#disjunctor').val('关闭用户黑名单');
+                $("#disjunctor").addClass("btn-primary");
+                $("#disjunctor").removeClass("btn-danger");
+            }else{
+                $('#disjunctor').val('开启用户黑名单');
+                $("#disjunctor").addClass("btn-danger");
+                $("#disjunctor").removeClass("btn-primary");
+            }
+
         } else if (id == 2) {
             $("#current2").css({"background":"#eee"});
             $("#current1").css({"background":"#fff"});
             $("#add").attr('href','/admin/iplimit/add.html?type=2');
+            if($('#kf_white_list').val() == 'on'){
+                $('#disjunctor').val('关闭客服白名单');
+                $("#disjunctor").addClass("btn-primary");
+                $("#disjunctor").removeClass("btn-danger");
+            }else{
+                $('#disjunctor').val('开启客服白名单');
+                $("#disjunctor").addClass("btn-danger");
+                $("#disjunctor").removeClass("btn-primary");
+            }
         }
         initTable()
     }
@@ -184,25 +205,51 @@
     }
 
     function disjunctor(){
-        if($('#disjunctor').val() == '开启IP限制'){
+        if($('#disjunctor').val() == '开启客服白名单'){
             var disjunctor = 'on';
-        }else{
+            var type = 'kf';
+        }
+        if($('#disjunctor').val() == '关闭客服白名单'){
             var disjunctor = 'off';
+            var type = 'kf';
+        }
+        if($('#disjunctor').val() == '开启用户黑名单'){
+            var disjunctor = 'on';
+            var type = 'account';
+        }
+        if($('#disjunctor').val() == '关闭用户黑名单'){
+            var disjunctor = 'off';
+            var type = 'account';
         }
         layer.confirm('确认'+$('#disjunctor').val()+'?', {icon: 3, title:'提示'}, function(index){
             //do something
-            $.getJSON("{:url('iplimit/disjunctor')}", {'disjunctor':disjunctor}, function(res){
+            $.getJSON("{:url('iplimit/disjunctor')}", {'disjunctor':disjunctor,'type':type}, function(res){
                 //console.log(disjunctor);
                 console.log(res);
                 if(1 == res.code){
                     layer.alert(res.msg, {title: '友情提示', icon: 1, closeBtn: 0}, function(){
                         initTable();
-                        if($('#disjunctor').val() == '开启IP限制'){
-                            $('#disjunctor').val('关闭IP限制');
+                        if(res.msg == '开启客服白名单成功'){
+                            $('#disjunctor').val('关闭客服白名单');
+                            $('#kf_white_list').val('on');
+                            $("#disjunctor").addClass("btn-primary");
+                            $("#disjunctor").removeClass("btn-danger");
+                        }
+                        if(res.msg == '关闭客服白名单成功'){
+                            $('#disjunctor').val('开启客服白名单');
+                            $('#kf_white_list').val('off');
+                            $("#disjunctor").addClass("btn-danger");
+                            $("#disjunctor").removeClass("btn-primary");
+                        }
+                        if(res.msg == '开启用户黑名单成功'){
+                            $('#disjunctor').val('关闭用户黑名单');
+                            $('#account_black_list').val('on');
                             $("#disjunctor").addClass("btn-primary");
                             $("#disjunctor").removeClass("btn-danger");
-                        }else{
-                            $('#disjunctor').val('开启IP限制');
+                        }
+                        if(res.msg == '关闭用户黑名单成功'){
+                            $('#disjunctor').val('开启用户黑名单');
+                            $('#account_black_list').val('off');
                             $("#disjunctor").addClass("btn-danger");
                             $("#disjunctor").removeClass("btn-primary");
                         }

+ 1 - 1
application/index/controller/Register.php

@@ -100,7 +100,7 @@ class Register extends Common
     {
         //验证用户IP
         $settings = db('settings')->where('id',1)->find();
-        if($settings['ip_disjunctor'] == 'on'){
+        if($settings['account_black_list'] == 'on'){
             @$ip = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
             $ip = ($ip) ? $ip : $_SERVER["REMOTE_ADDR"];
             //将ip地址转换成int型

+ 2 - 2
application/service/controller/Login.php

@@ -16,9 +16,9 @@ class Login extends Controller
 
     public function doLogin()
     {
-        //验证用户IP
+        //验证客服IP
         $settings = db('settings')->where('id',1)->find();
-        if($settings['ip_disjunctor'] == 'on'){
+        if($settings['kf_white_list'] == 'on'){
             @$ip = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
             $ip = ($ip) ? $ip : $_SERVER["REMOTE_ADDR"];
             //将ip地址转换成int型