public XElement InsertarActualizarRequisicion(string pTipoTransaccion, E_REQUISICION pRequisicion, string pClUsuario, string pNbPrograma) { using (SistemaSigeinEntities context = new SistemaSigeinEntities()) { ObjectParameter pout_clave_retorno = new ObjectParameter("XML_RESULTADO", typeof(XElement)); context.SPE_INSERTA_ACTUALIZA_K_REQUISICION(pout_clave_retorno, pRequisicion.ID_REQUISICION, pRequisicion.NO_REQUISICION, pRequisicion.FE_SOLICITUD, pRequisicion.FE_REQUERIMIENTO, pRequisicion.ID_PUESTO, pRequisicion.CL_ESTATUS_REQUISICION, pRequisicion.CL_CAUSA, pRequisicion.DS_CAUSA, pRequisicion.DS_TIEMPO_CAUSA, pRequisicion.ID_SOLICITANTE, pRequisicion.NB_EMPLEADO_SOLICITANTE, pRequisicion.NB_PUESTO_SOLICITANTE, pRequisicion.NB_CORREO_SOLICITANTE, pRequisicion.ID_AUTORIZA, pRequisicion.NB_EMPLEADO_AUTORIZA, pRequisicion.NB_PUESTO_AUTORIZA, pRequisicion.NB_CORREO_AUTORIZA, pRequisicion.ID_EMPLEADO_AUTORIZA_PUESTO, pRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO, pRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO_PUESTO, pRequisicion.NB_CORREO_AUTORIZA_PUESTO, pRequisicion.ID_EMPRESA, pRequisicion.CL_TOKEN, pRequisicion.FL_REQUISICION, pRequisicion.ID_EMPLEADO_SUPLENTE, pRequisicion.NB_EMPLEADO_SUPLENTE, pRequisicion.MN_SUELDO, pRequisicion.MN_SUELDO_TABULADOR, pRequisicion.MN_SUELDO_SUGERIDO, pRequisicion.MAX_SUELDO_SUGERIDO, pRequisicion.CL_TOKEN_PUESTO, pRequisicion.FL_NOTIFICACION, pRequisicion.DS_COMENTARIOS, pClUsuario, pNbPrograma, pTipoTransaccion); return(XElement.Parse(pout_clave_retorno.Value.ToString())); } }
public void SolicitarAutorizacionRequisicion(E_REQUISICION vRequisicion) { //Mail mail = new Mail(ContextoApp.mailConfiguration); EmpleadoNegocio nEmpleado = new EmpleadoNegocio(); string vNbPuesto; string vNbSolicitante; string vNbPuestoSolicitante; vIdAutoriza = vRequisicion.ID_AUTORIZA.Value; vNbPuesto = vRequisicion.NB_PUESTO; vNbSolicitante = vRequisicion.NB_EMPLEADO_SOLICITANTE; vNbPuestoSolicitante = vRequisicion.NB_PUESTO_SOLICITANTE; //var vUsuarioInfo = nEmpleado.Obtener_M_EMPLEADO(ID_EMPLEADO: vIdAutoriza).FirstOrDefault(); //if (vUsuarioInfo != null) //{ string Asunto = "Autorización de requisición"; if (string.IsNullOrEmpty(txtCorreoAutorizaReq.Text)) { UtilMensajes.MensajeResultadoDB(rnMensaje, "El empleado que autoriza la requisición no tiene un correo electrónico. Actualiza el inventario de personal antes de envíar la solicitud de autorización", E_TIPO_RESPUESTA_DB.WARNING); return; } if (pClEstatusRequisicion == "AUTORIZADO") { UtilMensajes.MensajeResultadoDB(rnMensaje, "La requisición ya está autorizada.", E_TIPO_RESPUESTA_DB.WARNING); return; } try { string myUrl = ResolveUrl("~/Logon.aspx?FlProceso="); string vUrl = ContextoUsuario.nbHost + myUrl + flRequisicion.ToString() + "&ClProceso=" + "AUTORIZAREQUISICION"; string vMensajeCorreo = ContextoApp.IDP.NotificacionRrhh.dsAutorizadorRequisicion.dsMensaje; vMensajeCorreo = vMensajeCorreo.Replace("[NB_NOTIFICAR]", vRequisicion.NB_EMPLEADO_AUTORIZA); vMensajeCorreo = vMensajeCorreo.Replace("[NB_CREA_REQUISICION]", vNbSolicitante); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO_CREA_REQUISICION]", vNbPuestoSolicitante); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO]", vNbPuesto); vMensajeCorreo = vMensajeCorreo.Replace("[URL]", vUrl); vMensajeCorreo = vMensajeCorreo.Replace("[CONTRASENA]", clTokenRequisicion); builder.Append(txtCorreoAutorizaReq.Text + ";"); EnvioCorreo(builder.ToString(), vMensajeCorreo, Asunto); pClEstatusRequisicion = "POR AUTORIZAR"; UtilMensajes.MensajeResultadoDB(rnMensaje, "Solicitud de autorización enviada. Guarda la requisición.", E_TIPO_RESPUESTA_DB.SUCCESSFUL, pCallBackFunction: ""); } catch (Exception) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Envío no procesado", E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: ""); } //} }
protected void btnSave_click(object sender, EventArgs e) { E_REQUISICION VRequisicionAgregar = new E_REQUISICION(); RequisicionNegocio nrequisicion = new RequisicionNegocio(); ptipo = E_TIPO_OPERACION_DB.I.ToString(); VRequisicionAgregar.NO_REQUISICION = txtNo_requisicion.Text; VRequisicionAgregar.FE_SOLICITUD = Fe_solicitud.SelectedDate; VRequisicionAgregar.FE_REQUERIMIENTO = Fe_Requerimiento.SelectedDate; VRequisicionAgregar.ID_PUESTO = int.Parse(cmbPuestos.SelectedValue); VRequisicionAgregar.CL_ESTADO = "VIGENTE"; VRequisicionAgregar.CL_CAUSA = cmbCausas.SelectedValue; VRequisicionAgregar.DS_CAUSA = txtEspecifique.Text; DepartamentoNegocio ndepartamento = new DepartamentoNegocio(); var vdepartamento = ndepartamento.Obtener_M_DEPARTAMENTO(NB_DEPARTAMENTO: txtArea.Text).FirstOrDefault(); /*Se encarga de dar el ID_AUTORIZA y el ID_SOLICITANTE*/ EmpleadoNegocio nempleado = new EmpleadoNegocio(); var vEmpleado = nempleado.Obtener_M_EMPLEADO(int.Parse(cmbAutoriza.SelectedValue)).FirstOrDefault(); VRequisicionAgregar.ID_AUTORIZA = vEmpleado.ID_EMPLEADO; VRequisicionAgregar.ID_EMPRESA = vEmpleado.ID_EMPRESA; // VRequisicionAgregar.ID_VISTO_BUENO = vEmpleado.ID_EMPLEADO; UsuarioNegocio nUsuario = new UsuarioNegocio(); var vusuarioSolicita = nUsuario.Obtener_C_USUARIO(CL_USUARIO: vClUsuario.ToString()).FirstOrDefault(); if (vusuarioSolicita != null) { VRequisicionAgregar.ID_SOLICITANTE = vusuarioSolicita.ID_EMPLEADO; } if (Request.Params["ID"] != null) { pID_REQUISICION = int.Parse(Request.Params["ID"]); ptipo = E_TIPO_OPERACION_DB.A.ToString(); VRequisicionAgregar.ID_REQUISICION = pID_REQUISICION; } else { VRequisicionAgregar.ID_REQUISICION = 0; VRequisicionAgregar.CL_ESTADO = "VIGENTE"; } if (VRequisicionAgregar != null) { E_RESULTADO vResultado = nrequisicion.InsertaActualiza_K_REQUISICION(tipo_transaccion: ptipo, programa: vNbPrograma, usuario: vClUsuario, V_K_REQUISICION: VRequisicionAgregar); string vMensaje = vResultado.MENSAJE.Where(w => w.CL_IDIOMA.Equals(vClIdioma.ToString())).FirstOrDefault().DS_MENSAJE; UtilMensajes.MensajeResultadoDB(rnMensaje, vMensaje, vResultado.CL_TIPO_ERROR); } }
public void SolicitarAutorizacionRequisicionPuesto(E_REQUISICION vRequisicion) { //MailAddress lstCorreosRequisiciones = ContextoApp.IDP.NotificacionRrhh.lstCorreosRequisiciones; if (!string.IsNullOrEmpty(vRequisicion.NB_CORREO_AUTORIZA_PUESTO)) { //foreach (var item in lstCorreosRequisiciones) // { var correo = ""; var autoriza = ""; correo = vRequisicion.NB_CORREO_AUTORIZA_PUESTO; autoriza = vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO; string Asunto = "Autorización de puesto nuevo y requisicion"; try { string vMensajeCorreo = ""; string myUrl = ResolveUrl("~/Logon.aspx?FlProceso="); string vUrl = ContextoUsuario.nbHost + myUrl + flRequisicion + "&ClProceso=AUTORIZAREQPUESTO"; if (vIdRequisicion == null) { vMensajeCorreo = ContextoApp.IDP.NotificacionRrhh.dsNotificarReqPuesto.dsMensaje; } else { vMensajeCorreo = ContextoApp.IDP.NotificacionRrhh.dsReenvioReqPuesto.dsMensaje; } vMensajeCorreo = vMensajeCorreo.Replace("[NB_NOTIFICAR]", autoriza); vMensajeCorreo = vMensajeCorreo.Replace("[NB_CREA_REQUISICION]", vRequisicion.NB_EMPLEADO_SOLICITANTE); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO_CREA_REQUISICION]", vRequisicion.NB_PUESTO_SOLICITANTE); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO]", vRequisicion.NB_PUESTO); vMensajeCorreo = vMensajeCorreo.Replace("[URL]", vUrl); vMensajeCorreo = vMensajeCorreo.Replace("[CONTRASENA]", vRequisicion.CL_TOKEN); EnvioCorreo(correo, vMensajeCorreo, Asunto); pClEstatusRequisicion = "POR AUTORIZAR"; UtilMensajes.MensajeResultadoDB(rnMensaje, "Solicitud de autorización enviada. Guarda la requisición.", E_TIPO_RESPUESTA_DB.SUCCESSFUL, pCallBackFunction: ""); } catch (Exception) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Envío no procesado", E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: "onCloseWindow"); } } else { UtilMensajes.MensajeResultadoDB(rnMensaje, "No hay correo asignado para enviar la notificación", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); } }
public void SolicitaAutorizacionPuesto(E_REQUISICION vRequisicion) { // MailAddress lstCorreosRequisiciones = ContextoApp.IDP.NotificacionRrhh.lstCorreosRequisiciones; if (!string.IsNullOrEmpty(vRequisicion.NB_CORREO_AUTORIZA_PUESTO)) { //foreach (var item in lstCorreosRequisiciones) // { var correo = ""; var autoriza = ""; correo = vRequisicion.NB_CORREO_AUTORIZA_PUESTO; autoriza = vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO; string Asunto = "Autorización para puesto de requisición"; try { string vMensajeCorreo = ""; string myUrl = ResolveUrl("~/Logon.aspx?FlProceso="); string vUrl = ContextoUsuario.nbHost + myUrl + flNotificacion.ToString() + "&ClProceso=" + "NOTIFICACIONRRHH"; if (pFechaPuesto == null) { vMensajeCorreo = ContextoApp.IDP.NotificacionRrhh.dsCreadorPuesto.dsMensaje; } else { vMensajeCorreo = ContextoApp.IDP.NotificacionRrhh.dsReenvioPuesto.dsMensaje; } vMensajeCorreo = vMensajeCorreo.Replace("[NB_NOTIFICAR]", autoriza); vMensajeCorreo = vMensajeCorreo.Replace("[NB_CREA_REQUISICION]", vRequisicion.NB_EMPLEADO_SOLICITANTE); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO_CREA_REQUISICION]", vRequisicion.NB_PUESTO_SOLICITANTE); vMensajeCorreo = vMensajeCorreo.Replace("[NB_PUESTO]", vRequisicion.NB_PUESTO); vMensajeCorreo = vMensajeCorreo.Replace("[URL]", vUrl); vMensajeCorreo = vMensajeCorreo.Replace("[CONTRASENA]", clTokenPuesto); EnvioCorreo(correo, vMensajeCorreo, Asunto); //UtilMensajes.MensajeResultadoDB(rnMensaje, "Solicitud de autorización enviada", E_TIPO_RESPUESTA_DB.SUCCESSFUL); } catch (Exception) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Envío no procesado", E_TIPO_RESPUESTA_DB.ERROR, pCallBackFunction: "onCloseWindow"); } // } } else { UtilMensajes.MensajeResultadoDB(rnMensaje, "No hay correo asignado para enviar la notificación", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); } }
public void ValidarEnvioCorreos(E_REQUISICION vRequisicion) { PuestoNegocio nPuesto = new PuestoNegocio(); var vPuesto = nPuesto.ObtienePuestosRequisicion(pIdPuesto: vRequisicion.ID_PUESTO).FirstOrDefault(); bool vFgRequireAutorizacionRequisicion = false; bool vFgRequiereAutorizacionPuesto = false; bool vFgAutorizaReqPuesto = false; if (vPuesto != null) { vFgRequiereAutorizacionPuesto = (vPuesto.CL_ESTATUS != "AUTORIZADO" & vRequisicion.CL_CAUSA == "NUEVO PUESTO"); } vFgRequireAutorizacionRequisicion = (vRequisicion.ID_AUTORIZA != null); if (!string.IsNullOrEmpty(vRequisicion.NB_CORREO_AUTORIZA) & !string.IsNullOrEmpty(vRequisicion.NB_CORREO_AUTORIZA_PUESTO)) { vFgAutorizaReqPuesto = ((vRequisicion.NB_CORREO_AUTORIZA.Equals(vRequisicion.NB_CORREO_AUTORIZA_PUESTO)) & vFgRequiereAutorizacionPuesto & vFgRequireAutorizacionRequisicion); } else { vFgAutorizaReqPuesto = false; } if (vFgAutorizaReqPuesto) { SolicitarAutorizacionRequisicionPuesto(vRequisicion); } else { if (vFgRequiereAutorizacionPuesto) { SolicitaAutorizacionPuesto(vRequisicion); } if (vFgRequireAutorizacionRequisicion) { SolicitarAutorizacionRequisicion(vRequisicion); } } }
public E_RESULTADO InsertaActualizaRequisicion(string pTipoTransaccion, E_REQUISICION pRequisicion, string pClUsuario, string pNbPrograma) { return(UtilRespuesta.EnvioRespuesta(new RequisicionOperaciones().InsertarActualizarRequisicion(pTipoTransaccion, pRequisicion, pClUsuario, pNbPrograma))); }
protected void btnReenviarAutorizaciones_Click(object sender, EventArgs e) { E_REQUISICION vRequisicion = new E_REQUISICION(); vRequisicion.ID_EMPRESA = ((vIdEmpresa != null) ? (vIdEmpresa) : null); vRequisicion.NO_REQUISICION = txtNo_requisicion.Text; vRequisicion.FE_SOLICITUD = Fe_solicitud.SelectedDate; vRequisicion.FE_REQUERIMIENTO = Fe_Requerimiento.SelectedDate; vRequisicion.CL_CAUSA = cmbCausas.SelectedValue; vRequisicion.DS_CAUSA = txtDescripcionCausa.Text; vRequisicion.DS_TIEMPO_CAUSA = txtTiempoCausa.Text; vRequisicion.MN_SUELDO = ((txtSueldo.Text != "") ? (Convert.ToDecimal(txtSueldo.Text)) : 0); vRequisicion.MN_SUELDO_TABULADOR = ((txtSueldoSugerido.Text != "") ? (Convert.ToDecimal(txtSueldoSugerido.Text)) : 0); vRequisicion.MN_SUELDO_SUGERIDO = ((txtSueldoMin.Text != "") ? (Convert.ToDecimal(txtSueldoMin.Text)) : 0); vRequisicion.MAX_SUELDO_SUGERIDO = ((txtSueldoMax.Text != "") ? (Convert.ToDecimal(txtSueldoMax.Text)) : 0); vRequisicion.DS_COMENTARIOS = txtObservaciones.Content; vRequisicion.CL_ESTATUS_REQUISICION = pClEstatusRequisicion; /*Se encarga de dar el ID_AUTORIZA y el ID_SOLICITANTE*/ if (lstAutoriza.Items[0].Text != "No Seleccionado") { vRequisicion.ID_AUTORIZA = Convert.ToInt32(lstAutoriza.Items[0].Value); vRequisicion.NB_EMPLEADO_AUTORIZA = lstAutoriza.Items[0].Text; vRequisicion.NB_PUESTO_AUTORIZA = txtPuestoAutoriza.Text; vRequisicion.NB_CORREO_AUTORIZA = txtCorreoAutorizaReq.Text; vRequisicion.FL_REQUISICION = flRequisicion; vRequisicion.CL_TOKEN = clTokenRequisicion; } if (!string.IsNullOrEmpty(txtCorreoSolicitante.Text)) { vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO = txtPuestoReq.Text; vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO_PUESTO = txtPuestoAutorizaPuesto.Text; vRequisicion.NB_CORREO_AUTORIZA_PUESTO = txtPuestoAutorizaCorreo.Text; } if (rlbSuplente.Items[0].Text != "No Seleccionado") { vRequisicion.ID_EMPLEADO_SUPLENTE = Convert.ToInt32(rlbSuplente.Items[0].Value); vRequisicion.NB_EMPLEADO_SUPLENTE = rlbSuplente.Items[0].Text; } if (rlbPuesto.Items[0].Text != "No Seleccionado") { vRequisicion.ID_PUESTO = Convert.ToInt32(rlbPuesto.Items[0].Value); vRequisicion.NB_PUESTO = rlbPuesto.Items[0].Text; } if (rlbSolicitante.Items[0].Value != "") { vRequisicion.ID_SOLICITANTE = int.Parse(rlbSolicitante.Items[0].Value); vRequisicion.NB_EMPLEADO_SOLICITANTE = rlbSolicitante.Items[0].Text; vRequisicion.NB_PUESTO_SOLICITANTE = txtPuestoSolicitante.Text; } if (vIdRequisicion != null) { vRequisicion.ID_REQUISICION = (int)vIdRequisicion; if (vRequisicion.CL_CAUSA == "NUEVO PUESTO") { vRequisicion.FL_NOTIFICACION = flNotificacion; vRequisicion.CL_TOKEN_PUESTO = clTokenPuesto; } } if (vRequisicion != null) { ValidarEnvioCorreos(vRequisicion); } }
protected void btnSave_click(object sender, EventArgs e) { RequisicionNegocio nRequisicion = new RequisicionNegocio(); E_REQUISICION vRequisicion = new E_REQUISICION(); vRequisicion.ID_EMPRESA = ((vIdEmpresa != null) ? (vIdEmpresa) : null); vRequisicion.NO_REQUISICION = txtNo_requisicion.Text; vRequisicion.FE_SOLICITUD = Fe_solicitud.SelectedDate; vRequisicion.FE_REQUERIMIENTO = Fe_Requerimiento.SelectedDate; vRequisicion.CL_CAUSA = cmbCausas.SelectedValue; vRequisicion.DS_CAUSA = txtDescripcionCausa.Text; vRequisicion.DS_TIEMPO_CAUSA = txtTiempoCausa.Text; vRequisicion.MN_SUELDO = ((txtSueldo.Text != "") ? (Convert.ToDecimal(txtSueldo.Text)) : 0); vRequisicion.MN_SUELDO_TABULADOR = ((txtSueldoSugerido.Text != "") ? (Convert.ToDecimal(txtSueldoSugerido.Text)) : 0); vRequisicion.MN_SUELDO_SUGERIDO = ((txtSueldoMin.Text != "") ? (Convert.ToDecimal(txtSueldoMin.Text)) : 0); vRequisicion.MAX_SUELDO_SUGERIDO = ((txtSueldoMax.Text != "") ? (Convert.ToDecimal(txtSueldoMax.Text)) : 0); vRequisicion.DS_COMENTARIOS = txtObservaciones.Content; vRequisicion.CL_ESTATUS_REQUISICION = pClEstatusRequisicion; /*Se encarga de dar el ID_AUTORIZA y el ID_SOLICITANTE*/ if (lstAutoriza.Items[0].Text != "No Seleccionado") { vRequisicion.ID_AUTORIZA = Convert.ToInt32(lstAutoriza.Items[0].Value); vRequisicion.NB_EMPLEADO_AUTORIZA = lstAutoriza.Items[0].Text; vRequisicion.NB_PUESTO_AUTORIZA = txtPuestoAutoriza.Text; vRequisicion.NB_CORREO_AUTORIZA = txtCorreoAutorizaReq.Text; vRequisicion.CL_ESTATUS_REQUISICION = "POR AUTORIZAR"; if (flRequisicion == Guid.Empty) { flRequisicion = Guid.NewGuid(); clTokenRequisicion = Membership.GeneratePassword(12, 1).Replace("@", Membership.GeneratePassword(1, 1)); } vRequisicion.FL_REQUISICION = flRequisicion; vRequisicion.CL_TOKEN = clTokenRequisicion; } if (rlbSuplente.Items[0].Text != "No Seleccionado") { vRequisicion.ID_EMPLEADO_SUPLENTE = Convert.ToInt32(rlbSuplente.Items[0].Value); vRequisicion.NB_EMPLEADO_SUPLENTE = rlbSuplente.Items[0].Text; } if (rlbPuesto.Items[0].Text != "No Seleccionado") { vRequisicion.ID_PUESTO = Convert.ToInt32(rlbPuesto.Items[0].Value); vRequisicion.NB_PUESTO = rlbPuesto.Items[0].Text; } //if (rlbPuestoReq.Items[0].Text != "No Seleccionado") if (!string.IsNullOrEmpty(txtPuestoReq.Text)) { // vRequisicion.ID_EMPLEADO_AUTORIZA_PUESTO = Convert.ToInt32(.Items[0].Value); vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO = txtPuestoReq.Text; vRequisicion.NB_EMPLEADO_AUTORIZA_PUESTO_PUESTO = txtPuestoAutorizaPuesto.Text; vRequisicion.NB_CORREO_AUTORIZA_PUESTO = txtPuestoAutorizaCorreo.Text; } if (rlbSolicitante.Items[0].Value != "") { vRequisicion.ID_SOLICITANTE = int.Parse(rlbSolicitante.Items[0].Value); vRequisicion.NB_EMPLEADO_SOLICITANTE = rlbSolicitante.Items[0].Text; vRequisicion.NB_PUESTO_SOLICITANTE = txtPuestoSolicitante.Text; vRequisicion.NB_CORREO_SOLICITANTE = txtCorreoSolicitante.Text; } if (vIdRequisicion != null) { //vIdRequisicion = int.Parse(Request.Params["RequisicionId"]); pTipoTransaccion = E_TIPO_OPERACION_DB.A.ToString(); vRequisicion.ID_REQUISICION = (int)vIdRequisicion; if (vRequisicion.CL_CAUSA == "NUEVO PUESTO") { vRequisicion.FL_NOTIFICACION = flNotificacion; vRequisicion.CL_TOKEN_PUESTO = clTokenPuesto; } } else { vRequisicion.ID_REQUISICION = 0; pTipoTransaccion = E_TIPO_OPERACION_DB.I.ToString(); if (vRequisicion.CL_CAUSA == "NUEVO PUESTO") { vRequisicion.FL_NOTIFICACION = Guid.NewGuid(); flNotificacion = (Guid)vRequisicion.FL_NOTIFICACION; vRequisicion.CL_TOKEN_PUESTO = Membership.GeneratePassword(12, 1).Replace("@", Membership.GeneratePassword(1, 1)); clTokenPuesto = vRequisicion.CL_TOKEN_PUESTO; } } if (vRequisicion != null) { if (ValidarDatosFormulario(vRequisicion)) { E_RESULTADO vResultado = nRequisicion.InsertaActualizaRequisicion(pTipoTransaccion: pTipoTransaccion, pNbPrograma: vNbPrograma, pClUsuario: vClUsuario, pRequisicion: vRequisicion); string vMensaje = vResultado.MENSAJE.Where(w => w.CL_IDIOMA.Equals(vClIdioma.ToString())).FirstOrDefault().DS_MENSAJE; string vNumeroRequisicion = ""; if (vResultado.CL_TIPO_ERROR == E_TIPO_RESPUESTA_DB.SUCCESSFUL) { if (pTipoTransaccion == "I") { XElement vDatosRespuesta = vResultado.ObtieneDatosRespuesta(); if (vDatosRespuesta != null) { XElement vPuestoInsertado = vDatosRespuesta.Element("REQUISICION"); vNumeroRequisicion = UtilXML.ValorAtributo <string>(vPuestoInsertado.Attribute("NO_REQUISICION")); } } if (pTipoTransaccion == "I" || pClEstatusRequisicion == "ABIERTA" && vRequisicion.CL_ESTATUS_REQUISICION == "POR AUTORIZAR") { ValidarEnvioCorreos(vRequisicion); } if (vNumeroRequisicion != "") { UtilMensajes.MensajeResultadoDB(rnMensaje, "El folio " + txtNo_requisicion.Text + " ya ha sido asignado a otra requisición el nuevo folio asignado es: " + vNumeroRequisicion, vResultado.CL_TIPO_ERROR, 400, 160); } else { UtilMensajes.MensajeResultadoDB(rnMensaje, vMensaje, vResultado.CL_TIPO_ERROR); } } else { UtilMensajes.MensajeResultadoDB(rnMensaje, vMensaje, vResultado.CL_TIPO_ERROR, pCallBackFunction: ""); } } } }
private bool ValidarDatosFormulario(E_REQUISICION vRequisicion) { if (vRequisicion.FE_SOLICITUD == null) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Ingresa la fecha de la requisición", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.FE_REQUERIMIENTO == null) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Ingresa la fecha en el que se requiere", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if ((vRequisicion.CL_CAUSA == "SUPLENCIA" || vRequisicion.CL_CAUSA == "VACANTE") && (rlbSuplente.Items[0].Value == "" || rlbSuplente.Items[0].Value == null || rlbSuplente.Items[0].Value == "0")) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Selecciona el empleado a suplir", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.CL_CAUSA != "NUEVO PUESTO" && (rlbPuesto.Items[0].Value == "" || rlbPuesto.Items[0].Value == null || rlbPuesto.Items[0].Value == "0")) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Selecciona el puesto a cubrir", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (cmbCausas.SelectedValue == "") { UtilMensajes.MensajeResultadoDB(rnMensaje, "Seleccione una causa", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.CL_CAUSA == "OTRA" && txtDescripcionCausa.Text == "") { UtilMensajes.MensajeResultadoDB(rnMensaje, "Especifique la causa de otra", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.ID_SOLICITANTE == null) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Especifique la persona que solicita la requisición.", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.ID_SOLICITANTE != null & string.IsNullOrEmpty(vRequisicion.NB_CORREO_SOLICITANTE)) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Especifique el correo de la persona que solicita la requisición.", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vRequisicion.ID_AUTORIZA != null & string.IsNullOrEmpty(vRequisicion.NB_CORREO_AUTORIZA)) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Especifique el correo de la persona que autoriza la requisición.", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } DescriptivoNegocio nDescriptivo = new DescriptivoNegocio(); E_DESCRIPTIVO vDescriptivo = nDescriptivo.ObtieneDescriptivoRequisicion(vRequisicion.ID_PUESTO); if (vDescriptivo != null) { if (vDescriptivo.ESTATUS.ToUpper().Equals("EN REVISION") & string.IsNullOrEmpty(txtPuestoReq.Text) & string.IsNullOrEmpty(txtPuestoAutorizaPuesto.Text) & string.IsNullOrEmpty(txtPuestoAutorizaCorreo.Text)) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Seleccione o escriba los datos de la persona que autoriza el puesto creado desde la requisición.", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } if (vDescriptivo.ESTATUS.ToUpper().Equals("EN REVISION") & string.IsNullOrEmpty(txtPuestoAutorizaCorreo.Text)) { UtilMensajes.MensajeResultadoDB(rnMensaje, "Especifique el correo de la persona que autoriza el puesto creado desde la requisición.", E_TIPO_RESPUESTA_DB.WARNING, pCallBackFunction: ""); return(false); } } return(true); }