Ver Fonte

修复提交项目bug
和订单状态显示优化

Mike há 3 anos atrás
pai
commit
143dc1983a

+ 36 - 4
app/Http/Controllers/Api/mini/OrderController.php

xqd xqd xqd xqd
@@ -383,9 +383,9 @@ class OrderController extends BaseController
         }
         //判断是否有租赁查看权限
         if($project_role->rights['rentView'] == true){
-            $items = $this->model->join('users', 'orders.user_id', '=', 'users.id')->where('status','!=',4)->select('orders.*', 'users.id as user_id', 'users.name');
-        } else {
             $items = $this->model->join('users', 'orders.user_id', '=', 'users.id')->select('orders.*', 'users.id as user_id', 'users.name');
+        } else {
+            $items = $this->model->join('users', 'orders.user_id', '=', 'users.id')->where('type','!=',1)->select('orders.*', 'users.id as user_id', 'users.name');
         }
 
         //取对应项目的工点
@@ -401,7 +401,8 @@ class OrderController extends BaseController
             ['user_id', $user->id],
             ['project_id', $request->input('project_id')]
         ])->first();
-
+// var_dump($project_user->toJson());
+// die();
         if($project_user) {
             $project_role = ProjectRole::find($project_user->project_role_id);
             if($project_role) {
@@ -424,10 +425,27 @@ class OrderController extends BaseController
 //                $search_items[] = ['last_project_role_id',$level];
 //            }
             $status = Option::get('orders', 'status', $request->input('status'));
+            //如果是电负责人/副经理的已经订单, 副经理/项目经理查看订单应该显示为待审核。
+			if($project_role->level==4){//项目经理 
+				if($status==1){//待审核 显示已经审核
+					$status = 2;
+					array_push($search_items, ['last_project_role_id', '<', 4]);
+				}else if($status==2){
+					array_push($search_items, ['last_project_role_id', '>=', 4]);
+				}		
+			}else if($project_role->level==3){//副经理
+				if($status==1){//待审核 显示已经审核
+					$status = 2;
+					array_push($search_items, ['last_project_role_id', '<', 3]);
+				}else if($status==2){
+					array_push($search_items, ['last_project_role_id', '>=', 3]);
+				}	
+			}
             if($status) {
                 array_push($search_items, ['status', '=', $status]);
             };
         }
+        // dd($status);
         $equal_items = ['work_point_id', 'type'];
         foreach ($equal_items as $item) {
             if($request->input($item)) {
@@ -442,9 +460,23 @@ class OrderController extends BaseController
             });
         }
         $items = $items->orderBy('updated_at', 'desc');
+// 		$tmp = str_replace('?', '"'.'%s'.'"', $items->toSql()); 
+// 		$tmp = vsprintf($tmp, $items->getBindings()); 
+// 		echo $tmp; 
+// 		exit;
         $items = $items->paginate();
-        foreach($items as $item) {
+        // echo ($user->toJson());
+        // echo ($project_role->level());
+        // die();
+        foreach($items as $key => $item) {
+            //如果是项目经理 或者副经理应该不显示 待机电负责人的订单
+// 			if(($project_role->level==4||$project_role->level==3)&& $item->status==1){
+// 			 //   echo 111;
+// 				unset($items[$key]);
+// 			}
+			
             $item->formatOrder($item);
+			
         }
         return $this->success(['data' => $items->items()]);
     }

+ 4 - 1
mini/pages/bind/index.js

xqd
@@ -119,7 +119,10 @@ Page({
         phone: phone
       },
       success: function (res) {
-        util.success('操作成功')
+        util.success('操作成功');
+        wx.navigateBack({
+          delta: 0,
+        })
       }
     })
   },