101 lines
3.5 KiB
Markdown
101 lines
3.5 KiB
Markdown
# 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.
|