/*=========================================================================================================================== * 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(); } 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 }