<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;

use App\Models\Empresa;
use App\Models\MediosPago;
use App\Models\SujetoDetraccion;
use Illuminate\Support\Facades\File;


class EmpresaController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth:usuario');
    }

    public function nuevo()
    {
	 	return view('empresa.nuevo'); 
	}

	/*public function listar()
    {
	 	$res = Proveedor::where('estado', 1)->orderBy('created_at', 'desc')->paginate(10);
        return view('proveedor.listar', [ 'data' => $res]); 
	}*/

    public function registrar(Request $request)
    {
        if ($request->ajax())
        {    
            $res = Empresa::create($request->all());
            
            $res ? $res['message'] = 'success' : $res['message'] = 'error';

            return response()->json($res); 
        }
    }

    public function editar($id)
    {
        return view('empresa.editar', 
            [
                'data' => Empresa::where(['id_empresa' => $id , 'estado' => 1])->first(),
                'sujeto_detraccion' => SujetoDetraccion::all(), 
                'medios_pago' => MediosPago::all(), 
            ]
    ); 
    }

    public function actualizar(Request $request)
    {
        if ($request->ajax())
        {
            $data = Empresa::find($request->id_empresa);

            $data->razon_social     = $request->razon_social; 
            $data->ruc              = $request->ruc;
            $data->representante    = $request->representante;
            $data->dni              = $request->dni;
            $data->direccion        = $request->direccion;
            $data->telefono         = $request->telefono;
            $data->pagina_web       = $request->pagina_web;
            $data->email            = $request->email;
            $data->ubigeo           = $request->ubigeo;
            $data->valor_impuesto   = $request->valor_impuesto;
            $data->valor_icbper     = $request->valor_icbper;
            $data->modulo_puntos     = $request->modulo_puntos;

            $data->id_sujeto_detraccion     = $request->id_sujeto_detraccion;
            $data->id_medios_pago     = $request->id_medios_pago;

            $data->porcentaje_retencion     = $request->porcentaje_retencion;
            $data->porcentaje_detraccion     = $request->porcentaje_detraccion;
            $data->cuenta_detraccion     = $request->cuenta_detraccion;

            $data->numeros_cuenta = $request->numeros_cuenta;
            $data->descripcion_empresa = $request->descripcion_empresa;


            if ($request->file('file-logo')) {
                $image = $request->file('file-logo');
                $nuevo_nombre = 'logo_empresa.jpg';
                $image->move(public_path('img/'), $nuevo_nombre);
            }
            if ($request->file('file-certificado')) {
                $image = $request->file('file-certificado');
                $nuevo_nombre = 'certificado.pfx';
                $image->move(public_path('../sunat/credenciales/certificado/'), $nuevo_nombre);
            }

            $res  = $data->save();
            return response()->json($res ? ['message' => 'success'] : ['message' => 'error']); 
        }
    }

    public function envios()
    {
        return view('empresa.envios'); 
    }



}
