public function actionIngresoCajaPaciente($idOrigen)
 {
     //Buscar Paciente Origen
     $pacienteOrigen = Paciente::model()->findByPk($idOrigen);
     //Ingreso a Caja de Paciente
     $pacienteDestino = Paciente::model()->findByPk($_POST['paciente']);
     $pacienteDestino->saldo = $pacienteDestino->saldo + $_POST['valor'];
     if ($pacienteDestino->update()) {
         //Registro en caja
         $movimientoDeposito = new PacienteMovimientos();
         $movimientoDeposito->paciente_id = $pacienteDestino->id;
         $movimientoDeposito->valor = $_POST['valor'];
         $movimientoDeposito->tipo = "Ingreso";
         $movimientoDeposito->sub_tipo = "Tranferencia de Paciente";
         $movimientoDeposito->comentario = $_POST['comentario'];
         $movimientoDeposito->descripcion = "El Paciente No. " . $pacienteOrigen->id . " Nombre: " . $pacienteOrigen->nombreCompleto . ". Realizo un traslado de su caja a este paciente";
         $movimientoDeposito->usuario_id = Yii::app()->user->usuarioId;
         $movimientoDeposito->fecha = date("Y-m-d H:i:s");
         $movimientoDeposito->save();
         //Retiro a Caja de Paciente
         $pacienteOrigen->saldo = $pacienteOrigen->saldo - $_POST['valor'];
         if ($pacienteOrigen->update()) {
             //Registro en caja
             $movimientoDepositoOrigen = new PacienteMovimientos();
             $movimientoDepositoOrigen->paciente_id = $pacienteOrigen->id;
             $movimientoDepositoOrigen->valor = $_POST['valor'];
             $movimientoDepositoOrigen->tipo = "Egreso";
             $movimientoDepositoOrigen->sub_tipo = "Tranferencia a Paciente";
             $movimientoDepositoOrigen->comentario = $_POST['comentario'];
             $movimientoDepositoOrigen->descripcion = "Transferencia a paciente No. " . $pacienteDestino->id . " Nombre: " . $pacienteDestino->nombreCompleto . ".";
             $movimientoDepositoOrigen->usuario_id = Yii::app()->user->usuarioId;
             $movimientoDepositoOrigen->fecha = date("Y-m-d H:i:s");
             $movimientoDepositoOrigen->save();
             //Ingreso
             $nuevoIngreso = new Ingresos();
             $nuevoIngreso->paciente_id = $pacienteOrigen->id;
             $nuevoIngreso->n_identificacion = $pacienteOrigen->n_identificacion;
             //$nuevoIngreso->contrato_id = $datosContrato->id;
             $nuevoIngreso->valor = $_POST['valor'];
             $nuevoIngreso->descripcion = "Transferencia a caja de paciente " . $pacienteDestino->nombreCompleto;
             $nuevoIngreso->centro_costo_id = 98;
             $nuevoIngreso->forma_pago = "Transferencia a Paciente";
             $nuevoIngreso->fecha_sola = date("Y-m-d");
             $nuevoIngreso->fecha = date("Y-m-d H:i:s");
             $nuevoIngreso->personal_id = Yii::app()->user->usuarioId;
             $nuevoIngreso->estado = "Activo";
             $nuevoIngreso->vendedor_id = Yii::app()->user->usuarioId;
             $nuevoIngreso->personal_seguimiento = Yii::app()->user->usuarioId;
             $nuevoIngreso->save();
         }
     }
     $this->render('view', array('model' => $pacienteDestino));
 }
示例#2
0
	<div id="historial" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel2" aria-hidden="true">
	  <div class="modal-header">
	    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
	    <h3 id="myModalLabel2">Historial de Ingresos a Contrato </h3>
	   
	    	<table class="table table-striped">
				<tr>
					<th>Valor</th>
					<th>Descripción</th>
					<th>Forma de Pago</th>
					<th>Usuario</th>
					<th>Fecha</th>
				</tr>
			<?php 
    $losPagos = Ingresos::model()->findAll("contrato_id = {$model->contrato_id}");
    ?>
			<?php 
    $elTotal = 0;
    foreach ($losPagos as $los_pagos) {
        ?>
					<tr>
						<td><?php 
        echo '$ ' . number_format($los_pagos->valor, 2);
        ?>
</td>
						<td><?php 
        echo $los_pagos->descripcion;
        ?>
</td>
						<td><?php 
 public function actionCalendario()
 {
     $dataProvider = new CActiveDataProvider('Citas');
     $sumaIngresos = 0;
     if (isset($_POST['SeguimientoComercial'])) {
         $ncita = $_POST['SeguimientoComercial']['cita_id'];
         $lacita = Citas::model()->findByPk($ncita);
         $lacita->estado = $_POST['SeguimientoComercial']['tipo'];
         $lacita->fecha_accion = date("Y-m-d H:i:s");
         $lacita->omitir_seguimiento = $_POST['aplica'];
         $lacita->comentario_cierre = $_POST['SeguimientoComercial']['observaciones'];
         $lacita->usuario_estado_id = Yii::app()->user->usuarioId;
         $lacita->update();
         if ($_POST['aplica'] == "No") {
             $model = new SeguimientoComercial();
             if ($_POST['SeguimientoComercial']['fecha_accion'] != "") {
                 $model->fecha_accion = Yii::app()->dateformatter->format("yyyy-MM-dd", $_POST['SeguimientoComercial']['fecha_accion']);
             } else {
                 $model->fecha_accion = date("Y-m-d");
             }
             $model->tema_id = $_POST['SeguimientoComercial']['tema_id'];
             $model->id_personal = Yii::app()->user->usuarioId;
             $model->responsable_id = $_POST['SeguimientoComercial']['responsable_id'];
             $model->observaciones = $_POST['SeguimientoComercial']['observaciones'];
             $model->cita_id = $_POST['SeguimientoComercial']['cita_id'];
             $model->fecha_registro = date("Y-m-d");
             $model->tipo = "Cita";
             //Fecha de registro
             $model->paciente_id = $lacita->paciente_id;
             $model->n_identificacion = $lacita->paciente->n_identificacion;
             $model->estado = "Abierto";
             $model->save();
         }
         //Actualizar estado de Detalle de Contrato
         if ($lacita->contrato_id != NULL and $lacita->estado == "Completada") {
             //Buscar Detalle
             $detalleContrato = ContratoDetalle::model()->find("contrato_id = {$lacita->contrato_id} and linea_servicio_id = {$lacita->linea_servicio_id} and (estado = 'Programada' or estado = 'Activo')");
             $elSaldoContrato = Contratos::model()->findByPk($lacita->contrato_id);
             //Saldo de Contrato
             $saldoContrato = $elSaldoContrato->saldo;
             //$paraActualizar = ContratoDetalle::model()->findByPk($detalle_contrato->id);
             if ($detalleContrato->cantidad > $detalleContrato->realizadas) {
                 if ($detalleContrato->cantidad > $detalleContrato->realizadas + 1) {
                     $detalleContrato->realizadas = $detalleContrato->realizadas + 1;
                     $detalleContrato->estado = "Activo";
                 } else {
                     $detalleContrato->realizadas = $detalleContrato->realizadas + 1;
                     $detalleContrato->estado = "Completada";
                 }
             }
             $detalleContrato->update();
             //Ingresar a Detalle de tratamientos realizados
             $contratoTratamientos = new ContratosTratamientoRealizados();
             $contratoTratamientos->contrato_id = $lacita->contrato_id;
             $contratoTratamientos->cita_id = $lacita->id;
             $contratoTratamientos->linea_servicio_id = $lacita->linea_servicio_id;
             $contratoTratamientos->sesion = $detalleContrato->realizadas;
             $contratoTratamientos->save();
             //Verificar si es una cuenta por cobrar
             $losIngresos = Ingresos::model()->findAll("contrato_id = {$lacita->contrato_id} and estado = 'Activo'");
             $sumaIngresos = 0;
             if ($losIngresos) {
                 foreach ($losIngresos as $los_ingresos) {
                     $sumaIngresos = $sumaIngresos + $los_ingresos->valor;
                 }
             }
             if (isset($lacita->contrato_id)) {
                 //Actualizar Saldo a favor de contrato
                 $los_contratos = Contratos::model()->findByPk($lacita->contrato_id);
                 $tratamiento_condescuentoTodos = 0;
                 $tratamiendo_sindescuentoTodos = 0;
                 $tratamientosRealizadosTodos = ContratosTratamientoRealizados::model()->findAll("contrato_id = {$los_contratos->id}");
                 foreach ($tratamientosRealizadosTodos as $tratamientos_realizadosTodos) {
                     $preciosTratamiento = ContratoDetalle::model()->find("contrato_id = {$tratamientos_realizadosTodos->contrato_id} and linea_servicio_id = {$tratamientos_realizadosTodos->linea_servicio_id}");
                     $tratamiento_condescuentoTodos = $tratamiento_condescuentoTodos + $preciosTratamiento->vu_desc;
                     $tratamiendo_sindescuentoTodos = $tratamiendo_sindescuentoTodos + $preciosTratamiento->vu;
                 }
                 //Saldo a favor
                 if ($los_contratos->saldo == 0) {
                     if ($los_contratos->estado == "Liquidado") {
                         $saldo_favorTodos = 0;
                     } else {
                         $saldo_favorTodos = $los_contratos->total - $los_contratos->saldo - $tratamiento_condescuentoTodos;
                     }
                 } else {
                     if ($los_contratos->saldo == $los_contratos->total) {
                         if ($los_contratos->descuento == "Si") {
                             $saldo_favorTodos = $tratamiento_condescuentoTodos * -1;
                         } else {
                             $saldo_favorTodos = $tratamiendo_sindescuentoTodos * -1;
                         }
                     } else {
                         if ($los_contratos->descuento == "Si") {
                             $saldo_favorTodos = $los_contratos->total - $los_contratos->saldo - $tratamiento_condescuentoTodos;
                         } else {
                             $saldo_favorTodos = $los_contratos->total - $los_contratos->saldo - $tratamiendo_sindescuentoTodos;
                         }
                     }
                 }
                 $los_contratos->saldo_favor = $saldo_favorTodos;
                 $los_contratos->update();
                 //Yii::app()->user->setFlash('warning',"Saldo a Favor Actualizado.");
                 //Fin de actualizar saldo a favor
             }
             //Suma de tratamientos realizados
             $saldo_tratamientos = 0;
             $tratamientosRealizados = ContratoDetalle::model()->findAll("contrato_id = {$lacita->contrato_id}");
             foreach ($tratamientosRealizados as $tratamientos_realizados) {
                 $saldo_tratamientos = $saldo_tratamientos + $tratamientos_realizados->vu * $tratamientos_realizados->realizadas;
             }
             if ($sumaIngresos < $saldo_tratamientos) {
                 //Buscar Paciente en Cuentas XC
                 $pacienteXC = CuentasXc::model()->find("paciente_id = {$lacita->paciente_id}");
                 if ($pacienteXC) {
                     $cuentasXC_detalle = CuentasXcDetalle::model()->find("contrato_id = {$lacita->contrato_id}");
                     if ($cuentasXC_detalle) {
                         if ($saldoContrato == 0) {
                             $cuentasXC_detalle->saldo = 0;
                         } else {
                             $cuentasXC_detalle->saldo = $saldo_tratamientos - $sumaIngresos;
                         }
                         $cuentasXC_detalle->update();
                         $sumadetalles = CuentasXcDetalle::model()->findAll("paciente_id = {$lacita->paciente_id}");
                         $total_detalles = 0;
                         foreach ($sumadetalles as $suma_detalles) {
                             $total_detalles = $total_detalles + $suma_detalles->saldo;
                         }
                         $pacienteXC->saldo = $total_detalles;
                         $pacienteXC->update();
                     } else {
                         //Detalle de CxC
                         $cuentasXC_detalle = new CuentasXcDetalle();
                         $cuentasXC_detalle->cuentas_xc_id = $pacienteXC->id;
                         $cuentasXC_detalle->paciente_id = $lacita->paciente_id;
                         $cuentasXC_detalle->n_identificacion = $lacita->n_identificacion;
                         $cuentasXC_detalle->cita_id = $lacita->id;
                         $cuentasXC_detalle->contrato_id = $lacita->contrato_id;
                         //$cuentasXC_detalle->saldo = $detalleContrato->vu;
                         if ($saldoContrato == 0) {
                             $cuentasXC_detalle->saldo = 0;
                         } else {
                             $cuentasXC_detalle->saldo = $saldo_tratamientos - $sumaIngresos;
                         }
                         $cuentasXC_detalle->save();
                         $sumadetalles = CuentasXcDetalle::model()->findAll("paciente_id = {$lacita->paciente_id}");
                         $total_detalles = 0;
                         foreach ($sumadetalles as $suma_detalles) {
                             $total_detalles = $total_detalles + $suma_detalles->saldo;
                         }
                         $pacienteXC->saldo = $total_detalles;
                         $pacienteXC->update();
                     }
                     //Actualizamos saldo de cuenta
                     // $sumadecuentas = 0;
                     // $lascuentasxc = CuentasXcDetalle::model()->findAll("paciente_id = $lacita->paciente_id");
                     // foreach ($lascuentasxc as $lascuentas_xc) {
                     // 	$sumadecuentas = $sumadecuentas + $lascuentas_xc->saldo;
                     // }
                     // if ($saldoContrato == 0)
                     // {
                     // 	$pacienteXC->saldo = 0;
                     // }
                     // else
                     // {
                     // 	$pacienteXC->saldo = $sumadecuentas;
                     // }
                     // $pacienteXC->update();
                 } else {
                     $cuentasXC = new CuentasXc();
                     $cuentasXC->paciente_id = $lacita->paciente_id;
                     $cuentasXC->n_identificacion = $lacita->n_identificacion;
                     if ($saldoContrato == 0) {
                         $cuentasXC->saldo = 0;
                     } else {
                         $cuentasXC->saldo = $saldo_tratamientos - $sumaIngresos;
                     }
                     $cuentasXC->save();
                     //Detalle de CxC
                     $cuentasXC_detalle = new CuentasXcDetalle();
                     $cuentasXC_detalle->cuentas_xc_id = $cuentasXC->id;
                     $cuentasXC_detalle->paciente_id = $lacita->paciente_id;
                     $cuentasXC_detalle->n_identificacion = $lacita->n_identificacion;
                     $cuentasXC_detalle->cita_id = $lacita->id;
                     $cuentasXC_detalle->contrato_id = $lacita->contrato_id;
                     if ($saldoContrato == 0) {
                         $cuentasXC_detalle->saldo = 0;
                     } else {
                         $cuentasXC_detalle->saldo = $saldo_tratamientos - $sumaIngresos;
                     }
                     $cuentasXC_detalle->save();
                 }
             }
             //Ver que sea cosmetologa
             $this->actionPagoCosmetologa($lacita->id, $sumaIngresos);
         } else {
             if ($lacita->estado == "Completada") {
                 //Tratamientos sin contrato
                 $pacienteXC = CuentasXc::model()->find("paciente_id = {$lacita->paciente_id}");
                 if ($pacienteXC) {
                     $cuentasXC_detalle = new CuentasXcDetalle();
                     $cuentasXC_detalle->cuentas_xc_id = $pacienteXC->id;
                     $cuentasXC_detalle->paciente_id = $lacita->paciente_id;
                     $cuentasXC_detalle->n_identificacion = $lacita->n_identificacion;
                     $cuentasXC_detalle->cita_id = $lacita->id;
                     $cuentasXC_detalle->linea_servicio_id = $lacita->linea_servicio_id;
                     $cuentasXC_detalle->saldo = $lacita->lineaServicio->precio;
                     $cuentasXC_detalle->save();
                     $sumadetalles = CuentasXcDetalle::model()->findAll("paciente_id = {$lacita->paciente_id}");
                     $total_detalles = 0;
                     foreach ($sumadetalles as $suma_detalles) {
                         $total_detalles = $total_detalles + $suma_detalles->saldo;
                     }
                     $pacienteXC->saldo = $total_detalles;
                     $pacienteXC->update();
                 } else {
                     $cuentasXC = new CuentasXc();
                     $cuentasXC->paciente_id = $lacita->paciente_id;
                     $cuentasXC->n_identificacion = $lacita->n_identificacion;
                     $cuentasXC->saldo = $lacita->lineaServicio->precio;
                     $cuentasXC->save();
                     $cuentasXC_detalle = new CuentasXcDetalle();
                     $cuentasXC_detalle->cuentas_xc_id = $cuentasXC->id;
                     $cuentasXC_detalle->paciente_id = $lacita->paciente_id;
                     $cuentasXC_detalle->n_identificacion = $lacita->n_identificacion;
                     $cuentasXC_detalle->cita_id = $lacita->id;
                     $cuentasXC_detalle->linea_servicio_id = $lacita->linea_servicio_id;
                     $cuentasXC_detalle->saldo = $lacita->lineaServicio->precio;
                     $cuentasXC_detalle->save();
                 }
                 //Buscar Citas en Pago a Cosmetologas
                 //$hayCitasenPago = PagoCosmetologas::model()->findAll("cita_id = $lacita->id");
                 //if (!$hayCitasenPago) {
                 //Pago a Cosmetologa
                 $pagoCosmetologa = new PagoCosmetologas();
                 $pagoCosmetologa->n_identificacion = $lacita->paciente->n_identificacion;
                 $pagoCosmetologa->paciente_id = $lacita->paciente_id;
                 $pagoCosmetologa->linea_servicio_id = $lacita->linea_servicio_id;
                 $pagoCosmetologa->aprobo_id = Yii::app()->user->usuarioId;
                 $pagoCosmetologa->vendedor_id = $lacita->personal_id;
                 $pagoCosmetologa->cita_id = $lacita->id;
                 $pagoCosmetologa->valor_tratamiento = $lacita->lineaServicio->precio;
                 $pagoCosmetologa->misma_persona = "No";
                 $pagoCosmetologa->valor_comision = 0;
                 $pagoCosmetologa->porcentaje = 0;
                 $pagoCosmetologa->estado = "Activo";
                 $pagoCosmetologa->descarga = "No";
                 $pagoCosmetologa->fecha = date("Y-m-d H:i:s");
                 $pagoCosmetologa->fecha_sola = date("Y-m-d");
                 $pagoCosmetologa->sesion = "1/1";
                 $pagoCosmetologa->personal_id = $lacita->personal_id;
                 $pagoCosmetologa->saldo = $lacita->lineaServicio->precio * -1;
                 $pagoCosmetologa->total_pago = $lacita->lineaServicio->precio_pago;
                 $pagoCosmetologa->save();
                 //}
             } else {
                 if (($lacita->estado == "Fallida" or $lacita->estado == "Cancelada") and $lacita->contrato_id != NULL) {
                     //Buscar Detalle
                     $detalleContrato = ContratoDetalle::model()->find("contrato_id = {$lacita->contrato_id} and linea_servicio_id = {$lacita->linea_servicio_id} and (estado = 'Programada' or estado = 'Activo')");
                     //Saldo de Contrato
                     $detalleContrato->estado = "Activo";
                     $detalleContrato->update();
                 }
             }
         }
         //Mensajes
         if ($lacita->estado == "Completada" and $lacita->omitir_seguimiento == "Si") {
             Yii::app()->user->setFlash('success', "La cita se ha completado.");
         } else {
             if ($lacita->estado == "Completada") {
                 Yii::app()->user->setFlash('success', "La cita se ha completado y el seguimiento se ha guardado.");
             }
         }
         if ($lacita->estado == "Cancelada") {
             Yii::app()->user->setFlash('error', "La cita se ha cancelado y el seguimiento se ha guardado.");
         }
         if ($lacita->estado == "Vencida") {
             Yii::app()->user->setFlash('warning', "La cita se ha Vencido y el seguimiento se ha guardado.");
         }
         //Redireccionar
         if (isset($_GET['irCita'])) {
             $this->redirect(array('view', 'id' => $lacita->id));
         } else {
             $this->render('calendario', array('dataProvider' => $dataProvider));
         }
     } else {
         //Redireccionar
         if (isset($_GET['irCita'])) {
             $this->redirect(array('view', 'id' => $lacita->id));
         } else {
             $this->render('calendario', array('dataProvider' => $dataProvider));
         }
     }
 }
示例#4
0
<?php

/* @var $this IngresosController */
/* @var $model Ingresos */
$elPaciente = $_GET['idPaciente'];
$textoMenu = "Ver Ficha de Paciente";
$laRuta = "index.php?r=paciente/view&id={$elPaciente}";
$this->menu = array(array('label' => $textoMenu, 'url' => $laRuta));
?>

<?php 
//Calcular proximo numero de compra
$proxima = new Ingresos();
$criteria = new CDbCriteria();
$criteria->select = 'max(id) AS id';
$row = $proxima->model()->find($criteria);
$elid = $row['id'] + 1;
?>

<h1>Crear Ingreso #<?php 
echo $elid;
?>
</h1>

<?php 
$this->renderPartial('_form', array('model' => $model));
<?php

//Detalles
$numIngresos = $_GET['id'];
$elIngresos = Ingresos::model()->findByPk($numIngresos);
?>

			<style type="text/css">
			p{
				margin: 2px 0px;
			}
				
			</style>

<body>
	<p>SMADIA CLINIC S.A.S</p>
	<br>
	<p>NIT: 900-423-704-7</p>
	<p>CARRETERA 47 N°80-45, LOCAL 2</p>
	<p>TEL: 378 41 40 - CEL: 301 278 59 88</p>
	<p>RES. 20000160110 del 2013/10/23 del 1 al 2000</p>
	<br>
	<p>FACTURA N°: <?php 
echo $elIngresos->id;
?>
</p>
	<p>FECHA: <?php 
echo $elIngresos->fecha;
?>
</p>
	<p>HORA: <?php 
示例#6
0
 function reprogramar()
 {
     $Actor = new Actor();
     $letras = new Letras();
     $tipoGasto = $this->AutoLoadModel('tipogasto');
     $data['cobrador'] = $Actor->listadoCobradores();
     $Ingresos = new Ingresos();
     $data['letras'] = $letras->listado();
     $data['ingresos'] = $Ingresos->listarxhoy();
     $data['tipoGasto'] = $tipoGasto->listaxCriterio(3);
     $this->view->show('/ingresos/reprogramar.phtml', $data);
 }
示例#7
0
echo number_format($model->saldo, 2);
?>
</h4>
		</div>
		<div class="row">
			<div class="span1"></div>
			<div class="span11">
				<table class="table table-striped">
					<tr>
						<th><small>Valor</small></th>
						<th><small>Forma de Pago</small></th>
						<th><small>Fecha</small></th>
						<th><small>Responsable</small></th>
					</tr>
				<?php 
$detalleIngresos = Ingresos::model()->findAll("contrato_id = {$model->id}");
foreach ($detalleIngresos as $detalle_ingreso) {
    ?>
					<tr>
						<td><?php 
    echo '$ ' . number_format($detalle_ingreso->valor, 2);
    ?>
</td>
						<td><?php 
    echo $detalle_ingreso->forma_pago;
    ?>
</td>
						<td><?php 
    echo Yii::app()->dateformatter->format("dd-MM-yyyy H:mm:ss", $detalle_ingreso->fecha);
    ?>
</td>
 public function actionEnvioCorreoVenta($idIngreso)
 {
     $model = Ingresos::model()->findByPk($idIngreso);
     $message = new YiiMailMessage();
     $message->subject = 'Detalle de Venta: N° ' . $model->id;
     /*$message->view ='prueba';//nombre de la vista q conformara el mail*/
     $message->setBody('<b>Venta número:</b>' . $model->id . '<br>
     				   <b>Fecha de Venta:</b>' . Yii::app()->dateformatter->format("dd-MM-yyyy H:m:s", $model->fecha) . '<br><br>
     				   <b>Doc. Paciente:</b><br>' . $model->paciente->n_identificacion . '<br>
     				   <b>Paciente:</b><br>' . $model->paciente->nombreCompleto . '<br>
     				   <b>Forma de Pago:</b><br>' . $model->forma_pago . '<br>
     				   <b>Valor:</b><br>' . $model->valor . '<br>
     				   <b>Centro de Costos:</b><br>' . $model->centroCosto->nombre . '<br>
     				   <b>Comentario:</b><br>' . $model->descripcion . '<br><br>
     				   <b>Usuario que Creo:</b><br>' . $model->personal->nombreCompleto . '<br><br>', 'text/html');
     //codificar el html de la vista
     $message->from = '*****@*****.**';
     // alias del q envia
     //recorrer a los miembros del equipo
     $message->setTo('*****@*****.**');
     // a quien se le envia
     Yii::app()->mail->send($message);
 }
<?php

//Datos de Contrato e Ingreso
$elContrato = Contratos::model()->findByPk($_GET['idContrato']);
if (isset($_GET['idIngreso'])) {
    $elIngreso = Ingresos::model()->findByPk($_GET['idIngreso']);
}
if (isset($_GET['idNota'])) {
    $elIngreso = NotaCredito::model()->findByPk($_GET['idNota']);
}
$this->menu = array(array('label' => 'Buscar Contratos', 'url' => array('admin')));
?>
<h1>Vincular Ingreso a Contrato</h1>
<div class="row">
	<div class="span12"></div>
</div>

<h5>Se dispone a vincular el ingreso de <span class="text-info">$ <?php 
echo number_format($elIngreso->valor, 2);
?>
</span> a contrato con un saldo de <span class="text-error">$ <?php 
echo number_format($elContrato->saldo, 2);
?>
</span>.</h5>
<h3>Nuevo saldo despues de la vinculación: <span class="text-warning">$ <?php 
echo number_format($elContrato->saldo - $elIngreso->valor, 2);
?>
</span></h3>

<div class="row">
	<div class="span2"></div>
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy()
 {
     $parametros = Input::get();
     $reglas = array('id' => 'required|integer');
     $validator = Validator::make($parametros, $reglas);
     if (!$validator->fails()) {
         Ingresos::destroy($parametros['id']);
         $res['data'] = Ingresos::All();
         $respuesta = json_encode(array('error' => false, 'mensaje' => '', 'respuesta' => $res));
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay parametros o estan mal.', 'respuesta' => null));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }
 public function actionEnvioCorreoIngreso($idIngreso)
 {
     $model = Ingresos::model()->findByPk($idIngreso);
     Yii::import('ext.yii-mail.YiiMailMessage');
     $message = new YiiMailMessage();
     //$message = Yii::app()->Smtpmail;
     $message->subject = 'Detalle de Ingreso';
     /*$message->view ='prueba';//nombre de la vista q conformara el mail*/
     $message->setBody('<b>Ingreso número:</b>' . $model->id . '<br>
     				   <b>Fecha Ingreso:</b>' . Yii::app()->dateformatter->format("dd-MM-yyyy H:m:s", $model->fecha) . '<br><br>
     				   <b>Doc. Paciente:</b><br>' . $model->paciente->n_identificacion . '<br>
     				   <b>Paciente:</b><br>' . $model->paciente->nombreCompleto . '<br>
     				   <b>Forma de Pago:</b><br>' . $model->forma_pago . '<br>
     				   <b>Valor: $ </b><br>' . $model->valor . '<br>
     				   <b>Centro de Costos:</b><br>' . $model->centroCosto->nombre . '<br>
     				   <b>Comentario:</b><br>' . $model->descripcion . '<br><br>
     				   <b>Vendedor:</b><br>' . $model->vendedor->nombreCompleto . '<br><br>
     				   <b>Usuario que Creo:</b><br>' . $model->personal->nombreCompleto . '<br><br>', 'text/html');
     //codificar el html de la vista
     $message->from = '*****@*****.**';
     // alias del q envia
     //recorrer a los miembros del equipo
     $message->setTo(array('*****@*****.**'));
     // a quien se le envia
     //$message->setTo('gerencia@smadiaclinic.com hramirez@myrs.com.co'); // a quien se le envia
     Yii::app()->mail->send($message);
     // Yii::import('ext.yii-mail.YiiMailMessage');
     //  $message = new YiiMailMessage;
     //  $message->setBody('Message content here with HTML', 'text');
     //  $message->subject = 'My Subject';
     //  $message->addTo('*****@*****.**');
     //  $message->from = Yii::app()->params['adminEmail'];
     //  Yii::app()->mail->send($message);
 }
 public function leer_archivo_banco()
 {
     $commond = new Common_functions();
     $file = Input::file('referencia_archivo');
     if (isset($file)) {
         $data_file = Archivo_referencias::leer($file);
         $data_file['infoFile']['nombre_archivo'] = Input::file('referencia_archivo')->getClientOriginalName();
         $infoarchivo = array('no_transacciones' => $data_file['infoFile']['TRANSACCIONES'], 'cobro_inmediato' => $data_file['infoFile']['COBROINMEDIATO'], 'comisiones_creadas' => $data_file['infoFile']['COMISIONESCOBRADAS'], 'remesas' => $data_file['infoFile']['REMESAS'], 'comisiones_remesas' => $data_file['infoFile']['COMISIONREMESAS'], 'abonado' => $data_file['infoFile']['ABONADO'], 'monto' => $data_file['infoFile']['ABONADO'], 'nombre_archivo' => $data_file['infoFile']['nombre_archivo'], 'fecha' => date('Y-m-d'));
         $personas = array();
         $i = 0;
         foreach ($data_file['referencias'] as $key => $value) {
             $adeudo = Referencia::with('adeudos')->where('referencia', '=', $value['referencia'])->first();
             if ($adeudo && !empty($adeudo)) {
                 $adeudo_up = Adeudos::obtener_adeudos_alumno(array('id' => $adeudo['adeudos']['id'], 'fecha_pago' => $value['fecha_de_pago'], 'id_persona' => $adeudo['id_persona'], 'periodo' => $adeudo['periodo']));
                 $referencia_info = Referencia::where('referencia', '=', $value['referencia'])->first();
                 if ($value['importe'] >= $adeudo_up[0]['importe']) {
                     if ($adeudo_up[0]['beca'] == "N/A") {
                         $adeudo_up[0]['beca'] = 0;
                     }
                     if ($value['importe'] >= intval($adeudo_up[0]['importe']) + 100) {
                         Devoluciones::create(array('periodo' => $adeudo['adeudo']['periodo'], 'fecha_devolucion' => date('Y-m-d'), 'importe' => $adeudo_up[0]['importe'] - $value['importe'], 'id_persona' => $id_persona, 'status_devolucion' => 0));
                     }
                     Adeudos::where('id', '=', $adeudo['adeudos']['id'])->update(array('beca_pago' => $adeudo_up[0]['beca'], 'recargo_pago' => $adeudo_up[0]['recargo_total'], 'importe_pago' => $adeudo_up[0]['importe'], 'status_adeudo' => 1, 'fecha_pago' => $value['fecha_de_pago']));
                 } else {
                     Adeudos::where('id', '=', $adeudo['adeudos']['id'])->update(array('beca_pago' => $adeudo_up[0]['beca'], 'recargo_pago' => $adeudo_up[0]['recargo_total'], 'importe_pago' => $adeudo_up[0]['importe'], 'importe' => floatval(floatval($value['importe'] - $adeudo_up[0]['importe'])), 'fecha_pago' => $value['fecha_de_pago']));
                 }
                 $referencia_pagada = array('id_referencia' => $referencia_info['id'], 'fecha_de_pago' => $value['fecha_de_pago'], 'importe' => $value['importe'], 'estado' => $value['estado']);
                 Referencia::create_referencia_pagada($referencia_pagada);
                 Ingresos::create(array('tipo_pago' => 1, 'importe' => $value['importe'], 'fecha_pago' => $value['fecha_de_pago']));
                 $personas['existe_referencia'][$i]['persona'] = $commond->obtener_infoAlumno_idPersona(array('id_persona' => $adeudo['adeudos']['id_persona']));
                 $personas['existe_referencia'][$i]['referencia'] = $value;
                 $i++;
             } else {
                 $personas['no_existe_referencia'][$i]['referencia'] = $value;
                 $i++;
             }
         }
         $res['data'] = $personas;
         Respuesta_bancaria::create($infoarchivo);
         $respuesta = json_encode(array('error' => false, 'mensaje' => '', 'respuesta' => $res));
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay archivo o tiene errores.', 'respuesta' => ''));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }
 public function update_status_pagado()
 {
     $parametros = Input::get();
     $reglas = array('id' => 'required', 'status_adeudo' => 'required|integer');
     $validator = Validator::make($parametros, $reglas);
     if (!$validator->fails()) {
         foreach ($parametros as $key => $value) {
             if (!array_key_exists($key, $reglas)) {
                 unset($parametros[$key]);
             }
         }
         Adeudos::where('id', '=', $parametros['id'])->update($parametros);
         $res['data'] = Adeudos::find($parametros['id']);
         if ($parametros['status_adeudo'] == 1) {
             Ingresos::create(array('tipo_pago' => 2, 'importe' => $res['data']['importe'], 'fecha_pago' => date('Y-m-d')));
         }
         $respuesta = json_encode(array('error' => false, 'mensaje' => '', 'respuesta' => $res));
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay parametros o estan mal.', 'respuesta' => null));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }
 public function actionVincularNota()
 {
     if (isset($_GET['confirmado'])) {
         //Vincular Ingreso a Contrato
         $elContrato = Contratos::model()->findByPk($_GET['idContrato']);
         $elIngreso = NotaCredito::model()->findByPk($_GET['idNota']);
         $nuevoIngreso = new Ingresos();
         $nuevoIngreso->paciente_id = $elContrato->paciente_id;
         $nuevoIngreso->n_identificacion = $elContrato->n_identificacion;
         $nuevoIngreso->contrato_id = $elContrato->id;
         $nuevoIngreso->valor = $elIngreso->valor;
         $nuevoIngreso->descripcion = "Nota de Crédito N° " . $elIngreso->id;
         $nuevoIngreso->centro_costo_id = 60;
         $nuevoIngreso->forma_pago = "Nota de Crédito";
         $nuevoIngreso->fecha_sola = date("Y-m-d");
         $nuevoIngreso->fecha = date("Y-m-d H:i:s");
         $nuevoIngreso->personal_id = Yii::app()->user->usuarioId;
         $nuevoIngreso->estado = "Activo";
         $nuevoIngreso->vendedor_id = Yii::app()->user->usuarioId;
         if ($nuevoIngreso->save()) {
             //Descontar de Caja Personal
             $elContrato->saldo = $elContrato->saldo - $nuevoIngreso->valor;
             $elContrato->update();
             $elIngreso->contrato_asociado_id = $elContrato->id;
             $elIngreso->update();
             Yii::app()->user->setFlash('success', "Se ha vinculado.");
             $this->redirect(array('view', 'id' => $_GET['idContrato']));
         } else {
             Yii::app()->user->setFlash('error', "No se ha vinculado.");
             $this->redirect(array('view', 'id' => $_GET['idContrato']));
         }
     } else {
         $this->render('vincular', array());
     }
 }
 function registraNotaCredito()
 {
     $data = $_REQUEST['NotaCredito'];
     $idcliente = $_REQUEST['idcliente'];
     $data['nombredoc'] = 5;
     //el concepto 2 es cuando es por precio y 1 es cuando es por devolucion
     $documento = new Documento();
     $ingresos = new Ingresos();
     $exito = $documento->grabaDocumento($data);
     if ($exito) {
         //creamos in ingreso
         $dataIngreso['idordenventa'] = $data['idordenventa'];
         $dataIngreso['idcliente'] = $idcliente;
         $dataIngreso['montoingresado'] = $data['montofacturado'];
         $dataIngreso['saldo'] = $data['montofacturado'];
         $dataIngreso['tipocobro'] = 10;
         $dataIngreso['idcobrador'] = 122;
         $dataIngreso['esvalidado'] = 1;
         $dataIngreso['nrodoc'] = $data['numdoc'];
         $dataIngreso['fcobro'] = date("Y-m-d");
         $graba = $ingresos->graba($dataIngreso);
         if ($graba) {
             $ruta['ruta'] = "/facturacion/notacredito";
             $this->view->show("ruteador.phtml", $ruta);
         }
     }
 }