public E_RESULTADO CambiaPassword(E_USUARIO pUsuario, string pClUsuario, string pNbPrograma) { UsuarioOperaciones oUsuario = new UsuarioOperaciones(); XElement vRespuestaXML = oUsuario.CambiarPassword(pUsuario, pClUsuario, pNbPrograma); E_RESULTADO vResultado = new E_RESULTADO(vRespuestaXML); if (vResultado.CL_TIPO_ERROR.Equals(E_TIPO_RESPUESTA_DB.SUCCESSFUL)) { XElement vDatosRespuesta = vResultado.ObtieneDatosRespuesta(); string vNbCorreoElectronico = vDatosRespuesta.Element("USUARIO").Attribute("NB_CORREO_ELECTRONICO").Value; string vNbUsuario = vDatosRespuesta.Element("USUARIO").Attribute("NB_USUARIO").Value; string vClEstadoRecuperacion = vDatosRespuesta.Element("USUARIO").Attribute("CL_ESTADO_RECUPERACION").Value; Mail mail = new Mail(ContextoApp.mailConfiguration); mail.addToAddress(vNbCorreoElectronico, vNbUsuario); switch (vClEstadoRecuperacion) { case "CHANGING": mail.Send("Cambio de contraseña", String.Format("Estimado {1},<br/><br/>Para realizar el cambio de la contraseña ingrese el siguiente código durante el proceso de ingreso al sistema: {0}<br/><br/>Este código caduca en 1 hora.<br/><br/>Saludos cordiales.", pUsuario.CL_CAMBIAR_PASSWORD, vNbUsuario)); break; case "CHANGED": mail.Send("Contraseña cambiada", String.Format("Estimado {0},<br/><br/>Se ha realizado el cambio de la contraseña.<br/><br/>Saludos cordiales.", vNbUsuario)); break; } } return(vResultado); }
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: ""); } } } }