if (Yii::$app->session->hasFlash('error')) { ?> <div class="alert alert-danger"> <?php echo Yii::$app->session->getFlash('error'); ?> </div> <?php } ?> <?php $form = ActiveForm::begin(['id' => 'imatrimonio']); ?> <?php $dbLibro = Libro::find()->where('tipo = "Matrimonio"')->andWhere('cerrado = 0')->andWhere('anyo = :valor', [':valor' => date("Y")])->one(); $dbPartida = Partida::find()->where('cod_libro = ' . $dbLibro->codigo)->orderBy(['numero' => SORT_DESC])->limit(1)->one(); if (count($dbPartida) > 0) { $num_partida = $dbPartida->numero + 1; } else { $num_partida = 1; } $partida->cod_libro = $dbLibro->codigo; $partida->folio = $dbLibro->folio_actual + 1; ?> <div class="cflex"> <span style="order: 1; flex-grow: 1; margin-right:10px;"> <div class="form-group"> <?php echo Html::label('Libro', 'num_libro'); ?>
if (Yii::$app->session->hasFlash('error')) { ?> <div class="alert alert-danger"> <?php echo Yii::$app->session->getFlash('error'); ?> </div> <?php } ?> <?php $form = ActiveForm::begin(['id' => 'idefuncion']); ?> <?php $dbLibro = Libro::find()->where('tipo = "Defuncion"')->andWhere('cerrado = 0')->andWhere('anyo = :valor', [':valor' => date("Y")])->one(); $dbPartida = Partida::find()->where('cod_libro = ' . $dbLibro->codigo)->orderBy(['numero' => SORT_DESC])->limit(1)->one(); if (count($dbPartida) > 0) { $num_partida = $dbPartida->numero + 1; } else { $num_partida = 1; } $partida->cod_libro = $dbLibro->codigo; $partida->folio = $dbLibro->folio_actual + 1; ?> <div class="cflex"> <span style="order: 1; flex-grow: 1; margin-right:10px;"> <div class="form-group"> <?php echo Html::label('Libro', 'num_libro'); ?>
/** * @return \yii\db\ActiveQuery */ public function getCodLibro() { return $this->hasOne(Libro::className(), ['codigo' => 'cod_libro']); }
public function actionDivorcio() { $model = new Divorcio(); $partidaModelo = new Partida(); $dbCon = new Persona(); $conexion = \Yii::$app->db; $transaccion = $conexion->beginTransaction(); if ($model->load(Yii::$app->request->post()) && $partidaModelo->load(Yii::$app->request->post())) { require_once '../auxiliar/Auxiliar.php'; $model->cod_partida = 0; $partidaModelo->cod_libro = 1; $partidaModelo->cod_empleado = Yii::$app->user->identity->persona->codEmpleado->codigo; $partidaModelo->lugar_suceso = $partidaModelo->codMunicipio->nombre; $partidaModelo->tipo = 'Divorcio'; if ($model->validate() && $partidaModelo->validate()) { try { $codlibro = Libro::find()->select('codigo')->where("tipo = 'Divorcio'")->andWhere("anyo = :an", [':an' => date('Y')])->andWhere('numero = :valor', [':valor' => $_POST['Partida']['num_libro']])->one()->codigo; $partidaModelo->cod_libro = $codlibro; $partidaModelo->fecha_emision = fechaMySQL($partidaModelo->fecha_emision); $partidaModelo->fecha_suceso = fechaMySQL($partidaModelo->fecha_suceso); $model->fecha_ejecucion = fechaMySQL($model->fecha_ejecucion); $partidaModelo->hora_suceso = horaMySQL($partidaModelo->hora_suceso); if ($partidaModelo->save()) { //Recupero el valor de id con el cual se inserto $ulid = $conexion->getLastInsertID(); $model->cod_partida = $ulid; //Guardo el registro de divorcio if (!$model->save()) { throw new UserException('No se pudo guardar el registro de divorcio, intente nuevamente'); } $arrper = $model->codMatrimonio->matrimonioPersonas; $dbCon = $arrper[0]->codPersona; $dbCon->cod_estado_civil = 3; //Se actualiza el estado civil de los contrayentes if (!$dbCon->save()) { throw new UserException('No se pudo actualizar el estado civil del contrayente, intente nuevamente'); } $dbCon = $arrper[1]->codPersona; $dbCon->cod_estado_civil = 3; //Se actualiza el estado civil de los contrayentes if (!$dbCon->save()) { throw new UserException('No se pudo actualizar el estado civil de la contrayente, intente nuevamente'); } //Actualizar el folio actual del libro if ($conexion->createCommand("update libro set folio_actual = folio_actual + 1 where codigo = " . $codlibro)->execute() <= 0) { throw new UserException('No se pudo actualizar el libro de partidas, intente nuevamente'); } $transaccion->commit(); Yii::$app->session->setFlash('success', 'Partida guardada con éxito'); return $this->redirect(['divorcio']); } else { throw new UserException('No se pudo guardar el registro de partida, intente nuevamente'); } return; } catch (UserException $err) { $transaccion->rollback(); Yii::$app->session->setFlash('error', $err->getMessage()); return $this->redirect(['divorcio']); } } else { Yii::$app->session->setFlash('error', 'El modelo no cumple con la validación'); } } return $this->render('rdivorcio', ['model' => $model, 'partida' => $partidaModelo]); }