Example #1
0
        public void Accion_Registrar(int idEmpresa, int codigoUsuario, GS_DetraccionAccionGetResult objAccionInsert)
        {
            ////using (dmIntranetDataContext dci = new dmIntranetDataContext(ConfigurationManager.ConnectionStrings["genesys"].ConnectionString))
            using (dmIntranetDataContext dci = new dmIntranetDataContext(GS.configuration.Init.GetValue(Constant.sistema, Constant.key, "genesys")))
            {
                ////dmGenesysDataContext dcg = new dmGenesysDataContext(string.Format(ConfigurationManager.ConnectionStrings[dci.Empresa.SingleOrDefault(x => x.idEmpresa == idEmpresa).baseDatos].ConnectionString, "usrGEN" + (10000 + codigoUsuario).ToString().Substring(1, 4)));
                dmGenesysDataContext dcg = new dmGenesysDataContext(string.Format(GS.configuration.Init.GetValue(Constant.sistema, Constant.key, dci.Empresa.SingleOrDefault(x => x.idEmpresa == idEmpresa).baseDatos), "usrGEN" + (10000 + codigoUsuario).ToString().Substring(1, 4)));

                try
                {
                    dcg.GS_DetraccionAccionInsert(objAccionInsert.NroConstancia, objAccionInsert.FechaPago, objAccionInsert.Op);

                    dcg.SubmitChanges();
                    dcg.Connection.Close();
                }
                catch (Exception ex)
                {
                    dci.Excepcion_Registrar(ex.Message, ex.TargetSite.Name);
                    dci.SubmitChanges();
                    throw new ArgumentException("No se pudo registrar la Accion en la base de datos de Genesys.");
                }
                finally
                {
                    dcg.Connection.Close();
                    dci.Connection.Close();
                }
            }
        }
Example #2
0
        public void Accion_Registrar(int idEmpresa, int codigoUsuario, GS_DetraccionAccionGetResult objAccionInsert)
        {
            ReportesBL objReportesBL;

            try
            {
                objReportesBL = new ReportesBL();
                objReportesBL.Accion_Registrar(idEmpresa, codigoUsuario, objAccionInsert);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #3
0
        public GS_DetraccionAccionGetResult GetDetraccionAccion(int idEmpresa, int codigoUsuario, int op)
        {
            ReportesBL objReportesBL;

            try
            {
                List <GS_DetraccionAccionGetResult> list = new List <GS_DetraccionAccionGetResult>();

                objReportesBL = new ReportesBL();
                list          = objReportesBL.GetDetraccionAccion(idEmpresa, codigoUsuario, op);
                var result = new GS_DetraccionAccionGetResult();
                if (list.Any())
                {
                    result = list.FirstOrDefault();
                }

                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        private void CargarAccion(int op)
        {
            FinanzasWCFClient objFinanzasWCF = new FinanzasWCFClient();

            try
            {
                GS_DetraccionAccionGetResult accion =
                    objFinanzasWCF.GetDetraccionAccion(((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                                                       ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, op);

                ViewState["accion"] = JsonHelper.JsonSerializer(accion);

                if (string.IsNullOrEmpty(accion.NroConstancia))
                {
                    return;
                }
                rtbNroContancia.Text           = accion.NroConstancia;
                dpFechaConstancia.SelectedDate = accion.FechaPago;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        protected void btnGuardar_OnClick(object sender, EventArgs e)
        {
            if (Session["Usuario"] == null)
            {
                ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "CancelEdit();", true);
            }

            FinanzasWCFClient objFinanzasWCF = new FinanzasWCFClient();

            try
            {
                var accion = JsonHelper.JsonDeserialize <GS_DetraccionAccionGetResult>((string)ViewState["accion"]);
                if (!string.IsNullOrEmpty(accion.NroConstancia))
                {
                    lblMensaje.Text = "Ya existe un pago registrado";
                }
                else
                {
                    var objInsert = new GS_DetraccionAccionGetResult
                    {
                        NroConstancia = rtbNroContancia.Text,
                        FechaPago     = dpFechaConstancia.SelectedDate.Value,
                        Op            = Convert.ToInt32(ViewState["op"].ToString())
                    };
                    objFinanzasWCF.Accion_Registrar(((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                                                    ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, objInsert);

                    //proceso de envio de correo
                    AgendaWCF.AgendaWCFClient AgendaClient = new AgendaWCF.AgendaWCFClient();
                    //recupera el correo

                    string idAgenda = ViewState["idAgenda"].ToString();
                    string serie    = ViewState["serie"].ToString();
                    string numero   = ViewState["numero"].ToString();

                    string fecha = objInsert.FechaPago.ToString();

                    List <GS_RecuperaCorreoAgendaResult> lista = AgendaClient.RecuperaCorreoAgenda(((Usuario_LoginResult)Session["Usuario"]).idEmpresa,
                                                                                                   ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, idAgenda).ToList();



                    string mensaje = @"
<html>
	<head>
	</head>
	<body>
		<table style='width: 700px; ' cellpadding='0' cellspacing='0'  >
			<tr>
				<td style='width: 25%;'>
					<img src='https://intranet.gruposilvestre.com.pe/IntranetGS/Images/Logos/grupo.png' alt='' height=80 />
				</td>
				<td style='width: 75%; font-size: 18pt; font-weight: bold;'>
					CONSTANCIA DE DETRACCI&Oacute;N
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>
					Estimado cliente, se ha generado la constancia de detracci&oacute;n n&uacute;mero {0} por la factura {1}. El registro de la constancia se realizó el día {2}.
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>
					Cualquier duda o consulta, no duden en comunicarse con nosotros al telefono 617-3300 o por correo electronico a [email protected]
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>	
					Atte.
				</td>
			</tr>
			<tr>
				<td colspan='2' style='padding-top:20px;'>	
					<strong>Grupo Silvestre</strong>
				</td>
			</tr>
		</table>
	</body>
</html>
";

                    //con diez ceros

                    int    largonumero   = numero.Length;
                    int    faltaceros    = 10 - largonumero;
                    int    cerosActuales = 0;
                    string completaceros = "";

                    if (faltaceros > 0)
                    {
                        while (cerosActuales < faltaceros)
                        {
                            completaceros += "0";
                            cerosActuales  = completaceros.Length;
                        }
                    }

                    string mail = "";

                    string formatMensaje = string.Format(mensaje, objInsert.NroConstancia, serie + "-" + completaceros + numero, fecha);

                    CorreoWCF.CorreoWCFClient CorreoClient = new CorreoWCF.CorreoWCFClient();
                    //Enviar el mensaje si se tiene mail
                    if (lista != null && lista.Count > 0)
                    {
                        mail = lista[0].email;

                        //CorreoClient.MerlinEnviarCorreo("*****@*****.**", "*****@*****.**", null, null, "Constancia de detracción", formatMensaje);
                        CorreoClient.MerlinEnviarCorreo(mail, mail, null, null, "Constancia de detracción", formatMensaje);
                    }

                    //ViewState["op"] = null;
                    ViewState.Clear();
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "CloseAndRebind();", true);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }