Merge branch 'feature/Polyline' into 'develop'
add relation for road observation See merge request witelgroup/rms_v2!141
This commit is contained in:
@@ -11,6 +11,7 @@ use App\Http\Requests\V3\Mission\RequestPortal\StoreRequest;
|
||||
use App\Http\Requests\V3\Mission\RequestPortal\UpdateRequest;
|
||||
use App\Http\Traits\ApiResponse;
|
||||
use App\Models\Mission;
|
||||
use App\Models\RoadObserved;
|
||||
use App\Services\Cartables\Mission\RequestPortalService;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -59,7 +60,10 @@ class RequestPortalController extends Controller
|
||||
|
||||
$mission->rahdaran()->attach($request->rahdaran);
|
||||
if ($request->category_id == 3){
|
||||
$mission->roadObserved()->attach($request->road_observed_id);
|
||||
RoadObserved::query()
|
||||
->find($request->road_observed_id)
|
||||
->missions()
|
||||
->attach($mission->id);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ class StoreRequest extends FormRequest
|
||||
'area.coordinates' => 'required|array',
|
||||
'explanation' => 'required|string',
|
||||
'category_id' => 'required|in:1,2,3',
|
||||
'road_observed_id' => 'required_if:category_id,3|exists:road_observed,id',
|
||||
'road_observed_id' => 'required_if:category_id,3|exists:road_observeds,id',
|
||||
];
|
||||
}
|
||||
|
||||
@@ -48,17 +48,15 @@ class StoreRequest extends FormRequest
|
||||
return [
|
||||
function (Validator $validator) {
|
||||
if ($this->type === 1){
|
||||
|
||||
$start = Carbon::parse($this->start_date);
|
||||
$end = Carbon::parse($this->end_date);
|
||||
|
||||
if ($start->diffInMinutes($end) > 480 ){
|
||||
if ($start->diffInMinutes($end) > 480){
|
||||
$validator->errors()->add(
|
||||
'end_date',
|
||||
'مدت مأموریت روزانه نباید بیشتر از ۸ ساعت باشد.'
|
||||
'مدت زمان مأموریت ساعتی نباید بیشتر از ۸ ساعت باشد.'
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
@@ -40,27 +40,24 @@ class UpdateRequest extends FormRequest
|
||||
'area.coordinates' => 'required|array',
|
||||
'explanation' => 'required|string',
|
||||
'category_id' => 'required|in:1,2,3',
|
||||
'road_observed_id' => 'required_if:category_id,3|exists:road_observed,id',
|
||||
'road_observed_id' => 'required_if:category_id,3|exists:road_observeds,id',
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
public function after(): array
|
||||
{
|
||||
return [
|
||||
function (Validator $validator) {
|
||||
if ($this->type === 1){
|
||||
|
||||
$start = Carbon::parse($this->start_date);
|
||||
$end = Carbon::parse($this->end_date);
|
||||
|
||||
if ($start->diffInMinutes($end) > 480 ){
|
||||
if ($start->diffInMinutes($end) > 480){
|
||||
$validator->errors()->add(
|
||||
'end_date',
|
||||
'مدت مأموریت روزانه نباید بیشتر از ۸ ساعت باشد.'
|
||||
'مدت زمان مأموریت ساعتی نباید بیشتر از ۸ ساعت باشد.'
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
@@ -70,6 +70,11 @@ class Mission extends Model
|
||||
|
||||
public function roadObserved(): MorphToMany
|
||||
{
|
||||
return $this->morphToMany(RoadObserved::class, 'missionable');
|
||||
return $this->morphToMany(RoadObserved::class,
|
||||
'missionable',
|
||||
'missionables',
|
||||
'mission_id',
|
||||
'missionable_id',
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user