<?php

class Empresa_model extends CI_Model
{

	public function save($tabla, $data)
	{
		$this->db->insert($tabla, $data);
		return $this->db->insert_id();
	}

	public function get_by_id($id, $tabla)
	{
		$this->db->from($tabla);
		$this->db->where('id', $id);
		$query = $this->db->get();
		return $query->row();
	}

	function duplicadozona($id, $empresa, $nombre)
	{
		if ($id) {
			$this->db->where('id <>', $id);
		}
		$this->db->where('empresa', $empresa);
		$this->db->where('nombre', $nombre);
		return $this->db->get('zona')->row();
	}

	function duplicadomesa($empresa, $zona, $nombre)
	{//->where('empresa', $empresa)
		return $this->db->where('zona', $zona)->where('nombre', $nombre)->get('mesa')->row();
	}

	public function update($where, $data, $tabla)
	{
		$this->db->update($tabla, $data, $where);
		return $this->db->affected_rows();
	}

	public function delete_by_id($id, $tabla)
	{
		$this->db->where('id', $id);
		return $this->db->delete($tabla);
	}

	public function count_all($tabla)
	{
		$this->db->from($tabla);
		return $this->db->count_all_results();
	}

	public function getAll($tabla)
	{
		return $this->db->get($tabla)->result();
	}

	public function getAlls($tabla)
	{
		$this->db->from($tabla);
		return $this->db->count_all_results();
	}

	public function get($id, $tabla)
	{
		return $this->db->where('id', $id)->get($tabla)->row();
	}

	public function check($id, $ruc)
	{
		if ($id) {
			$this->db->where('id !=', $id);
		}
		$this->db->where('ruc', $ruc);
		$query = $this->db->get('empresa');
		return $query->result();
	}

	public function desactivar_by_id($id, $tabla)
	{
		$data['estado'] = '1';
		return $this->db->where('id', $id)->update($tabla, $data);
	}

	public function activar_by_id($id, $tabla)
	{
		$data['estado'] = '0';
		return $this->db->where('id', $id)->update($tabla, $data);
	}

	public function facturar($id)
	{
		$this->db->set('facturar', '0')->update('empresa');
		return $this->db->where('id', $id)->update('empresa', ['facturar' => '1']);
	}

	public function zonasmesas()
	{
		return $this->db->where('estado', '0')->where('is_dynamic', 0)->order_by('posicion', 'asc')->get("zona")->result();
	}
}
