public function insertEstimateDetails() { if (Auth::check()) { $inputs = Input::all(); $update['estimate_master_id'] = 0; if ($inputs['estimate_master_no'] == 0) { //** create new estimate MasterDetails **// $data['estimate_master_no'] = Estimate::max('estimate_master_no'); $data['estimate_master_no'] = $data['estimate_master_no'] + 1; $sendEstimateMasterDetails = EstimateMaster::insertEstimateMasterDetails($data); $inputs['estimate_master_no'] = $sendEstimateMasterDetails->estimate_master_no; $update['estimate_master_id'] = $sendEstimateMasterDetails->id; } $sendEstimateDetails = Estimate::insertEstimateDetails($inputs); if ($update['estimate_master_id'] != 0) { $update_estimate_master = EstimateMaster::find($update['estimate_master_id']); $update_estimate_master->estimate_id = $sendEstimateDetails->id; $update_estimate_master->save(); } else { //** create estimate_master for new estimate with same estimate_master_no **// $data['estimate_master_no'] = $sendEstimateDetails->estimate_master_no; $data['estimate_id'] = $sendEstimateDetails->estimate_id; EstimateMaster::insertEstimateMasterDetails($data); } if ($sendEstimateDetails) { return Response::json(array('status' => "success", 'data' => $sendEstimateDetails)); } else { return Response::json(array('status' => "failure")); } } }