TFS_ANTIGUO/AYA.FROPI/FOPI/webforms/FOR/wfrRecurso.aspx.cs

375 lines
19 KiB
C#
Raw Normal View History

/*===========================================================================================================================
* Instituto Costarricense de Acueductos y Alcantarillados. - 2019
* Formularios para Proyectos de Inversión
* Nombre de la Pantalla: wfrRecurso.aspx
*
* Explicación de los contenidos del archivo
*===========================================================================================================================
* HISTORIAL
*
* PERSONA DIA – MES - AÑO DESCRIPCIÓN
* Esteban Gutierrez Rapso 17 – 02 - 2019 Se inicia con el diseño de la pagina
* …………………………………………………………
* …………………………………………………………
*===========================================================================================================================
* Derechos Reservados (C) 2019 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_FOR_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))
{
objProyectoBL = new ProyectoBL();
objProyectoBL.objProyectoEL.PK = Int32.Parse(Session["PKPROYECTO"].ToString());
DataSet dsProyecto = objProyectoBL.getProyectos();
if (dsProyecto.Tables[0].Rows.Count != 0)
{
txtProyecto.Text = dsProyecto.Tables[0].Rows[0]["NOMBREPROYECTO"].ToString();
txtNumeroBPIP.Text = dsProyecto.Tables[0].Rows[0]["NUMEROBPIPPROYECTO"].ToString();
txtEstadoProyecto.Text = string.IsNullOrEmpty(dsProyecto.Tables[0].Rows[0]["NOMBREESTADO"].ToString()) ? "Sin Asignar" : dsProyecto.Tables[0].Rows[0]["NOMBREESTADO"].ToString();
if (!string.IsNullOrWhiteSpace(txtNumeroBPIP.Text))
txtProyecto.ReadOnly = true;
}
mostrarDatos();
}
ScriptManager.RegisterStartupScript(Page, typeof(Page), "Check", "validarEstado()", true);
}
catch (Exception ex)
{
MensajeError("Error en R2M0", ex);
}
}
#endregion
#region Eventos Controles Web (R3)
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 btnEliminar_Click(object sender, EventArgs e) //M1
{
EliminarDatos();
}
protected void btnAnterior_Click(object sender, EventArgs e) //M2
{
try
{
Response.Redirect("wfrProyectos.aspx");
}
catch (Exception ex)
{
MensajeError("Error en R3M2", ex);
}
}
#endregion
#region Metodos Personalizados (R4)
private void limpiarCampos() //M0
{
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)
private bool GuardarDatos() //M0
{
bool blnEjecutado = false;
try
{
string strModo = ViewState["Modo"].ToString();
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(Session["PKPROYECTO"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 1;
if (strModo == "Nuevo")
{
hdfIdReqRec1.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
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");
ViewState["Modo"] = "Modifica";
blnEjecutado = true;
}
else if (strModo == "Modifica")
{
objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec1.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");
}
}
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(Session["PKPROYECTO"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 2;
if (strModo == "Nuevo")
{
hdfIdReqRec2.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
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");
ViewState["Modo"] = "Modifica";
blnEjecutado = true;
}
else if(strModo == "Modifica")
{
objRequerimientoRecursoBL.objRequerimientoRecursoEL.PK = Convert.ToInt32(hdfIdReqRec2.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");
}
}
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(Session["PKPROYECTO"]);
objRequerimientoRecursoBL.objRequerimientoRecursoEL.TipoRecurso = 3;
if (strModo == "Nuevo")
{
hdfIdReqRec3.Value = objRequerimientoRecursoBL.insertarRequerimientoRecursoBL().ToString();
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");
ViewState["Modo"] = "Modifica";
blnEjecutado = true;
}
else if (strModo == "Modifica")
{
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() //M1
{
try
{
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);
}
}
catch (Exception ex)
{
MensajeError("Error en R5M1", 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 = objRequerimientoRecursoBL.getRequerimientoRecursoBL();
if (dsRequerimientoRecurso.Tables[0].Rows.Count != 0)
{
ViewState["Modo"] = "Modifica";
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();
}
else if (dsRequerimientoRecurso.Tables[0].Rows.Count == 0)
{
ViewState["Modo"] = "Nuevo";
}
}
catch (Exception ex)
{
MensajeError("Error en R6M0", ex);
General.ReportarError(ex, Session["LOGIN"].ToString());
}
}
#endregion
}