Example #1
0
 /**
  * Elimina cuadro comparativo, cotizaciones y relación articulo_cotizacion
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     $cuadro = Cuadro::findOrFail($id);
     $req_id = $cuadro->req_id;
     $cotizaciones = Cotizacion::whereReqId($cuadro->req_id)->with('articulos')->get();
     foreach ($cotizaciones as $cotizacion) {
         $cotizacion->articulos()->detach();
         $cotizacion->delete();
     }
     /**
      * @todo Enviar correo a Jefe de la Unidad de Presupuesto
      * @todo Eliminar archivos cargados
      */
     $ocs = Oc::whereReqId($req_id)->lists('id');
     if (count($ocs) > 0) {
         Articulo::whereIn('oc_id', $ocs)->update(['oc_id' => 0]);
         foreach ($ocs as $oc_id) {
             $oc = Oc::find($oc_id)->delete();
         }
     }
     $cuadro->delete();
     return redirect()->action('RequisicionController@show', array($req_id))->with(['message' => 'Cuadro Comparativo cancelado con éxito', 'alert-class' => 'alert-success']);
 }