| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -31,16 +31,25 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$workorderId = \request('workorder_id',0); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$userList = $msgList = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$workorder = \App\Models\Workorder::query() | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->with(['point','publisher']) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->where(['publisher_id' => Admin::user()->id,'publisher_type' => DemandTraits::$col[0]]) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->orWhere(function ($query) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									$query->where('point_id',Admin::user()->id) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										->where('point_type',DemandTraits::$col[0]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$workorder = WorkorderItem::query() | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->with(['workorder.point', 'workorder.publisher']) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->whereHas('workorder', function ($q) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									return $q->where(['publisher_id' => Admin::user()->id,'publisher_type' => DemandTraits::$col[0]]) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										->orWhere(function ($query) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											$query->where('point_id',Admin::user()->id) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												->where('point_type',DemandTraits::$col[0]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										}) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										->orderByDesc('updated_at'); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								}) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->groupBy('workorder_id') | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->orderByDesc('updated_at') | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								->get(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$workorder = $workorder->map(function ($item, $key) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								return $item->workorder; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							})->all(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							// 先这么处理吧
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if ($workorderId == 0 && !empty($workorder)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								return redirect('/admin-agent/workorder_item?workorder_id='.$workorder[0]->id); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -77,16 +86,6 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								$msgList [] = $arr; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$currentWorkorder = \App\Models\Workorder::find($workorderId); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							array_unshift($msgList, [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'type' => 'op', | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'it_type' => 1, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'avatar' => Storage::url($currentWorkorder->publisher->avatar), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'name' => $currentWorkorder->publisher->name, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'content' => $currentWorkorder->content, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'created_at_text' => $currentWorkorder->created_at, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$data = [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'user_list' => $userList, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								'msg_list' => $msgList, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -227,6 +226,18 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$form->publisher_id = Admin::user()->id; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								}); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								$form->saved(function (Form $form) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if ($form->isCreating()) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item = new WorkorderItem(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->workorder_id = $form->getKey(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->content = $form->content; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->type = 1; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->publisher_type = DemandTraits::$col[0]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->publisher_id = Admin::user()->id; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										$item->save(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								}); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |