/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model = new Pago(); $modelListin = new Listin(); $modelMensualidadPago = new MensualidadPago(); $modelMP = array(); // Uncomment the following line if AJAX validation is needed $this->performAjaxValidation(array('model' => $model, 'modelListin' => $modelListin, 'modelMensualidadPago' => $modelMensualidadPago)); if (isset($_POST['Pago'])) { $model->attributes = $_POST['Pago']; // Identificamos el pago con un código. $model->getCodigo(); // Colocamos el pago activo $model->pag_anu = 0; // Fecha de hoy $model->pag_fec_ing = date('Y-m-d'); // GuardarMensualidades if (isset($_POST['MensualidadPago']) && $model->pag_con == "M") { $modelMensualidadPago->attributes = $_POST['MensualidadPago']; foreach ($modelMensualidadPago->men_pag_mes_can as $key => $value) { $modelMP[] = new MensualidadPago(); $fechaExtraida = substr($value, 2, 4) . "-" . substr($value, 0, 2) . "-01"; $modelMP[$key]->getCodigo(); $modelMP[$key]->id_pago = $model->id; $modelMP[$key]->men_pag_mes_can = $fechaExtraida; $modelMP[$key]->men_pag_mon = $model->pag_mon / count($modelMensualidadPago->men_pag_mes_can); } } elseif (!isset($_POST['MensualidadPago']) && $model->pag_con == "M") { $model->addError($model->pag_men_pagos, 'Seleccione al Menos un Mes Deudor'); } // Guardar Listín if (isset($_POST['Listin']) && $model->pag_con == "L") { $modelListin->attributes = $_POST['Listin']; $modelListin->id_pago = $model->id; if (!$modelListin->validate()) { $model->addError($model->pag_listin, 'Error al ingresar Listines'); } } elseif (!isset($_POST['Listin']) && $model->pag_con == "L") { $model->addError($model->pag_listin, 'Error al ingresar Listines'); } if (!$model->hasErrors()) { $model->save(); if ($modelListin) { $modelListin->save(); } if ($modelMP) { foreach ($modelMP as $key => $value) { $value->save(); } } $this->redirect(array('view', 'id' => $model->id)); } } //$prueba = Pago::getListaMesesPagados('0000-00-00', date('Y-m-d'), 'CON0000003'); $this->render('create', array('model' => $model, 'modelListin' => $modelListin, 'modelMensualidadPago' => $modelMensualidadPago)); }
/** * getConceptoPago() * Retorna un concepto de pago para en recibo de pago, de manera * desglosada y acomodada. * @param $idPago El id del pago realizado. * @param $pagCon El concepto del pago realizado (sólo la palabra). * @return String $concepto Un String que dice de manera * desglosada el concepto de pago. * */ public static function getConceptoPago($idPago, $pagCon) { $concepto = ''; if ($pagCon == "M") { $model = MensualidadPago::getMesesPagados($idPago); if (count($model) >= 2) { # extrae principio y fin $intervalo = array(); $intervalo[] = array('mes' => Yii::app()->FuncionesImportantes->getMesNumeroALetra(date('m', strtotime($model[0]->men_pag_mes_can))), 'anio' => date('Y', strtotime($model[0]->men_pag_mes_can))); $intervalo[] = array('mes' => Yii::app()->FuncionesImportantes->getMesNumeroALetra(date('m', strtotime($model[count($model) - 1]->men_pag_mes_can))), 'anio' => date('Y', strtotime($model[count($model) - 1]->men_pag_mes_can))); $concepto = "<u>Desde {$intervalo[0]['mes']} de {$intervalo[0]['anio']} \n\t\t\t\t\tHasta {$intervalo[1]['mes']} de {$intervalo[1]['anio']}</u>"; } elseif (count($model == 1)) { # extrae el único $intervalo = array('mes' => Yii::app()->FuncionesImportantes->getMesNumeroALetra(date('m', strtotime($model[0]->men_pag_mes_can))), 'anio' => date('Y', strtotime($model[0]->men_pag_mes_can))); $concepto = "<u> Pago de {$intervalo['mes']} de {$intervalo['anio']}</u>"; } } elseif ($pagCon == "L") { $model = Listin::model()->findByPk($idPago); $concepto = "<u>Pertenecientes a los números: {$model->lis_num1}, {$model->lis_num2}, \n\t\t\t{$model->lis_num3}, {$model->lis_num4}</u>,<br />\n\t\t\t \n\t\t\t \n\t\t\t<u>{$model->lis_num5}, {$model->lis_num6}.</u>"; } return $concepto; }