Proyecto Final

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 20

NOMBRE DE ASIGNATURA

SEMANA X

Nombre del estudiante:Fabian Gonzalez


Fecha de entrega:21/03/2022
Carrera

DESARROLLO PPROYECTO FINAL


Usted ha sido contratado por el departamento de TI de una empresa desarrolladora de software,

para que se dedique a la creación de un sistema de información bajo plataforma web para la

automatización de la cobranza en empresas administradoras de edificios. El sistema debe

manejar como aspectos generales lo siguiente:

1. Crear una aplicación response en HTML

2. Utilizar Bootstrap para la animación de componentes HTML que contenga el sistema.

3. Para la Validación de datos ingresados por usuario debe implementar JavaScript.

4. Para interactuar con base de datos Mysql con PHP.

5. Administrar y modelar la Base de datos Según Requerimientos presentados.

6. Construir reportes PDF para la muestra de la información.

El sistema bajo plataforma web debe manejar los siguientes:

• Registro de inquilinos o propietarios.

• Registro de pagos.

• Pagos de depósitos.

• Pagos de mensualidades.

• Pagos de multas.

• Pagos de gastos comunes.

• Consulta de inquilinos o propietarios.

• Consultas de deudas generales de inquilinos o propietarios.

• Consultas de deudas mensuales de inquilinos o propietarios.


• Consultas de deudas anuales de inquilinos o propietarios.

• Consultas de pagos por inquilino o propietario.

• Consulta de pagos generales de inquilinos o propietarios.

• Consulta de pagos mensuales de inquilinos o propietarios.

• Consulta de pagos anuales de inquilinos o propietarios.

Debe mostrar pantallas del sistema, codificación y adjuntar los archivos para ejecutar el sistema.

<DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-
scale=1">
<title>Registro Copropietario</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>
<body>
<script type="text/javascript" src="validacionez.js"></script>
<header><h1>Administradoras De Edificios</h1></header>
<div class="login">
<h3>Inicia tu sección</h3>
<button onclick = "location='../login/login.php'">Entrar</button
>
</div>

<form method="POST" action="valida.php" onsubmit="return validaCampo s()">


<h2>Registro Nuevo Propietario</h2>

<label for="rut">Rut:</label>
<input type="text" id="rut" name="rut" placeholder="Ejemplo: 123 45678-9"
onchange="return validaRut()">
<label for="name">Nombre:</label>
<input type="text" id="name" name="name" placeholder="Ingrese no nbre
<label for="lastname">Apellido:</label>
<input type="text" id="lastname" name="lastname" placeholder="In grese
apellido">

<label for="email">Email:</label>
<input type="e-mail" id="email" name="email" placeholde r="Ejemplo:
alguien@algo.com" onchange="return valEmail()">

<label for="user">Nombre Usuario:</label>


<input type="text" id="user" name="user" placeholder="Ejemplo 'c anero01' (sólo
utilice letras y numeros)">

<label for="pass">Contraseña:</label>
<input type="password" id="pass" name="pass" placeholder="Ejempl o 'hola123'
(maximo 10 caracteres)">

<label for="phone">Telefono Fijo:</label>


<input type="number" id="phone" name="phone" placeholder="Ejempl o:
2759780" onchange="return valTelefono()">

<label for="cellphone">Celular:</label>
<input type="number" id="cellphone" name="cellphone" placeholder
="Ejemplo: 987124560" onchange="return valCelular()">

<label for="npropiedad">N° Propiedad:</label>


<input type="number" id="npropiedad" name="npropiedad" placehold er="N° Dpto o
Parcela">

<input type="submit" value="Guardar"></input>


</form>

</body>
</html>

<?php

class Controlador {

public $rut;
public $name;

public $lastname;

public $email;
public $user;
public $pass;
public $phone;
public $cellphone;
public $npropiedad;

function conecta(){
$hostname = "localhost";
$database = "condominios";
$username = "root";
$password = "";

try {
$conexion = new PDO('mysql:host='.$hostname.';dbname='.
$database, $username, $password);
return $conexion;
}
catch (PDOException $e) {
print "Error: " . $e->getMessage() . ""; exit();
}

public function Insert($rut, $name, $lastname, $email, $user, $pass,


$phone, $cellphone, $npropiedad){
$this->rut = $rut;
$this->name = $name;
$this->lastname = $lastname;
$this->email = $email;
$this->user = $user;
$this->pass = $pass;
$this->phone = $phone;
$this->cellphone = $cellphone;
$this->npropiedad = $npropiedad;

//self llama a la misma clase y hace uso de un metodo


$conexion = self::conecta();
$consulta = "INSERT INTO tbl_propietario VALUES (:rut, :name, :l
astname, :email, :user, :pass, :phone, :cellphone, :npropiedad)";
$resultado = $conexion->prepare($consulta);

$resultado->execute(array(':rut'=>$rut, ':name'=>$name, ':lastna

me'=>$lastname, ':email'=>$email, ':user'=>$user, ':pass'=>$pass, ':phon e'=>$phone, ':cellphone'=>$cellphone,


':npropiedad'=>$npropiedad));
if($resultado){ return true;

}else{
return false;
}
}
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-
scale=1">
<title>Login</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>
<body>
<header><h1>Administradoras De Edificios</h1></header>
<?php
include("controlador.php");
$rut = $_POST['rut'];
$name = $_POST['name'];
$lastname = $_POST['lastname'];
$email = $_POST['email'];
$user = $_POST['user'];
$pass = $_POST['pass'];
$phone = $_POST['phone'];
$cellphone = $_POST['cellphone'];
$npropiedad = $_POST['npropiedad'];
$obj = new Controlador();

$final = $obj->Insert($rut, $name, $lastname, $email, $user, $pass, $pho ne, $cellphone, $npropiedad);

if ($final == true) {

print '<h2>insertado con exito</h2>';

print '<META HTTP-EQUIV=Refresh CONTENT="2; URL=../registroCopropiet ario/index.php">';

}else{

print '<h2>falla al insertar</h2>';

?>

</body>
</html>

//validador de RUT chileno mediante su digito verificador function validaRut(){

var rut = document.getElementById("rut").value;

var rut2 = rut.split("-"); p1 = rut2[0];

p2 = rut2[1];

var c1 = p1.length; c1 =
parseInt(c1)-1;

var parte = p1.split(""); var serie =


2;

var suma = 0;
for(var i=c1; i>=0;i--){

suma = suma + (parte[i]*serie); serie++;


if(serie == 8){

serie = 2;

}
}

var resto = suma%11; var dv = 11-


resto; if(dv >= 1 && dv <= 9){
}else if(dv == 10){ dv = "k";
}else{
dv = 0;
}

if(dv == p2){
}else{
alert("Rut invalido"); document.getElementById("rut").value = "";
}
}

function valEmail(){
var email = document.getElementById("email").value;
if (!(/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a- z]{2,3})$/.test(email))) {
alert("No cumple con el formato, por favor revisar"); document.getElementById("email").value = "";
}
}

function valTelefono(){
var phone = document.getElementById("phone").value; if (!(/^[2-9][0-9]
{6}$/.test(phone))) {
alert("No cumple con el formato, por favor revisar"); document.getElementById("phone").value = "";
}
}

function valCelular(){
var cellphone = document.getElementById("cellphone").value; if (!(/^[9][0-9]
{8}$/.test(cellphone))) {
alert("No cumple con el formato, por favor revisar"); document.getElementById("cellphone").value = "";
}
}

function validaCampos (){


var c1 = document.getElementById("rut").value;

var c2 = document.getElementById("name").value;
var c3 = document.getElementById("lastname").value;
var c4 = document.getElementById("email").value;
var c5 = document.getElementById("phone").value;
var c6 = document.getElementById("cellphone").value;
var c7 = document.getElementById("npropiedad").value;
var c8 = document.getElementById("user").value;
var c9 = document.getElementById("pass").value;

if (c1.length == 0 || c1 == null || c1 == "") { alert("debe ingresar un


rut");
return false;
}else if(c2.length == 0 || c2 == null || c2 == ""){ alert("debe ingresar
un nombre");
return false;
}else if (c3.length == 0 || c3 == null || c3 == ""){ alert("debe ingresar
un apellido");
return false;
}else if (c4.length == 0 || c4 == null || c4 == ""){ alert("debe ingresar
un correo");
return false;
}else if (c5.length == 0 || c5 == null || c5 == ""){ alert("debe ingresar
un fono");
return false;
}else if (c6.length == 0 || c6 == null || c6 == ""){ alert("debe ingresar
un celular");
return false;
}else if (c7.length == 0 || c7 == null || c7 == ""){ alert("debe ingresar
un numero de propiedad"); return false;
}else if (c8.length == 0 || c8 == null || c8 == ""){ alert("debe ingresar
un nombre de usuario"); return false;
}else if (c9.length == 0 || c9 == null || c9 == ""){ alert("debe ingresar
una contraseña");
return false;
}
}
<!DOCTYPE HTML>

<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Bienvenido</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>

<body>
<header>
<h1>Administradoras De Edificios</h1>
</header>

<?php session_start();
if (isset($_SESSION['user'])) { print '<section>
<div class="opciones">
<a href="../registroMedidor/registrom.php">Registro de pagos

</div>
</a>
<div class="opciones">
<a href="../cobros/cobrosRut.php">Pago De multas</a>
</div>
<div class="opciones">
<a href="../recaudacion/recaudacion.php">Pago De Gastos Comunes</a>
</div>

<div class="opciones">
<a href="../consulta/consulta.php">Consulta de inquilinos o propietarios</a>
</div>

<div class="opciones">
<a href="../consulta/consulta.php">Consultas de deudas gener ales de inquilinos o
propietarios</a>
</div>

<div class="opciones">

<a href="../logout/logout.php">Logout</a>
</div>

</section>';

} else {

print "<label>Error, debe validarse como usuario</label>"; print '<img src="../images/error.png">';

print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=../login/login.p


hp">';

?>

</body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-
scale=1">
<title>Login</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>
<body>
<header><h1>Administradoras De Edificios</h1></header>

<form method="POST" action="valida.php">


<h2>Iniciar Seccion</h2>
<input type="text" id="user" name="user" placeholder="Ingrese no mbre
usuario"></input required>
<input type="password" id="pass" name="pass" placeholder="Ingres e
contraseña"></input required>
<input type="submit" value="Entrar"></input>
</form>
</body>
</html>
<?php
class Controlador { public
$user; public $pass;
public $rut;

function conecta(){
$hostname = "localhost";
$database = "condominios";
$username = "root";
$password = "";

try {
$conexion = new PDO('mysql:host='.$hostname.';dbname='.
$database, $username, $password);
return $conexion;
}
catch (PDOException $e) {
print "Error: " . $e->getMessage() . "";
print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=login.php">
';
exit();
}

}
public function Busqueda($user, $pass){
$this->user = $user;
$this->pass = $pass;

//self llama a la misma clase y hace uso de un metodo


$conexion = self::conecta();

$consulta = "SELECT count(*) FROM tbl_propietario WHERE user = : user AND pass = :pass";

$resultado = $conexion->prepare($consulta);
$resultado->execute(array(":user"=>$user, ":pass"=>$pass));

if(!$resultado){
"Error en la consulta";
print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=login.php">
';
}else{
$registro = $resultado -> fetchColumn();
return $registro;

public function Rut($user, $pass){

$this->user = $user;

$this->pass = $pass;

$consulta = "SELECT rut FROM tbl_propietario

WHERE user = :user AND pass = :pass";

$conexion = self::conecta();

$resultado = $conexion->prepare($consulta);

$resultado->execute(array(":user"=>$user, ":pass"=>$pass)); if (!$resultado) {

print "Error en la consulta";


print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=login.php">
}else{

$registro = $resultado -> fetchColumn(); return $registro;

}
}
}
?>
<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-scale=1">

<title>Login</title>

<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">

<link rel="stylesheet" href="style.css">

</head>

<body>

<header><h1>Administradoras De Edificios</h1></header>

<?php include("controlador.php");

$vuser = $_POST['user'];

$vpass = $_POST['pass'];

$objBusqueda = new Controlador();

$resp = $objBusqueda->Busqueda($vuser, $vpass);

$rut = $objBusqueda->Rut($vuser, $vpass);

if($resp == 1){

print '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../panel/panel.php">';

session_start();

$_SESSION['user'] = $vuser;

$_SESSION['rut'] = $rut;

}else{

print "<label>Nombre de usuario o contraseña incorrecta, vuelva a intentar</label>";

print '<img src="../images/error.png">';

print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=login.php">';

?>

</body>

</html>
<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-scale=1">

<title>Login</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>
<body>
<header><h1>Administradoras De Edificios</h1></header>
<?php
session_start();

if(isset($_SESSION['user'])){

session_destroy();
print '<label>Finalizando sesion...</label>'; print '<img
src="../images/load.gif">';
print '<META HTTP-EQUIV=Refresh CONTENT="2; URL=../registroCopro
pietario/index.php">';

}else{
print "<label>Error, debe validarse como usuario</label>"; print '<img
src="../images/error.png">';
print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=../login/login.php">';
}

?>

</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name = "viewport" content="width=device-width, initial- scale=1, maximum-scale=1">
<title>Cobros</title>
<link rel="shortcut icon" type="image/x-icon" hre f="../images/favicon.png">
<link rel="stylesheet" href="style.css">
</head>
<body>
<header><h1>Administradoras De Edificios</h1></header>
<?php
session_start();
if( isset($_SESSION['user']) ){

include("controlador.php");

$rut =$_SESSION['rut'];
$mes = date("n");
$mesant = (date("n")-1);

$obj = new Controlador();

$especial = $obj->Especiales($rut, $mes);

print '<form>
<h2>Cobros mes actual:</h2>
<label for="rut">Rut:</label>
<input type="text" id="rut" name="rut" value="'.
$_SESSION['rut'].'" readonly>
<label for="Especiales">Pago De multas:</label>
<input type="text" id="especiales" name="especiales" value="'.
$especial.'" readonly>
<input type="button" value="Volver" onclick="history.back()">
</form>';

}else{
print "<h3>Error, debe validarse como usuario</h3>"; print '<img
src="../images/error.png">';

print '<META HTTP-EQUIV=Refresh CONTENT="1; URL=../login/login.php">';

?>

</body>

</html>
<?php

class Controlador { public $rut; public


$mes; public $mesant;

function conecta(){

$hostname = "localhost";

$database = "condominios";

$username = "root";

$password = "";

try {

$conexion = new PDO('mysql:host='.$hostname.';dbname='.

$database, $username, $password);

return $conexion;

catch (PDOException $e) {

print "Error: " . $e->getMessage() . ""; exit();

public function Especiales($rut, $mes){

$this->rut = $rut;

$this->mes = $mes;

$conexion = self::conecta();

$consulta = "SELECT especiales FROM tbl_cobros WHERE rut = :rut AND mes = :mes";

$resultado = $conexion->prepare($consulta);

$resultado->execute(array(":rut"=>$rut, ":mes"=>$mes));

if(!$resultado){

"No posee cobros especiales";

}else{

$cobes = $resultado -> fetchColumn(); return $cobes;

?>
<REFERENCIAS BIBLIOGRÁFICAS
Las referencias deben ser presentadas de acuerdo con las Normas APA, incluyendo información que
permita ubicar de forma inmediata la fuente utilizada.
Recuerda que siempre debes incluir el texto de lectura relacionado con la semana a evaluar.

Ejemplo texto de lectura de IACC:

IACC. (2021). Habilidades para el aprendizaje en la modalidad online. Desarrollo de Habilidades para el
Aprendizaje. Semana 1

Ejemplo referencia: libro

Wagensberg, J. (2017). Teoría de la creatividad: eclosión, gloria y miseria de las ideas. 1.ª edición:

Barcelona, España: Tusquets editores.

Ejemplo referencia: capítulo de libro

Navas, A. (2015). “Educación en un nuevo entorno”. En: L. Castellón, A. Guillier y M. J. Labrador

(2015). Comunicación, redes y poder. Santiago de Chile: RIL editores.

Ejemplo referencia: artículo de revista académica

Lagos, C. (2012). El mapudungún en Santiago de Chile: vitalidad y representaciones sociales en los

mapuches urbanos. Revista de Lingüística Teórica y Aplicada, 50(1), pp. 161-190.

Universidad de Concepción. DOI: http://dx.doi.org/10.4067/S0718-48832012000100008

Ejemplo de referencia: artículo en sitio web

Ministerio del Medio Ambiente (MMA). (s. f.). Planes de recuperación, conservación y gestión de

especies. Recuperado de: http://portal.mma.gob.cl/biodiversidad/planes-de-recuperacion-

conservacion-y-gestion-de-especies/

Ejemplo de referencia: ley o decreto

Ley 19300 (2016). Aprueba Ley sobre Bases Generales del Medio Ambiente. Publicada en el Diario

Oficial el 9 de marzo de 1994. Ministerio Secretaría General de la Presidencia. Recuperado

de: https://www.leychile.cl/Navegar?idNorma=30667

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy