| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -20,6 +20,7 @@ use Dcat\Admin\Show; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use Dcat\Admin\Http\Controllers\AdminController; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use Illuminate\Http\Request; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use App\Traits\ResponseHelper; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use Illuminate\Support\Facades\DB; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use Illuminate\Support\Facades\Storage; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use Illuminate\Support\Facades\Validator; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -32,24 +33,16 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$workorderId = \request('workorder_id',0); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$userList = $msgList = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$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]]) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$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]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								}) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										->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); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -272,6 +265,10 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->publisher_type = DemandTraits::$col[0]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->publisher_id = Admin::user()->id; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->save(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							// 更新一下主表的时间做排序用
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							\App\Models\Workorder::query()->where('id', $item->workorder_id)->update(['updated_at' => $item->updated_at]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return $this->jsonSuccess($item); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -295,6 +292,10 @@ class WorkorderController extends AdminController | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->publisher_type = DemandTraits::$col[0]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->publisher_id = Admin::user()->id; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							$item->save(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							// 更新一下主表的时间做排序用
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							\App\Models\Workorder::query()->where('id', $item->workorder_id)->update(['updated_at' => $item->updated_at]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return $this->jsonSuccess($item); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} |