Initial commit
This commit is contained in:
100
README.md
Normal file
100
README.md
Normal file
@@ -0,0 +1,100 @@
|
||||
# Plataforma de Desarrolladores Agua de Hermosillo
|
||||
|
||||
Aplicación ASP.NET WebForms para administrar desarrolladores, clientes, fraccionamientos, trámites, pagos y su futura integración contable.
|
||||
|
||||
## Tecnología
|
||||
|
||||
- ASP.NET WebForms con C#.
|
||||
- .NET Framework 4.8.1.
|
||||
- SQL Server y procedimientos almacenados.
|
||||
- Metronic como base visual.
|
||||
- AjaxControlToolkit y `UpdatePanel` para actualizaciones parciales.
|
||||
- Visual Studio 2022.
|
||||
|
||||
## Estructura principal
|
||||
|
||||
```text
|
||||
SIG.Web/
|
||||
AppCode/
|
||||
Contracts/
|
||||
Models/
|
||||
Repositories/
|
||||
Services/
|
||||
Security/
|
||||
Utilities/
|
||||
Pages/
|
||||
Security/
|
||||
Tramites/
|
||||
Polizas/
|
||||
Metronic/
|
||||
Scripts/
|
||||
Styles/
|
||||
Site.master
|
||||
Login.aspx
|
||||
Inicio.aspx
|
||||
Web.config
|
||||
```
|
||||
|
||||
Las páginas y la página maestra consumen contratos y servicios. El acceso a SQL se mantiene en repositorios y ejecutores de base de datos.
|
||||
|
||||
```text
|
||||
ASPX / Site.master
|
||||
-> Contracts
|
||||
-> Services
|
||||
-> Repositories / SQL helpers
|
||||
-> SQL Server
|
||||
```
|
||||
|
||||
## Requisitos
|
||||
|
||||
1. Windows con IIS Express.
|
||||
2. Visual Studio 2022 con la carga de trabajo **Desarrollo de ASP.NET y web**.
|
||||
3. .NET Framework 4.8.1 Developer Pack.
|
||||
4. SQL Server accesible desde el equipo local.
|
||||
|
||||
## Configuración local
|
||||
|
||||
1. Abrir `SIG.WebForms.Starter.sln` en Visual Studio 2022.
|
||||
2. Restaurar los paquetes NuGet.
|
||||
3. Revisar la cadena `Conexion` de `SIG.Web/Web.config`.
|
||||
4. Crear o actualizar la base de datos con `Esquema_BD_AguaHillo_Idempotente.sql`.
|
||||
5. Para instalar solamente usuarios, clientes y verificación de correo, utilizar `Usuarios_Clientes_Registro.sql`.
|
||||
6. Compilar la solución en `Debug` y ejecutarla con IIS Express.
|
||||
|
||||
La ruta raíz utiliza `Inicio.aspx` como documento predeterminado. Los usuarios sin sesión son enviados a `Login.aspx`, conservando la ruta solicitada en `retornoURL`.
|
||||
|
||||
## Correo de verificación
|
||||
|
||||
El autorregistro requiere configurar estos valores en `SIG.Web/Web.config`:
|
||||
|
||||
```xml
|
||||
<add key="SmtpHost" value="" />
|
||||
<add key="SmtpPort" value="587" />
|
||||
<add key="SmtpEnableSsl" value="true" />
|
||||
<add key="SmtpUser" value="" />
|
||||
<add key="SmtpPassword" value="" />
|
||||
<add key="EmailFrom" value="" />
|
||||
```
|
||||
|
||||
No deben confirmarse credenciales reales en el repositorio. Para cada ambiente, coloque los valores mediante una transformación segura o durante el despliegue.
|
||||
|
||||
## Módulo de usuarios
|
||||
|
||||
- `Pages/Security/Usuarios.aspx`: administración autenticada de usuarios y clientes relacionados.
|
||||
- `Pages/Security/RegistroCliente.aspx`: autorregistro público en dos pasos.
|
||||
- `Pages/Security/RegistroPendiente.aspx`: aviso para revisar el correo.
|
||||
- `Pages/Security/VerificarCorreo.aspx`: validación de la liga y activación de la cuenta.
|
||||
|
||||
El registro conserva temporalmente los datos de ambos pasos en `ViewState` cifrado. Usuario, cliente, relación y token se guardan juntos únicamente después de concluir las validaciones.
|
||||
|
||||
## Reglas de base de datos
|
||||
|
||||
- Las operaciones desde C# utilizan procedimientos almacenados.
|
||||
- Los procedimientos incluyen `TRY/CATCH`, `@ErrorMostrar`, `@ErrorTipo` y `@Return`.
|
||||
- Las entradas se envían como parámetros; no se concatena información del usuario en SQL.
|
||||
- El borrado funcional es lógico mediante `Borrado` y `FechaBorrado`.
|
||||
- Los errores registran el procedimiento y parámetros de diagnóstico, ocultando valores sensibles.
|
||||
|
||||
## Archivos que no se versionan
|
||||
|
||||
El `.gitignore` excluye compilados, paquetes restaurables, configuración personal de Visual Studio, logs, bases locales, temporales, publicaciones y carpetas de trabajo local. Las carpetas visuales `Metronic`, `Styles` y `Scripts` sí forman parte del proyecto.
|
||||
Reference in New Issue
Block a user