public function checkrotativo($attribute, $params) { $maestrito = Maestrocompo::model()->findByPk($this->codart); if (!is_null($maestrito)) { if (!$maestrito->esrotativo == '1') { $this->adderror('codart', 'Este material no puede ser asociado al equipo porque no es rotativo'); } } }
public function actionPinta() { $valore = $_POST['Maestrosolicitudes']['descripcion']; $mimodel = Maestrocompo::model()->findByPk($valore); if (!is_null($mimodel)) { echo $mimodel->descripcion; } else { echo "No se encontro el codigo especificado" . $valore . "__"; } }
public function checkcodigo($attribute, $params) { //Primero debemos verificar que el codigo SAP y el codigo de AF son los correctos $codigo = $this->c_codgui; if (!is_null($codigo) or !empty($codigo)) { $vari = Maestrocompo::model()->find('codigo=:codito', array(':codito' => $codigo)); $comp = is_null($vari) ? '' : $vari->codigo; if (!(trim($codigo) == trim($comp))) { $this->adderror('c_codgui', 'El codigo de material no Existe'); } } else { } }
public function checkservicio($attribute, $params) { if ($this->tipo == '00') { //si es un tipo servicio $modelito = Maestrocompo::model()->findByPk(TRIM($this->codart)); if (!$modelito === null) { $tipomaterial = $modelito->codtipo; //ADEMAS DEBE DE TENER EL TIPO DE DETALLE COMO TIPO SERVICIO '00' if (!($this->tipo == '00' and $tipomaterial == '00')) { $this->adderror('tipo', 'Es un servicio pero el codigo no correpsonde'); } } else { $this->adderror('codart', 'Lleno el tipo como servicio pero el codigo no corresponde'); } } }
public function checkum($attribute, $params) { $modeloum = Alconversiones::model()->findAll("codart='" . $this->codart . "' and um2 ='" . $this->um . "'"); if (!$modeloum === null) { //si hay registros ok } else { //si no hay registros ver que se al unida de medida base sino error $maestro = Maestrocompo::model()->findByPk($this->codart); if ($maestro === null) { $this->adderror('codart', 'Este material no existe'); } else { if ($maestro->um != $this->um) { $this->adderror('um', 'Esta unidad de medida no esta ampliada para este material,amplie las vistas del material'); } } } }
<?php echo $form->error($model, 'horascambio'); ?> </div> <div class="row"> <?php echo $form->labelEx($model, 'tipoaceite'); ?> <?php $criteria = new CDbCriteria(); //$criteria->addcondition("cod='".$codep."'"); $criteria->addcondition("flag='1'"); $datos = CHtml::listData(Maestrocompo::model()->findall($criteria), 'codigo', 'descripcion'); echo $form->DropDownList($model, 'tipoaceite', $datos, array('empty' => '--Seleccione lubricantes--')); ?> <?php echo $form->error($model, 'tipoaceite'); ?> </div> <div class="row buttons"> <?php echo CHtml::submitButton($model->isNewRecord ? 'Crear' : 'Grabar'); ?> </div> <?php $this->endWidget();
public function checkvalores($attribute, $params) { $codigoserv = yii::app()->settings->get('materiales', 'materiales_codigoservicio'); $modelomaterial = Maestrocompo::model()->find("codigo=:codigox", array(":codigox" => TRIM($this->codart))); /******************************************* + Debe de exigir el tipo de solpe + la combinacion de valores del tipo de solpe-material ***********************************************/ if ($this->tipsolpe == 'M') { if ($this->codart == $codigoserv) { $this->adderror('codart', 'Este es un servicio, usted esta solicitando un material'); } if (is_null($modelomaterial)) { $this->adderror('codart', 'Este material no existe ...'); } else { if ($this->desolpe_alinventario === null) { $this->adderror('codart', 'Este material tiene que ser ampliado al centro ' . $this->centro . ' y almacen ' . $this->codal . ' '); } } } else { //Si es un servicio if (is_null($modelomaterial)) { if (!empty($this->codart)) { $this->adderror('codart', 'Este material no existe ->'); } else { // $this->adderror('codart','Este material no existe' ); $this->codart = $codigoserv; } } else { if (TRIM($this->codart) != $codigoserv) { $this->adderror('tipsolpe', 'Este es un servicio, usted esta solicitando un material'); } } } }
public function actionCargaums() { $numerovale = trim($_POST['Alkardex']['numdocref']); $referencia = $_POST['Alkardex']['idref']; $criteria = new CDbCriteria(); $criteria->addCondition("idref=:vidref"); $criteria->params = array(':vnumvale' => $numerovale, ':vidref' => $referencia); $criteria->addCondition("numvale=:vnumvale "); $modelokardex = VwKardex::model()->find($criteria); $material = trim($modelokardex->codart); $criteria2 = new CDbCriteria(); $criteria2->addCondition("codart=:vcodart "); $criteria2->params = array(':vcodart' => $material); VwAlconversiones::model()->findAll($criteria2); //$valor=$_POST['Eventos']['codocu']; $data = CHtml::listData(VwKardex::model()->findAll($criteria), um2, desum2); $modelomaterial = Maestrocompo::model()->findByPk($material); //este vacio ono , garegamos la unidad de medida base if (count($data) == 0) { array_push($data, array($modelomaterial->um => $modelomaterial->maestro_ums->desum)); } print_r($data); yii::app()->end(); //print_r($data); //yii::app()->end(); echo CHtml::tag('option', array('value' => null), CHtml::encode('um'), true); foreach ($data as $value => $name) { echo CHtml::tag('option', array('value' => $value), CHtml::encode($name), true); } }
public function checkcanti($attribute, $params) { ///cone sta fiunciuon verificamos que la reserva sea consistente //primero debemos de verificar qu este item nbo este reservado if (!$this->est == '30') { $this->adderror('cantidad_reservada', 'El status de este item no permite reservar'); } //luego verifica rque las cantidades a ingrear sean consistentes if ($this->cantidad_compras + $this->cantidad_reservada != $this->cant) { $this->adderror('cantidad_reservada', 'La cantidad reservada y compras no coincide con la solicitada'); } //verifica que la cantidad a reservar no supere el stock de inventario //antes asegurarse que se esta hablando de la misma unidad de medida base, emn otro caso convertir if (!$this->um == Maestrocompo::model()->findByPk(trim($this->codart))->um) { $cantidad_reservada_convertida = $this->cant * Alconversiones::model()->convierte($this->codart, $this->um); } else { $cantidad_reservada_convertida = $this->cantidad_reservada; } $eninventario = $this->desolpe_alinventario->cantlibre; //ahora si lo que se quiere reservar es mayot que lo que hay en inventario if ($eninventario < $cantidad_reservada_convertida) { $this->adderror('cantidad_reservada', 'La cantidad reservada es mayor de la que hay en inventario'); } if ($eninventario > 0 and $cantidad_reservada_convertida == 0) { $this->adderror('cantidad_reservada', 'La cantidad reservada no puede ser cero, habiendo stock'); } }
public function checkcodigo($attribute, $params) { $modelomaterial = Maestrocompo::model()->find("codigo=:codigox", array(":codigox" => TRIM($this->codart))); if (is_null($modelomaterial)) { $this->adderror('codart', 'Este material no existe'); } else { $modelocabecera = Almacendocs::model()->findByPk($this->hidvale); $modinventario = Alinventario::model()->find("codart='" . trim($this->codart) . "' AND codalm='" . $modelocabecera->codalmacen . "' AND codcen='" . $modelocabecera->codcentro . "'"); if (is_null($modinventario)) { //if($this->alkardex_alinventario===null) { $this->adderror('codart', 'Este material tiene que ser ampliado al centro -: ' . $modelocabecera->codcentro . ' y almacen ' . $modelocabecera->codalmacen . ' '); } else { //veriicando la unidad de medida if ($this->um != $modelomaterial->um) { //si es diferente a la unidad de medida base //revisar las conversiones $matrizunidades = Alconversiones::model()->findAll("codart=:codigox and um2=:unitas ", array(":codigox" => TRIM($this->codart), ":unitas" => $this->um)); if (count($matrizunidades) == 0) { $this->adderror('um', 'No existe conversiones para esta unidad de medida en este material '); } } } } }
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 "; }
/** * 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 $id the ID of the model to be loaded * @return Maestrocompo the loaded model * @throws CHttpException */ public function loadModel($id) { $model = Maestrocompo::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
<?php $material = Maestrocompo::model()->findByPk($codigo); ?> <span class="label badge-warning" ><?php echo $material->codigo . "-" . $material->descripcion; ?> </span><br> <div style="float: left; width:120px; padding-right: 5px;"><br> <?php //echo CHtml::image("/recurso/materiales/".$codigo.".JPG","",array("height"=>"200","width"=>"200")) ; Numeromaximo::Pintaimagen(Yii::app()->params['rutaimagenesmateriales'] . $codigo . ".JPG", Yii::app()->params['rutaimagenesmateriales'] . "NODISPONIBLE.JPG", 120, 120); ?> </div> <div style="float: left; width:300px;"> <?php $this->widget('zii.widgets.grid.CGridView', array('id' => 'alinvedntario-grid', 'itemsCssClass' => 'table table-striped table-bordered table-hover', 'dataProvider' => Alinventario::model()->search_por_codigo($codigo), 'summaryText' => '', 'columns' => array('codcen', 'codalm', 'maestro.maestro_ums.desum', 'cantlibre', 'cantres', 'canttran', array('name' => 'punit', 'header' => 'P. Unit', 'value' => 'round($data->punit,2)')))); ?> </div>
public static function Listadoums($codigo) { $valores = array(); $codigo = MiFactoria::cleanInput($codigo); $filamaterial = Maestrocompo::model()->findByPk($codigo); if (!is_null($filamaterial)) { $filas = self::model()->findAll("codart=:vcodigo", array(":vcodigo" => $codigo)); foreach ($filas as $fila) { $valores[$fila->um2] = $fila->alconversiones_um2->desum; } $valores[$filamaterial->um] = $filamaterial->maestro_ums->desum; } else { } return $valores; }
public function checkvalores($attribute, $params) { $modelomaterial = Maestrocompo::model()->find("codigo=:codigox", array(":codigox" => TRIM($this->codart))); /******************************************* + Debe de exigir el tipo de solpe + la combinacion de valores del tipo de solpe-material ***********************************************/ if ($this->tipoitem == 'M') { if ($this->codart == '10000000') { $this->adderror('codart', 'Este es un servicio, usted esta solicitando un material'); } if (is_null($modelomaterial)) { $this->adderror('codart', 'Este material no existe'); } else { if ($this->docompra_alinventario === null) { $this->adderror('codart', 'Este material tiene que ser ampliado al centro ' . $this->centro . ' y almacen ' . $this->codal . ' '); } } } else { //Si es un servicio if (is_null($modelomaterial)) { if (!empty($this->codart)) { $this->adderror('codart', 'Este material no existe'); } else { // $this->adderror('codart','Este material no existe' ); } } else { if ($this->codart != '10000000') { $this->adderror('tipoitem', 'Este es un servicio, usted esta solicitando un material'); } } } }