/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id, Request $request) { $this->validate($request, ['room_id' => 'required|numeric', 'water_degree' => 'required|numeric', 'electric_degree' => 'required|numeric'], ['required' => 'The :attribute field is required', 'numeric' => 'The :attribute field must be numeric']); $deleteInput = $request->all(); $room = Room::find($deleteInput['room_id']); $contract = Contract::find($id); $feeplancount = FeePlan::where("rent_id", $id)->where('status', 0)->count(); if ($feeplancount > 0) { $ret['status'] = -1; $ret['desc'] = '该租户还有欠款为付清,无法终止合同。如中途退出,请联系主管,先走特殊费用终止流程!'; return $ret; } else { try { DB::beginTransaction(); $room['water_degree'] = $deleteInput['water_degree']; $room['electric_degree'] = $deleteInput['electric_degree']; if (!$room->save()) { abort(500, 'Destroy failed'); } $contract['end_water_degree'] = $deleteInput['water_degree']; $contract['end_electric_degree'] = $deleteInput['electric_degree']; $realendtime = new \DateTime(); $realEndTimeStr = $realendtime->format('Y-m-d'); $contract['real_end_time'] = $realEndTimeStr; if (!$contract->save()) { abort(500, 'Destroy failed'); } DB::commit(); } catch (Exception $exception) { DB::rollBack(); abort(500, 'Destroy failed'); } $ret['status'] = Contract::destroy($id); return $ret; } }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy(Request $request) { Contract::destroy($request->id); return Redirect::route('contracts.index'); }
public function api_delete($id) { Contract::destroy($id); return response("Deleted"); }