コード例 #1
0
 public function actionAlmacenes()
 {
     $model = new VwStocktotalAlmacenes('search');
     $model->unsetAttributes();
     // clear any default values
     if (isset($_GET['VwStocktotalAlmacenes'])) {
         $model->attributes = $_GET['VwStocktotalAlmacenes'];
     }
     $nuevo = new Alinventario();
     // new CArrayDataProvider($dataArray);
     $datostocktotales = $nuevo->getStockValTotal();
     $proveedor = new CArrayDataProvider($nuevo->getStockValAlmacen());
     $this->render('adminalmacenes', array('model' => $model, 'proveedor' => $proveedor, 'stocktotales' => $datostocktotales));
 }
コード例 #2
0
    /**
     * Pinta el pareto
     */
    public function actionPareto()
    {
        $modinventario = new Alinventario();
        $model = new ParetoForm();
        // collect user input data
        if (isset($_POST['ParetoForm'])) {
            $model->attributes = $_POST['ParetoForm'];
            $almacen = $_POST['ParetoForm']['almacen'];
            $centro = $_POST['ParetoForm']['centro'];
            $tipo = $_POST['ParetoForm']['codtipo'];
            $almacen = MiFactoria::cleanInput($almacen);
            $centro = MiFactoria::cleanInput($centro);
            if ($model->validate()) {
                ini_set("set_time_limit", 0);
                if (is_null($tipo)) {
                    $valortotal = $modinventario->getStockValAlmacen($almacen);
                } else {
                    $valortotal = $modinventario->getStockValAlmacen($almacen);
                }
                $rows = Yii::app()->db->createCommand()->select('a.id, (' . $modinventario->getcadenacampos() . ')*a.punit*b.cambio as stock,
			    a.codalm,a.codart,
			    a.codcen')->from('{{alinventario}} a ,{{tipocambio}} b , {{almacenes}} c')->where("a.codalm=c.codalm and a.codcen=c.codcen and\n\t\t  c.codmon=b.codmon1 and b.codmon2=:Vmonedadefault  and a.codalm=:vcodal and (" . $modinventario->getcadenacampos() . ") > 0 ", array(":vcodal" => $almacen, ":Vmonedadefault" => yii::app()->settings->get('general', 'general_monedadef')))->order('(' . $modinventario->getcadenacampos() . ')*a.punit*b.cambio DESC')->queryAll();
                ///borramos todos los registros anteriores primero
                $comando = Yii::app()->db->createCommand(" delete from {{pareto}} ");
                // $comando=Yii::app()->db->createCommand(" delete from {{pareto}}  where
                // hinventario in (SELECT id from ".Yii::app()->params['prefijo']."alinventario where codcen='".$centro."'  and codalm ='".$almacen."' ) ");
                $comando->execute();
                $i = 1;
                //ranking
                $acumulado = 0;
                //valor del stcok acumulado
                $porcenacumulado = 0;
                //$transaction = $this->getDbConnection()->beginTransaction();
                foreach ($rows as $valor) {
                    $acumulado = $acumulado + $valor['stock'];
                    /*var_dump($valortotal[$almacen]['stock_total']);
                    		yii::app()->end();*/
                    $porcentaje = round($valor['stock'] / $valortotal[$almacen]['stock_total'], 3);
                    $porcenacumulado = round($porcenacumulado + $porcentaje, 2);
                    $comando1 = Yii::app()->db->createCommand(" INSERT INTO {{pareto}} (hinventario,ranking, clase, acumulado,porcentaje,porcentajeac,  idsesion) values( " . $valor['id'] . " , " . $i . ",'', " . $acumulado . "," . $porcentaje . "," . $porcenacumulado . "," . Yii::app()->user->getId() . "  ) ");
                    $comando1->execute();
                    //$transaction->commit();
                    $i = $i + 1;
                }
                //luego establecer los margenes de la clase
                $rangoa = $_POST['ParetoForm']['rangoa'] / 100;
                $rangob = $_POST['ParetoForm']['rangob'] / 100;
                $rangoc = $_POST['ParetoForm']['rangoc'] / 100;
                //actualñizar todas las clases A
                $comando2 = Yii::app()->db->createCommand(" UPDATE " . Yii::app()->params['prefijo'] . "pareto SET clase='A' where porcentajeac < " . $rangoa . "  ");
                $comando2->execute();
                //actualñizar todas las clases B
                $comando2 = Yii::app()->db->createCommand(" UPDATE " . Yii::app()->params['prefijo'] . "pareto SET clase='B' where porcentajeac >=" . $rangoa . " and porcentajeac < " . ($rangoa + $rangob) . " ");
                $comando2->execute();
                //actualñizar todas las clases C
                $comando2 = Yii::app()->db->createCommand(" UPDATE " . Yii::app()->params['prefijo'] . "pareto SET clase='C' where porcentajeac >=" . ($rangoa + $rangob) . " ");
                $comando2->execute();
                //$this->render('vwlistadopareto');
                //$this->render('vwpareto',array('model'=>$model));
                //$this->redirect('vwpareto',array('model'=>$model));
                $this->redirect(array('adminpareto'));
            }
            //echo "ESTOS SON LOS RANGOS  ".$rangoa."    ".$rangob."    ".$rangoc;
            //Yii::app()->end();
        }
        // display the login form
        $this->render('pareto_form', array('model' => $model));
    }
コード例 #3
0
 public function Loginventario()
 {
     $tiempo = time();
     $dia = date('d');
     $mes = date('m');
     $ani = date('y');
     $fecmax = Yii::app()->db->createCommand()->select('max(fecha)')->from('{{montoinventario}} a')->queryScalar();
     $tiempoult = strtotime($fecmax . '');
     if ($tiempo - $tiempoult > 60 * 60 * 24 * 3) {
         $alin = new Alinventario();
         $stocks = $alin->getStockValAlmacen();
         foreach ($stocks as $filastock) {
             $registro = new Montoinventario();
             $registro->setAttributes(array('dia' => $dia, 'mes' => $mes, 'anno' => $ani, 'iduser' => Yii::app()->user->id, 'montolibre' => round($filastock['stock_cantlibre'], 0), 'montotran' => round($filastock['stock_canttran'], 0), 'montoreserva' => round($filastock['stock_cantreserva'], 0), 'montodif' => 0, 'montototal' => round($filastock['stock_total'], 2), 'codal' => $filastock['codalm'], 'codcen' => $filastock['codcen'], 'fecha' => date("Y-m-d")));
             if (!$registro->save()) {
                 print_r($registro->geterrors());
                 yii::app()->end();
             }
             //$almacenes=Yii::app()->db->createCommand("SELECT *FROM public_almacenes ")->queryAll();
             /*print_r($filastock);
             		echo "<br>";
             		print_r($registro->attributes);
             		echo "<br>";
             		print_r($registro->geterrors());
             		yii::app()->end();*/
         }
     }
 }
コード例 #4
0
 public function actionesarchivo()
 {
     if (is_file(Yii::getPathOfAlias('webroot') . '/imgreportes/JULIAN.gif')) {
         echo "si es file<br>";
     }
     echo Maestrocompo::subeimagen(Yii::getPathOfAlias('webroot') . '/imgreportes/JULIAN.gif', 'OLMEDO');
     YII::APP()->END();
     $alin = new Alinventario();
     $matrizinv = $alin->getStockValTotal();
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     $matrizinv = $alin->getStockValCentro();
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     $matrizinv = $alin->getStockValAlmacen();
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     $alin = new Alinventario();
     $matrizinv = $alin->getStockMatTotal('18005746');
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     $matrizinv = $alin->getStockMatCentro('18005746');
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     $matrizinv = $alin->getStockMatAlmacen('18005746');
     print_r($matrizinv);
     echo "<BR><BR><BR>";
     yii::app()->end();
     echo date('Y-m-d H:i:s');
     var_dump(yii::app()->tipocambio->setcompra('USD', 3.69));
     /*	yii::app()->tipocambio->setventa('USD',3.39);
     		ECHO "COMRPA DOLAR  ".yii::app()->tipocambio->getcompra('USD');
     		echo "<br>";
     		ECHO "VENTA  DOLAR  ".yii::app()->tipocambio->getventa('USD');
     		echo "<br>";
     		echo "moendas vencias ";
     		print_r(yii::app()->tipocambio->cambiospasados());*/
     yii::app()->end();
     var_dump(yii::app()->periodo->verificafechas('2015-10-30', '2015-10-30'));
     echo " fecha " . strtotime('2015-10-30');
     yii::app()->end();
     $compra = '21000050';
     $vales = yii::app()->db->createCommand()->select('a.numvale')->from('{{almacendocs}} a,{{alkardex}} b, {{alentregas}} c')->where("a.id=b.hidvale AND b.id=c.idkardex AND b.numdocref=:nocompra", array(":nocompra" => $compra))->queryColumn();
     //Sacando los numeros de documentos referenciados en dichos vales, que tambien son vales
     $valesreferenciados = yii::app()->db->createCommand()->select('a.numdocref')->from('{{almacendocs}} a,{{alkardex}} b, {{alentregas}} c')->where("a.id=b.hidvale AND b.id=c.idkardex AND b.numdocref=:nocompra ", array(":nocompra" => $compra))->queryColumn();
     $arraypar = array_combine($vales, $valesreferenciados);
     //$arraypar=array_unique(array_combine($vales,$valesreferenciados));
     $vales = array_unique($vales);
     $valesreferenciados = array_unique($valesreferenciados);
     ///Ahora usamos la teoria de conjuntos  $vales INTERESECCION  $valesreferenciados
     ///QUIRE DECIR QEU SI HA HABIDO ANULACIONES , DEBE DE HABER UNA INTERSECCION
     $interseccion = array_intersect($vales, $valesreferenciados);
     print_r($vales);
     echo "<br><br><br>";
     print_r($valesreferenciados);
     echo "<br><br><br>";
     print_r($arraypar);
     echo "<br><br><br>";
     print_r($interseccion);
     echo "<br><br><br>";
     //yii::app()->end();
     if (COUNT($interseccion) > 0) {
         foreach ($interseccion as $clave => $valor) {
             unset($arraypar[$valor]);
             if (array_search($valor, $arraypar)) {
                 unset($arraypar[array_search($valor, $arraypar)]);
             }
         }
         $vales = array_keys($arraypar);
     }
     $valores = array();
     $i = 0;
     foreach ($vales as $clave => $valor) {
         $valores[":ycp" . $i] = $valor . '';
         $i = $i + 1;
     }
     //bien ya nos aseguramos de eliminar los vales que estan comprometidos con anulaciones
     //ahora si sale limpio:
     $criterio = new CDBCriteria();
     $criterio->addCondition("a.id=b.hidvale AND b.id=c.idkardex AND b.numdocref=:numocompra");
     $criterio->addInCondition('a.numvale', array_keys($valores));
     $valores[":numocompra"] = $compra;
     $criterio->params = $valores;
     print_r($criterio->params);
     echo "<br>vxvx<br><br>";
     $entregas = yii::app()->db->createCommand()->select('c.id')->from('{{almacendocs}} a,{{alkardex}} b, {{alentregas}} c')->where($criterio->condition, $criterio->params)->queryAll();
     PRINT_R($entregas);
     foreach ($entregas as $filaentrega) {
         $detalle = new Tempdetingfactura();
         $detalle->setScenario('basico');
         $detalle->setAttributes(array('hidfactura' => 2, 'hidalentrega' => $filaentrega->id));
         $detalle->save();
     }
     yii::app()->end();
     echo yii::app()->baseUrl . "  /recurso/themes/temita/css/abound.css   <br> ";
     echo is_file('/recurso/themes/temita/css/abound.css') ? " Si Es Archivo " : " NO es archivo ";
 }
コード例 #5
0
ファイル: EjemplosController.php プロジェクト: hipogea/zega
 public function actionRutas()
 {
     // echo Contactos::getListMailContacto ( 33 , '421' ) ;
     $cadena = yii::app()->correo->correo_simple('*****@*****.**', '*****@*****.**', 'SOLICITUD DE COTIZACION', " favor de cotizar los siguiente s mateiale   ");
     var_dump($cadena);
     yii::app()->end();
     $modelokardex = Alkardex::model()->findByPk(2408);
     // $transacc=Yii::app()->db->beginTransaction();
     $nuevo = new Alkardex();
     $nuevo->attributes = $modelokardex->attributes;
     $nuevo->numdocref = 'PICHOx';
     $nuevo->save();
     print_r($nuevo->attributes);
     yii::app()->end();
     $model = new Desolpe();
     $model->save();
     yii::app()->mensajes->clear();
     yii::app()->mensajes->setmessageitem('350', 456, "eSTE ES MI PRIMER MEJSAE ", 'notice');
     yii::app()->mensajes->setmessageitem('350', 455, "eSTE ES MI segundo MEJSAE ", 'notice');
     yii::app()->mensajes->setmessageitem('350', 455, yii::app()->mensajes->getErroresItem($model->geterrors()), 'error');
     yii::app()->mensajes->setmessageitem('350', 455, "eSTE ES MI tercer MEJSAE ", 'notice');
     //print_r(yii::app()->session['errores']);
     $matriz = yii::app()->mensajes->getMessages('350');
     print_r($matriz);
     yii::app()->end();
     var_dump(Ocompra::puedeautorizar());
     var_dump(Montoinventario::datosgrafo('mes', 6, null));
     $mo = new Alinventario();
     print_r($mo->getStockValAlmacen());
     $data = Ocompra::historicoprecios('18005720');
     print_r($data->getData());
     echo " Yii::getPathOfAlias('webroot') :  " . Yii::getPathOfAlias('webroot') . "<br>";
     //echo "yii::app()->params['webRoot']     :     ".yii::app()->params['webRoot']."<br> ";
     echo "yii::app()->baseUrl     :     " . yii::app()->baseUrl . "<br> ";
     echo "yii::app()->getBaseUrl(true)     :     " . yii::app()->getBaseUrl(true) . "<br> ";
     echo "yii::app()->getBaseUrl(false)     :     " . yii::app()->getBaseUrl(false) . "<br> ";
     echo "yii::app()->basePath      :     " . yii::app()->basePath . "<br> ";
     echo "yii::app()->baseUrl     :     " . yii::app()->baseUrl . "<br> ";
     echo "Yii::app()->getTheme()->baseUrl    :    " . Yii::app()->getTheme()->baseUrl . "<br> ";
     echo "Yii::app()->getTheme()->basePath    :    " . Yii::app()->getTheme()->basePath . "<br> ";
     echo "Yii::app()->getTheme()->systemViewPath    :    " . Yii::app()->getTheme()->systemViewPath . "<br> ";
     echo "Yii::app()->getTheme()->viewPath    :    " . Yii::app()->getTheme()->viewPath . "<br> ";
     echo "Yii::app()->getHomeUrl()            :    " . Yii::app()->getHomeUrl() . "  <br>";
     echo "Yii::app()->runtimePath             :  " . Yii::app()->runtimePath . "<br> ";
     echo "yii::app()->request->getServerName()     :     " . yii::app()->request->getServerName() . "<br> ";
     echo "yii::app()->request->hostInfo     :     " . yii::app()->request->hostInfo . "<br> ";
     echo "yii::app()->request->pathInfo     :     " . yii::app()->request->pathInfo . "<br> ";
     echo "yii::app()->request->serverName     :     " . yii::app()->request->serverName . "<br> ";
     echo "yii::app()->request->url     :     " . yii::app()->request->url . "<br> ";
     echo "yii::app()->request->userHostAddress     :     " . yii::app()->request->userHostAddress . "<br> ";
     echo "<br><br><br>";
     echo "<br><br><br>";
     echo "Archivos del directorio " . Yii::app()->getTheme()->basePath . "  <br>";
     $archivos = CFileHelper::findFiles(Yii::app()->getTheme()->basePath . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . 'reportes', array('fileTypes' => array('css'), 'exclude' => array(), 'level' => -1, 'absolutePaths' => false));
     print_r($archivos);
 }