KOKINIO - MANAGER
Edit File: PolizaController.php
<?php namespace Trash\Http\Controllers; use Illuminate\Http\Request; use Trash\Http\Requests; use Trash\Http\Controllers\Controller; use Trash\Poliza; use Trash\Cuenta; use Trash\SubCuenta; use Auth; use Input; use Validator; class PolizaController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { // $cuentas = Cuenta::where('status_id', '=', 1)->get(); $subcuentas = SubCuenta::where('status_id', '=', 1)->get(); return view('egreso.poliza')->with(compact('cuentas', 'subcuentas')); } public function polizaTable() { $poliza = new Poliza(); $polizas = $poliza->getPolizas(); $total = 0; $total_p = 0; $total_np = 0; foreach($polizas as $_poliza) { if ($_poliza->status == 'Pagado') $total_p += $_poliza->total; else if ($_poliza->status == 'No pagado') $total_np += $_poliza->total; } $total = $total_p + $total_np; return view('egreso.polizaTable')->with(compact('polizas', 'total', 'total_p','total_np')); } public function savePoliza() { // $data = Input::all(); $validator = $this->get_validate($data); if( $validator->fails() ) return response()->json( array( 'status' => false, 'message' => $validator->errors()->all() )); return response()->json( $this->store($data)); } public function get_validate( $data ){ $array_rules = array( 'cuenta_id' => 'required', 'subcuenta_id' => 'required', 'nombre' => 'required', 'referencia' => 'required', 'estado' => 'required', ); $messages = array( 'cuenta_id.required' => 'Por favor seleccione una Cuenta', 'subcuenta_id.required' => 'Por favor seleccione una SubCuenta', 'nombre.required' => 'Por favor ingrese el Nombre', 'referencia.required' => 'Por favor ingrese la Referencia', 'estado.required' => 'Por favor selecion el estado', ); return Validator::make( $data, $array_rules, $messages ); } public function store($data, Poliza $c = null) { try{ \DB::beginTransaction(); if( isset($data[ 'id' ]) && $data[ 'id' ] != 'undefined'){ $poliza = Poliza::find($data['id']); // $existCuenta=$this->checkCuenta($data); // if( $existCuenta==false )throw new \Exception('Ya existe cuenta: '.$data['cuenta']); } else { $poliza = new Poliza(); // $existPoliza=$this->checkPoliza($data); // if( $existCuenta==false )throw new \Exception('Ya existe cuenta: '.$data['cuenta']); } $poliza->cuenta_id = $data['cuenta_id']; $poliza->subcuenta_id = $data['subcuenta_id']; $poliza->nombre = $data['nombre']; $poliza->referencia = $data['referencia']; $poliza->status = $data['estado']; $poliza->fecha_vencimiento = $data['vencimiento']; $poliza->importe = $data['importe']; $poliza->iva = $data['iva']; $poliza->total = $data['total']; $poliza->created_by = Auth::user()->id; $poliza->status_id = 1; $poliza->save(); } catch( \Exception $e ){ \DB::rollback(); return array( 'status' => false, 'message' => $e->getMessage() ); } \DB::commit(); return array( 'status' => true , 'data' => $poliza ); } public function checkPoliza($data){ $exist = Poliza::where('status_id', '=', 1)->where('referencia','=',$data['referencia'])->get(); if( count( $exist ) < 1){ return true; }else{ return false; } } public function getPoliza() { // $data = \Input::all(); $poliza = Poliza::find($data['id']); return response()->json(array('status'=> true, 'data'=> $poliza)); } public function deletePoliza(Request $request){ $id = $request->input('id'); $poliza = Poliza::find($id); $poliza->status_id = 0; if($cuenta->save()){ return response()->json(['status'=> true, 'message'=> 'Eliminado Correctamente!', 'type'=>'success']); }else{ return response()->json(['status'=> false, 'message'=> 'Error al Eliminar!','type'=>'danger']); } } public function getSubCuenta(Request $request) { $id = $request->input('id'); $subcuentas = SubCuenta::where('cuenta_id', '=', $id)->where('status_id', 1)->get(); return view('egreso.subcuentaFiltered')->with(compact('subcuentas')); } public function filterEgreso(Request $request) { $data = $request->all(); $poliza = new Poliza(); $polizas = $poliza->getPolizas($data['data']); $total = 0; $total_p = 0; $total_np = 0; foreach($polizas as $_poliza) { if ($_poliza->status == 'Pagado') $total_p += $_poliza->total; else if ($_poliza->status == 'No pagado') $total_np += $_poliza->total; } $total = $total_p + $total_np; return view('egreso.polizaTable')->with(compact('polizas', 'total', 'total_p','total_np')); } }