2
0

2 Commits 6b68bccf18 ... c55e2a90df

Autor SHA1 Mensagem Data
  junghwi c55e2a90df Merge branch 'master' of http://git.meme100.com:10180/yigao/qpapi há 6 anos atrás
  junghwi 280d9fd8a2 提交 há 6 anos atrás

+ 17 - 17
app/Http/Controllers/Admin/MessageController.php

@@ -345,23 +345,23 @@ class MessageController extends Controller
     }
 
     public function inform(Request $request){
+//        $common = new Common();
+//        $res = $common->getNotification('MSG_IMAGE');
+//        dump($res);die;
         if ($request->ajax()){
-            $model = new Notice();
-            $title = $request->only(['title']);
-            if (!empty($title)){
-                $model = $model->where('title','like','%'.$title.'%');
-            }
-            $res = $model::orderBy('create_at','asc')->get();
-            $data = [
-                'code' => 0,
-                'msg'   => '正在请求中...',
-                'count' => '',
-                'data'  => $res
-            ];
-            return response()->json($data);
+            $common = new Common();
+            $res = $common->getNotification('MSG_IMAGE');
+            dump($res);die;
+//            $data = [
+//                'code' => 0,
+//                'msg'   => '正在请求中...',
+//                'count' => '',
+//                'data'  => $res
+//            ];
+//            return response()->json($data);
         }
 
-        return view('admin.message.notice');
+        return view('admin.message.inform');
     }
 
     /**
@@ -389,10 +389,10 @@ class MessageController extends Controller
 
     public function informStore(Request $request)
     {
-        $title = $request->post('title');
         $content = $request->post('content');
-        $data = ['content'=>$content,'title'=>$title,'create_at'=>date('Y-m-d H:i:s',time())];
-        $res = Notice::insert($data);
+        $common = new Common();
+        $data = ['content'=>$content];
+        $res = $common->addNotification('MSG_IMAGE',$data);
         if(!$res){
             return back()->with(['status'=>'添加失败!']);
         }

+ 0 - 8
app/Http/Controllers/Api/NoticeController.php

@@ -19,12 +19,4 @@ class NoticeController extends Controller
         }
         return toJson(1,'',$data);
     }
-//    测试redis消息队列方法
-    public function cs(){
-        $msg = ['恭喜aa用户中奖1000元','恭喜bb用户中奖1000元','恭喜cc用户中奖1000元'];
-        Common::addNotification($msg);
-//        $get = Common::getNotification();
-//        dump($get);die;
-    }
-
 }

+ 6 - 2
app/Http/Models/Common.php

@@ -102,8 +102,12 @@ class Common extends Model
      * @return
      */
      public function addNotification($key,array $msg){
-        $msg = json_encode($msg,true);
-        Redis::rpush($key,$msg);
+        $msg = json_encode($msg);
+        $rpush = Redis::rpush($key,$msg);
+        if(!$rpush){
+            return false;
+        }
+         return true;
     }
 
     /**

+ 115 - 0
resources/views/admin/message/inform.blade.php

@@ -0,0 +1,115 @@
+@extends('admin.base')
+
+@section('content')
+    <div class="layui-card">
+        <div class="layui-card-header layuiadmin-card-header-auto">
+            <div class="layui-btn-group ">
+                @can('message.message.destroy')
+                    <button class="layui-btn layui-btn-sm layui-btn-danger" id="listDelete">删除</button>
+                @endcan
+                @can('message.message.informAdd')
+                <a class="layui-btn layui-btn-sm" href="{{ route('admin.message.informAdd') }}">添加</a>
+                @endcan
+                <button type="button" class="layui-btn layui-btn-sm" id="searchBtn">搜索</button>
+            </div>
+            <div class="layui-form" >
+                <div class="layui-input-inline">
+                    <input type="text" name="title" id="title" placeholder="请输入消息标题" class="layui-input" >
+                </div>
+            </div>
+        </div>
+        <div class="layui-card-body">
+            <table id="dataTable" lay-filter="dataTable"></table>
+            <script type="text/html" id="options">
+                <div class="layui-btn-group">
+                    @can('message.message.destroy')
+                        <a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
+                    @endcan
+                </div>
+            </script>
+            <script type="text/html" id="read">
+                <input disabled type="checkbox" lay-skin="switch" lay-text="未读|已读" @{{ d.read==1?'checked':'' }} >
+            </script>
+        </div>
+    </div>
+@endsection
+
+@section('script')
+    @can('message.message')
+        <script>
+            layui.use(['layer','table','form'],function () {
+                var layer = layui.layer;
+                var form = layui.form;
+                var table = layui.table;
+                //用户表格初始化
+                var dataTable = table.render({
+                    elem: '#dataTable'
+                    ,height: 500
+                    ,url: "{{ route('admin.message.inform') }}" //数据接口
+                    ,page: true //开启分页
+                    ,cols: [[ //表头
+                        {checkbox: true,fixed: true}
+                        ,{field: 'id', title: 'ID', sort: true,width:80}
+                        ,{field: 'title', title: '标题'}
+                        ,{field: 'content', title: '内容'}
+                        ,{field: 'create_at', title: '创建时间'}
+                        ,{fixed: 'right', width: 220, align:'center', toolbar: '#options',width:100}
+                    ]]
+                });
+
+                //监听工具条
+                table.on('tool(dataTable)', function(obj){ //注:tool是工具条事件名,dataTable是table原始容器的属性 lay-filter="对应的值"
+                    var data = obj.data //获得当前行数据
+                        ,layEvent = obj.event; //获得 lay-event 对应的值
+                    if(layEvent === 'del'){
+                        layer.confirm('确认删除吗?', function(index){
+                            $.post("{{ route('admin.message.informDel') }}",{_method:'delete',ids:[data.id]},function (result) {
+                                if (result.code==0){
+                                    obj.del(); //删除对应行(tr)的DOM结构
+                                }
+                                layer.close(index);
+                                layer.msg(result.msg)
+                            });
+                        });
+                    } else if(layEvent === 'edit'){
+                        location.href = '/admin/message/'+data.id+'/edit';
+                    }
+                });
+
+                //按钮批量删除
+                $("#listDelete").click(function () {
+                    var ids = []
+                    var hasCheck = table.checkStatus('dataTable')
+                    var hasCheckData = hasCheck.data
+                    if (hasCheckData.length>0){
+                        $.each(hasCheckData,function (index,element) {
+                            ids.push(element.id)
+                        })
+                    }
+                    if (ids.length>0){
+                        layer.confirm('确认删除吗?', function(index){
+                            $.post("{{ route('admin.message.informDel') }}",{_method:'delete',ids:ids},function (result) {
+                                if (result.code==0){
+                                    dataTable.reload()
+                                }
+                                layer.close(index);
+                                layer.msg(result.msg,)
+                            });
+                        })
+                    }else {
+                        layer.msg('请选择删除项')
+                    }
+                });
+
+                //搜索
+                $("#searchBtn").click(function () {
+                    var title = $("#title").val();
+                    dataTable.reload({
+                        where:{title},
+                        page:{curr:1}
+                    })
+                })
+            })
+        </script>
+    @endcan
+@endsection

+ 6 - 6
resources/views/admin/message/noticeadd.blade.php → resources/views/admin/message/informadd.blade.php

@@ -8,12 +8,12 @@
         <div class="layui-card-body">
             <form class="layui-form" action="{{route('admin.message.noticeStore')}}" method="post">
                 {{csrf_field()}}
-                <div class="layui-form-item">
-                    <label for="" class="layui-form-label">标题</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="title" value="{{ old('title') }}" lay-verify="required" placeholder="请输入标题" class="layui-input" >
-                    </div>
-                </div>
+                {{--<div class="layui-form-item">--}}
+                    {{--<label for="" class="layui-form-label">标题</label>--}}
+                    {{--<div class="layui-input-inline">--}}
+                        {{--<input type="text" name="title" value="{{ old('title') }}" lay-verify="required" placeholder="请输入标题" class="layui-input" >--}}
+                    {{--</div>--}}
+                {{--</div>--}}
                 <div class="layui-form-item">
                     <label for="" class="layui-form-label">内容</label>
                     <div class="layui-input-inline">

+ 1 - 1
routes/admin.php

@@ -269,7 +269,7 @@ Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['aut
     //系统通知
     Route::get('inform/message', 'MessageController@inform')->name('admin.message.inform')->middleware('permission:message.message.inform');
     //删除
-    Route::delete('message/informDel', 'MessageController@informDel')->name('admin.message.noticeDel')->middleware('permission:message.message.informDel');
+    Route::delete('message/informDel', 'MessageController@informDel')->name('admin.message.informDel')->middleware('permission:message.message.informDel');
     //添加
     Route::get('message/informAdd', 'MessageController@informAdd')->name('admin.message.informAdd')->middleware('permission:message.message.informAdd');
     Route::post('message/informStore', 'MessageController@informStore')->name('admin.message.ninformStore')->middleware('permission:message.message.informStore');