public function saveEditRunner(Request $request) { $data = $request->all(); $runner_id = $data['runner_id']; $runner_name = $data['runner_name']; if (!$runner_name) { $runner_name = "R{$runner_id}"; } $obj_froms = explode(',', $data['obj_from']); $obj_tos = explode(',', $data['obj_to']); $order = $data['order']; $alloc_type = $data['alloc_type']; $theor_value_type = $data['theor_value_type']; $theor_phase = $data['theor_phase']; //Update order AllocRunner::where(['ID' => $runner_id])->update(['NAME' => $runner_name, 'ORDER' => $order, 'ALLOC_TYPE' => $alloc_type, 'THEOR_VALUE_TYPE' => $theor_value_type, 'THEOR_PHASE' => $theor_phase]); //Delete all Object in runner AllocRunnerObjects::where(['RUNNER_ID' => $runner_id])->delete(); //Add again foreach ($obj_froms as $obj_from) { $xs_f = explode(':', $obj_from); if ($xs_f[1] == "") { continue; } AllocRunnerObjects::insert(['RUNNER_ID' => $runner_id, 'OBJECT_TYPE' => $xs_f[1], 'OBJECT_ID' => $xs_f[0], 'DIRECTION' => 1, 'MINUS' => $xs_f[2]]); } foreach ($obj_tos as $obj_to) { $xs_t = explode(':', $obj_to); if ($xs_t[1] == "") { continue; } AllocRunnerObjects::insert(['RUNNER_ID' => $runner_id, 'OBJECT_TYPE' => $xs_t[1], 'OBJECT_ID' => $xs_t[0], 'DIRECTION' => 0, 'MINUS' => $xs_t[2]]); } return response()->json('ok'); }