<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class ConfigStock_model extends CI_Model {

    public function listar($almacen_id = null) {
        $this->db->select('
            pa.*,
            p.codigo,
            p.nombre as producto,
            cat.nombre as categoria,
            um.abreviado as unidad,
            a.nombre as almacen
        ');
        $this->db->from('vt_producto_almacen pa');
        $this->db->join('vt_producto p',            'p.id = pa.producto_id');
        $this->db->join('mt_producto_categoria cat', 'cat.id = p.categoria_id', 'left');
        $this->db->join('mt_unidad_medida um',       'um.id = p.um_id_venta',  'left');
        $this->db->join('mt_almacen a',              'a.id = pa.almacen_id');
        $this->db->where('p.estado', 1);
        $this->db->where('p.maneja_stock', 1);

        if ($almacen_id) {
            $this->db->where('pa.almacen_id', $almacen_id);
        }

        $this->db->order_by('p.nombre', 'ASC');
        return $this->db->get()->result();
    }

    public function actualizar($id, $data) {
        return $this->db->where('id', $id)->update('vt_producto_almacen', $data);
    }

    public function listar_almacenes() {
        return $this->db->where('estado', 1)->order_by('nombre', 'ASC')->get('mt_almacen')->result();
    }
}
