/home/dvjjulio/softtrash/app/Http/Controllers/SubCuentaController.php
<?php
namespace Trash\Http\Controllers;
use Illuminate\Http\Request;
use Trash\Http\Requests;
use Trash\Http\Controllers\Controller;
use Trash\Cuenta;
use Trash\SubCuenta;
use Input;
use Validator;
class SubCuentaController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
$cuentas = Cuenta::where('status_id', '=', 1)->get();
return view('egreso.subCuenta')->with(compact('cuentas'));
}
public function subCuentaTable()
{
$subcuentas = SubCuenta::where('subcuenta.status_id', '=', 1)
->join('cuenta', 'cuenta.id', '=', 'subcuenta.cuenta_id')->where('cuenta.status_id', '=', 1)->get();
$cuentas = Cuenta::where('status_id', '=', 1)->get();
return view('egreso.SubCuentaTable')->with(compact('subcuentas', 'cuentas'));
}
public function saveSubCuenta()
{
//
$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(
'subcuenta' => 'required',
'referencia' => 'required',
'cuenta_id' => 'required|Int',
);
$messages = array(
'subcuenta.required' => 'Por favor ingrese la SubCuenta',
'referencia.required' => 'Por favor ingrese la Referencia',
'cuenta_id.required' => 'Por favor selecion la Cuenta',
);
return Validator::make( $data, $array_rules, $messages );
}
public function store($data, SubCuenta $g = null)
{
try{
\DB::beginTransaction();
if( isset($data[ 'id' ]) && $data[ 'id' ] != 'undefined'){
$subCuenta = SubCuenta::find($data['id']);
// $existCuenta=$this->checkCuenta($data);
// if( $existCuenta==false )throw new \Exception('Ya existe cuenta: '.$data['cuenta']);
}
else {
$subCuenta = new SubCuenta();
$existSubCuenta=$this->checkSubCuenta($data);
if( $existSubCuenta==false )throw new \Exception('Ya existe cuenta: '.$data['subcuenta']);
}
$subCuenta->subcuenta = $data['subcuenta'];
$subCuenta->referencia = $data['referencia'];
$subCuenta->cuenta_id = $data['cuenta_id'];
$subCuenta->status_id = 1;
$subCuenta->save();
} catch( \Exception $e ){
\DB::rollback();
return array( 'status' => false, 'message' => $e->getMessage() );
}
\DB::commit();
return array( 'status' => true , 'data' => $subCuenta );
}
public function checkSubCuenta($data){
$exist = SubCuenta::where('subcuenta','=',$data['subcuenta'])->where('status_id', '=', 1)->get();
if( count( $exist ) < 1){
return true;
}else{
return false;
}
}
public function getSubCuenta()
{
//
$data = \Input::all();
$subCuenta = SubCuenta::find($data['id']);
return response()->json(array('status'=> true, 'data'=> $subCuenta));
}
public function deleteSubCuenta(Request $request){
$id = $request->input('id');
$subCuenta = SubCuenta::find($id);
$subCuenta->status_id = 0;
if($subCuenta->save()){
return response()->json(['status'=> true, 'message'=> 'Eliminado Correctamente!', 'type'=>'success']);
}else{
return response()->json(['status'=> false, 'message'=> 'Error al Eliminar!','type'=>'danger']);
}
}
}