TFS_ANTIGUO/AYA.FROPI/FOPI/webforms/RHP/wfrRecurso.aspx.cs
Administrador 50700fd78b Solución FROPI
git-tfs-id: [http://192.168.1.10:8080/tfs/AyA]$/SINORT;C491
2019-05-27 14:46:35 +00:00

478 lines
No EOL
20 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*===========================================================================================================================
* Instituto Costarricense de Acueductos y Alcantarillados. - 2016
* Formularios para Proyectos de Inversión
* Nombre de la Pantalla: frwRecurso.aspx
*
* Explicación de los contenidos del archivo
*===========================================================================================================================
* HISTORIAL
*
* PERSONA DIA MES - AÑO DESCRIPCIÓN
* Esteban Gutierrez Rapso 07 12 - 2016 Se inicia con el diseño de la pagina
* Pamela Quesada Calderón 16 02 - 2017 Se termina con el diseño de la pagina
* …………………………………………………………
* …………………………………………………………
*===========================================================================================================================
* Derechos Reservados (C) 2016 AyA.
* ESTE CÓDIGO ES PROVEÍDO “TAL CUAL ES” SIN GARANTÍA ALGUNA
* DE NINGÚN TIPO, SEA IMPLICITA O EXPLICITA.
* NO SE PERMITE SU REPRODUCCIÓN PARCIAL O TOTAL, NI SU COMERCIALIZACIÓN
*===========================================================================================================================
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using AyABL;
using AyADAL;
using AyABL.RCS;
using AyABL.RHP;
using AyABL.AGP;
using AyABL.ADM;
public partial class webforms_RHP_wfrRecurso : General
{
#region Inicializar Formulario (R0)
override protected void OnInit(EventArgs e) //M0
{
try
{
base.OnInit(e);
InicializarFormulario();
}
catch (Exception ex)
{
MensajeError("Error en R0M0", ex);
}
}
private void InicializarFormulario() //M1
{
try
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
}
catch (Exception ex)
{
MensajeError("Error en R0M1", ex);
}
}
#endregion
#region Variables (R1)
ProyectoBL objProyectoBL;
RequerimientoRecursoBL objRequerimientoRecursoBL;
TipoRecursoHumanoBL objTipoRecursoHumanoBL;
#endregion
#region Eventos Formulario (R2)
protected void Page_Load(object sender, EventArgs e) //M0
{
try
{
if ((!IsPostBack) && (Session.Count > 0))
{
llenarDDLProyecto();
ComandosxMenu();
if (Session["PKPROYECTO"] != null)
{
ddlProyecto.SelectedValue = Session["PKPROYECTO"].ToString();
ddlProyecto_SelectedIndexChanged(null, null);
}
}
}
catch (Exception ex)
{
MensajeError("Error en R2M0", ex);
}
}
#endregion
#region Eventos Controles Web (R3)
/// <summary>
/// Activa el evento del boton guardar.1
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnGuardar_Click(object sender, EventArgs e) //M0
{
try
{
if (GuardarDatos())
{
MensajeInformativo("El registro fue almacenado exitosamente");
}
else
{
MensajeError("El registro no fue almacenado, verifique", null);
}
}
catch (Exception ex)
{
MensajeError("Error en R3M0", ex);
}
}
protected void btnModificar_Click(object sender, EventArgs e) //M1
{
try
{
if (ModificarDatos())
{
MensajeInformativo("El registro fue modificado exitosamente");
}
else
{
MensajeError("El registro no fue modificado, verifique", null);
}
}
catch (Exception ex)
{
MensajeError("Error en R3M1", ex);
}
}
protected void btnEliminar_Click(object sender, EventArgs e) //M2
{
EliminarDatos();
llenarDDLProyecto();
Response.Redirect(Request.RawUrl);
}
protected void ddlProyecto_SelectedIndexChanged(object sender, EventArgs e) //M3
{
try
{
ViewState["PkProyecto"] = ddlProyecto.SelectedValue;
Session["PKPROYECTO"] = ddlProyecto.SelectedValue;
//Recarga Datos
mostrarDatos();
}
catch (Exception ex)
{
MensajeError("Error en R3M3", ex);
}
}
#endregion
#region Metodos Personalizados (R4)
private void ComandosxMenu() //M0
{
try
{
DataSet dsComandos = getComandos();
if (dsComandos != null)
{
foreach (DataRow drTemp in dsComandos.Tables[0].Rows)
{
switch (drTemp["NOMBRECOMANDO"].ToString().ToUpper())
{
case "NUEVO":
break;
case "ELIMINAR":
btnEliminar.Visible = true;
break;
case "MODIFICA":
//Inicio de variable tipo VIEWSTATE
ViewState["PUEDEMODIFICAR"] = true;
break;
}
}
}
}
catch (Exception ex)
{
MensajeError("Error en R4M0", ex);
}
}
private void limpiarCampos() //M1
{
txtCantidadPAP.Value = string.Empty;
txtCantidadPE.Value = string.Empty;
txtCantidadPO.Value = string.Empty;
txtCantidadCAP.Value = string.Empty;
txtCantidadCE.Value = string.Empty;
txtCantidadCO.Value = string.Empty;
txtCantidadNAP.Value = string.Empty;
txtCantidadNE.Value = string.Empty;
txtCantidadNO.Value = string.Empty;
}
#endregion
#region Metodos Controles a Datos (R5)
/// <summary>
/// guarda y modifica registros en la tabla.
/// </summary>
/// <returns></returns>
private bool GuardarDatos() //M0
{
bool blnEjecutado = false;
try
{
if (ddlProyecto.SelectedIndex != -1)
{
objRequerimientoRecursoBL = new RequerimientoRecursoBL();
//Se guardar el recurso de tipo Profesional
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadPAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadPE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadPO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 1;
//objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec1.Value);
hdfIdReqRec1.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
//Se guardar el recurso de tipo Calificado / Tecnico
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadCAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadCE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadCO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 2;
//objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec2.Value);
hdfIdReqRec2.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
//Se guardar el recurso de tipo No Calificado
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadNAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadNE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadNO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 3;
//objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec3.Value);
hdfIdReqRec3.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
blnEjecutado = true;
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": Administración Proyecto (Profesional): " + txtCantidadPAP.Value + " Ejecución o Construcción Proyecto (Profesional): " + txtCantidadPE.Value + " Personal Permanente Proyecto (Profesional): " + txtCantidadPO.Value + " Administración Proyecto (Calificado): " + txtCantidadCAP.Value + " Ejecución o Construcción Proyecto (Calificado): " + txtCantidadCE.Value + " Personal Permanente Proyecto (Calificado): " + txtCantidadCO.Value + " Administración Proyecto (No Calificado): " + txtCantidadNAP.Value + " Ejecución o Construcción Proyecto (No Calificado): " + txtCantidadNE.Value + " Personal Permanente Proyecto (No Calificado): " + txtCantidadNO.Value,
"frwRecurso.aspx");
ddlProyecto.SelectedValue = ViewState["PkProyecto"].ToString();
btnGuardar.Visible = false;
btnModificar.Visible = true;
}
}
catch (Exception ex)
{
blnEjecutado = false;
throw ex;
General.ReportarError(ex, Session["LOGIN"].ToString());
}
return blnEjecutado;
}
private bool ModificarDatos() //M1
{
bool blnEjecutado = false;
try
{
objRequerimientoRecursoBL = new RequerimientoRecursoBL();
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadPAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadPE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadPO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 1;
objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec1.Value);
if (!objRequerimientoRecursoBL.actualizarRequerimientoRecursoBL())
{
blnEjecutado = false;
}
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadCAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadCE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadCO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 2;
objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec2.Value);
if (!objRequerimientoRecursoBL.actualizarRequerimientoRecursoBL())
{
blnEjecutado = false;
}
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadAP = Convert.ToInt32(txtCantidadNAP.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadECP = Convert.ToInt32(txtCantidadNE.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.CantidadPPP = Convert.ToInt32(txtCantidadNO.Value);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(ViewState["PkProyecto"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 3;
objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec3.Value);
if (objRequerimientoRecursoBL.actualizarRequerimientoRecursoBL())
{
blnEjecutado = true;
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.UPDATE.ToString(),
MensajesBitacora.ModificarRegistro + " Administración Proyecto (Profesional): " + txtCantidadPAP.Value + " Ejecución o Construcción Proyecto (Profesional): " + txtCantidadPE.Value + " Personal Permanente Proyecto (Profesional): " + txtCantidadPO.Value + " Administración Proyecto (Calificado): " + txtCantidadCAP.Value + " Ejecución o Construcción Proyecto (Calificado): " + txtCantidadCE.Value + " Personal Permanente Proyecto (Calificado): " + txtCantidadCO.Value + " Administración Proyecto (No Calificado): " + txtCantidadNAP.Value + " Ejecución o Construcción Proyecto (No Calificado): " + txtCantidadNE.Value + " Personal Permanente Proyecto (No Calificado): " + txtCantidadNO.Value,
"frwRecurso.aspx");
}
}
catch (Exception ex)
{
blnEjecutado = false;
throw ex;
General.ReportarError(ex, Session["LOGIN"].ToString());
}
return blnEjecutado;
}
private void EliminarDatos() //M2
{
try
{
if (ddlProyecto.SelectedValue != "-1")
{
objRequerimientoRecursoBL = new RequerimientoRecursoBL();
objRequerimientoRecursoBL.objRequerimientoRecursoEL.FK = Int32.Parse(Session["PKPROYECTO"].ToString());
if (objRequerimientoRecursoBL.actualizaEstadoRequerimientoRecursoBL())
{
MensajeInformativo("El Proyecto se eliminó correctamente");
}
else
{
MensajeError("No se ha podido eliminar el proyecto", null);
}
}
else
{
MensajeAdvertencia("Debe seleccionar antes un proyecto.");
}
}
catch (Exception ex)
{
MensajeError("Error en R5M2", ex);
General.ReportarError(ex, Session["LOGIN"].ToString());
}
}
#endregion
#region Metodos Datos a Controles (R6)
private void mostrarDatos() //M0
{
try
{
limpiarCampos();
objRequerimientoRecursoBL = new RequerimientoRecursoBL();
objRequerimientoRecursoBL.objRequerimientoRecursoEL.Proyecto = Convert.ToInt32(Session["PKPROYECTO"].ToString());
DataSet dsRequerimientoRecurso = new DataSet();
if (dsRequerimientoRecurso.Tables.Count > 0)
{
dsRequerimientoRecurso.Tables.Clear();
}
dsRequerimientoRecurso = objRequerimientoRecursoBL.getRequerimientoRecursoBL();
if (dsRequerimientoRecurso.Tables.Count > 0)
{
if (dsRequerimientoRecurso.Tables[0].Rows.Count > 0)
{
hdfIdReqRec1.Value = dsRequerimientoRecurso.Tables[0].Rows[0]["PKREQUERIMIENTORECURSO"].ToString();
txtCantidadPAP.Value = dsRequerimientoRecurso.Tables[0].Rows[0]["CANTIDADAPREQUERIMIENTORECURSO"].ToString();
txtCantidadPE.Value = dsRequerimientoRecurso.Tables[0].Rows[0]["CANTIDADECPREQUERIMIENTORECURSO"].ToString();
txtCantidadPO.Value = dsRequerimientoRecurso.Tables[0].Rows[0]["CANTIDADPPPREQUERIMIENTORECURSO"].ToString();
hdfIdReqRec2.Value = dsRequerimientoRecurso.Tables[0].Rows[1]["PKREQUERIMIENTORECURSO"].ToString();
txtCantidadCAP.Value = dsRequerimientoRecurso.Tables[0].Rows[1]["CANTIDADAPREQUERIMIENTORECURSO"].ToString();
txtCantidadCE.Value = dsRequerimientoRecurso.Tables[0].Rows[1]["CANTIDADECPREQUERIMIENTORECURSO"].ToString();
txtCantidadCO.Value = dsRequerimientoRecurso.Tables[0].Rows[1]["CANTIDADPPPREQUERIMIENTORECURSO"].ToString();
hdfIdReqRec3.Value = dsRequerimientoRecurso.Tables[0].Rows[2]["PKREQUERIMIENTORECURSO"].ToString();
txtCantidadNAP.Value = dsRequerimientoRecurso.Tables[0].Rows[2]["CANTIDADAPREQUERIMIENTORECURSO"].ToString();
txtCantidadNE.Value = dsRequerimientoRecurso.Tables[0].Rows[2]["CANTIDADECPREQUERIMIENTORECURSO"].ToString();
txtCantidadNO.Value = dsRequerimientoRecurso.Tables[0].Rows[2]["CANTIDADPPPREQUERIMIENTORECURSO"].ToString();
//Carga el boton de modificar
if (bool.Parse(ViewState["PUEDEMODIFICAR"].ToString()) == true)
{
btnGuardar.Visible = false;
btnModificar.Visible = true;
}
}
else
{
btnGuardar.Visible = true;
btnModificar.Visible = false;
}
}
}
catch (Exception ex)
{
MensajeError("Error en R6M0", ex);
General.ReportarError(ex, Session["LOGIN"].ToString());
}
}
private void llenarDDLProyecto() //M1
{
try
{
//Instancia el objeto
objProyectoBL = new ProyectoBL();
objProyectoBL.objProyectoEL.PK = 0;
objProyectoBL.objProyectoEL.ASTATE = true;
objProyectoBL.objProyectoEL.CodigoAcceso = Session["CODIGOACCESO"].ToString();
//Carga la información en un dataset
DataSet dsProyecto = objProyectoBL.getProyectos();
ddlListaProyectos(dsProyecto, ddlProyecto);
ddlProyecto.Attributes["style"] = "width: 90%; max-width: 90%";
}
catch (Exception ex)
{
MensajeError("Error en R6M1", ex);
}
}
#endregion
}