/**
  * Devuelve el template "listVencimientos" con un listado
  * de todos los vencimientos del proveedor en curso
  *
  * El template extiende al popup y está pensado para ser mostrado
  * en una solapa
  *
  * @return array
  */
 public function listVencimientosAction()
 {
     $datos = new Proveedores($this->request[2]);
     $this->values['recibos'] = $datos->getRecibos();
     unset($datos);
     return array('template' => $this->entity . "/listVencimientos.html.twig", 'values' => $this->values);
 }
示例#2
0
 public function actionAdmin()
 {
     $model = new Proveedores('search');
     $model->unsetAttributes();
     if (isset($_GET['Proveedores'])) {
         $model->setAttributes($_GET['Proveedores']);
     }
     $this->render('admin', array('model' => $model));
 }
 public function getEditar($id)
 {
     $empaquesmp = EmpaquesMp::where('id', '=', $id)->first();
     $listaempaquesmp = EmpaquesMp::where('empaques_id', '=', $empaquesmp->empaques_id)->get();
     $empaques = Empaques::where('id', '=', $empaquesmp->empaques_id)->first();
     $proveedores = Proveedores::all();
     return View::make('dashboard/empaques/editar', compact('empaquesmp', 'listaempaquesmp', 'empaques', 'proveedores'));
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     ValidaAccesoController::validarAcceso('Proveedores', 'escritura');
     $proveedor = Proveedores::find($id);
     if (is_null($proveedor)) {
         return Redirect::route('ErrorIndex', '404');
     }
     $form_data = array('route' => array('proveedores.update', $proveedor->id), 'method' => 'PUT');
     #puede ser PATCH
     $action = 'Editar';
     return View::make('admin/proveedor', compact('proveedor', 'form_data', 'action'));
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     ValidaAccesoController::validarAcceso('productos', 'escritura');
     $modelProductos = new ProductosPDO();
     $categorias = Categorias::all();
     if (!is_null($categorias)) {
         $categorias = $categorias->toArray();
     }
     $producto = Productos::find($id);
     if (is_null($producto)) {
         return Redirect::route('ErrorIndex', '404');
     }
     $subcategorias = Subcategorias::all();
     if (!is_null($subcategorias)) {
         $subcategorias->toArray();
     }
     $proveedores = Proveedores::all();
     if (!is_null($proveedores)) {
         $proveedores->toArray();
     }
     $subcategoria = Subcategorias::find($producto->subcategoria_id);
     $categoria = Categorias::find($subcategoria->categoria_id);
     $categoria_id = $categoria->id;
     $form_data = array('route' => array('productos.update', $producto->id), 'method' => 'PUT', 'enctype' => 'multipart/form-data');
     $action = 'Editar';
     return View::make('admin/producto', compact('producto', 'form_data', 'action', 'categorias', 'subcategorias', 'proveedores', 'categoria_id'));
 }
 public function actionIndex()
 {
     $model = new Proveedores();
     $datos = $model->getProveedores();
     $this->render('index', compact("datos"));
 }
示例#7
0
function proveedoresFacturacion($filtro, $nameSelect = '', $idSelect = '')
{
    if ($nameSelect == '') {
        $nameSelect = $_GET['nameselect'];
    }
    if ($idSelect == '') {
        $idSelect = $_GET['idselect'];
    }
    // En el filtro viene separado por @ el id de la sucursal y el rango de fechas
    $valores = explode("@", $filtro);
    $idSucursal = $valores[0];
    $desdeFecha = $valores[1];
    $hastaFecha = $valores[2];
    $proveedor = new Proveedores();
    $rows = $proveedor->fetchConPendienteDeFacturar($idSucursal, $desdeFecha, $hastaFecha);
    unset($proveedor);
    if (count($rows) == 0) {
        $ch = "<div style='margin-top: 20px; font-weight: bold;'>No hay ningún proveedor con pedidos pendientes en ese período</div>";
    } else {
        $ch .= "<div>Proveedores con pendiente de facturar:</div>";
        $ch .= "<div><select name='" . $nameSelect . "' id='" . $idSelect . "' class='Select' style='width:310px;' onchange='submit();'>";
        foreach ($rows as $row) {
            $ch .= "<option value='" . $row['Id'] . "'>" . $row['Value'] . " (" . $row['Total'] . ")</option>";
        }
        $ch .= "</select>";
        $ch .= "<input type='submit' value='Ver Pedidos' class='Comando'/></div>";
    }
    return $ch;
}
示例#8
0
文件: index.php 项目: dev-lav/htdocs
<?php

$this->breadcrumbs = array(Proveedores::label(2), Yii::t('app', 'Index'));
$this->menu = array(array('label' => Yii::t('app', 'Agregar') . ' ' . Proveedores::label(), 'url' => array('create')), array('label' => Yii::t('app', 'Administrar') . ' ' . Proveedores::label(2), 'url' => array('admin')));
?>

<h1><?php 
echo GxHtml::encode(Proveedores::label(2));
?>
</h1>

<?php 
$this->widget('zii.widgets.CListView', array('dataProvider' => $dataProvider, 'emptyText' => 'No hay resultados', 'summaryText' => 'Mostrando del {start} al {end} de {count} resultado(s).', 'pager' => array('header' => '', 'prevPageLabel' => 'Anterior', 'nextPageLabel' => 'Siguiente'), 'itemView' => '_view'));
$campo_descripcion = new Campo('descripcion', $registro[1], 'Descripción:', 'text');
$campo_categoria = new CampoCombo('categoria', 'Categoría:');
$campo_proveedor = new CampoCombo('proveedor', 'Proveedor:');
$campo_marca = new CampoCombo('marca', 'Marca:');
$campo_costo = new Campo('costo', $registro[5], 'Costo:', 'text');
$campo_precio = new Campo('precio', $registro[6], 'Precio de referencia:', 'text');
$campo_alicuota = new CampoCombo('alicuota', 'Alícuota:');
$campo_imagen = new Campo('imagen', $registro[9], 'Archivo de imagen:', 'file');
$campo_resumen = new CampoTexto('resumen', 'Resumen:');
$campo_resumen->set_text($registro[10]);
$boton = new Boton('aceptar', 'Guardar cambios');
$imagen = new Imagen($registro[9]);
$categorias = new Categorias();
$campo_categoria->set_sql_options($categorias->get_categorias());
$campo_categoria->set_selected_option($registro[2]);
$proveedores = new Proveedores();
$campo_proveedor->set_sql_options($proveedores->get_result());
$campo_proveedor->set_selected_option($registro[3]);
$marcas = new Marcas();
$campo_marca->set_sql_options($marcas->get_marcas());
$campo_marca->set_selected_option($registro[4]);
$alicuotas = new Alicuotas();
$campo_alicuota->set_sql_options($alicuotas->get_result());
$campo_alicuota->set_selected_option($registro[7]);
?>

<h1><?php 
if (isset($_REQUEST['type'])) {
    if ($_REQUEST['type'] == 'alta') {
        print "Alta de artículo";
    } elseif ($_REQUEST['type'] == 'clonar') {
示例#10
0
文件: _form.php 项目: dev-lav/htdocs
?>
		<?php 
echo $form->error($model, 'nro_factura');
?>
		</div><!-- row -->
		
		<div class="row">
		<?php 
echo $form->labelEx($model, 'id_proveedor');
?>
                <?php 
$criteria = new CDbCriteria();
$criteria->order = 'nombre ASC';
?>
		<?php 
echo $form->dropDownList($model, 'id_proveedor', GxHtml::listDataEx(Proveedores::model()->findAllAttributes(null, true, $criteria)));
?>
		<?php 
echo $form->error($model, 'id_proveedor');
?>
		</div><!-- row -->
		<div class="row">
		<?php 
echo $form->labelEx($model, 'fecha');
?>
		<?php 
$form->widget('zii.widgets.jui.CJuiDatePicker', array('model' => $model, 'language' => 'es', 'attribute' => 'fecha', 'value' => $model->fecha, 'options' => array('showButtonPanel' => true, 'changeYear' => true, 'dateFormat' => 'yy-mm-dd')));
?>
		<?php 
echo $form->error($model, 'fecha');
?>
<?php

include_once '../table_handler.php';
include_once '../conexion.php';
include_once 'proveedores.php';
include_once '../configuracion/provincias.php';
include_once '../configuracion/localidades.php';
Conexion::conectar();
$proveedores = new Proveedores();
$provincias = new Provincias();
$localidades = new Localidades(0);
$registro = $proveedores->get_row($_REQUEST['codigo']);
?>
<div class="grupo-campos grupo-campos-chico">
    <img class="imagen imagen-chica" src="<?php 
empty($registro[14]) ? print 'images/sin-imagen.png' : (print $registro[14]);
?>
" />
</div>
<div class="grupo-campos grupo-campos-mediano">
    <p class="contenido-campo"><?php 
print $registro[0];
?>
</p>
    <p class="titulo-campo">Código</p>
    
    <p class="contenido-campo"><?php 
print $registro[1];
?>
</p>
    <p class="titulo-campo">Razón social</p>
 public function Proveedores()
 {
     $nItems = 0;
     $nErrores = 0;
     $dbLink = mysql_connect("localhost", "root", "albatronic");
     $query = "TRUNCATE {$this->dbDestino}.ErpProveedores";
     mysql_query($query);
     $query = "select * from {$this->dbOrigen}.proveedores";
     $result = mysql_query($query, $dbLink);
     $poblaciones = new Municipios();
     while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
         $row = $this->utf($row);
         //if ($row['NombreComercial'] == '')
         //    $row['NombreComercial'] = $row['RazonSocial'];
         $poblacion = $poblaciones->cargaCondicion("IDMunicipio,IDProvincia", "Municipio='{$row['Poblacion']}'");
         $c = new Proveedores();
         $c->setIDProveedor($row['IDProveedor']);
         $c->setRazonSocial(utf8_decode($row['RazonSocial']));
         $c->setNombreComercial(utf8_decode($row['NombreComercial']));
         $c->setCif($row['Cif']);
         $c->setDireccion(utf8_decode($row['Direccion']));
         $c->setIDPais(68);
         if ($poblacion[0]['IDMunicipio']) {
             $c->setIDProvincia($poblacion[0]['IDProvincia']);
             $c->setIDPoblacion($poblacion[0]['IDMunicipio']);
         } else {
             $c->setIDProvincia($row['IDProvincia']);
         }
         $c->setCodigoPostal($row['CodigoPostal']);
         $c->setTelefono($row['Telefono']);
         $c->setFax($row['Fax']);
         $c->setMovil($row['Movil']);
         $c->setEMail($row['EMail']);
         $c->setWeb($row['Web']);
         $c->setCContable($row['CContable']);
         $c->setBanco($row['IDBanco']);
         $c->setOficina($row['IDOficina']);
         $c->setDigito($row['Digito']);
         $c->setCuenta($row['Cuenta']);
         $c->setIban(Utils::iban($row['IDBanco'] . $row['IDOficina'] . $row['Digito'] . $row['Cuenta']));
         $c->setMandato($row['IDProveedor']);
         $c->setFechaMandato('2013-01-01');
         $c->setIDFP($row['IDFP']);
         $c->setObservaciones($row['Observaciones']);
         $c->setPrimaryKeyMD5(md5($row['IDProveedor']));
         if (!$c->create()) {
             $errores[] = $c->getErrores();
             $nErrores++;
         } else {
             $nItems++;
         }
     }
     //mysql_close($dbLink);
     echo "Proveedores {$nItems}<br/>";
     if (count($errores)) {
         echo "<pre>";
         print_r($errores);
         echo "</pre>";
     }
 }
<?php

include_once '../../conexion.php';
include_once 'articulos.php';
include_once 'categorias.php';
include_once '../proveedores/proveedores.php';
include_once 'marcas.php';
include_once '../configuracion/alicuotas.php';
$articulos = new Articulos();
$categorias = new Categorias();
$proveedores = new Proveedores();
$marcas = new Marcas();
$alicuotas = new Alicuotas();
$registro = $articulos->get_articulo($_REQUEST['codigo']);
?>
<div class="grupo-campos grupo-campos-chico">
    <img class="imagen imagen-chica" src="<?php 
empty($registro[9]) ? print 'images/sin-imagen.png' : (print $registro[9]);
?>
" />
</div>
<div class="grupo-campos grupo-campos-mediano">
    <p class="contenido-campo"><?php 
print $registro[0];
?>
</p>
    <p class="titulo-campo">Código</p>
    
    <p class="contenido-campo"><?php 
print $registro[1];
?>
示例#14
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int $id
  * @return Response
  */
 public function destroy($id)
 {
     //
     Proveedores::destroy($id);
     return response()->json(['mensaje' => 'Proveedor eliminado satisfactoriamente', 'id' => $id]);
 }
示例#15
0
<?php

session_start();
if (isset($_SESSION["Usuario"])) {
    include_once 'print/fpdf.php';
    require_once 'clases/clsProveedor.php';
    $objProv = new Proveedores();
    $fila = $objProv->get_Proveedores();
    if (empty($fila)) {
        header('Location: ../proveedores');
    }
    date_default_timezone_set("America/Lima");
    class PDF extends FPDF
    {
        //Cabecera de página
        function Header()
        {
            $this->Image('images/www.png', 22, 8, 65, 38, 'png');
            $this->SetFont('Arial', 'B', 12);
            //Movernos a la derecha
            $this->Cell(30);
            //Título
            $this->Cell(280, 40, iconv('utf-8', 'cp1252', 'SISTEMA DE COMPRA Y VENTA (JCL SOFT SOLUTION)'), 0, 1, 'C');
            $this->SetFont('Arial', 'B', 9);
            $this->Cell(520, -10, "Fecha: " . date("d/m/Y"), 0, 1, 'C');
            $this->Cell(520, 0, "Hora: " . date("h:i:s A"), 0, 1, 'C');
            $this->SetFont('Arial', '', 9);
            $this->Cell(100, 15, iconv('utf-8', 'cp1252', 'Dirección: Av. Bolognesi #1527 - Chiclayo'), 0, 1, 'C');
            $this->Cell(73, -5, iconv('utf-8', 'cp1252', 'Teléfono: (074) 234567'), 0, 0, 'C');
            $this->SetFont('Arial', '', 9);
            $this->Cell(200, -5, iconv('utf-8', 'cp1252', 'Visítanos en: '), 0, 0, 'C');
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function actionUpdate($id)
 {
     $model = $this->loadModel($id);
     $modelProveedor = Proveedores::model()->findByPk($model->proveedor_id);
     $modelContacto = PersonasContacto::model()->findByAttributes(array('proveedor_id' => $model->proveedor_id));
     //$modelCuenta= ProveedoresCuentas::model()->findById($model->proveedor_id);
     //$modelObjeto= ProveedoresObjetos::model()->findById($model->proveedor_id);
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['ProveedoresExtranjeros'])) {
         $model->attributes = $_POST['ProveedoresExtranjeros'];
         $modelProveedor->attributes = $_POST['Proveedores'];
         $modelContacto->attributes = $_POST['PersonasContacto'];
         $transaction = $model->dbConnection->beginTransaction();
         // Transaction begin //Yii::app()->db->beginTransaction
         try {
             $modelProveedor->nacional = false;
             if (!$modelProveedor->tiene_rif) {
                 $modelProveedor->rif = 'N/A';
             }
             //$modelProveedor->tiene_rif = $_POST['Proveedores']['tiene_rif'];
             $flag = $modelProveedor->save();
             if ($flag) {
                 $model->proveedor_id = $modelProveedor->id;
                 $modelContacto->proveedor_id = $modelProveedor->id;
                 $flag = $flag && $model->save();
                 $flag = $flag && $modelContacto->save();
             }
             if ($flag) {
                 $transaction->commit();
                 // committing
                 Yii::app()->user->setFlash('success', "Proveedor extranjero registrado con exito.");
                 $this->redirect(array('view', 'id' => $model->id));
             } else {
                 throw new Exception("Error Processing Request", 1);
             }
         } catch (Exception $e) {
             $transaction->rollBack();
             Yii::app()->user->setFlash('error', "No se pudo registrar el proveedor extranjero.");
             //return false;
         }
     }
     $this->render('update', array('model' => $model, 'modelProveedor' => $modelProveedor, 'modelContacto' => $modelContacto));
 }
示例#17
0
文件: admin.php 项目: dev-lav/htdocs
<?php

$this->breadcrumbs = array($model->label(2) => array('index'), Yii::t('app', 'Administrar'));
$this->menu = array(array('label' => Yii::t('app', 'Listar') . ' ' . $model->label(2), 'url' => array('index')), array('label' => Yii::t('app', 'Agregar') . ' ' . $model->label(), 'url' => array('create')));
Yii::app()->clientScript->registerScript('search', "\n\$('.search-button').click(function(){\n\t\$('.search-form').toggle();\n\treturn false;\n});\n\$('.search-form form').submit(function(){\n\t\$.fn.yiiGridView.update('registro-factura-grid', {\n\t\tdata: \$(this).serialize()\n\t});\n\treturn false;\n});\n");
?>

<h1><?php 
echo Yii::t('app', 'Administrar') . ' ' . GxHtml::encode($model->label(2));
?>
</h1>

<?php 
echo GxHtml::link(Yii::t('app', 'Busqueda Avanzada'), '#', array('class' => 'search-button'));
?>
<div class="search-form" style="display:none">
<?php 
$this->renderPartial('_search', array('model' => $model));
?>
</div><!-- search-form -->

<?php 
$this->widget('zii.widgets.grid.CGridView', array('id' => 'registro-factura-grid', 'dataProvider' => $model->search(), 'filter' => $model, 'emptyText' => 'No hay resultados', 'summaryText' => 'Mostrando del {start} al {end} de {count} resultado(s).', 'pager' => array('header' => '', 'prevPageLabel' => 'Anterior', 'nextPageLabel' => 'Siguiente'), 'columns' => array('nro_factura', array('name' => 'total_neto', 'value' => 'OrdenTrabajo::formatearPeso($data->total_neto)', 'htmlOptions' => array('style' => 'text-align: right;')), array('name' => 'total_bruto', 'value' => 'OrdenTrabajo::formatearPeso($data->total_bruto)', 'htmlOptions' => array('style' => 'text-align: right;')), array('name' => 'id_proveedor', 'value' => 'GxHtml::valueEx($data->idProveedor)', 'filter' => GxHtml::listDataEx(Proveedores::model()->findAllAttributes(null, true)), 'htmlOptions' => array('style' => 'text-align: center;')), 'fecha', array('class' => 'CButtonColumn', 'header' => 'Opciones', 'htmlOptions' => array('width' => 120), 'template' => '{view}{update}{delete}', 'buttons' => array('view' => array('label' => 'Ver', 'url' => 'Yii::app()->createUrl("registrofactura/view", array("id"=>$data->id))', 'imageUrl' => Yii::app()->baseUrl . '/images/ver.png'), 'update' => array('label' => 'Editar', 'url' => 'Yii::app()->createUrl("registrofactura/update", array("id"=>$data->id))', 'imageUrl' => Yii::app()->baseUrl . '/images/editar.png'), 'delete' => array('label' => 'Borrar', 'url' => 'Yii::app()->createUrl("registrofactura/delete", array("id"=>$data->id))', 'imageUrl' => Yii::app()->baseUrl . '/images/delete.png'))))));
示例#18
0
 /**
  * Recalcula los importes del pedido en base a sus lineas
  * Actualiza las propiedades de totales pero no salva los datos.
  * IMPORTANTE: Para que los calculos tomen efecto hay que llamar al método save()
  */
 public function recalcula()
 {
     //Fuerzo el almacen al de la cabecera del pedido
     $lineas = new PedidosLineas();
     $lineas->queryUpdate(array("IDAlmacen" => $this->IDAlmacen), "`IDPedido`='{$this->IDPedido}'");
     unset($lineas);
     //Si el proveedor no está sujeto a iva
     //pongo el iva a cero en las líneas para evitar que por cambio
     //de proveedor se aplique indebidamente
     $proveedor = new Proveedores($this->IDProveedor);
     if ($proveedor->getIva()->getIDTipo() == '0') {
         $lineas = new PedidosLineas();
         $lineas->queryUpdate(array("Iva" => 0, "Recargo" => 0), "`IDPedido`='{$this->IDPedido}'");
         unset($lineas);
     }
     unset($proveedor);
     //SI TIENE DESCUENTO, CALCULO EL PORCENTAJE QUE SUPONE RESPECTO AL IMPORTE BRUTO
     //PARA REPERCUTUIRLO PORCENTUALMENTE A CADA BASE
     $pordcto = 0;
     if ($this->getDescuento() != 0) {
         $pordcto = round(100 * ($this->getDescuento() / $this->getImporte()), 2);
     }
     //Calcular los totales, desglosados por tipo de iva.
     $lineas = new PedidosLineas();
     $rows = $lineas->cargaCondicion("sum(importe) as Bruto", "IDPedido='{$this->IDPedido}'");
     $bruto = $rows[0]['Bruto'] ? $rows[0]['Bruto'] : 0;
     $rows = $lineas->cargaCondicion("Iva, Recargo, sum(Importe) as Importe", "(IDPedido='{$this->IDPedido}') group by Iva, Recargo order by Iva");
     $totbases = 0;
     $totiva = 0;
     $totrec = 0;
     $bases[0] = $bases[1] = $bases[2] = array('b' => 0, 'i' => 0, 'ci' => 0, 'r' => 0, 'cr' => 0);
     foreach ($rows as $key => $row) {
         $importe = $row['Importe'] * (1 - $pordcto / 100);
         $cuotaiva = round($importe * $row['Iva'] / 100, 2);
         $cuotarecargo = round($importe * $row['Recargo'] / 100, 2);
         $totbases += $importe;
         $totiva += $cuotaiva;
         $totrec += $cuotarecargo;
         $bases[$key] = array('b' => $importe, 'i' => $row['Iva'], 'ci' => $cuotaiva, 'r' => $row['Recargo'], 'cr' => $cuotarecargo);
     }
     $total = $totbases + $totiva + $totrec;
     //Calcular el peso, volumen y n. de bultos de los productos inventariables
     //$query = "select sum(articulos.Peso*pedidos_lineas.Unidades) as Peso, sum(articulos.volumen*pedidos_lineas.Unidades) as Volumen, sum(Unidades) as Bultos from articulos,pedidos_lineas where (pedidos_lineas.IDArticulo=articulos.IDArticulo) and (articulos.Inventario='1') and (pedidos_lineas.IDPedido='" . $this->getIDPedido() . "')";
     //$this->_em->query($query);
     //$rows = $this->_em->fetchResult();
     $this->setImporte($bruto);
     $this->setBaseImponible1($bases[0]['b']);
     $this->setIva1($bases[0]['i']);
     $this->setCuotaIva1($bases[0]['ci']);
     $this->setRecargo1($bases[0]['r']);
     $this->setCuotaRecargo1($bases[0]['cr']);
     $this->setBaseImponible2($bases[1]['b']);
     $this->setIva2($bases[1]['i']);
     $this->setCuotaIva2($bases[1]['ci']);
     $this->setRecargo2($bases[1]['r']);
     $this->setCuotaRecargo2($bases[1]['cr']);
     $this->setBaseImponible3($bases[2]['b']);
     $this->setIva3($bases[2]['i']);
     $this->setCuotaIva3($bases[2]['ci']);
     $this->setRecargo3($bases[2]['r']);
     $this->setCuotaRecargo3($bases[2]['cr']);
     $this->setTotalBases($totbases);
     $this->setTotalIva($totiva);
     $this->setTotalRecargo($totrec);
     $this->setTotal($total);
     //$this->setPeso($rows[0]['Peso']);
     //$this->setVolumen($rows[0]['Volumen']);
     //$this->setBultos($rows[0]['Bultos']);
 }
 /**
  * Renderiza el template _Emergente/historicoCompras.html.twig
  * mostrando las compras realizadas a un proveedor de un articulo y un periodo dado.
  *
  * La información se obtiene en base a los pedidos RECEPCIONADOS o FACTURADOS.
  *
  * No se tienen en cuenta los pedidos no confirmados.
  *
  * Puede entrar por POST o por GET.
  *
  * Si es por POST los parametros vienen en:
  *
  *  idArticulo, idProveedor, periodo
  *
  * Si es por GET los parametros vienen en:
  *
  *  posicion 2 (idArticulo), 3 (idProveedor), 4 (periodo), 5 (formato)
  *
  * @return array El template y los datos
  */
 public function HistoricoComprasAction()
 {
     $periodos = array(array('Id' => '0', 'Value' => 'Último Mes'), array('Id' => '1', 'Value' => 'Último Trimestre'), array('Id' => '2', 'Value' => 'Último Año'), array('Id' => '3', 'Value' => 'Todo'));
     switch ($this->request["METHOD"]) {
         case 'GET':
             $idArticulo = $this->request['2'];
             if ($idArticulo == '0') {
                 $idArticulo = '';
             }
             $idProveedor = $this->request['3'];
             if ($idProveedor == '0') {
                 $idProveedor = '';
             }
             $periodo = $this->request['4'];
             $formato = $this->request['5'];
             break;
         case 'POST':
             $idArticulo = $this->request['idArticulo'];
             if ($idArticulo == '0') {
                 $idArticulo = '';
             }
             $idProveedor = $this->request['idProveedor'];
             if ($idProveedor == '0') {
                 $idProveedor = '';
             }
             $periodo = $this->request['periodo'];
             $formato->this->request['formato'];
             break;
     }
     $formato = strtoupper($formato);
     // Construir la parte del filtro que depende del periodo
     switch ($periodo) {
         case '':
             $periodo = 1;
         case '0':
             // Ultimo mes
             $diferenciaDias = -30;
             break;
         case '1':
             // Ultimo Trimestre
             $diferenciaDias = -90;
             break;
         case '2':
             // Ultimo año
             $diferenciaDias = -365;
             break;
         case '3':
             // Todo, 20 años hacia atrás
             $diferenciaDias = -7300;
             break;
     }
     $fecha = new Fecha(date('Y-m-d'));
     $desdeFecha = $fecha->sumaDias($diferenciaDias);
     unset($fecha);
     $proveedor = new Proveedores($idProveedor);
     $proveedorTabla = $proveedor->getDataBaseName() . "." . $proveedor->getTableName();
     $articulo = new Articulos($idArticulo);
     $articuloTabla = $articulo->getDataBaseName() . "." . $articulo->getTableName();
     $pedidos = new PedidosCab();
     $pedidosTabla = $pedidos->getDataBaseName() . "." . $pedidos->getTableName();
     unset($pedidos);
     $lineas = new PedidosLineas();
     $lineasTabla = $lineas->getDataBaseName() . "." . $lineas->getTableName();
     unset($lineas);
     // Calcular el total de unidades compradas y el precio medio de compra
     // Solo calcula los pedidos que están recepcionados o facturados
     if ($idArticulo != '' or $idProveedor != '') {
         $em = new EntityManager($articulo->getConectionName());
         if ($em->getDbLink()) {
             $query = "SELECT SUM(t1.Unidades) as Unidades, SUM(t1.Importe) as Importe\n                FROM {$lineasTabla} as t1, {$pedidosTabla} as t2\n                WHERE t1.IDPedido=t2.IDPedido AND t2.IDEstado>='2' AND t2.FechaEntrada>='{$desdeFecha}'";
             if ($idProveedor !== '') {
                 $query .= " AND  t2.IDProveedor='{$idProveedor}'";
             }
             if ($idArticulo !== '') {
                 $query .= " AND t1.IDArticulo='{$idArticulo}'";
             }
             $em->query($query);
             $rows = $em->fetchResult();
             $em->desConecta();
         }
         $precioMedio = $rows[0]['Unidades'] != 0 ? $rows[0]['Importe'] / $rows[0]['Unidades'] : 0;
         $unidades = $rows[0]['Unidades'] == '' ? 0 : $rows['0']['Unidades'];
     }
     $values['datos'] = array('idsucursal' => $_SESSION['suc'], 'articulo' => $articulo->iterator(), 'proveedor' => $proveedor->iterator(), 'unidades' => $unidades, 'periodo' => $periodo, 'periodos' => $periodos, 'precioMedio' => number_format($precioMedio, 3));
     // Obtener el litado historico de compras para el articulo y proveedor
     // Solo muestra los pedidos que están confirmador o facturados
     $em = new EntityManager($articulo->getConectionName());
     if ($em->getDbLink()) {
         $query = "SELECT t2.IDLinea,t1.IDPedido,t1.PrimaryKeyMD5,DATE_FORMAT(t1.FechaEntrada,'%d-%m-%Y') as FechaEntrada,t2.Descripcion,t2.Unidades,t2.Precio,t2.Descuento,t2.Importe\n                FROM {$pedidosTabla} as t1, {$lineasTabla} as t2";
         if ($idProveedor !== '') {
             $query .= ", {$proveedorTabla} as t3";
         }
         if ($idArticulo !== '') {
             $query .= ", {$articuloTabla} as t4";
         }
         $query .= " WHERE t1.IDPedido=t2.IDPedido";
         if ($idProveedor !== '') {
             $query .= " AND t1.IDProveedor=t3.IDProveedor AND t1.IDProveedor='{$idProveedor}' ";
         }
         if ($idArticulo !== '') {
             $query .= " AND t2.IDArticulo=t4.IDArticulo AND t2.IDArticulo='{$idArticulo}'";
         }
         $query .= "\n                AND t1.IDEstado>='2'\n                AND t1.FechaEntrada>='{$desdeFecha}'\n                ORDER BY t1.FechaEntrada, t1.IDPedido DESC";
         //$values['query'] = $query;
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     $values['listado'] = $rows;
     unset($em);
     unset($articulo);
     unset($proveedor);
     if (in_array($formato, $this->formats)) {
         $values['status'] = '200';
         $values['statusMessage'] = "";
         switch ($formato) {
             case '':
             case 'JSON':
                 header('Content-type: application/json; charset="UTF-8"', true);
                 $template = "_global/json.twig";
                 $this->values['json'] = $values;
                 break;
             case 'HTML':
                 $this->values = $values;
                 $template = "_Emergente/historicoCompras.html.twig";
                 break;
         }
     } else {
         $this->values['json'] = array('status' => 401, 'statusMessage' => 'Format not implemented', 'result' => array());
         $template = "_global/json.twig";
     }
     return array('template' => $template, 'values' => $this->values);
 }
示例#20
0
 /**
  * Devuelve un array con las entradas en curso del articulo y almacen indicado
  *
  * Cada elemento del array es otro array con los elementos:
  * array (
  *   'IDPedido' =>
  *   'PrimaryKeyMD5' =>
  *   'Fecha' =>
  *   'FechaEntraga' =>
  *   'IDProveedor' =>
  *   'RazonSocial =>
  *   'Entrando' =>
  * )
  *
  * @param integer $idAlmacen El id de almacen
  * @return array Array con las unidades entrando
  */
 public function getEntrando($idAlmacen)
 {
     $reservas = array();
     $tablaPedidos = new PedidosCab();
     $tablaPedidosLineas = new PedidosLineas();
     $tablaProveedores = new Proveedores();
     $em = new EntityManager($this->getConectionName());
     if ($em->getDbLink()) {
         $query = "select\n                        cab.IDPedido,\n                        cab.PrimaryKeyMD5,                     \n                        cab.Fecha,\n                        cab.FechaEntrega,\n                        cab.IDProveedor,\n                        prv.RazonSocial,\n                        sum(lin.Unidades) as Entrando\n                      from\n                        {$tablaPedidos->getDataBaseName()}.{$tablaPedidos->getTableName()} as cab,\n                        {$tablaPedidosLineas->getDataBaseName()}.{$tablaPedidosLineas->getTableName()} as lin,\n                        {$tablaProveedores->getDataBaseName()}.{$tablaProveedores->getTableName()} as prv\n                      where\n                        cab.IDPedido  = lin.IDPedido and\n                        cab.IDProveedor  = prv.IDProveedor and\n                        lin.IDEstado   = '1' and\n                        lin.IDArticulo = '{$this->IDArticulo}' and\n                        lin.IDAlmacen  = '{$idAlmacen}'\n                      group by IDPedido\n                      order by Fecha ASC";
         $em->query($query);
         //echo $query,"<br/>";
         $reservas = $em->fetchResult();
         $em->desConecta();
     }
     unset($em);
     unset($tablaPedidos);
     unset($tablaPedidosLineas);
     unset($tablaProveedores);
     return $reservas;
 }
 /**
  * Renderiza el template _Emergente/historicoCompras.html.twig
  * mostrando las compras realizadas a un proveedor de un articulo y un periodo dado.
  *
  * La información se obtiene en base a los pedidos RECEPCIONADOS o FACTURADOS.
  *
  * No se tienen en cuenta los pedidos no confirmados.
  *
  * Puede entrar por POST o por GET.
  *
  * Si es por POST los parametros vienen en:
  *
  *  idArticulo, idProveedor, periodo
  *
  * Si es por GET los parametros vienen en:
  *
  *  posicion 2 (idArticulo), 3 (idProveedor), 4 (periodo)
  *
  * @return array El template y los datos
  */
 public function HistoricoComprasAction()
 {
     switch ($this->request["METHOD"]) {
         case 'GET':
             $idArticulo = $this->request['2'];
             if ($idArticulo == '0') {
                 $idArticulo = '';
             }
             $IDProveedor = $this->request['3'];
             if ($IDProveedor == '0') {
                 $IDProveedor = '';
             }
             $periodo = $this->request['4'];
             break;
         case 'POST':
             $idArticulo = $this->request['idArticulo'];
             if ($idArticulo == '0') {
                 $idArticulo = '';
             }
             $idProveedor = $this->request['idProveedor'];
             if ($idProveedor == '0') {
                 $idProveedor = '';
             }
             $periodo = $this->request['periodo'];
             break;
     }
     // Construir la parte del filtro que depende del periodo
     switch ($periodo) {
         case '':
             $periodo = 0;
         case '0':
             // Ultimo mes
             $diferenciaDias = -30;
             break;
         case '1':
             // Ultimo Trimestre
             $diferenciaDias = -90;
             break;
         case '2':
             // Ultimo año
             $diferenciaDias = -365;
             break;
         case '3':
             // Todo, 20 años hacia atrás
             $diferenciaDias = -7300;
             break;
     }
     $fecha = new Fecha(date('Y-m-d'));
     $desdeFecha = $fecha->sumaDias($diferenciaDias);
     unset($fecha);
     $proveedor = new Proveedores($idProveedor);
     $proveedorTabla = $proveedor->getDataBaseName() . "." . $proveedor->getTableName();
     $articulo = new Articulos($idArticulo);
     $articuloTabla = $articulo->getDataBaseName() . "." . $articulo->getTableName();
     $pedidos = new PedidosCab();
     $pedidosTabla = $pedidos->getDataBaseName() . "." . $pedidos->getTableName();
     unset($pedidos);
     $lineas = new PedidosLineas();
     $lineasTabla = $lineas->getDataBaseName() . "." . $lineas->getTableName();
     unset($lineas);
     // Calcular el total de unidades compradas y el precio medio de compra
     // Solo calcula los pedidos que están recepcionados o facturados
     if ($idArticulo != '' or $idProveedor != '') {
         $em = new EntityManager($articulo->getConectionName());
         if ($em->getDbLink()) {
             $query = "SELECT SUM(t1.Unidades) as Unidades, SUM(t1.Importe) as Importe\n                FROM {$lineasTabla} as t1, {$pedidosTabla} as t2\n                WHERE t1.IDPedido=t2.IDPedido AND t2.IDEstado>='2' AND t2.FechaEntrada>='{$desdeFecha}'";
             if ($idProveedor !== '') {
                 $query .= " AND  t2.IDProveedor='{$idProveedor}'";
             }
             if ($idArticulo !== '') {
                 $query .= " AND t1.IDArticulo='{$idArticulo}'";
             }
             $em->query($query);
             $rows = $em->fetchResult();
             $em->desConecta();
         }
         $precioMedio = $rows[0]['Unidades'] != 0 ? $rows[0]['Importe'] / $rows[0]['Unidades'] : 0;
         $unidades = $rows[0]['Unidades'] == '' ? 0 : $rows['0']['Unidades'];
     }
     $this->values['datos'] = array('idsucursal' => $_SESSION['usuarioPortal']['SucursalActiva']['Id'], 'articulo' => $articulo, 'proveedor' => $proveedor, 'unidades' => $unidades, 'periodo' => $periodo, 'periodos' => $this->periodos, 'precioMedio' => number_format($precioMedio, 3));
     // Obtener el litado historico de compras para el articulo y proveedor
     // Solo muestra los pedidos que están confirmador o facturados
     $em = new EntityManager($articulo->getConectionName());
     if ($em->getDbLink()) {
         $query = "SELECT t2.IDLinea,t1.IDPedido,t1.PrimaryKeyMD5,DATE_FORMAT(t1.FechaEntrada,'%d-%m-%Y') as FechaEntrada,t4.Descripcion,t2.Unidades,t2.Precio,t2.Descuento,t2.Importe\n                FROM {$pedidosTabla} as t1, {$lineasTabla} as t2";
         if ($idProveedor !== '') {
             $query .= ", {$proveedorTabla} as t3";
         }
         if ($idArticulo !== '') {
             $query .= ", {$articuloTabla} as t4";
         }
         $query .= " WHERE t1.IDPedido=t2.IDPedido";
         if ($idProveedor !== '') {
             $query .= " AND t1.IDProveedor=t3.IDProveedor AND t1.IDProveedor='{$idProveedor}' ";
         }
         if ($idArticulo !== '') {
             $query .= " AND t2.IDArticulo=t4.IDArticulo AND t2.IDArticulo='{$idArticulo}'";
         }
         $query .= "\n                AND t1.IDEstado>='2'\n                AND t1.FechaEntrada>='{$desdeFecha}'\n                ORDER BY t1.FechaEntrada, t1.IDPedido DESC";
         //echo $query;
         $em->query($query);
         $rows = $em->fetchResult();
         $em->desConecta();
     }
     $this->values['listado'] = $rows;
     unset($em);
     unset($articulo);
     unset($proveedor);
     return array('template' => '_Emergente/historicoCompras.html.twig', 'values' => $this->values);
 }
示例#22
0
<?php

session_start();
if (isset($_SESSION["Usuario"])) {
    require_once 'clases/clsProveedor.php';
    $objPro = new Proveedores();
    $fila = $objPro->get_Proveedores();
    ?>
<!DOCTYPE html>
<html lang="es">
<head>
	<meta charset="UTF-8">
	<title>Sistema - Proveedores</title>
	<?php 
    require_once 'inc/header.php';
    ?>
</head>
<body>
	<?php 
    require_once 'inc/navbar.php';
    ?>
	<div class="container-fluid top-container">
		<div class="row">
			<div class="col-xs-12 col-sm-12 col-md-2 col-lg-2">
				<?php 
    require_once 'inc/menu.php';
    ?>
			</div>
			<div class="content">
				<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
					<div class="navbar navbar-default">
示例#23
0
	<div class="row">
		<?php 
echo $form->label($model, 'idTipoVehiculo');
?>
		<?php 
echo $form->dropDownList($model, 'idTipoVehiculo', GxHtml::listDataEx(TiposVehiculos::model()->findAllAttributes(null, true)), array('prompt' => Yii::t('app', 'All')));
?>
	</div>

	<div class="row">
		<?php 
echo $form->label($model, 'idProveedor');
?>
		<?php 
echo $form->dropDownList($model, 'idProveedor', GxHtml::listDataEx(Proveedores::model()->findAllAttributes(null, true)), array('prompt' => Yii::t('app', 'All')));
?>
	</div>

	<div class="row">
		<?php 
echo $form->label($model, 'idMarca');
?>
		<?php 
echo $form->dropDownList($model, 'idMarca', GxHtml::listDataEx(MarcasVehiculos::model()->findAllAttributes(null, true)), array('prompt' => Yii::t('app', 'All')));
?>
	</div>

	<div class="row">
		<?php 
echo $form->label($model, 'idModelo');
include_once 'include/tabla.php';
include_once 'include/fondos/fondos.php';
include_once 'include/compras/compras.php';
include_once 'include/proveedores/proveedores.php';
include_once 'include/url_util.php';
include_once 'include/formatter.php';
$compras = new Compras();
$compra = $compras->get_row($_REQUEST['codigo']);
$url = new UrlUtil();
$formulario = new Formulario();
$formulario->set_action_uri($url->get_uri() . '&action=grabar_pago');
$campo_codigo = new Campo('codigo', Formatter::code_format($compra[0]), 'Código de la operación', 'text');
$campo_codigo->set_disabled();
$campo_fecha = new Campo('fecha', Formatter::datetime_format($compra[2]), 'Fecha de emisión:', 'text');
$campo_fecha->set_disabled();
$proveedores = new Proveedores();
$campo_proveedor = new CampoOculto('proveedor', $compra[3]);
$campo_razon_proveedor = new Campo('proveedor', $proveedores->get_field(1, $compra[3]), 'Proveedor:', 'text');
$campo_razon_proveedor->set_disabled();
$campo_monto_factura = new Campo('monto_fac', $compra[6], 'Monto de la factura:', 'text');
$campo_monto_factura->set_disabled();
$campo_saldo_factura = new Campo('saldo_fac', $compra[7], 'Saldo de la factura:', 'text');
$campo_saldo_factura->set_disabled();
$monto = '0';
if (isset($monto_cuota)) {
    $monto = $monto_cuota;
}
$campo_monto = new CampoDecimal('monto', $monto, 'Monto a pagar:');
if (isset($monto_cuota)) {
    $campo_monto->set_readonly();
}
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer the ID of the model to be loaded
  */
 public function loadModel($id)
 {
     $model = Proveedores::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
 public function dominios($proveedor_id)
 {
     $Proveedor = new Proveedores();
     $this->proveedor = $Proveedor->find($proveedor_id);
     $this->Dominios = new Dominios();
 }
示例#27
0
 public function actionACProveedor()
 {
     if (isset($_GET['term'])) {
         $searchTerm = $_GET['term'];
         $result = array();
         $vehiculos = Proveedores::model()->findAll('nombre LIKE :nombre', array(':nombre' => '%' . $searchTerm . '%'));
         foreach ($vehiculos as $vehiculo) {
             $result[] = array('label' => $vehiculo->nombre, 'value' => $vehiculo->nombre, 'id' => $vehiculo->id);
         }
         echo CJSON::encode($result);
     }
 }
示例#28
0
<?php

require_once '../clases/clsProveedor.php';
if (isset($_POST['ruc'])) {
    if (!empty($_POST['ruc'])) {
        $objPro = new Proveedores();
        $item = $objPro->get_proveedores_ruc($_POST['ruc']);
    }
}
?>
    <div class='modal-dialog'>
        <form method='POST' name="formProv">
            <div class='modal-content'>
                <div class='modal-header'>
                    <button type='button' class='close' data-dismiss='modal' aria-hidden='true'>&times;</button>
                    <h4 class='modal-title' id='myModalLabel'>PROVEEDORES</h4>
                </div>
                <div class='modal-body'>
                    <div class="row">
                        <div class="col-xs-12 col-md-12">
                            <label for="" class="hidden-xs">R.U.C.</label>
                            <input type="text" name="ruc" minlength="11" maxlength="11" required placeholder="R.U.C." 
                                class="form-control" value="<?php 
echo $_POST['ruc'];
?>
" <?php 
echo empty($_POST['ruc']) ? "" : "readonly";
?>
>
                            <label for="">Razón Social</label>
                            <input type='text' class='form-control' required name="rasonsocial" value="<?php 
 public function getProveedores()
 {
     $eleccion = Input::get('eleccion');
     $proveedores = Proveedores::all();
     return Response::json($proveedores);
 }
示例#30
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getProveedores()
 {
     return $this->hasMany(Proveedores::className(), ['tipoproveedor_id' => 'id']);
 }