Browse Source

10. 项目管理 - 项目列表
● 请输入名称提示文字改为请输入项目名称
● 按照ID重新排个序,倒序排序

ChenWuJie 4 years ago
parent
commit
1b637763f2

+ 9 - 2
app/Http/Controllers/Admin/ProjectController.php

xqd xqd xqd
@@ -7,8 +7,10 @@ use App\Models\Department;
 use App\Models\Notification;
 use App\Models\Order;
 use App\Models\Project;
+use App\Models\ProjectUser;
 use App\Models\Road;
 use App\Models\Role;
+use App\User;
 use Carbon\Carbon;
 use Illuminate\Http\Request;
 
@@ -34,8 +36,9 @@ class ProjectController extends BaseController
 
     public function index()
     {
+        $user = ProjectUser::getProjectManagerUser();
         list($model, $model_name, $pre_uri) = array($this->model, $this->model_name, $this->pre_uri);
-        return view($this->view_path . 'index', compact('model', 'model_name','pre_uri'));
+        return view($this->view_path . 'index', compact('model', 'model_name','pre_uri','user'));
     }
 
     public function applyIndex()
@@ -71,7 +74,11 @@ class ProjectController extends BaseController
         if($request->input('type') == 'apply') {
             $items = $items->whereNotNull('user_id');
         }
-
+        if($request->input('user_id')){
+            $items->whereHas('user',function ($query){
+               $query->where('id','=',request('user_id'));
+            });
+        }
         $items = $items->paginate();
 
         foreach($items as $item) {

+ 3 - 1
app/Models/Project.php

xqd
@@ -39,7 +39,9 @@ class Project extends BaseModel
     {
         return json_decode(json_encode($items));
     }
-
+    public function project_user(){
+        return $this->hasMany(ProjectUser::class,'project_id','id');
+    }
     public function getManager()
     {
         $role = ProjectRole::getByKey('manager');

+ 11 - 0
app/Models/ProjectUser.php

xqd
@@ -39,4 +39,15 @@ class ProjectUser extends BaseModel
 
         return $validator;
     }
+    public static function getProjectManagerUser(){
+        $user_list = self::where('id', '>', 0)->where('project_role_id','4')->get()->toArray();
+        foreach ($user_list as &$value){
+            $name = User::where('id',$value['user_id'])->value('name');
+            $value['name'] = $name;
+//            dd($name);
+//            dd($user_list);
+        }
+//        dd($user_list);
+        return $user_list;
+    }
 }

+ 12 - 2
resources/views/admin/projects/index.blade.php

xqd xqd
@@ -19,7 +19,17 @@
                 <div class="layui-form-item layui-row">
                     <div class="layui-inline">
                         <div class="layui-input-inline">
-                            <input type="text" name="name" placeholder="请输入名称" autocomplete="off" class="layui-input" value="{{ request('name') }}">
+                            <input type="text" name="name" placeholder="请输入项目名称" autocomplete="off" class="layui-input" value="{{ request('name') }}">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <select name="user_id">
+                                <option value="0">项目经理</option>
+                                @foreach($user as $option)
+                                    <option value="{{ $option['user_id'] }}" {{ request('user') == $option['user_id'] ? 'selected' : ''  }}>{{ $option['name'] }}</option>
+                                @endforeach
+                            </select>
                         </div>
                     </div>
                     <div class="layui-inline">
@@ -60,7 +70,7 @@
                     cellMinWidth: 80,
                     cols: [[
                         { field: 'id', title: 'ID', align: 'center' },
-                        { field: 'name', title: '名称', align: 'center' },
+                        { field: 'name', title: '项目名称', align: 'center' },
                         { field: 'manager_name', title: '项目经理', align: 'center' },
                         { field: 'manager_phone', title: '手机号', align: 'center' },
                         { field: 'created_at', title: '创建时间', align: 'center' },