/*===========================================================================================================================
* Instituto Costarricense de Acueductos y Alcantarillados. - 2015
* Administración de la Seguridad
* Nombre de la Pantalla: frwBusquedaSolicitud.aspx
*
* Explicación de los contenidos del archivo
*===========================================================================================================================
* HISTORIAL
*
* PERSONA DIA – MES - AÑO DESCRIPCIÓN
* Esteban Gutierrez Rapso 20 – 04 - 2015 Se inicia con el diseño de la pagina
* …………………………………………………………
* …………………………………………………………
*===========================================================================================================================
* Derechos Reservados (C) 2015 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.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using AyABL;
using AyABL.AUT.Autenticacion;
using AyABL.APL;
using AyADAL;
using System.Configuration;
using AyABL.RCS;
using AyABL.Tran;
using AyABL.Usuario;
using AyABL.AUT.Encripta;
using System.Globalization;
using AyABL.TRA;
using System.IO;
public partial class Forms_Trans_frwGestionTrabajo : 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);
construirGridView();
Javascript.CheckAllGridViewItems(Page);
cuwBusquedaList.Buscar += new _controlesusuario_Estandar_cuwBusquedaList.SearchEvent(Buscar);
cuwVentanaEmergenteDevolucion.AbrirVentanaEmergenteDevolucion += new ControlUsuario_cuwVentanaEmergenteDevolucion.SearchEvent(AbrirVentanaEmergenteDevolucion);
cuwVentanaEmergenteObservaciones.AbrirVentanaEmergenteObservaciones += new ControlUsuario_cuwVentanaEmergenteObservaciones.SearchEvent(AbrirVentanaEmergenteObservaciones);
cuwVentanaEmergenteObservaciones1.AbrirVentanaEmergenteObservaciones += new ControlUsuario_cuwVentanaEmergenteObservaciones.SearchEvent(AbrirVentanaEmergenteObservacionesAS);
cuwVentanaEmergenteObservaciones2.AbrirVentanaEmergenteObservaciones += new ControlUsuario_cuwVentanaEmergenteObservaciones.SearchEvent(AbrirVentanaEmergenteObservacionesAP);
cuwVentanaEmergenteRequisitos.AbrirVentanaEmergente += new ControlUsuario_cuwVentanaEmergenteRequisitos.SearchEvent(AbrirVentanaEmergente);
}
catch (Exception ex)
{
MensajeError("Error en R0M1", ex);
}
}
#endregion
#region Variables (R1)
GridView grvListaDatosTemp;
//string strPKProgramacionSolicitudTMP = "";
#region variables del estandar
ArrayList arlCondicionesFiltroBusqueda = new ArrayList();
#endregion
solicitudBL objSolicitudBL;
//oficinaayaBL objDependenciaBL;
//regionBL objRegionBL;
solicitudBL objresponsableActividadBL;
int nPkSolicitud = 0;
#endregion
#region Eventos Formulario (R2)
protected void Page_Load(object sender, EventArgs e) //M0
{
try
{
lblMensajeConsulta.Visible = false;
if (ViewState["POPUP"] != null)
{
if (ViewState["POPUP"].ToString() == "VentanaEmergente")
{
EjecutarScript("VentanaAbrirActividades();");
ViewState["POPUP"] = null;
}
else
{
if (ViewState["POPUP"].ToString() == "VentanaEmergenteAP")
{
EjecutarScript("VentanaAbrirActividades();VentanaAbrirFormularioAP();");
ViewState["POPUP"] = null;
}
else
{
if (ViewState["POPUP"].ToString() == "VentanaEmergenteAS")
{
EjecutarScript("VentanaAbrirActividades();VentanaAbrirFormularioAS();");
ViewState["POPUP"] = null;
}
}
}
}
//else
//{
// if (Session["Pagina"] != null)
// {
// if (Request["d"] == "BackCartas")
// {
// int pkSolicitud = 0;
// int pkProgramacion = 0;
// if (Session["PKSOLICITUD"] != null)
// {
// pkSolicitud = int.Parse(Session["PKSOLICITUD"].ToString());
// }
// if (Session["PKPROGRAMACION"] != null && Session["PKPROGRAMACION"] != string.Empty)
// {
// pkProgramacion = int.Parse(Session["PKPROGRAMACION"].ToString());
// }
// EjecutarScript("VentanaAbrirActividades();");
// CargarImagenesSeguimientoActividades(pkProgramacion);
// }
// }
//}
//Session["Pagina"] = "frwCartaSolicitud.aspx";
if ((!IsPostBack) && (Session.Count > 0))
{
lblMensajeConsulta.Visible = true;
Session["NACTIVIDAD"] = string.Empty;
DateTime dteFechaInicio = new DateTime();
DateTime dteFechaFin = new DateTime();
dteFechaFin = DateTime.Now;
dteFechaInicio = dteFechaFin.AddMonths(-10);
AyABL.AyABL objBL = new AyABL.AyABL();
arlCondicionesFiltroBusqueda = objBL.buscarPorFechas(Tablas.insertasolicitud, dteFechaInicio, dteFechaFin, operadorLogico.AND);
llenarGridViewPendientes(true,10);
//llenarDDLActividades(true);
//llenarDDLEncargado(true);
arlCondicionesFiltroBusqueda = null;
mostrarFilaTabla(1);
ComandosxMenu();
limpiarCampos();
}
else
{
if (Session["PKPROGRAMACION"] != null && Session["PKPROGRAMACION"] != string.Empty)
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
if (Session.Count == 0)
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
catch (Exception ex)
{
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
}
#endregion
#region Eventos Controles Web (R3)
///
/// Metodo que se utiliza para extraer información del registro de la base de datos y ser mostrado en el acordeon de Controles
///
///
///
protected void grvListaDatos_RowCommand(object sender, GridViewCommandEventArgs e) //M0
{
try
{
Session["PaginaBack"] = "frwGestionarTrabajo.aspx";
if (e.CommandName == "editar")
{
EncriptaBL objEncripta = new EncriptaBL();
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaDatos.Rows[i];
Session["PKSOLICITUD"] = selectedRow.Cells[11].Text;
Session["SOLICITUD"] = selectedRow.Cells[3].Text;
Session["PKPROGRAMACION"] = selectedRow.Cells[2].Text;
Session["FKREUTILIZA"] = selectedRow.Cells[12].Text;
Session["FKTIPOINSPECCION"] = selectedRow.Cells[13].Text;
Session["ESTADO"] = selectedRow.Cells[14].Text.Trim();
ArrayList arlCondicionesFiltroBusqueda = new ArrayList();
if (Session["PKPROGRAMACION"].ToString() != " ") //se verifica que existe la programacion de la solicitud
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 1; //la actividad de Ingreso y asignacion de expediente
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0) //se verifica que ya se haya asignado la actividad 1
{
bool existe = false;
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
if (row["FKUSUARIOXDEPENDENCIA"].ToString().Trim() == Session["PKUSUARIOXDEPENDENCIA"].ToString().Trim())
existe = true;
}
if(existe)
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&d=ingresodatos");
else
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&d=deshabilitar");
}
else
{
MensajeAlerta("No se han programado las actividades relacionadas con esta solicitud");
}
}
else
{
MensajeAlerta("No se han programado las actividades relacionadas con esta solicitud");
}
}
if (e.CommandName == "asignar")
{
// ClientScript.RegisterStartupScript(this.GetType(), "AbripPopup", "");
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaDatos.Rows[i];
Session["PKPROGRAMACION"] = selectedRow.Cells[2].Text;
Session["SOLICITUD"] = selectedRow.Cells[3].Text;
Session["PKSOLICITUD"] = selectedRow.Cells[11].Text;
Session["FKREUTILIZA"] = selectedRow.Cells[12].Text;
Session["FKTIPOINSPECCION"] = selectedRow.Cells[13].Text;
Session["ESTADO"] = selectedRow.Cells[14].Text.Trim();
Session["FKDEPENDENCIASIGDD"] = selectedRow.Cells[15].Text;
int pkSolicitud = 0;
if (selectedRow.Cells[2].Text != " ")
{
pkSolicitud = int.Parse(selectedRow.Cells[2].Text);
llenarGridViewActividadesEncargado(pkSolicitud);
}
llenarDDLActividades(true);
llenarDDLEncargado(true);
EjecutarScript("VentanaAbrir();");
}
if (e.CommandName == "seguimiento")
{
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaDatos.Rows[i];
Session["PKPROGRAMACION"] = selectedRow.Cells[2].Text;
Session["PKSOLICITUD"] = selectedRow.Cells[11].Text;
Session["FKREUTILIZA"] = selectedRow.Cells[12].Text;
Session["FKTIPOINSPECCION"] = selectedRow.Cells[13].Text;
Session["FKDEPENDENCIASIGDD"] = selectedRow.Cells[15].Text;
Session["ESTADO"] = selectedRow.Cells[14].Text.Trim();
int pkSolicitud = int.Parse(selectedRow.Cells[2].Text);
Session["SOLICITUD"] = selectedRow.Cells[3].Text;
EjecutarScript("VentanaAbrirActividades();");
CargarImagenesSeguimientoActividades(pkSolicitud);
lblNumeroSolicitud.Text = selectedRow.Cells[3].Text;
}
}
catch (Exception ex)
{
MensajeError("Error en R3M0", ex);
}
}
///
/// Metodo que se utiliza para la paginación del Grid en caso de que el usuario desee ver mas registros
///
///
///
protected void grvListaDatos_PageIndexChanging(object sender, GridViewPageEventArgs e) //M1
{
try
{
grvListaDatos.PageIndex = e.NewPageIndex;
llenarGridViewPendientes(true,1000);
}
catch (Exception ex)
{
MensajeError("Error en R3M1", ex);
}
}
///
///Activar el botón de Refrescar
///
///
///
protected void btnRefrescar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M2
{
try
{
llenarGridViewPendientes(true,1000);
}
catch (Exception ex)
{
MensajeError("Error en R3M2" + MensajesAplicacion.RefrescarFallido.ToString(), ex);
}
}
///
/// Activa el evento del botón Buscar (binoculares)
///
///
///
protected void btnBuscar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M3
{
try
{
llenarGridViewPendientes(true,1000);
}
catch(Exception ex)
{
MensajeError("Error en R3M3" + MensajesAplicacion.UsuarioInexistente.ToString(), ex);
}
}
///
/// Buscar usuarios en el Active Directory.
///
///
///
protected void btnBuscar_Click(object sender, EventArgs e) //M4
{
try
{
llenarGridViewPendientes(true,1000);
}
catch (Exception ex)
{
MensajeError("Error en R3M4" + MensajesAplicacion.BusquedaFallido.ToString(), ex);
}
}
///
/// Salir del popup
///
///
///
protected void btnSalirPopup_Click(object sender, EventArgs e) //M5
{
try
{
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
EjecutarScript("VentanaCerrar();VentanaAbrirActividades();");
//Session["PKPROGRAMACION"] = "";
limpiarCampos();
}
catch (Exception ex)
{
MensajeError("Error en R3M5" + MensajesAplicacion.BusquedaFallido.ToString(), ex);
}
}
///
/// Carga el combo de encargados
///
///
///
protected void ddlActividades_SelectedIndexChanged(object sender, EventArgs e) //M6
{
try
{
llenarDDLEncargado(true);
EjecutarScript("VentanaAbrir();");
}
catch (Exception ex)
{
MensajeError("Error en R3M6" + MensajesAplicacion.BusquedaFallido.ToString(), ex);
}
}
///
/// Asigna actividades a los usuarios
///
///
///
protected void btnAsignarActividades_Click(object sender, EventArgs e) //M7
{
try
{
ViewState["MODO"] = "Nuevo";
AsignaActividadesUsuarios();
llenarGridViewActividadesEncargado(int.Parse(Session["PKPROGRAMACION"].ToString()));
EjecutarScript("VentanaAbrir();");
}
catch (Exception ex)
{
MensajeError("Error en R3M7" + MensajesAplicacion.GuardadoFallido.ToString(), ex);
}
}
///
/// Metodo utilizado para eliminar las actividades asignadas al encargado
///
///
///
protected void grvListaAsignaciones_RowCommand(object sender, GridViewCommandEventArgs e) //M8
{
try
{
string strPiePagina = " AVISO DE CONFIDENCIALIDAD: este mensaje y la información incluida en él es confidencial y está dirigida únicamente al destinatario. Puede contener información privilegiada, confidencial, amparada por el secreto profesional o que no debe ser revelada. Si usted ha recibido este correo por error, por favor comunicarlo inmediatamente vía correo y tener la amabilidad de eliminarlo de su sistema. Queda notificado que no deberá copiar este mensaje, ni utilizar, divulgar, publicar o distribuir su contenido de modo alguno. Todo mensaje enviado a esta dirección de correo electrónico puede ser sujeto a inspección por alguien distinto de su receptor originario. La transmisión de correos no garantiza que el correo electrónico sea seguro o libre de error. Por consiguiente, se advierte que esta información pueda estar incompleta o ser poco precisa ya que toda información está sujeta a alterarse sin previo aviso.”";
if (e.CommandName == "borrar")
{
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaAsignaciones.Rows[i];
Session["PKACTIVIDAD"] = selectedRow.Cells[1].Text;
EliminarActividadesUsuarios(int.Parse(Session["PKACTIVIDAD"].ToString()));
llenarGridViewActividadesEncargado(int.Parse(Session["PKPROGRAMACION"].ToString()));
Session["PKACTIVIDAD"] = "";
EjecutarScript("VentanaAbrir();");
}
if (e.CommandName == "renotificar")
{
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaAsignaciones.Rows[i];
AyABL.TRA.correoBL objcorreoBL = new AyABL.TRA.correoBL();
objcorreoBL.objcorreoEL.FKNUMSOLICITUD = int.Parse(Session["PKSOLICITUD"].ToString());
// objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
objcorreoBL.objcorreoEL.ASUNTO = "Asignación de actividades - SIGDD";
objcorreoBL.objcorreoEL.CONTENIDO = "La solicitud de disponibilidad " + Session["SOLICITUD"].ToString() + " fue enviada para que se continúe con el proceso de " + selectedRow.Cells[2].Text + ", ingrese al sistema SIGDD" + strPiePagina;
objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(selectedRow.Cells[4].Text);
objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
int nValorRetornado = objcorreoBL.insertarCorreo();
#region actualizar actividad
GuardarDatosActividad(verificarTarea2());
#endregion
EjecutarScript("VentanaAbrir();toastr.success('Se envió la notificación al responsable', 'Información',toastr.options ={closeButton: true})");
}
}
catch (Exception ex)
{
MensajeError("Error en R3M8", ex);
}
}
protected void grvListaDatos_RowDataBound(object sender, GridViewRowEventArgs e) //M9
{
try
{
if (e.Row.DataItem != null)
{
Session["ESTADO"] = e.Row.Cells[15].Text.Trim();
e.Row.Cells[1].ToolTip = "Solicitud de disponibilidad";
//e.Row.Cells[16].ToolTip = "Asignar actividades";
e.Row.Cells[16].ToolTip = "Gestionar actividades";
e.Row.Cells[11].Text = e.Row.Cells[11].Text.Replace(",", "");
//if (!consultarActividadProgramacion(int.Parse(e.Row.Cells[2].Text)))
//{
// e.Row.Cells[16].Enabled = false;
// e.Row.Cells[16].Attributes.CssStyle.Add("opacity", "0.5");
//}
}
}
catch (Exception ex)
{
MensajeError("Se produjo un error al realizar la consulta.", ex);
}
}
protected void btnSalirActividades_Click(object sender, EventArgs e) //M10
{
try
{
Session["PKPROGRAMACION"] = "";
EjecutarScript("VentanaCerrarActividades();");
limpiarCampos();
ViewState["POPUP"] = "";
EjecutarScript("VentanaAbrirActividades();");
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
catch (Exception ex)
{
MensajeError("Error en R3M5" + MensajesAplicacion.BusquedaFallido.ToString(), ex);
}
}
protected void Image2_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 1,"Ingreso y asignación de expedientes");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image6_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 2,"Programación de trabajo");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image3_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 3,"Confección del Criterio técnico de agua potable");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image7_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 4, "Confección del Criterio técnico de alcantarillado sanitario");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image9_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 5,"Confección de constancias");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image11_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 6,"Validación y firma");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void Image13_Click(object sender, ImageClickEventArgs e)
{
try
{
CargarSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()), 7,"Notificación al usuario");
}
catch (Exception ex)
{
MensajeError("Error al mostrar el detalle de la actividad seleccionada", ex);
}
}
protected void grvListaAsignaciones_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
try
{
EjecutarScript("VentanaAbrir();");
grvListaAsignaciones.PageIndex = e.NewPageIndex;
llenarGridViewActividadesEncargado(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
catch (Exception ex)
{
MensajeError("Error en R3M1", ex);
}
}
protected void imgFormularioAP_Click(object sender, ImageClickEventArgs e)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 1;//se valida la tarea 1 ingreso y asignacion de expediente debido a que no se puede crear las constancias sin la informacion que se encuentra en el este formulario
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
EjecutarScript("VentanaAbrirFormularioAP();");
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
else
{
string p_strMensaje = "No se ha finalizado el ingreso y asignación del expediente de donde se obtienen los datos necesarios para crear las contancias.";
EjecutarScript("VentanaAbrirActividades();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
protected void imgFormularioAS_Click(object sender, ImageClickEventArgs e)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 1;//se valida la tarea 1 ingreso y asignacion de expediente debido a que no se puede crear las constancias sin la informacion que se encuentra en el este formulario
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
EjecutarScript("VentanaAbrirFormularioAS();");
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
else
{
//MensajeAlerta("No se ha finalizado el ingreso de y asignación del expediente de donde se obtienen los datos necesarios para crear las contancias.");
string p_strMensaje = "No se ha finalizado el ingreso de y asignación del expediente de donde se obtienen los datos necesarios para crear las contancias.";
EjecutarScript("VentanaAbrirActividades();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
protected void imgConstancias_Click(object sender, ImageClickEventArgs e)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 1;//se valida la tarea 1 ingreso y asignacion de expediente debido a que no se puede crear las constancias sin la informacion que se encuentra en el este formulario
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
int nTipoInspeccion = int.Parse(dsEncargadosActividades.Tables[0].Rows[0]["FKTIPOINSPECCION"].ToString()) ;
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
{
objSolicitudBL.objSolicitudEL.ORDEN = 3;//se valida la tarea 3 confeccion de criterio tecnico ap debido a que no se puede crear las constancias sin la informacion que se encuentra en el este formulario
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0 || nTipoInspeccion == 2)
{
objSolicitudBL.objSolicitudEL.ORDEN = 4;//se valida la tarea 4 confeccion de criterio tecnico as debido a que no se puede crear las constancias sin la informacion que se encuentra en el este formulario
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0 || nTipoInspeccion == 1)
{
EncriptaBL objEncripta = new EncriptaBL();
objSolicitudBL.objSolicitudEL.ORDEN = 5;//se valida la tarea 5 confeccion de la constancia para deshabilitar el boton de editar
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)// || nTipoInspeccion == 1)
{
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&c=confeccion&f=finalizado&d=constancia");
}
else
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&c=confeccion&d=constancia");
}
else
{
//MensajeAlerta("No se ha finalizado la confección de criterio técnico as de donde se obtienen los datos necesarios para crear las contancias.");
string p_strMensaje = "No se ha finalizado la confección de criterio técnico de alcantarillado sanitario de donde se obtienen los datos necesarios para crear las contancias.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
else
{
//MensajeAlerta("No se ha finalizado la confección de criterio técnico ap de donde se obtienen los datos necesarios para crear las contancias.");
string p_strMensaje = "No se ha finalizado la confección de criterio técnico agua potable de donde se obtienen los datos necesarios para crear las contancias.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
else
{
//MensajeAlerta("No se ha finalizado el ingreso y asignación del expediente de donde se obtienen los datos necesarios para crear las contancias.");
string p_strMensaje = "No se ha finalizado el ingreso y asignación del expediente de donde se obtienen los datos necesarios para crear las contancias.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
protected void btnSalirCriterioAP_Click(object sender, EventArgs e)
{
try
{
EjecutarScript("VentanaCerrarFormularioAP();VentanaAbrirActividades();");
//CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
catch (Exception ex)
{
EjecutarScript("window.parent.VentanaCerrarFormularioASSesion();");
}
}
protected void btnSalirCriterioAS_Click(object sender, EventArgs e)
{
try
{
EjecutarScript("VentanaCerrarFormularioAS();VentanaAbrirActividades();");
//CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
catch (Exception ex)
{
EjecutarScript("window.parent.VentanaCerrarFormularioASSesion();");
}
}
protected void btnSalirNotificacionCliente_Click(object sender, EventArgs e)
{
try
{
//string pdfPathDocumentos = ConfigurationManager.AppSettings["RutaPdfAdjuntosSql"].ToString() + @"\" + Session["SOLICITUD"].ToString().Trim();
//if (Directory.Exists(pdfPathDocumentos))
// Directory.Delete(pdfPathDocumentos, true);
EjecutarScript("VentanaCerrarNotificacionCliente();VentanaAbrirActividades();");
//CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
}
catch (Exception ex)
{
EjecutarScript("window.parent.VentanaCerrarNotificacionClienteSesion();");
}
}
#endregion
#region Metodos Personalizados (R4)
///
/// Oculta las filas que lo requieran
///
///
private void mostrarFilaTabla(int p_intFila) //M0
{
try
{
divDatosSuperiores.Visible = true;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se utiliza para contruir el Grid al inicio de la pantalla
///
private void construirGridView() //M1
{
try
{
grvListaDatosTemp = (GridView)tdLista.FindControl("grvListaDatos");
GridViewBoundField bdfPkProgramacion = new GridViewBoundField("PKPROGRAMACIONSOLICITUD", "PK", false, false, false);
GridViewBoundField bdfNumSolicitud = new GridViewBoundField("NUMEROSOLICITUDSOLICITUD", "Número solicitud", true, false, true);
GridViewBoundField bdfFechaBitacora = new GridViewBoundField("FECHAINSERTASOLICITUD", "Fecha", true, true, true);
GridViewBoundField bdfPropietario = new GridViewBoundField("DESCRIPCIONTIPODISPONIBILIDAD", "Tipo de trámite", true, false, true);
GridViewBoundField bdfCedulaProp = new GridViewBoundField("CEDULACLIENTESOLICITUD", "Identificación propietario", true, false, true);
GridViewBoundField bdfNombreProp = new GridViewBoundField("NOMBRECLIENTESOLICITUD", "Nombre propietario", true, false, true);
GridViewBoundField bdfFolio = new GridViewBoundField("PKFOLIO", "Folio", true, false, true);
GridViewBoundField bdfPlano = new GridViewBoundField("NUMEROTERRENO", "Inmueble", true, false, true);
//GridViewBoundField bdfCedulaSolic = new GridViewBoundField("CEDULASOLICITANTESOLICITUD", "Identificación solicitante", false, false, false);
//GridViewBoundField bdfNombreSolic = new GridViewBoundField("NOMBRECOMPLETOSOLICITANTE", "Nombre solicitante", false, false,false);
GridViewBoundField bdfDescripcion = new GridViewBoundField("DESCRIPCIONPROYECTO", "Propósito", true, false, true);
//GridViewBoundField bdfEstado = new GridViewBoundField("ACTIVIDADESSOLICITUD", "Estado actividad", true, false, true);
GridViewBoundField bdfPkSolicitud = new GridViewBoundField("PKSOLICITUD", "PK", false, false, false);
GridViewBoundField bdfFkReutiliza = new GridViewBoundField("FKREUTILIZA", "FK", false, false, false);
GridViewBoundField bdfFkTipoInspeccion = new GridViewBoundField("FKTIPOINSPECCION", "FK", false, false, false);
GridViewBoundField bdfEstadoProgramacion = new GridViewBoundField("DESCRIPCIONESTADOPROGRAMACION", "Estado", true, false, false);
GridViewBoundField bdfFkDependenciaSIGDD = new GridViewBoundField("FKDEPENDENCIASIGDD", "FK", false, false, false);
//bdfEstado.HtmlEncode = true;
grvListaDatosTemp.Columns.Add(bdfPkProgramacion);
grvListaDatosTemp.Columns.Add(bdfNumSolicitud);
grvListaDatosTemp.Columns.Add(bdfFechaBitacora);
grvListaDatosTemp.Columns.Add(bdfPropietario);
grvListaDatosTemp.Columns.Add(bdfCedulaProp);
grvListaDatosTemp.Columns.Add(bdfNombreProp);
grvListaDatosTemp.Columns.Add(bdfPlano);
grvListaDatosTemp.Columns.Add(bdfFolio);
grvListaDatosTemp.Columns.Add(bdfDescripcion);
//grvListaDatosTemp.Columns.Add(bdfEstado);
grvListaDatosTemp.Columns.Add(bdfPkSolicitud);
grvListaDatosTemp.Columns.Add(bdfFkReutiliza);
grvListaDatosTemp.Columns.Add(bdfFkTipoInspeccion);
grvListaDatosTemp.Columns.Add(bdfEstadoProgramacion);
grvListaDatosTemp.Columns.Add(bdfFkDependenciaSIGDD);
grvListaDatosTemp.Columns[0].ItemStyle.Width = 25;
grvListaDatosTemp.Columns[1].ItemStyle.Width = 25;
grvListaDatosTemp.Columns[5].ItemStyle.Width = 200;
grvListaDatosTemp.Columns[4].ItemStyle.Width = 200;
grvListaDatosTemp.Columns[7].ItemStyle.Width = 200;
grvListaDatosTemp.Columns[9].ItemStyle.Width = 200;
grvListaDatosTemp.Columns[10].ItemStyle.Width = 200;
cuwBusquedaList.LlenarCHKLBusqueda(grvListaDatosTemp);
//ButtonField bf = new ButtonField();
//bf.ButtonType= ButtonType.Image;
//bf.Text = "Asignar actividades";
//bf.HeaderText = "Acciones";
//bf.ImageUrl = "~/Images/MiniBotones/Asignar.png";
//bf.CommandName = "asignar";
//grvListaDatosTemp.Columns.Add(bf);
ButtonField bfActividades = new ButtonField();
bfActividades.ButtonType = ButtonType.Image;
bfActividades.Text = "Seguimiento";
bfActividades.HeaderText = "Acciones";
bfActividades.ImageUrl = "~/Images/MiniBotones/realizaractividad.png";
bfActividades.CommandName = "seguimiento";
grvListaDatosTemp.Columns.Add(bfActividades);
//grvListaDatosTemp.RowDataBound += new GridViewRowEventHandler(grvListaDatos_RowDataBound);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se encarga de agregar el filtro de busqueda seleccionado por el usuario
///
///
private void condicionesBusqueda() //M2
{
AyABL.AyABL objBL = new AyABL.AyABL();
CondicionDAL condicion;
DateTime dteFechaInicio = new DateTime();
DateTime dteFechaFin = new DateTime();
ListItem li = new ListItem();
string p_parametros;
p_parametros = this.cuwBusquedaList.getValorBusqueda();
try
{
if (p_parametros != "")
{
//aqui se construye el listItem con los datos que vienen del control en formato {valor : texto , valor : texto}
char[] separadorTuplas = { ',' };
char[] separadorValores = { ':' };
string[] arrayTupla = p_parametros.Split(separadorTuplas);
for (int i = 0; i <= (arrayTupla.Length - 1); i++)
{
if (arrayTupla[i].ToString() != "")
{
string[] arrayValores = arrayTupla[i].ToString().Split(separadorValores);
li = new ListItem(arrayValores[1], arrayValores[0]);
if (li.Value.Contains("FECHA") && li.Text != string.Empty)
{
if (li.Value.Contains("INICIO"))
{
dteFechaInicio = Convert.ToDateTime(li.Text.ToString());
dteFechaFin = DateTime.Now;
}
if (li.Value.Contains("FIN"))
{
dteFechaFin = Convert.ToDateTime(li.Text.ToString());
if (dteFechaFin != null || dteFechaInicio != null)
if (dteFechaInicio < dteFechaFin || dteFechaFin == dteFechaInicio)
{
objBL = new AyABL.AyABL();
arlCondicionesFiltroBusqueda = objBL.buscarPorFechas(Tablas.insertasolicitud, dteFechaInicio, dteFechaFin, operadorLogico.AND, arlCondicionesFiltroBusqueda);
}
else
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + "Verifique que la Fecha de Inicio sea menor que la Fecha Final" + "M2");
else
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + "Verifique que los campos de las fechas no estén vacíos" + "M2");
}
else
{
objBL = new AyABL.AyABL();
arlCondicionesFiltroBusqueda = objBL.buscarPorFechas(Tablas.insertasolicitud, dteFechaInicio, dteFechaFin, operadorLogico.AND, arlCondicionesFiltroBusqueda);
}
}
else
{
if (li.Value.Contains("booleano") && li.Text != "2")
{
condicion = new CondicionDAL();
char[] separadorColumna = { '|' };
string[] strColumna = li.Value.Split(separadorColumna);
condicion.valorIzquierdo = strColumna[1].ToString();
condicion.operadorGeneral = operadorGeneral.EQUAL;
condicion.operadorLogico = operadorLogico.AND;
condicion.valorDerecho = li.Text.Trim();
arlCondicionesFiltroBusqueda.Add(condicion);
}
else
{
if (li.Text != string.Empty && !li.Value.Contains("booleano"))
{
condicion = new CondicionDAL();
condicion.valorIzquierdo = li.Value;
condicion.operadorGeneral = operadorGeneral.LIKEALL;
condicion.operadorLogico = operadorLogico.AND;
condicion.valorDerecho = "%" + li.Text.Trim() + "%";
arlCondicionesFiltroBusqueda.Add(condicion);
}
}
}
}
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se utiliza con el buscador de la parte superior de la pantalla, y hace que se despliegue la información de acuerdo
/// a lo solicitado
/// |
private void Buscar() //M3
{
try
{
llenarGridViewPendientes(true,1000);
}
catch (Exception ex)
{
throw ex;
}
}
private void AbrirVentanaEmergente()
{
int nContador = 0;
foreach (GridViewRow row in grvListaDatos.Rows)
{
HtmlInputCheckBox chkTemp = (HtmlInputCheckBox)row.Controls[0].Controls[1];
if (chkTemp != null)
{
// si el registro esta marcado
if (chkTemp.Checked)
{
nContador += 1;
if (nContador == 1)
{
Session["PKPROGRAMACION"] = row.Cells[2].Text;
Session["PKSOLICITUD"] = row.Cells[11].Text;
Session["SOLICITUD"] = row.Cells[3].Text;
}
//else
// break;
}
}
}
if (nContador == 0)
MensajeAlerta("Debe seleccionar una solicitud");
if (nContador > 1)
MensajeAlerta("Solo se puede mostrar el detalle de una solicitud a la vez");
if (nContador == 1)
EjecutarScript("VentanaEmergenteAbrir('frwRequisitosSolicitud.aspx');");
//
}
private void AbrirVentanaEmergenteObservaciones()
{
//if (Session["NACTIVIDAD"] == null || Session["NACTIVIDAD"] == "")
//{
// //MensajeAlerta("Debe seleccionar una actividad.");
// string p_strMensaje = "Debe seleccionar una actividad.";
// EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
//}
//else
{
if (Session["NACTIVIDAD"] == null)
Session["NACTIVIDAD"] = string.Empty;
EjecutarScript("VentanaCerrarFormularioAS();VentanaCerrarFormularioAP();VentanaAbrirActividades();VentanaEmergenteAbrirObservaciones('frwObservacionesActividadesSolicitud.aspx');");
ViewState["POPUP"] = "VentanaEmergente";
}
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
EjecutarScript("VentanaAbrirActividades();");
}
private void AbrirVentanaEmergenteObservacionesAP()
{
{
EjecutarScript("VentanaCerrarFormularioAS();VentanaCerrarFormularioAP();VentanaAbrirActividades();VentanaEmergenteAbrirObservaciones('frwObservacionesActividadesSolicitud.aspx');");
ViewState["POPUP"] = "VentanaEmergenteAP";
}
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
EjecutarScript("VentanaAbrirActividades();");
}
private void AbrirVentanaEmergenteObservacionesAS()
{
{
EjecutarScript("VentanaCerrarFormularioAS();VentanaCerrarFormularioAP();VentanaAbrirActividades();VentanaEmergenteAbrirObservaciones('frwObservacionesActividadesSolicitud.aspx');");
ViewState["POPUP"] = "VentanaEmergenteAS";
}
CargarImagenesSeguimientoActividades(int.Parse(Session["PKPROGRAMACION"].ToString()));
EjecutarScript("VentanaAbrirActividades();");
}
private void AbrirVentanaEmergenteDevolucion()
{
if (Session["NACTIVIDAD"] == null || Session["NACTIVIDAD"] == "")
{
//MensajeAlerta("Debe seleccionar una actividad.");
string p_strMensaje = "Debe seleccionar una actividad.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
else
{
EjecutarScript("VentanaAbrirActividades();VentanaEmergenteAbrirDevolucion('frwDevolucionActividadesSolicitud.aspx');");
// EjecutarScript("VentanaAbrirActividades();VentanaEmergenteAbrirDevolucion('frwDevolucionActividadesSolicitud.aspx');");
ViewState["POPUP"] = "VentanaEmergente";
}
}
///
/// Metodo que se utiliza para el despliegue de los botones
///
private void ComandosxMenu() //M4
{
try
{
DataSet dsComandos = getComandos();
if (dsComandos != null)
{
foreach (DataRow drTemp in dsComandos.Tables[0].Rows)
{
switch (drTemp["NOMBRECOMANDO"].ToString().ToUpper())
{
case "NUEVO":
break;
case "MODIFICA":
//Inicio de variable tipo VIEWSTATE
ViewState["PUEDEMODIFICAR"] = true;
break;
}
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Limpia los campos
///
private void limpiarCampos()
{
lblTituloActividad.Text = "Seleccione una actividad";
lblEstadoA1.Text = "Sin asignar";
lblFechaIngresoA1.Text = "Sin asignar";
lblFechaResolucionA1.Text = "Sin asignar";
lblResponsableA1.Items.Clear();
lblResponsableA1.Items.Add("Sin asignar");
imgFormularioAS.Visible = false;
imgFormularioAP.Visible = false;
imgConstancias.Visible = false;
imgAsignacionExpediente.Visible = false;
imgAsignarActividad.Visible = false;
}
#endregion
#region Metodos Controles a Datos (R5)
private int AsignaActividadesUsuarios() //M0
{
ActividadesBL objActividadesBL = new ActividadesBL();
int nValorRetornado = 0;
string strPiePagina = " AVISO DE CONFIDENCIALIDAD: este mensaje y la información incluida en él es confidencial y está dirigida únicamente al destinatario. Puede contener información privilegiada, confidencial, amparada por el secreto profesional o que no debe ser revelada. Si usted ha recibido este correo por error, por favor comunicarlo inmediatamente vía correo y tener la amabilidad de eliminarlo de su sistema. Queda notificado que no deberá copiar este mensaje, ni utilizar, divulgar, publicar o distribuir su contenido de modo alguno. Todo mensaje enviado a esta dirección de correo electrónico puede ser sujeto a inspección por alguien distinto de su receptor originario. La transmisión de correos no garantiza que el correo electrónico sea seguro o libre de error. Por consiguiente, se advierte que esta información pueda estar incompleta o ser poco precisa ya que toda información está sujeta a alterarse sin previo aviso.”";
try
{
string strModo = ViewState["MODO"].ToString();
if (ddlActividades.SelectedValue != "-1")
{
if (ddlEncargado.SelectedValue != "-1")
{
objresponsableActividadBL = new solicitudBL();
objresponsableActividadBL.objresponsableActividadEL.FECHAASIGNACION = DateTime.Now;
objresponsableActividadBL.objresponsableActividadEL.FECHARECIBIDO = DateTime.Now.AddDays(-1);
objresponsableActividadBL.objresponsableActividadEL.FECHADEVOLUCION = DateTime.Now.AddDays(-1);
objresponsableActividadBL.objresponsableActividadEL.VALIDACIONFIRMA = false;
objresponsableActividadBL.objresponsableActividadEL.FKPROGRAMACIONSOLICITUD = int.Parse(Session["PKPROGRAMACION"].ToString());
objresponsableActividadBL.objresponsableActividadEL.FKACTIVIDAD = int.Parse(ddlActividades.SelectedValue);
objresponsableActividadBL.objresponsableActividadEL.FKUSUARIOXDEPENDENCIA = int.Parse(ddlEncargado.SelectedValue);
objresponsableActividadBL.objresponsableActividadEL.FKESTADO = 1;//asignada
objresponsableActividadBL.objresponsableActividadEL.ASTATE = true;
if (strModo == "Nuevo")
{
objActividadesBL.objactividadesEL.Activo = true;
objActividadesBL.objactividadesEL.PK = int.Parse(ddlActividades.SelectedValue);
objActividadesBL.objactividadesEL.FK = int.Parse(ddlEncargado.SelectedValue);
DataSet dsActividad = objActividadesBL.dsListaActividad(arlCondicionesFiltroBusqueda);
arlCondicionesFiltroBusqueda = new ArrayList();
condicionesBusqueda();
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.FKACTIVIDAD = int.Parse(ddlActividades.SelectedValue);
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(ddlEncargado.SelectedValue);
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
//bool bAsignarActividad = false;
//if (int.Parse(Session["FKTIPOINSPECCION"].ToString()) == 3)//ambos
// bAsignarActividad = true;
//else
//{
// if (int.Parse(Session["FKTIPOINSPECCION"].ToString()) == 2 && objSolicitudBL.objSolicitudEL.FKACTIVIDAD != 3)//alcantarillado sanitario
// bAsignarActividad = true;
// else
// {
// if (int.Parse(Session["FKTIPOINSPECCION"].ToString()) == 1 && objSolicitudBL.objSolicitudEL.FKACTIVIDAD != 4)//agua potable
// bAsignarActividad = true;
// }
//}
if (dsEncargadosActividades.Tables[0].Rows.Count == 0)
{
nValorRetornado = objresponsableActividadBL.insertarAsignacionActividadEncargado();
if (nValorRetornado > 0)
{
#region actualizar actividad
GuardarDatosActividad(verificarTarea2());
#endregion
#region Envio de notificacion
notificacionBL objNotificacionBL = new notificacionBL();
objNotificacionBL.objnotificacionEL.FK_DEPARTAMENTO = Session["DEPENDENCIA"].ToString();
objNotificacionBL.objnotificacionEL.FK_TIPO_DOCUMENTO = "Memorando";
objNotificacionBL.objnotificacionEL.HECHO_POR_USUARIO = Session["LOGIN"].ToString();
objNotificacionBL.objnotificacionEL.HECHO_POR_NOMBRE = Session["NOMBREEMPLEADO"].ToString();
objNotificacionBL.objnotificacionEL.HECHO_POR_CORREO = Session["LOGIN"].ToString() + "@aya.go.cr";
//obtener los datos del encargado
arlCondicionesFiltroBusqueda = new ArrayList();
objActividadesBL.objactividadesEL.Activo = true;
objActividadesBL.objactividadesEL.PK = int.Parse(ddlActividades.SelectedValue);
objActividadesBL.objactividadesEL.FK = int.Parse(ddlEncargado.SelectedValue);
dsActividad = objActividadesBL.dsListaActividad(arlCondicionesFiltroBusqueda);
if (dsActividad.Tables[0].Rows.Count != 0)
{
objNotificacionBL.objnotificacionEL.PARA_USUARIO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString();
objNotificacionBL.objnotificacionEL.PARA_NOMBRE = dsActividad.Tables[0].Rows[0]["NOMBRECOMPLETO"].ToString();
objNotificacionBL.objnotificacionEL.PARA_CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
}
else
return 0;
objNotificacionBL.objnotificacionEL.ID_DOCUMENTO = Session["SOLICITUD"].ToString() + " - " + ddlActividades.SelectedItem.Text + " - " + objNotificacionBL.objnotificacionEL.PARA_USUARIO;
objNotificacionBL.objnotificacionEL.ASUNTO = "Atraso en la actividad " + ddlActividades.SelectedItem.Text;
objNotificacionBL.objnotificacionEL.CUERPO = "La solicitud " + Session["SOLICITUD"].ToString() + " no ha sido atendida en el plazo establecido.Este es un mensaje generado de forma automática por la cual NO DEBE SER RESPONDIDO. Ingrese al sistema SIGDD" + strPiePagina;
objNotificacionBL.objnotificacionEL.ESTADO = 1;//Estado : En proceso
//calcular la fecha en base a la actividad, tipo de proyecto,
objActividadesBL.objactividadesEL.NUMEROSOLICITUD = Session["SOLICITUD"].ToString();
DataSet dsActividadTiempo = objActividadesBL.dsListaTiempoActividadxProyecto(arlCondicionesFiltroBusqueda);
if (dsActividadTiempo.Tables[0].Rows.Count != 0)
{
Double nCantidadDias = Double.Parse(dsActividadTiempo.Tables[0].Rows[0]["TIEMPO"].ToString());
DateTime dtFechaVence = DateTime.Now.AddDays(nCantidadDias + 1);
objNotificacionBL.objnotificacionEL.FECHA_VENCE = dtFechaVence.ToShortDateString();
}
objNotificacionBL.objnotificacionEL.TIPO_PERIOCIDAD = "DD";
objNotificacionBL.objnotificacionEL.VALOR_PERIOCIDAD = 1;
objNotificacionBL.objnotificacionEL.status = "00";
objNotificacionBL.objnotificacionEL.message = "OK";
nValorRetornado = objNotificacionBL.insertarNotificacion(objNotificacionBL.objnotificacionEL);
#endregion
#region Envio de correo
//arlCondicionesFiltroBusqueda = new ArrayList();
//condicionesBusqueda();
//objSolicitudBL = new solicitudBL();
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//{
// dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
// if (dsEncargadosActividades.Tables.Count > 0)
// {
// nPkSolicitud = Convert.ToInt32(dsEncargadosActividades.Tables[0].Rows[0][1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
// }
//}
//AyABL.TRA.correoBL objcorreoBL = new AyABL.TRA.correoBL();
//objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
//// objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
//objcorreoBL.objcorreoEL.ASUNTO = "Asignación de actividades - SIGDD";
//objcorreoBL.objcorreoEL.CONTENIDO = "La solicitud de disponibilidad " + Session["SOLICITUD"].ToString() + " fue enviada para que se continúe con el proceso de " + ddlActividades.SelectedItem.Text + ", ingrese al sistema SIGDD" + strPiePagina;
//objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(dsActividad.Tables[0].Rows[0]["PKUSUARIOXDEPENDENCIA"].ToString());
//objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
//nValorRetornado = objcorreoBL.insertarCorreo();
#endregion
}
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": Se ha ingresado la actividad " + ddlActividades.Text.Trim() + " de la solicitud " + Session["SOLICITUD"].ToString(),
"frwGestionarTrabajo.aspx",
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
else
{
//MensajeAlerta("El usuario ya tiene asignada la actividad.");
string p_strMensaje = "El usuario ya tiene asignada la actividad.";
EjecutarScript("VentanaAbrir();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
}
else
{
//MensajeAlerta("Debe seleccionar el usuario encargado antes de continuar ");
string p_strMensaje = "Debe seleccionar el usuario encargado antes de continuar.";
EjecutarScript("VentanaAbrir();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
ddlEncargado.Focus();
}
}
else
{
//MensajeAlerta("Debe seleccionar la actividad antes de continuar");
string p_strMensaje = "Debe seleccionar la actividad antes de continuar.";
EjecutarScript("VentanaAbrir();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
ddlActividades.Focus();
}
}
catch (Exception ex)
{
throw ex;
}
return nValorRetornado;
}
///
/// guarda y modifica registros en la tabla.
///
///
///
private int GuardarDatosActividad(string p_accion)
{
int nValorRetornado = 0;
try
{
//string strModo = ViewState["MODO"].ToString();
int nPkSolicitud = 0;
int nResultadoActualizar = 0;
string strMensajeContenido = "";
string strAsuntoCorreo = "";
string strPiePagina = " AVISO DE CONFIDENCIALIDAD: este mensaje y la información incluida en él es confidencial y está dirigida únicamente al destinatario. Puede contener información privilegiada, confidencial, amparada por el secreto profesional o que no debe ser revelada. Si usted ha recibido este correo por error, por favor comunicarlo inmediatamente vía correo y tener la amabilidad de eliminarlo de su sistema. Queda notificado que no deberá copiar este mensaje, ni utilizar, divulgar, publicar o distribuir su contenido de modo alguno. Todo mensaje enviado a esta dirección de correo electrónico puede ser sujeto a inspección por alguien distinto de su receptor originario. La transmisión de correos no garantiza que el correo electrónico sea seguro o libre de error. Por consiguiente, se advierte que esta información pueda estar incompleta o ser poco precisa ya que toda información está sujeta a alterarse sin previo aviso.”";
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 2;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
string strEncargadoActividad = dsEncargadosActividades.Tables[0].Rows[0]["PKRESPONSABLEACTIVIDAD"].ToString();
ObservacionesActividadesBL objObservacionesBL = new ObservacionesActividadesBL();
//objObservacionesBL.objobservacionesEL.FKNUMSOLICITUD = strNumSolicitudTMP;
objObservacionesBL.objobservacionesEL.DESCRIPCION = "\n" + DateTime.Now.ToString()+ " - " + Session["NOMBREEMPLEADO"].ToString() + " - Se finaliza la actividad programación de trabajo del formulario" + Session["SOLICITUD"].ToString() + " por parte del usuario" + Session["NOMBREEMPLEADO"].ToString();
objObservacionesBL.objobservacionesEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
objObservacionesBL.objobservacionesEL.PKRESPONSABLEACTIVIDAD = int.Parse(strEncargadoActividad);
objObservacionesBL.objobservacionesEL.Fecha = DateTime.Now;
objObservacionesBL.objobservacionesEL.TIPO = 1;
//objObservacionesBL.objobservacionesEL.FKSOLICITUD = nPKSolicitud;
//objObservacionesBL.objobservacionesEL.USUARIO = Session["LOGIN"].ToString();
nValorRetornado = objObservacionesBL.insertarObservacionActividad();
if (nValorRetornado != 0)
{
solicitudBL objSolicitud = new solicitudBL();
//objSolicitud.objresponsableActividadEL.PK = int.Parse(Session["PKRESPONSABLEACTIVIDAD"].ToString());
//poner la actividad actual en estado correspondiente
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString());
objSolicitud.objresponsableActividadEL.FECHADEVOLUCION = DateTime.Now;
if (p_accion == "aprobar")
{
decimal nTiempoActividad = 0;
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Crecimiento vegetativo")
nTiempoActividad = decimal.Parse(row["TIEMPOCVACTIVIDAD"].ToString());
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Desarrollo urbanistico")
nTiempoActividad = decimal.Parse(row["TIEMPODUACTIVIDAD"].ToString());
char[] separadorColumna = { '.' };
string[] strArrayTiempo = nTiempoActividad.ToString().Replace(",", ".").Split(separadorColumna);
DateTime dtFechaRecibido = DateTime.Parse(row["FECHAASIGNACIONRESPONSABLEACTIVIDAD"].ToString()).AddDays(double.Parse(strArrayTiempo[0].ToString()));
if (double.Parse(strArrayTiempo[1].ToString()) > 0)
dtFechaRecibido = dtFechaRecibido.AddHours(4);
if (dtFechaRecibido > DateTime.Now)
objSolicitud.objresponsableActividadEL.FKESTADO = 5;//finalizada a tiempo t_sgm_estadoactividad
else
objSolicitud.objresponsableActividadEL.FKESTADO = 8;//finalizada fuera de tiempo t_sgm_estadoactividad
strMensajeContenido = "La actividad programación de trabajo de la solicitud N° " + Session["SOLICITUD"].ToString() + " ha sido concluida para ver los detalles, ingrese al sistema SIGDD" + strPiePagina;
strAsuntoCorreo = "Conclusión de actividad - SIGDD";
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
if (nResultadoActualizar > 0)
{
#region Envio de correo
AyABL.TRA.correoBL objcorreoBL = new AyABL.TRA.correoBL();
nPkSolicitud = Convert.ToInt32(row[1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
// objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
objcorreoBL.objcorreoEL.ASUNTO = "Estado de actividad - SIGDD";
objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row["FKUSUARIOXDEPENDENCIA"].ToString());
objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
nValorRetornado = objcorreoBL.insertarCorreo();
#endregion
////poner la siguiente actividad en pendiente
//objSolicitudBL = new solicitudBL();
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = 3;
//DataSet dsEncargadosActividadesSiguiente = objSolicitudBL.dsListaActividadesEncargado(null);
//foreach (DataRow row6 in dsEncargadosActividadesSiguiente.Tables[0].Rows)
//{
// objSolicitud.objresponsableActividadEL.PK = int.Parse(row6["PKRESPONSABLEACTIVIDAD"].ToString()); ;
// objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
// objSolicitud.objresponsableActividadEL.FECHARECIBIDO = DateTime.Now;
// nResultadoActualizar = objSolicitud.actualizarActividadSolicitudSiguiente();
// objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
// objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
// objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row6["FKUSUARIOXDEPENDENCIA"].ToString());
// objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
// nValorRetornado = objcorreoBL.insertarCorreo();
//}
////poner la siguiente actividad en pendiente
//objSolicitudBL = new solicitudBL();
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = 4;
//dsEncargadosActividadesSiguiente = objSolicitudBL.dsListaActividadesEncargado(null);
//foreach (DataRow row6 in dsEncargadosActividadesSiguiente.Tables[0].Rows)
//{
// objSolicitud.objresponsableActividadEL.PK = int.Parse(row6["PKRESPONSABLEACTIVIDAD"].ToString()); ;
// objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
// objSolicitud.objresponsableActividadEL.FECHARECIBIDO = DateTime.Now;
// nResultadoActualizar = objSolicitud.actualizarActividadSolicitudSiguiente();
// objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
// objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
// objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row6["FKUSUARIOXDEPENDENCIA"].ToString());
// objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
// nValorRetornado = objcorreoBL.insertarCorreo();
//}
//cancelar notificacion
notificacionBL objNotificacionBL = new notificacionBL();
objNotificacionBL.objnotificacionEL.ID_DOCUMENTO = Session["SOLICITUD"].ToString() + " - Programación de trabajo";
objNotificacionBL.objnotificacionEL.status = "00";
objNotificacionBL.objnotificacionEL.message = "OK";
nValorRetornado = objNotificacionBL.cancelarNotificacion(objNotificacionBL.objnotificacionEL);
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": La actividad programación de trabajo de la solicitud N° " + Session["SOLICITUD"].ToString() + " ha sido finalizada por parte del encargado de la actividad: " + Session["NOMBREEMPLEADO"].ToString().Trim(),
Path.GetFileNameWithoutExtension(Page.AppRelativeVirtualPath),
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
}
}
if (p_accion == "pendiente")
{
//Poner la actividad 2 programacion en pendiente(3)
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 2;
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString()); ;
objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
}
}
}
}
//GuardarEventoBitacora(
// Session["LOGIN"].ToString(),
// AccionBitacora.INSERT.ToString(),
// MensajesBitacora.IngresarRegistro + ": Se ingreso una nueva observacion por el estado de la actividad: La actividad 2 ha sido asignada por: " + Session["NOMBREEMPLEADO"].ToString().Trim(),
// "frwObservacionesActividades.aspx",
// Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
// );
}
catch (Exception ex)
{
throw ex;
}
return nValorRetornado;
}
private int GuardarDatosActividadAPAS(string p_accion)
{
int nValorRetornado = 0;
try
{
AyABL.TRA.correoBL objcorreoBL = new AyABL.TRA.correoBL();
//string strModo = ViewState["MODO"].ToString();
int nPkSolicitud = 0;
int nResultadoActualizar = 0;
string strMensajeContenido = "";
string strAsuntoCorreo = "";
string strPiePagina = " AVISO DE CONFIDENCIALIDAD: este mensaje y la información incluida en él es confidencial y está dirigida únicamente al destinatario. Puede contener información privilegiada, confidencial, amparada por el secreto profesional o que no debe ser revelada. Si usted ha recibido este correo por error, por favor comunicarlo inmediatamente vía correo y tener la amabilidad de eliminarlo de su sistema. Queda notificado que no deberá copiar este mensaje, ni utilizar, divulgar, publicar o distribuir su contenido de modo alguno. Todo mensaje enviado a esta dirección de correo electrónico puede ser sujeto a inspección por alguien distinto de su receptor originario. La transmisión de correos no garantiza que el correo electrónico sea seguro o libre de error. Por consiguiente, se advierte que esta información pueda estar incompleta o ser poco precisa ya que toda información está sujeta a alterarse sin previo aviso.”";
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = int.Parse(Session["NACTIVIDAD"].ToString());
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
string strEncargadoActividad = dsEncargadosActividades.Tables[0].Rows[0]["PKRESPONSABLEACTIVIDAD"].ToString();
ObservacionesActividadesBL objObservacionesBL = new ObservacionesActividadesBL();
//objObservacionesBL.objobservacionesEL.FKNUMSOLICITUD = strNumSolicitudTMP;
objObservacionesBL.objobservacionesEL.DESCRIPCION = "\n" + DateTime.Now.ToString() + " - " + Session["NOMBREEMPLEADO"].ToString() + " - Se " + p_accion + " el formulario por parte del encargado de la revisión: " + Session["NOMBREEMPLEADO"].ToString();
objObservacionesBL.objobservacionesEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
objObservacionesBL.objobservacionesEL.PKRESPONSABLEACTIVIDAD = int.Parse(strEncargadoActividad);
objObservacionesBL.objobservacionesEL.Fecha = DateTime.Now;
objObservacionesBL.objobservacionesEL.TIPO = 1;
//objObservacionesBL.objobservacionesEL.FKSOLICITUD = nPKSolicitud;
//objObservacionesBL.objobservacionesEL.USUARIO = Session["LOGIN"].ToString();
nValorRetornado = objObservacionesBL.insertarObservacionActividad();
if (nValorRetornado != 0)
{
solicitudBL objSolicitud = new solicitudBL();
//objSolicitud.objresponsableActividadEL.PK = int.Parse(Session["PKRESPONSABLEACTIVIDAD"].ToString());
//poner la actividad actual en estado correspondiente
objSolicitud.objresponsableActividadEL.FECHADEVOLUCION = DateTime.Now;
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString());
if (p_accion == "aprueba")
{
decimal nTiempoActividad = 0;
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Crecimiento vegetativo")
nTiempoActividad = decimal.Parse(row["TIEMPOCVACTIVIDAD"].ToString());
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Desarrollo urbanistico")
nTiempoActividad = decimal.Parse(row["TIEMPODUACTIVIDAD"].ToString());
char[] separadorColumna = { '.' };
string[] strArrayTiempo = nTiempoActividad.ToString().Replace(",", ".").Split(separadorColumna);
DateTime dtFechaRecibido = DateTime.Parse(row["FECHAASIGNACIONRESPONSABLEACTIVIDAD"].ToString()).AddDays(double.Parse(strArrayTiempo[0].ToString()));
if (double.Parse(strArrayTiempo[1].ToString()) > 0)
dtFechaRecibido = dtFechaRecibido.AddHours(4);
if (dtFechaRecibido > DateTime.Now)
objSolicitud.objresponsableActividadEL.FKESTADO = 5;//finalizada a tiempo t_sgm_estadoactividad
else
objSolicitud.objresponsableActividadEL.FKESTADO = 8;//finalizada fuera de tiempo t_sgm_estadoactividad
strMensajeContenido = "La actividad " + Session["DESCRIPCIONACTIVIDAD"].ToString() + " de la solicitud N° " + Session["SOLICITUD"].ToString() + " ha sido concluida para ver los detalles, ingrese al sistema SIGDD" + strPiePagina;
strAsuntoCorreo = "Conclusión de actividad - SIGDD";
//cancelar notificacion
notificacionBL objNotificacionBL = new notificacionBL();
objNotificacionBL.objnotificacionEL.ID_DOCUMENTO = Session["SOLICITUD"].ToString() + " - Confección del Criterio técnico de agua potable";
objNotificacionBL.objnotificacionEL.status = "00";
objNotificacionBL.objnotificacionEL.message = "OK";
nValorRetornado = objNotificacionBL.cancelarNotificacion(objNotificacionBL.objnotificacionEL);
}
else
{
objSolicitud.objresponsableActividadEL.FKESTADO = 4;//reinspeccion t_sgm_estadoactividad
strMensajeContenido = "La actividad " + Session["DESCRIPCIONACTIVIDAD"].ToString() + " de la solicitud N° " + Session["SOLICITUD"].ToString() + " no ha sido aprobada para ver los detalles, ingrese al sistema SIGDD" + strPiePagina;
strAsuntoCorreo = "Reinspección de actividad - SIGDD";
}
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
if (nResultadoActualizar > 0)
{
if (objSolicitud.objresponsableActividadEL.FKESTADO == 8 || objSolicitud.objresponsableActividadEL.FKESTADO == 5)
{
objcorreoBL = new AyABL.TRA.correoBL();
//poner la siguiente actividad en pendiente
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 5;
DataSet dsEncargadosActividadesSiguiente = objSolicitudBL.dsListaActividadesEncargado(null);
foreach (DataRow row6 in dsEncargadosActividadesSiguiente.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row6["PKRESPONSABLEACTIVIDAD"].ToString()); ;
objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
objSolicitud.objresponsableActividadEL.FECHARECIBIDO = DateTime.Now;
nResultadoActualizar = objSolicitud.actualizarActividadSolicitudSiguiente();
objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row6["FKUSUARIOXDEPENDENCIA"].ToString());
objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
//Requerimiento 13
//nValorRetornado = objcorreoBL.insertarCorreo();
}
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": La actividad " + Session["DESCRIPCIONACTIVIDAD"].ToString() + " de la solicitud N° " + Session["SOLICITUD"].ToString() + " ha sido finalizada por parte del encargado de la actividad: " + Session["NOMBREEMPLEADO"].ToString().Trim(),
Path.GetFileNameWithoutExtension(Page.AppRelativeVirtualPath),
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
if (objSolicitud.objresponsableActividadEL.FKESTADO == 4)//no aprobo en la revision
{
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": La actividad " + Session["DESCRIPCIONACTIVIDAD"].ToString() + " de la solicitud N° " + Session["SOLICITUD"].ToString() + " no ha sido aprobada en la revisión por parte del encargado de la actividad: " + Session["NOMBREEMPLEADO"].ToString().Trim(),
Path.GetFileNameWithoutExtension(Page.AppRelativeVirtualPath),
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
}
}
if (p_accion == "deniega")
{
//Poner la actividad 2 programacion en pendiente(3)
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 2;
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString()); ;
objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
}
}
//Requerimiento 13
#region Envio de correo
//int nActividad = int.Parse(Session["NACTIVIDAD"].ToString());
////if (nActividad > 2)
//// nActividad = 2;//SE ENVIA PARA REPROGRAMAR11
////else
//// nActividad = 1;
////se envia correo a los encargados de la actividad 3
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = nActividad;
//dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
//objcorreoBL = new AyABL.TRA.correoBL();
//if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
//{
// foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
// {
// nPkSolicitud = Convert.ToInt32(row[1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
// objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
// // objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
// objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
// objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
// objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row["FKUSUARIOXDEPENDENCIA"].ToString());
// objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
// nValorRetornado = objcorreoBL.insertarCorreo();
// }
//}
////se envia correo a los encargados de la actividad 2 para reprogramar la tarea
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = 2;
//dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
//if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
//{
// foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
// {
// nPkSolicitud = Convert.ToInt32(row[1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
// objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
// // objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
// objcorreoBL.objcorreoEL.ASUNTO = "Conclusión de actividad - SIGDD";
// objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
// objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row["FKUSUARIOXDEPENDENCIA"].ToString());
// objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
// nValorRetornado = objcorreoBL.insertarCorreo();
// }
//}
////se envia correo a los encargados de la actividad 5 para iniciar la tarea de constancia de actividad
//objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = 5;
//dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
//if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
//{
// foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
// {
// nPkSolicitud = Convert.ToInt32(row[1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
// objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
// // objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
// objcorreoBL.objcorreoEL.ASUNTO = "Conclusión de actividad - SIGDD";
// objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
// objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row["FKUSUARIOXDEPENDENCIA"].ToString());
// objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
// nValorRetornado = objcorreoBL.insertarCorreo();
// }
//}
#endregion
//Requerimiento 13
}
}
//if (p_accion == "aprueba")
//{
// GuardarEventoBitacora(
// Session["LOGIN"].ToString(),
// AccionBitacora.INSERT.ToString(),
// MensajesBitacora.IngresarRegistro + ": Se aprueba el formulario de " + Session["DESCRIPCIONACTIVIDAD"].ToString() + " por parte del encargado de la revisión: " + Session["NOMBREEMPLEADO"].ToString().Trim() + " de la solicitud " + Session["SOLICITUD"].ToString(),
// Path.GetFileNameWithoutExtension(Page.AppRelativeVirtualPath),
// Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
// );
//}
}
catch (Exception ex)
{
throw ex;
}
return nValorRetornado;
}
private string verificarTarea2()
{
string strValorRetornado = "pendiente";
bool bActividad1 = false;
bool bActividad2 = false;
bool bActividad3 = false;
bool bActividad4 = false;
bool bActividad5 = false;
bool bActividad6 = false;
bool bActividad7 = false;
try
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
//objSolicitudBL.objSolicitudEL.ORDEN = 2;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
int nActividad = int.Parse(row["ORDENACTIVIDAD"].ToString());
if (nActividad == 1)
bActividad1 = true;
if (nActividad == 2)
bActividad2 = true;
if (nActividad == 3 || int.Parse(row["FKTIPOINSPECCION"].ToString()) == 2)
bActividad3 = true;
if (nActividad == 4 || int.Parse(row["FKTIPOINSPECCION"].ToString()) == 1)
bActividad4 = true;
if (nActividad == 5)
bActividad5 = true;
if (nActividad == 6)
bActividad6 = true;
if (nActividad == 7)
bActividad7 = true;
}
if (bActividad1 == true &&
bActividad2 == true &&
bActividad3 == true &&
bActividad4 == true &&
bActividad5 == true &&
bActividad6 == true &&
bActividad7 == true)
strValorRetornado = "aprobar";
}
catch (Exception ex)
{
throw ex;
}
return strValorRetornado;
}
private int EliminarActividadesUsuarios(int n_pPkActividadUsuario) //M0
{
int nValorRetornado = 0;
try
{
ObservacionesActividadesBL objObservacionesBL = new ObservacionesActividadesBL();
objObservacionesBL.objobservacionesEL.PKSOLICITUD = int.Parse(Session["PKSOLICITUD"].ToString());
objObservacionesBL.objobservacionesEL.PKPROGRAMACIONSOLICITUD = int.Parse(Session["PKPROGRAMACION"].ToString());
//objObservacionesBL.objobservacionesEL.PKACTIVIDAD = int.Parse(Session["NACTIVIDAD"].ToString());
//objObservacionesBL.objobservacionesEL.ORDEN = int.Parse(Session["NACTIVIDAD"].ToString());
objObservacionesBL.objobservacionesEL.PKRESPONSABLEACTIVIDAD = n_pPkActividadUsuario;
DataSet dsObservaciones = objObservacionesBL.dsListarObservacionesActividades(null);
if (dsObservaciones.Tables[0].Rows.Count == 0)
{
objresponsableActividadBL = new solicitudBL();
objresponsableActividadBL.objresponsableActividadEL.PK = n_pPkActividadUsuario;
nValorRetornado = objresponsableActividadBL.eliminarAsignacionActividadEncargado();
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": Se ha elimindo la actividad " + n_pPkActividadUsuario.ToString(),
"frwGestionarTrabajo.aspx",
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
else
{
//MensajeAlerta("El registro no puede ser eliminado ya que esta asociado a otro flujo de la solicitud");
string p_strMensaje = "El registro no puede ser eliminado ya que esta asociado a otro flujo de la solicitud.";
EjecutarScript("VentanaAbrir();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
catch (Exception ex)
{
string p_strMensaje = "Se produjo un error al intentar eliminar un registro.";
EjecutarScript("VentanaAbrir();toastr.error('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
throw ex;
}
return nValorRetornado;
}
///
/// guarda y modifica registros en la tabla.
///
///
///
private int GuardarDatosActividad(string p_accion, string strDocumento, int p_nOrden)
{
int nValorRetornado = 0;
try
{
int nPkSolicitud = 0;
int nResultadoActualizar = 0;
string strMensajeContenido = "";
string strAsuntoCorreo = "";
string strPiePagina = " AVISO DE CONFIDENCIALIDAD: este mensaje y la información incluida en él es confidencial y está dirigida únicamente al destinatario. Puede contener información privilegiada, confidencial, amparada por el secreto profesional o que no debe ser revelada. Si usted ha recibido este correo por error, por favor comunicarlo inmediatamente vía correo y tener la amabilidad de eliminarlo de su sistema. Queda notificado que no deberá copiar este mensaje, ni utilizar, divulgar, publicar o distribuir su contenido de modo alguno. Todo mensaje enviado a esta dirección de correo electrónico puede ser sujeto a inspección por alguien distinto de su receptor originario. La transmisión de correos no garantiza que el correo electrónico sea seguro o libre de error. Por consiguiente, se advierte que esta información pueda estar incompleta o ser poco precisa ya que toda información está sujeta a alterarse sin previo aviso.”";
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = p_nOrden;//5:Confeccion de constancias 6:Validacion y firma
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (int.Parse(dsEncargadosActividades.Tables[0].Rows[0]["PKUSUARIOXDEPENDENCIA"].ToString()) == int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString()) && int.Parse(dsEncargadosActividades.Tables[0].Rows[0]["FKESTADO"].ToString()) != 5
&& int.Parse(dsEncargadosActividades.Tables[0].Rows[0]["FKESTADO"].ToString()) != 8)
{
string strEncargadoActividad = dsEncargadosActividades.Tables[0].Rows[0]["PKRESPONSABLEACTIVIDAD"].ToString();
ObservacionesActividadesBL objObservacionesBL = new ObservacionesActividadesBL();
objObservacionesBL.objobservacionesEL.DESCRIPCION = "\n" + DateTime.Now.ToString()+ " - " + Session["NOMBREEMPLEADO"].ToString() + " - Se " + p_accion + " el documento " + strDocumento + " del formulario " + Session["SOLICITUD"].ToString() + " por parte del usuario " + Session["NOMBREEMPLEADO"].ToString();
objObservacionesBL.objobservacionesEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
objObservacionesBL.objobservacionesEL.PKRESPONSABLEACTIVIDAD = int.Parse(strEncargadoActividad);
objObservacionesBL.objobservacionesEL.Fecha = DateTime.Now;
objObservacionesBL.objobservacionesEL.TIPO = 1;//1:observaciones 2:devolucion
nValorRetornado = objObservacionesBL.insertarObservacionActividad();
if (nValorRetornado != 0)
{
solicitudBL objSolicitud = new solicitudBL();
objSolicitud.objresponsableActividadEL.FECHADEVOLUCION = DateTime.Now;
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString());
if (p_accion == "finalizó")
{
decimal nTiempoActividad = 0;
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Crecimiento vegetativo")
nTiempoActividad = decimal.Parse(row["TIEMPOCVACTIVIDAD"].ToString());
if (row["CLASIFICACIONSOLICITUD"].ToString() == "Desarrollo urbanistico")
nTiempoActividad = decimal.Parse(row["TIEMPODUACTIVIDAD"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = p_nOrden;//5:Confeccion de constancias 6:Validacion y firma
char[] separadorColumna = { '.' };
string[] strArrayTiempo = nTiempoActividad.ToString().Replace(",", ".").Split(separadorColumna);
DateTime dtFechaRecibido = DateTime.Parse(row["FECHAASIGNACIONRESPONSABLEACTIVIDAD"].ToString()).AddDays(double.Parse(strArrayTiempo[0].ToString()));
if (double.Parse(strArrayTiempo[1].ToString()) > 0)
dtFechaRecibido = dtFechaRecibido.AddHours(4);
if (dtFechaRecibido > DateTime.Now)
objSolicitud.objresponsableActividadEL.FKESTADO = 5;//finalizada a tiempo t_sgm_estadoactividad
else
objSolicitud.objresponsableActividadEL.FKESTADO = 8;//finalizada fuera de tiempo t_sgm_estadoactividad
strMensajeContenido = "La actividad programacion de trabajo de la solicitud N° " + Session["SOLICITUD"].ToString() + " ha sido concluida para ver los detalles, ingrese al sistema SIGDD" + strPiePagina;
strAsuntoCorreo = "Conclusión de actividad - SIGDD";
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
#region Envio de correo
AyABL.TRA.correoBL objcorreoBL = new AyABL.TRA.correoBL();
nPkSolicitud = Convert.ToInt32(row[1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
objcorreoBL.objcorreoEL.FKNUMSOLICITUD = nPkSolicitud;
// objcorreoBL.objcorreoEL.CORREO = dsActividad.Tables[0].Rows[0]["LOGINUSUARIO"].ToString() + "@aya.go.cr";
objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row["FKUSUARIOXDEPENDENCIA"].ToString());
objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
nValorRetornado = objcorreoBL.insertarCorreo();
//poner la siguiente actividad en pendiente
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = p_nOrden + 1;
DataSet dsEncargadosActividadesSiguiente = objSolicitudBL.dsListaActividadesEncargado(null);
foreach (DataRow row6 in dsEncargadosActividadesSiguiente.Tables[0].Rows)
{
objSolicitud.objresponsableActividadEL.PK = int.Parse(row6["PKRESPONSABLEACTIVIDAD"].ToString()); ;
objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
objcorreoBL.objcorreoEL.ASUNTO = strAsuntoCorreo;
objcorreoBL.objcorreoEL.CONTENIDO = strMensajeContenido;
objcorreoBL.objcorreoEL.FKUSUARIO = Convert.ToInt32(row6["FKUSUARIOXDEPENDENCIA"].ToString());
objcorreoBL.objcorreoEL.Fecha = DateTime.Now;
nValorRetornado = objcorreoBL.insertarCorreo();
}
//cancelar notificacion
notificacionBL objNotificacionBL = new notificacionBL();
objNotificacionBL.objnotificacionEL.ID_DOCUMENTO = Session["SOLICITUD"].ToString() + " - Validación y firma";
objNotificacionBL.objnotificacionEL.status = "00";
objNotificacionBL.objnotificacionEL.message = "OK";
nValorRetornado = objNotificacionBL.cancelarNotificacion(objNotificacionBL.objnotificacionEL);
#endregion
}
}
//if (p_accion == "edita")
//{
// //Poner la actividad 6 programacion en pendiente(3)
// objSolicitudBL = new solicitudBL();
// objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
// objSolicitudBL.objSolicitudEL.ORDEN = p_nOrden + 1;
// dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
// foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
// {
// objSolicitud.objresponsableActividadEL.PK = int.Parse(row["PKRESPONSABLEACTIVIDAD"].ToString()); ;
// objSolicitud.objresponsableActividadEL.FKESTADO = 3;//pendiente t_sgm_estadoactividad
// nResultadoActualizar = objSolicitud.actualizarActividadSolicitud();
// }
//}
}
}
}
}
catch (Exception ex)
{
throw ex;
}
return nValorRetornado;
}
#endregion
#region Metodos Datos a Controles (R6)
///
/// Carga el grid principal
///
///
private void llenarGridView(bool p_Llenar) //M0
{
try
{
if (!IsPostBack || p_Llenar)
{
arlCondicionesFiltroBusqueda = new ArrayList();
condicionesBusqueda();
objSolicitudBL = new solicitudBL();
int nAccesoInformacion = 0;
if (Session["ACCESOINSORMACION"] != null)
nAccesoInformacion = int.Parse(Session["ACCESOINSORMACION"].ToString());
if (nAccesoInformacion == 1 ) //1:region -- 0:Todo
objSolicitudBL.objSolicitudEL.FKREGION = int.Parse(Session["REGION"].ToString());
if (nAccesoInformacion == 2 )//2:Dependencia -- 0:Todo
{
//objSolicitudBL.objSolicitudEL.FKREGION = int.Parse(Session["REGION"].ToString());
//objSolicitudBL.objSolicitudEL.FKDEPENDENCIA = int.Parse(Session["DEPENDENCIA"].ToString());
objSolicitudBL.objSolicitudEL.LISTADODEPENDENCIAS = Session["LISTADEPENDENCIAS"].ToString();
}
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
if (arlCondicionesFiltroBusqueda.Count > 0)
{
DataSet ds = objSolicitudBL.dsListaSolicitudGestion(arlCondicionesFiltroBusqueda);
General.detalleGridView(ds, grvListaDatosTemp, lblTotalDatos);
}
else
{
MensajeAlerta("Debe agregar filtros para la busqueda");
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Carga el grid principal
///
///
private void llenarGridViewPendientes(bool p_Llenar, int nCantidadFilas) //M0
{
try
{
if (!IsPostBack || p_Llenar)
{
//arlCondicionesFiltroBusqueda = new ArrayList();
condicionesBusqueda();
objSolicitudBL = new solicitudBL();
int nAccesoInformacion = 0;
if (Session["ACCESOINSORMACION"] != null)
nAccesoInformacion = int.Parse(Session["ACCESOINSORMACION"].ToString());
if (nAccesoInformacion == 1) //1:region -- 0:Todo
objSolicitudBL.objSolicitudEL.FKREGION = int.Parse(Session["REGION"].ToString());
//if (nAccesoInformacion == 2)//2:Dependencia -- 0:Todo
//{
// objSolicitudBL.objSolicitudEL.FKREGION = int.Parse(Session["REGION"].ToString());
// objSolicitudBL.objSolicitudEL.FKDEPENDENCIA = int.Parse(Session["DEPENDENCIA"].ToString());
//}
if (nAccesoInformacion == 2)//2:Dependencia -- 0:Todo
{
//objSolicitudBL.objSolicitudEL.FKREGION = int.Parse(Session["REGION"].ToString());
//objSolicitudBL.objSolicitudEL.FKDEPENDENCIA = int.Parse(Session["DEPENDENCIA"].ToString());
objSolicitudBL.objSolicitudEL.LISTADODEPENDENCIAS = Session["LISTADEPENDENCIAS"].ToString();
}
//objSolicitudBL.objSolicitudEL.TEMPORAL = true;
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
{
DataSet ds = objSolicitudBL.dsListaSolicitudGestionGrid(arlCondicionesFiltroBusqueda,nCantidadFilas);
General.detalleGridView(ds, grvListaDatosTemp, lblTotalDatos);
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Carga el grid principal
///
///
private void llenarDDLActividades(bool p_Llenar) //M0
{
try
{
if (!IsPostBack || p_Llenar)
{
ddlActividades.Items.Clear();
arlCondicionesFiltroBusqueda = new ArrayList();
ActividadesBL objActividadesBL = new ActividadesBL();
if (Session["PKSOLICITUD"] != null)
objActividadesBL.objactividadesEL.PKSOLICITUD = int.Parse(Session["PKSOLICITUD"].ToString());
objActividadesBL.objactividadesEL.ASTATE = true;
objActividadesBL.objactividadesEL.FKTIPOINSPECCION = int.Parse(Session["FKTIPOINSPECCION"].ToString());
DataSet dsActividad = objActividadesBL.dsListarActividad(arlCondicionesFiltroBusqueda);
if (dsActividad.Tables[0].Rows.Count != 0)
{
ddlActividades.DataSource = dsActividad;
ddlActividades.DataTextField = dsActividad.Tables[0].Columns["DESCRIPCIONACTIVIDAD"].ColumnName;
ddlActividades.DataValueField = dsActividad.Tables[0].Columns["PKACTIVIDAD"].ColumnName;
ddlActividades.DataBind();
ddlActividades.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlActividades.Items.Insert(0, new ListItem("----- No existen opciones -----", "-1"));
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Carga el grid principal
///
///
private void llenarDDLEncargado(bool p_Llenar) //M0
{
try
{
ddlEncargado.Items.Clear();
arlCondicionesFiltroBusqueda = new ArrayList();
ActividadesBL objActividadesBL = new ActividadesBL();
objActividadesBL.objactividadesEL.Activo = true;
objActividadesBL.objactividadesEL.PK = int.Parse(ddlActividades.SelectedValue);
objActividadesBL.objactividadesEL.FKDEPENDENCIA = int.Parse(Session["FKDEPENDENCIASIGDD"].ToString());
DataSet dsActividad = objActividadesBL.dsListaActividad(arlCondicionesFiltroBusqueda);
if (dsActividad.Tables[0].Rows.Count != 0)
{
ddlEncargado.DataSource = dsActividad;
ddlEncargado.DataTextField = dsActividad.Tables[0].Columns["NOMBRECOMPLETO"].ColumnName;
ddlEncargado.DataValueField = dsActividad.Tables[0].Columns["PKUSUARIOXDEPENDENCIA"].ColumnName;
ddlEncargado.DataBind();
ddlEncargado.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlEncargado.Items.Insert(0, new ListItem("----- No existen opciones -----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Carga el grid de tareas
///
///
private void llenarGridViewActividadesEncargado(int n_pProgramacionSolicitud) //M0
{
try
{
arlCondicionesFiltroBusqueda = new ArrayList();
condicionesBusqueda();
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = n_pProgramacionSolicitud;
grvListaAsignaciones.Columns[4].Visible = true;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
{
if (dsEncargadosActividades.Tables.Count > 0)
{
nPkSolicitud = Convert.ToInt32(dsEncargadosActividades.Tables[0].Rows[0][1].ToString());//AQUI INSERTAMOS LA PK DE LA SOLICITUD
grvListaAsignaciones.DataSource = dsEncargadosActividades;
grvListaAsignaciones.DataBind();
General.detalleGridView(dsEncargadosActividades, grvListaAsignaciones, lblTotalDatos);
grvListaAsignaciones.Columns[4].Visible = false;
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Carga el grid de tareas
///
///
private void CargarSeguimientoActividades(int n_pProgramacionSolicitud,int n_pActividad, string strDescripcionActividad) //M0
{
try
{
arlCondicionesFiltroBusqueda = new ArrayList();
//condicionesBusqueda();
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = n_pProgramacionSolicitud;
objSolicitudBL.objSolicitudEL.ORDEN = n_pActividad;
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
imgAsignacionExpediente.Visible = false;
imgAsignarActividad.Visible = false;
imgFormularioAP.Visible = false;
imgFormularioAS.Visible = false;
imgConstancias.Visible = false;
imgValidacionFirma.Visible = false;
//cuwVentanaEmergenteDevolucion.Visible = false;
imgNotificacionUsuario.Visible = false;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (n_pActividad == 1)
imgAsignacionExpediente.Visible = true;
if (n_pActividad == 2)
{
imgAsignarActividad.Visible = true;
cuwVentanaEmergenteDevolucion.Visible = true;
}
if (n_pActividad == 3)
{
imgFormularioAP.Visible = true;
cuwVentanaEmergenteDevolucion.Visible = true;
}
if (n_pActividad == 4)
{
imgFormularioAS.Visible = true;
cuwVentanaEmergenteDevolucion.Visible = true;
}
if (n_pActividad == 5)
{
imgConstancias.Visible = true;
cuwVentanaEmergenteDevolucion.Visible = true;
}
if (n_pActividad == 6)
{
imgValidacionFirma.Visible = true;
cuwVentanaEmergenteDevolucion.Visible = true;
}
if (n_pActividad == 7)
{
imgNotificacionUsuario.Visible = true;
}
lblTituloActividad.Text = "Actividad N°" + n_pActividad.ToString();
lblEstadoA1.Text = dsEncargadosActividades.Tables[0].Rows[0]["DESCRIPCIONESTADO"].ToString();
lblFechaIngresoA1.Text = dsEncargadosActividades.Tables[0].Rows[0]["FECHAASIGNACIONRESPONSABLEACTIVIDAD"].ToString();
lblFechaResolucionA1.Text = dsEncargadosActividades.Tables[0].Rows[0]["FECHADEVOLUCIONRESPONSABLEACTIVIDAD"].ToString();
Session["NACTIVIDAD"] = n_pActividad;
Session["DESCRIPCIONACTIVIDAD"] = strDescripcionActividad;
Session["PKRESPONSABLEACTIVIDAD"] = dsEncargadosActividades.Tables[0].Rows[0]["PKRESPONSABLEACTIVIDAD"].ToString();
}
else
{
lblTituloActividad.Text = "Actividad N°" + n_pActividad.ToString();
lblEstadoA1.Text = "Sin asignar";
lblFechaIngresoA1.Text = "Sin asignar";
lblFechaResolucionA1.Text = "Sin asignar";
lblResponsableA1.Items.Add("Sin asignar");
Session["NACTIVIDAD"] = string.Empty;
Session["DESCRIPCIONACTIVIDAD"] = string.Empty;
Session["PKRESPONSABLEACTIVIDAD"] = string.Empty;
}
lblResponsableA1.Items.Clear();
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
string strNombreFormateado = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(row["NOMBRECOMPLETO"].ToString().ToLower());
lblResponsableA1.Items.Add(strNombreFormateado);
//lblResponsableA1.Text += strNombreFormateado + "\n";
}
EjecutarScript("VentanaAbrirActividades();");
}
catch (Exception ex)
{
throw ex;
}
}
private bool consultarActividadProgramacion(int nPKProgramacion)
{
bool bRespuesta = false;
try
{
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = nPKProgramacion;
objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 6;//firma digital debe poder asignar el usuario a responder
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
bRespuesta = true;
}
catch (Exception ex)
{
throw ex;
}
return bRespuesta;
}
///
/// Carga el grid de tareas
///
///
private void CargarImagenesSeguimientoActividades(int n_pProgramacionSolicitud) //M0
{
try
{
int nEstado = 0;
int nActividad = 0;
int nEstadoAnterior = 0;
int nActividadAnterior = 0;
arlCondicionesFiltroBusqueda = new ArrayList();
//condicionesBusqueda();
objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = n_pProgramacionSolicitud;
//objSolicitudBL.objSolicitudEL.FKUSUARIOXDEPENDENCIA = int.Parse(Session["PKUSUARIOXDEPENDENCIA"].ToString());
imgActividad1.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad2.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad3.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad4.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad5.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad6.ImageUrl = "../../Images/Actividades/circulogris.jpg";
imgActividad7.ImageUrl = "../../Images/Actividades/circulogris.jpg";
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
foreach(DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
ImageButton Imagectr = new ImageButton();//)FindControl("imgActividad" + x.ToString());
nActividad = int.Parse(row["ORDENACTIVIDAD"].ToString());
if (nActividadAnterior != nActividad )
nEstado = int.Parse(row["FKESTADO"].ToString());
if (nActividadAnterior == nActividad && nEstadoAnterior != 5 && nEstadoAnterior != 8)
{
nEstado = int.Parse(row["FKESTADO"].ToString());
}
if (nActividadAnterior != nActividad || ( nEstadoAnterior != 5 && nActividadAnterior == nActividad))
{
if (nActividadAnterior != nActividad || (nEstadoAnterior != 8 && nActividadAnterior == nActividad))
{
switch (nEstado)
{
//Asignada
case 1: Imagectr.ImageUrl = "../../Images/Actividades/circuloamarillo.jpg"; break;
//No asignada
case 2: Imagectr.ImageUrl = "../../Images/Actividades/circulogris.jpg"; break;
//Pendiente
case 3: Imagectr.ImageUrl = "../../Images/Actividades/circuloamarillo.jpg"; break;
//Re inspeccion
case 4: Imagectr.ImageUrl = "../../Images/Actividades/circuloamarillo.jpg"; break;
//Finalizada
case 5: Imagectr.ImageUrl = "../../Images/Actividades/circuloverde.jpg"; break;
//Devolucion
case 6: Imagectr.ImageUrl = "../../Images/Actividades/circuloamarillo.jpg"; break;
//Finalizado fuera de tiempo
case 8: Imagectr.ImageUrl = "../../Images/Actividades/circulorojo.png"; break;
}
switch (nActividad)
{
case 1: imgActividad1.ImageUrl = Imagectr.ImageUrl; break;
case 2: imgActividad2.ImageUrl = Imagectr.ImageUrl; break;
case 3: imgActividad3.ImageUrl = Imagectr.ImageUrl; break;
case 4: imgActividad4.ImageUrl = Imagectr.ImageUrl; break;
case 5: imgActividad5.ImageUrl = Imagectr.ImageUrl; break;
case 6: imgActividad6.ImageUrl = Imagectr.ImageUrl; break;
case 7: imgActividad7.ImageUrl = Imagectr.ImageUrl; break;
}
nEstadoAnterior = int.Parse(row["FKESTADO"].ToString());
nActividadAnterior = int.Parse(row["ORDENACTIVIDAD"].ToString());
}
}
}
}
//imgActividad3.Enabled = false;
//imgActividad4.Enabled = false;
//if (dsEncargadosActividades.Tables[0].Rows[0]["FKTIPOINSPECCION"].ToString() == "1")
// imgActividad3.Enabled = true;
//if (dsEncargadosActividades.Tables[0].Rows[0]["FKTIPOINSPECCION"].ToString() == "2")
// imgActividad4.Enabled = true;
//if (dsEncargadosActividades.Tables[0].Rows[0]["FKTIPOINSPECCION"].ToString() == "3")
//{
// imgActividad3.Enabled = true;
// imgActividad4.Enabled = true;
//}
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
protected void imgAsignacionExpediente_Click(object sender, ImageClickEventArgs e)
{
try
{
EncriptaBL objEncripta = new EncriptaBL();
//int i = Convert.ToInt32(e.CommandArgument);
//GridViewRow selectedRow = grvListaDatos.Rows[i];
//Session["PKSOLICITUD"] = selectedRow.Cells[12].Text;
//Session["SOLICITUD"] = selectedRow.Cells[3].Text;
//Session["PKPROGRAMACION"] = selectedRow.Cells[2].Text;
ArrayList arlCondicionesFiltroBusqueda = new ArrayList();
if (Session["PKPROGRAMACION"].ToString() != " ") //se verifica que existe la programcicion de la solicitud
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 1; //la activida de Ingreso y asignacion de expediente
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(arlCondicionesFiltroBusqueda);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0) //se verifica que ya se haya asignado la actividad 1
{
bool existe = false;
foreach (DataRow row in dsEncargadosActividades.Tables[0].Rows)
{
if (row["FKUSUARIOXDEPENDENCIA"].ToString().Trim() == Session["PKUSUARIOXDEPENDENCIA"].ToString().Trim())
existe = true;
}
if (existe)
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&d=ingresodatos");
else
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&d=deshabilitar");
}
else
{
MensajeAlerta("No se han programado las actividades relacionadas con esta solicitud");
}
}
else
{
MensajeAlerta("No se han programado las actividades relacionadas con esta solicitud");
}
}
catch (Exception ex)
{
MensajeError("Se produjo un error con la opción seleccionada", ex);
}
}
protected void imgAsignarActividad_Click(object sender, ImageClickEventArgs e)
{
try
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 5;//se valida la tarea 5 constancias ya que no se puede firmar y validar las constancias sin la informacion que se encuentra en el este formulario
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
btnAsignarActividades.Enabled = false;
ddlActividades.Enabled = false;
ddlEncargado.Enabled = false;
}
else
{
btnAsignarActividades.Enabled = true;
ddlActividades.Enabled = true;
ddlEncargado.Enabled = true;
}
int pkSolicitud = int.Parse(Session["PKPROGRAMACION"].ToString());
llenarGridViewActividadesEncargado(pkSolicitud);
llenarDDLActividades(true);
llenarDDLEncargado(true);
EjecutarScript("VentanaCerrarActividades();VentanaAbrir();");
}
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
catch (Exception ex)
{
MensajeError("Se produjo un error con la opción seleccionada", ex);
}
}
protected void imgValidacionFirma_Click(object sender, ImageClickEventArgs e)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 5;//se valida la tarea 5 constancias ya que no se puede firmar y validar las constancias sin la informacion que se encuentra en el este formulario
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
{
EncriptaBL objEncripta = new EncriptaBL();
objSolicitudBL.objSolicitudEL.ORDEN = 6;//se valida la tarea 6 validacion y firma para deshabilitar el boton de editar y firma
dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0 )
{
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&c=confeccion&f=finalizado");
}
else
Response.Redirect("~/forms/tra/frwNuevaSolicitud.aspx?" + "l=" + objEncripta.Encryptar(Session["LOGIN"].ToString()) + "&u=" + objEncripta.Encryptar(Session["PKUSUARIO"].ToString()) + "&c=confeccion&d=firmar");
}
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
else
{
//MensajeAlerta("No se ha finalizado la confección de constancias de donde salen los documentos a firmar.");
string p_strMensaje = "No se ha finalizado la confección de constancias de donde se generan los documentos a firmar y validar.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
protected void imgNotificacionUsuario_Click(object sender, ImageClickEventArgs e)
{
solicitudBL objSolicitudBL = new solicitudBL();
objSolicitudBL.objSolicitudEL.PK = int.Parse(Session["PKPROGRAMACION"].ToString());
objSolicitudBL.objSolicitudEL.ORDEN = 6;//se valida la tarea 6 validacion y firma se haya finalizado
objSolicitudBL.objSolicitudEL.FKESTADO = 5;
objSolicitudBL.objSolicitudEL.FKESTADO2 = 8;
DataSet dsEncargadosActividades = objSolicitudBL.dsListaActividadesEncargado(null);
if (dsEncargadosActividades.Tables[0].Rows.Count > 0)
{
if (Session["SOLICITUD"] != null && Session["PKUSUARIOXDEPENDENCIA"] != null)
{
EjecutarScript("VentanaAbrirNotificacionCliente();");
var s = "qweqweqwe";
}
else
Response.Redirect("../wfrLogin.aspx?sesion=expiro", false);
}
else
{
//MensajeAlerta("No se ha finalizado la confección de constancias de donde salen los documentos a firmar.");
string p_strMensaje = "No se ha finalizado la confección de constancias de donde se generan los documentos a firmar y validar.";
EjecutarScript("VentanaAbrirActividades();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
protected void grvListaAsignaciones_RowDataBound(object sender, GridViewRowEventArgs e)
{
try
{
//GridViewRow selectedRow = e.Row;
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[4].ToolTip = "Seguimiento de Disponibilidades";
// if (e.Row.Cells[12].Text.Trim() == "Asignada")
// selectedRow.BackColor = System.Drawing.Color.Yellow;
// if (e.Row.Cells[12].Text.Trim() == "Finalizada")
// selectedRow.BackColor = System.Drawing.Color.Green;
// if (e.Row.Cells[12].Text.Trim() == "Bloqueada")
// selectedRow.BackColor = System.Drawing.Color.Gray;
}
}
catch (Exception ex)
{
MensajeError("Se produjo un error al realizar la consulta.", ex);
}
}
protected void btnFinalizarAP_Click(object sender, EventArgs e)
{
try
{
//limpiarCampos();
string strNombreCarta = Session["SOLICITUD"].ToString();
string pdfPathCriterioAP = ConfigurationManager.AppSettings["DocumentosPDF"].ToString() + @"\" + strNombreCarta + @"\" + strNombreCarta + "-AP.pdf";
string ruta = ConfigurationManager.AppSettings["RutaPdfAdjuntosSql"].ToString() + @"\" + strNombreCarta;
//se carga el archivo y el registro a vision 2020
Documento oDoc = new Documento();
string Archivo = strNombreCarta + "-AP.pdf";
string strAlmacenado = "";
if (File.Exists(@"C:\fileproyectos\FileDesarrollo\WCF-PDF\" + Archivo))
{
strAlmacenado = "EXISTE";
}
//string strAlmacenado = oDoc.Visor_Documento(strNombreCarta.ToString().Trim() + "|" + "Criterio técnico AP", strNombreCarta.ToString().Trim(), pdfPathCriterioAP, strNombreCarta + "-AP.pdf");
string p_strMensaje = string.Empty;
if (strAlmacenado != string.Empty && strAlmacenado != "No existe")
{
inspeccionapBL objInspeccionBL = new inspeccionapBL();
objInspeccionBL.objinspeccionapEL.FKSOLICITUD = int.Parse(Session["PKSOLICITUD"].ToString());
objInspeccionBL.objinspeccionapEL.FKESTADOINSPECCION = 1;//ASIGNADA
DataSet dsInspeccionBL = objInspeccionBL.listarInspecciones(null);
if (dsInspeccionBL.Tables[0].Rows.Count > 0)
{
GuardarDatosActividadAPAS("aprueba");
p_strMensaje = "Finalizó con éxito la actividad 3 Confección del Criterio Técnico AP.";
EjecutarScript("VentanaAbrirFormularioAP();;toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
else
{
p_strMensaje = "No se han generado inspecciones para esta solicitud.";
EjecutarScript("VentanaAbrirFormularioAP();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
else
{
p_strMensaje = "No se han generado los documentos en formato pdf de los criterios técnicos por favor ingrese de nuevo al formulario presione exportar.";
EjecutarScript("VentanaAbrirFormularioAP();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
catch (Exception ex)
{
EjecutarScript("VentanaAbrirFormularioAP();toastr.warning('Se presentó un error al finalizar la actividad.', 'Información',toastr.options ={closeButton: true})");
}
}
protected void btnFinalizarAS_Click(object sender, EventArgs e)
{
try
{
string strNombreCarta = Session["SOLICITUD"].ToString();
string pdfPathCriterioAP = ConfigurationManager.AppSettings["DocumentosPDF"].ToString() + @"\" + strNombreCarta + @"\" + strNombreCarta + "-AS.pdf";
string ruta = ConfigurationManager.AppSettings["RutaPdfAdjuntosSql"].ToString() + @"\" + strNombreCarta;
//se carga el archivo y el registro a vision 2020
Documento oDoc = new Documento();
string Archivo = strNombreCarta + "-AP.pdf";
string strAlmacenado = "";
if (File.Exists(@"C:\fileproyectos\FileDesarrollo\WCF-PDF\" + Archivo))
{
strAlmacenado = "EXISTE";
}
//string strAlmacenado = oDoc.Visor_Documento(strNombreCarta.ToString().Trim() + "|" + "Criterio técnico AS", strNombreCarta.ToString().Trim(), pdfPathCriterioAP, strNombreCarta + "-AS.pdf");
string p_strMensaje = string.Empty;
if (strAlmacenado != string.Empty && strAlmacenado != "No existe")
{
inspeccionasBL objInspeccionasBL = new inspeccionasBL();
objInspeccionasBL.objinspeccionasEL.FKSOLICITUD = int.Parse(Session["PKSOLICITUD"].ToString());
objInspeccionasBL.objinspeccionasEL.FKESTADOINSPECCION = 1;//ASIGNADA
DataSet dsInspeccionBL = objInspeccionasBL.listarInspeccionesAS(null);
if (dsInspeccionBL.Tables[0].Rows.Count > 0)
{
GuardarDatosActividadAPAS("aprueba");
p_strMensaje = "Finalizó con éxito la actividad 4 Confección del Criterio Técnico AS.";
EjecutarScript("VentanaAbrirFormularioAS();toastr.success('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
else
{
p_strMensaje = "No se han generado inspecciones para esta solicitud.";
EjecutarScript("VentanaAbrirFormularioAS();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
else
{
p_strMensaje = "No se han generado los documentos en formato pdf de los criterios técnicos por favor ingrese de nuevo al formulario presione exportar.";
EjecutarScript("VentanaAbrirFormularioAS();toastr.warning('" + p_strMensaje + "', 'Información',toastr.options ={closeButton: true})");
}
}
catch (Exception ex)
{
EjecutarScript("VentanaAbrirFormularioAS();toastr.warning('Se presentó un error al finalizar la actividad.', 'Información',toastr.options ={closeButton: true})");
}
}
}