예제 #1
0
        private void gbReajusteAbono_Click(object sender, EventArgs e)
        {
            // Obtenemos el nuevo abono despues del ajuste
            PedirImporte l_frmCargaAbono = new PedirImporte();

            l_frmCargaAbono.ShowDialog();

            // Si cancelo, salimos.
            if (l_frmCargaAbono.DialogResult == DialogResult.Cancel)
            {
                return;
            }

            ECliLlamada l_ECliLlamada = armaLlamada(p_strEsBaja: "N");
            ECliente    l_eCliente    = Bll.Clientes.Get(m_intNumCliente, false, m_smResult);

            l_ECliLlamada.Abonoanterior = l_eCliente.Abono;
            l_ECliLlamada.Ajuste        = l_frmCargaAbono.importe - l_ECliLlamada.Abonoanterior;

            l_eCliente.Abono = l_frmCargaAbono.importe;

            Bll.Clientes.fGrabarLlamadaYCliente(l_eCliente, l_ECliLlamada, m_smResult);
            if (MsgRuts.AnalizeError(this, m_smResult))
            {
                return;
            }

            MsgRuts.ShowMsg(this, "El abono del cliente fue ajustado correctamente.");

            this.DialogResult = DialogResult.OK;
            this.Close();
        }
예제 #2
0
 /// <summary>
 /// Agrega validacion de integridad a una entidad: CliLlamada
 /// (Código Fijo)
 /// </summary>
 /// <param name="p_dbcAccess">Conexion a la base de datos</param>
 /// <param name="p_entCliLlamada">Entidad con los datos a validar</param>
 /// <param name="p_smResult">Estado final de la operacion</param>
 internal static void CllTInt_f(DBConn p_dbcAccess,
                                ECliLlamada p_entCliLlamada,
                                StatMsg p_smResult)
 {
     // *********
     // Agregar acá las validaciones adicionales
     // *********
 }
예제 #3
0
 /// <summary>
 /// Agrega o modifica un registro de la tabla: CliLlamadas
 /// (Código Fijo)
 /// </summary>
 /// <param name="p_dbcAccess">Conexion a la base de datos</param>
 /// <param name="p_entCliLlamada">Entidad con los datos a procesar</param>
 /// <param name="p_smResult">Estado final de la operacion</param>
 internal static void CllSave_f(DBConn p_dbcAccess,
                                ref ECliLlamada p_entCliLlamada,
                                StatMsg p_smResult)
 {
     // *********
     // Agregar acá los procesos adicionales
     // *********
 }
예제 #4
0
        // Evento del click del boton que provoca la baja del cliente y graba la llamada.
        private void gbBaja_Click(object sender, EventArgs e)
        {
            // Pedimos una confirmacion
            if (MsgRuts.AskUser(this, "Está a punto de dar de baja de la empresa a un cliente. ¿Está seguro?") == DialogResult.No)
            {
                return;
            }

            if (!teResultado.IsValid)
            {
                MsgRuts.ShowMsg(this, "Debe ingresar el resultado de la llamada");
                return;
            }

            // Grabamos la llamada y damos de baja al cliente.
            string      l_strEsBaja       = "S";
            ECliLlamada l_eCliLlamada     = armaLlamada(l_strEsBaja);
            EParametro  l_eCantDiasCancel = App.ParaGet("DIASCANCEL", false, m_smResult);

            if (MsgRuts.AnalizeError(this, m_smResult))
            {
                return;
            }

            App.ShowMsg("Grabando");
            Bll.Clientes.fBajaYBorrarServiciosFromLlamada(m_intNumCliente, l_eCantDiasCancel.VInt, l_eCliLlamada, m_smResult);
            if (MsgRuts.AnalizeError(this, m_smResult))
            {
                App.HideMsg(); return;
            }

            MsgRuts.ShowMsg(this, "El cliente fue dado de baja de la empresa exitosamente! \r\n " +
                            "A continuación podrá cargar servicios que la competencia le brindé al cliente si tiene información sobre los mismos.");
            App.HideMsg();

            CargaServicio l_frmCargaServicios = new CargaServicio(m_intNumCliente);

            l_frmCargaServicios.ShowDialog(this);

            if (l_frmCargaServicios.DialogResult == DialogResult.OK)
            {
                // TODO
                //Bll.Clientes.fGrabaServiciosYMarcaComoCompetencia(m_intNumCliente, l_frmCargaServicios.Servicios, m_smResult);
                if (MsgRuts.AnalizeError(this, m_smResult))
                {
                    return;
                }

                MsgRuts.ShowMsg(this, "Se han grabado exitosamente los servicios de la competencia");
            }

            this.DialogResult = DialogResult.OK;
            this.Close();
        }
예제 #5
0
        private ECliLlamada pGuardarLlamada()
        {
            string      l_strEsBaja   = "N";
            ECliLlamada l_ECliLlamada = armaLlamada(l_strEsBaja);

            //---Guardar entidad nueva
            Clientes.CllSave(l_ECliLlamada, m_smResult);

            if (MsgRuts.AnalizeError(this, m_smResult))
            {
                return(null);
            }

            return(l_ECliLlamada);
        }
예제 #6
0
        private ECliLlamada armaLlamada(string p_strEsBaja)
        {
            // Armar fecha
            DateTime l_dtFecYHor = new DateTime(mcCalendar.SelectionStart.Year,
                                                mcCalendar.SelectionStart.Month,
                                                mcCalendar.SelectionStart.Day,
                                                teHora.Hora.Hour,
                                                teHora.Hora.Minute,
                                                teHora.Hora.Second);

            ECliLlamada l_ECliLlamada;

            // Guardar llamada
            l_ECliLlamada            = ECliLlamada.NewEmpty();
            l_ECliLlamada.Numcliente = m_intNumCliente;
            l_ECliLlamada.Numllamada = -1;
            l_ECliLlamada.Frealizada = l_dtFecYHor;
            l_ECliLlamada.Codusuario = DBConn.Usuario;
            l_ECliLlamada.Baja       = p_strEsBaja;
            l_ECliLlamada.Codmotivo  = cdcMotivos.SelectedStrCode.ToString();
            l_ECliLlamada.Resultado  = teResultado.Text;

            return(l_ECliLlamada);
        }
예제 #7
0
        // Carga de recupero del cliente con abono nuevo.
        private void gbRecupero_Click(object sender, EventArgs e)
        {
            // Obtenemos el nuevo abono recuperado
            PedirImporte l_frmCargaAbono = new PedirImporte();

            l_frmCargaAbono.ShowDialog();

            // Si cancelo, salimos.
            if (l_frmCargaAbono.DialogResult == DialogResult.Cancel)
            {
                return;
            }

            // Armamos la llamada
            string      l_strEsBaja   = "N";
            ECliLlamada l_ECliLlamada = armaLlamada(l_strEsBaja);

            // Actualizamos y cargamos los abonos.
            ECliente l_eCliente = Bll.Clientes.Get(m_intNumCliente, false, m_smResult);

            l_ECliLlamada.Abonoanterior   = l_eCliente.Abono;
            l_ECliLlamada.Abonorecuperado = l_frmCargaAbono.importe;
            l_eCliente.Abono = l_frmCargaAbono.importe;

            // Persistimos la llamada y marcamos al cliente como recuperado. TODO no mas marca.
            //Clientes.fRecupero(l_eCliente.Numero, l_eCliente.Abono, l_ECliLlamada, l_eCliente.Codmarca, m_smResult);
            if (MsgRuts.AnalizeError(this, m_smResult))
            {
                return;
            }

            MsgRuts.ShowMsg(this, "El cliente fue recuperado exitosamente");

            this.DialogResult = DialogResult.OK;
            this.Close();
        }