Bläddra i källkod

Merge branch 'master' of http://git.dongerkj.com:9095/derkj/NN2020042801

wesmiler 6 år sedan
förälder
incheckning
7797da6c65

+ 71 - 17
app/admin/controller/MessageController.php

@@ -45,7 +45,7 @@ class MessageController extends AdminBaseController{
             $users = Db::name('user')->where('id','gt',1)->select();
             $this->assign('users',$users);
             //超级管理员
-            $lists = Db::name('message')->where($map)->order('id desc')->paginate(20,false,['query'=>$query]);
+            $lists = Db::name('message')->where($map)->order('create_time desc')->paginate(20,false,['query'=>$query]);
             $this->assign('lists',$lists);
 
 
@@ -79,28 +79,19 @@ class MessageController extends AdminBaseController{
                         ->alias('p1')
                         ->leftJoin('mobile_log p2','p1.`id`=p2.`msg_id`')
                         ->group('p1.`id`')
+                        ->order('p1.create_time','asc')
                         ->field($field)->where('p1.catid','in',$cates)->where($map2)->limit(0,$from)->select();
 
                 }else{
 
                     $field=['*'];
-                     $lists = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
-                }
-
-
+                     $lists = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('create_time','asc')->limit(0,$from)->select();
 
-              //  $lists = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
 
-            //ppppp
-            	// if($from<20){
-            	// 	$lists = Db::name('message')->where('catid','in',$cates)->where($map)->order('id desc')->limit(0,$from)->select();
-
-            	// }else{
-            	// 	$curinfo = Db::name('message')->where('catid','in',$cates)->where($map)->order('id desc')->limit($from,1)->find();
+                }
 
-	            //     $curid = $curinfo['id'];
-	            //     $lists = Db::name('message')->where('catid','in',$cates)->where($map)->where('id','>',$curid)->order('id desc')->select;
-            	// }
+                $lists=$this->array_fan($lists);
+                array_multisort(array_column($lists,'create_time'), SORT_DESC, $lists);
 
             }
             $this->assign('fenpei',$fenpei);
@@ -109,6 +100,39 @@ class MessageController extends AdminBaseController{
         return $this->fetch();
     }
 
+
+    //把二维数组反转
+    public function array_fan($arr)
+    {
+
+        $data=array();
+        if(!empty($arr))
+        {
+            $num= count($arr);
+            $j=0;
+            $data=array();
+            for($i=$num-1;$i>=0;$i--)
+            {
+                $data[$i]=$arr[$j];
+                $j++;
+
+            }
+
+        }
+
+    return $data;
+
+
+    }
+
+
+    /***
+     * @throws \think\Exception
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @throws \think\exception\DbException
+     * @throws \think\exception\PDOException
+     */
     public function tomobile()
     {
      
@@ -269,7 +293,20 @@ class MessageController extends AdminBaseController{
 				$param['jm_title'] = $info['title'];
 			}
 		}
-        // ppppppppp
+		//mobile
+
+        if(strlen($param['mobile']) == 11)
+        {
+            if(!$this->checkPhoneNumberValidate($param['mobile'])){
+                $this->error('手机号码不正确');
+            }
+
+
+        }else{
+            $this->error('手机号码不正确');
+        }
+
+            // ppppppppp
         if($param['catname']){
             $cat=Db::name('category')->where('catname',$param['catname'])->find();
             if(!empty($cat)){
@@ -293,7 +330,24 @@ class MessageController extends AdminBaseController{
 		}
 		
 	}
-	
+
+
+   private function checkPhoneNumberValidate($phone_number){
+
+        $g = "/^1[34578]\d{9}$/";
+        $g2 = "/^19[89]\d{8}$/";
+        $g3 = "/^166\d{8}$/";
+        if(preg_match($g, $phone_number)){
+            return true;
+        }else  if(preg_match($g2, $phone_number)){
+            return true;
+        }else if(preg_match($g3, $phone_number)){
+            return true;
+        }
+
+        return false;
+
+    }
 	
     /**
      * 信息分配给用户

+ 67 - 16
app/admin/controller/NewsController.php

@@ -35,6 +35,8 @@ class NewsController extends AdminBaseController{
         $map = array();
         if($this->iseditor){
         	$map['author'] = $this->uname;
+            //加多一个编辑人员下的,如果是审核了,就不显示文章。2020-05-15
+            $map['status'] = 0;
         }
         if($catid){
             $map['catid'] = $catid;
@@ -57,24 +59,73 @@ class NewsController extends AdminBaseController{
         return $this->fetch();
     }
     public function add(){
-        $param = $this->request->param();
-        isset($param['pid']) or $param['pid'] = 0;
-        $cates = Db::name('category')->where('parent_id',0)->order('list_order')->select();
-        foreach($cates as $k=>$v){
-            $son = Db::name('category')->where('parent_id',$v['id'])->order('list_order')->select();
-            $v['son'] = $son;
-            $cates[$k] = $v;
-        }
-        //文章分类
-        //文章分类
-        $article_list = Db::name('news_category')->order('list_order')->select();
-        $article_cates = array();
-        foreach($article_list as $k=>$v){
-            $article_cates[$v['id']] = $v['catname'];
+      
+        //如果是管理员的就是这样。
+        $admin_id=$_SESSION['think']['ADMIN_ID'];
+        $user = Db::name('role_user')->field('role_id,user_id')->where('user_id',$admin_id)->find();
+        // echo Db::name('role_user')->getLastSql();die();
+        //  echo ($user['role_id']) ;die;
+         // echo  $admin_id;die();
+        if($user['role_id']==3){
+
+            $param = $this->request->param();
+
+
+            $cates = Db::name('user')->field('category')->where('id',$user['user_id'])->find();
+            $category=unserialize($cates['category']);
+            
+            $categorys='';
+            //遍历数组成字符串,然后再进行循环读取。
+           
+            foreach($category as $k=>$value){
+                if(($k+1)==count($category)){
+                  $categorys.=$value."";
+                }else{
+                  $categorys.=$value.",";     
+                }
+            }
+
+           // echo $categorys;die();
+            //foreach($cates as $k=>$v){
+            //sdfsdfs
+            $cates = Db::name('category')->where('id','in',$categorys)->order('id')->select();
+                // echo  Db::name('category')->getLastSql();die();
+            //}   
+            //文章分类
+            //文章分类
+            $article_list = Db::name('news_category')->order('list_order')->select();
+            $article_cates = array();
+            foreach($article_list as $k=>$v){
+                $article_cates[$v['id']] = $v['catname'];
+            }
+
+        }else{
+            $param = $this->request->param();
+            isset($param['pid']) or $param['pid'] = 0;
+            $cates = Db::name('category')->where('parent_id',0)->order('list_order')->select();
+            foreach($cates as $k=>$v){
+                $son = Db::name('category')->where('parent_id',$v['id'])->order('list_order')->select();
+                $v['son'] = $son;
+                $cates[$k] = $v;
+            }   
+            //文章分类
+            //文章分类
+            $article_list = Db::name('news_category')->order('list_order')->select();
+            $article_cates = array();
+            foreach($article_list as $k=>$v){
+                $article_cates[$v['id']] = $v['catname'];
+            }
+
         }
+        
+       //var_dump($_SESSION['think']['ADMIN_ID']);die;
+       //通过admin_id来进行读取用户的角色信息
+       //
+       
+
         $this->assign('pid',$param['pid']);
         $this->assign('article_cates',$article_cates);
-        $this->assign('cates',$cates);
+        $this->assign('cates',$cates); 
         return $this->fetch();
     }
     public function addPost(){
@@ -89,7 +140,7 @@ class NewsController extends AdminBaseController{
         $res = Db::name('news')->insertGetId($param);
         $data['id'] = $res;
         
-    
+        
         Db::name('news_data')->insert($data);
         if($res){
             $this->success('添加成功');

+ 71 - 0
public/themes/admin_simpleboot3/admin/jiameng/showcategory.html

@@ -0,0 +1,71 @@
+<include file="public@header" />
+<style>.expander{margin-left: -20px;}</style>
+</head>
+<body>
+    <div class="wrap js-check-wrap">
+        <ul class="nav nav-tabs">
+            <li><a href="{:url('rbac/index')}">{:lang('ADMIN_RBAC_INDEX')}</a></li>
+            <li><a href="{:url('rbac/roleAdd')}">{:lang('ADMIN_RBAC_ROLEADD')}</a></li>
+            <li class="active"><a href="javascript:;">{:lang('ADMIN_RBAC_AUTHORIZE')}</a></li>
+        </ul>
+        <form class="js-ajax-form margin-top-20"  action="{:url('rbac/authorizePost')}" method="post">
+            <div class="table_full">
+                <table class="table table-bordered" id="authrule-tree">
+                    <tbody>
+                        {$category}
+                    </tbody>
+                </table>
+            </div>
+            <div class="form-actions">
+                <input type="hidden" name="roleId" value="{$roleId}" />
+                <button class="btn btn-primary js-ajax-submit" type="submit">{:lang('SAVE')}</button>
+                <a class="btn btn-default" href="{:url('admin/rbac/index')}">{:lang('BACK')}</a>
+            </div>
+        </form>
+    </div>
+    <script src="__STATIC__/js/admin.js"></script>
+    <script type="text/javascript">
+    $(document).ready(function () {
+        Wind.css('treeTable');
+        Wind.use('treeTable', function () {
+            $("#authrule-tree").treeTable({
+                indent: 20
+            });
+        });
+    });
+
+    function checknode(obj) {
+        var chk = $("input[type='checkbox']");
+        var count = chk.length;
+
+        var num = chk.index(obj);
+        var level_top = level_bottom = chk.eq(num).attr('level');
+        for (var i = num; i >= 0; i--) {
+            var le = chk.eq(i).attr('level');
+            if (le <level_top) {
+                chk.eq(i).prop("checked", true);
+                var level_top = level_top - 1;
+            }
+        }
+        for (var j = num + 1; j < count; j++) {
+            var le = chk.eq(j).attr('level');
+            if (chk.eq(num).prop("checked")) {
+
+                if (le > level_bottom){
+                    chk.eq(j).prop("checked", true);
+                }
+                else if (le == level_bottom){
+                    break;
+                }
+            } else {
+                if (le >level_bottom){
+                    chk.eq(j).prop("checked", false);
+                }else if(le == level_bottom){
+                    break;
+                }
+            }
+        }
+    }
+    </script>
+</body>
+</html>

+ 5 - 0
public/themes/admin_simpleboot3/admin/message/index.html

@@ -117,8 +117,13 @@
                 <td colspan="11">
                     <if condition="$fenpei.enable==1">
                     <input class="btn btn-sm btn-primary js-ajax-submit" type="submit" name="export" value="导出已查看信息">
+                     <span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可查看条数 :<span class="label label-success" title="">{$fenpei.tiaoshu}</span></span>
+
+                      <span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;剩余查看点数 :<span class="label label-success" title="">{$fenpei.points}</span></span>
                     <else/>
                         <input class="btn btn-sm btn-primary js-ajax-submit" type="submit" name="export" value="导出信息">
+
+                        <span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可查看条数 :<span class="label label-success" title="">{$fenpei.tiaoshu}</span></span>
                     </if>
                 
                 </td>

+ 2 - 0
public/themes/admin_simpleboot3/admin/news/index.html

@@ -62,7 +62,9 @@
                 </td>
                 <td>
                     <a class="btn btn-xs btn-primary" href='{:url("News/edit",array("id"=>$vo["id"],"page"=>$page))}'>{:lang('EDIT')}</a>
+                     
                     <a class="btn btn-xs btn-danger js-ajax-delete" href="{:url('News/delete',array('id'=>$vo['id']))}">{:lang('DELETE')}</a>
+                   
                 </td>
                 
             </tr>

+ 1 - 1
public/themes/admin_simpleboot3/admin/user/add.html

@@ -45,7 +45,7 @@
 			
 					<foreach name="catelist" item="vo" key="k">
 						<label class="checkbox-inline">
-							<input value="{$k}" type="checkbox" name="role_id[]" <if condition="cmf_get_current_admin_id() neq 1 && $vo['id'] eq 1">disabled="true"</if>>{$vo}
+							<input value="{$k}" type="checkbox" name="category[]" <if condition="cmf_get_current_admin_id() neq 1 && $vo['id'] eq 1">disabled="true"</if>>{$vo}
 						</label>
 					</foreach>
 				</div>

+ 6 - 1
vendor/thinkcmf/cmf-app/src/admin/controller/UserController.php

@@ -135,15 +135,20 @@ class UserController extends AdminBaseController
      */
     public function addPost()
     {
+
         if ($this->request->isPost()) {
             if (!empty($_POST['role_id']) && is_array($_POST['role_id'])) {
                 $role_ids = $_POST['role_id'];
                 unset($_POST['role_id']);
+             
                 $result = $this->validate($this->request->param(), 'User');
                 if ($result !== true) {
                     $this->error($result);
-                } else {
+                } else {   
                     $_POST['user_pass'] = cmf_password($_POST['user_pass']);
+                    $_POST['category'] = serialize($_POST['category']); 
+                   // $_POST['user_type'] =$role_ids[0]; 
+
                     $result             = DB::name('user')->insertGetId($_POST);
                     if ($result !== false) {
                         //$role_user_model=M("RoleUser");