qwdqdwwqdqwdqwdwqwdqwd

This commit is contained in:
2026-06-18 15:52:36 +07:00
parent e640cba74f
commit cdbfff4424
+15 -23
View File
@@ -96,42 +96,34 @@ class TanamanController extends Controller
} }
$user = Auth::user(); $user = Auth::user();
$profile = $user->profile; $profileId = $user->role === 'petani' ? $user->profile->id : $request->profile_id;
$profileId = $user->role === 'petani' ? $profile->id : $request->profile_id;
$lahanId = $request->input('lahan_id') ?? $request->input('land_id') ?? $request->input('lahan.id'); $lahanId = $request->input('lahan_id') ?? $request->input('land_id') ?? $request->input('lahan.id');
$request->merge([ $request->merge([
'komoditas_id' => $request->input('komoditas.id') ?? $request->input('komoditas_id'), 'komoditas_id' => $request->input('komoditas.id') ?? $request->input('komoditas_id'),
'lahan_id' => $lahanId, 'lahan_id' => $lahanId,
'profile_id' => $profileId, 'profile_id' => $profileId,
'uid' => $request->input('uid') 'uid' => $request->input('uid')
]); ]);
$validated = $request->validate([ $validated = $request->validate([
'nama' => ['required', 'string', 'max:255'], 'nama' => ['required', 'string', 'max:255'],
'komoditas_id' => ['required', 'exists:master_komoditas,id'], 'komoditas_id' => ['required', 'exists:master_komoditas,id'],
'lahan_id' => ['required', 'exists:map_lahan,id'], 'lahan_id' => ['required', 'exists:map_lahan,id'],
// [ 'profile_id' => ['required', 'exists:profiles,id'],
// 'required', 'latitude' => ['nullable', 'numeric', 'between:-90,90', 'required_with:longitude'],
// Rule::exists('map_lahan', 'id')->where(function ($query) use ($profileId) { 'longitude' => ['nullable', 'numeric', 'between:-180,180', 'required_with:latitude'],
// $query->where('profile_id', $profileId) 'kondisi_tanaman' => ['nullable', 'string', new Enum(KondisiTanaman::class)],
// ->whereNull('deleted_at'); 'uid' => ['required', 'string'],
// }),
// ],
'latitude' => ['nullable', 'numeric', 'between:-90,90', 'required_with:longitude'],
'longitude' => ['nullable', 'numeric', 'between:-180,180', 'required_with:latitude'],
'kondisi_tanaman' => ['nullable', 'string', new Enum(KondisiTanaman::class)],
'uid' => ['required', 'string'],
'jenis_komoditas_id' => ['nullable', 'exists:jenis_komoditas,id'], 'jenis_komoditas_id' => ['nullable', 'exists:jenis_komoditas,id'],
'komoditas_kode' => ['nullable', 'string', 'max:255'], 'komoditas_kode' => ['nullable', 'string', 'max:255'],
]); ]);
$tanaman = Tanaman::create([ $tanaman = Tanaman::create([
...$validated, ...$validated,
'profile_id' => $profileId, 'profile_id' => $profileId,
'uid' => $tanamanUID, 'uid' => $validated['uid'],
'komoditas_kode' => $validated['komoditas_kode'] ?? $request->input('komoditas_kode'), 'komoditas_kode' => $validated['komoditas_kode'] ?? null,
'jenis_komoditas_id' => $validated['jenis_komoditas_id'] ?? $request->input('jenis_komoditas_id'), 'jenis_komoditas_id' => $validated['jenis_komoditas_id'] ?? null,
]); ]);
return (new TanamanResource($tanaman)) return (new TanamanResource($tanaman))