Esempio n. 1
0
        //Cargar el Total de expensas
        //public void CargarTotalExpensas()
        //{
        //    departamento.Nombre = lblDepartamento.Text;

        //    MySqlDataReader precioExpensas = obtenerServicios.TotalPagoExpensas(departamento);
        //    if (precioExpensas.HasRows)
        //    {
        //        while (precioExpensas.Read())
        //        {
        //            if (precioExpensas.GetString(1) == null || precioExpensas.GetString(0) == null)
        //            {
        //                precioAgua = "00.00";
        //                totalExpensas = "00.00";
        //            }
        //            else
        //            {
        //                precioAgua = precioExpensas.GetString(1);
        //                totalExpensas = precioExpensas.GetString(0);
        //            }

        //        }
        //    }
        //    lblTotalExpensas.Text = totalExpensas + ".00 Bolivianos ";
        //    //totalAgua = CantidadHabitante * Convert.ToInt32(precioAgua);
        //    //lblTotalExpensas.Text = totalAgua.ToString();
        //    //totalExpensas = totalAgua - precioAgua;
        //    //lblTotalExpensas.Text = totalExpensas.ToString() + " Bs./ctvs.";
        //}

        private void cboxDepartamento_SelectedIndexChanged(object sender, EventArgs e)
        {
            cboxDepartamento.DropDownStyle = ComboBoxStyle.DropDownList;
            //Para cargar el cboxServicios
            if (cboxDepartamento.Text != "")
            {
                cboxServicio.DisplayMember = "servicio";
                cboxServicio.DataSource    = obtenerServicios.ObtenerServicios();
                //Para ver todos los servicios que tiene registrado el departamento
                departamento.Nombre = cboxDepartamento.Text;
                MySqlDataReader departametoEstado = obtenerServicios.EstadoDepartamento(departamento);

                if (departametoEstado.HasRows)
                {
                    while (departametoEstado.Read())
                    {
                        //PARA VER EL ESTADO DEL DEPARTAMENTO
                        if (departametoEstado.GetString(0).ToUpper() != "NO HABITADO")
                        {
                            tblServicios.DataSource = obtenerServicios.BuscarServicios_Depa(departamento);
                            tblServicios.Refresh();
                        }
                        else
                        {
                            tblServicios.DataSource = obtenerServicios.Departamento_SinServicios();
                            tblServicios.Refresh();
                            DialogResult result = MessageBox.Show("El departamento no cuenta con ningun servicio regsitrado y no podra\n    asignar ningún servicio al departamento " + cboxDepartamento.Text + " por que su estado se\nencuentra en NO HABITADO" +
                                                                  "¿Desea cambiar el estado del departameto?", "AVISO", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                            if (result == DialogResult.Yes)
                            {
                            }
                        }
                    }
                }
            }
            //Para cargar el cboxEmpresaServicio depediendo el cboxServicio
            if (cboxServicio.Text != "")
            {
                servicio.Servicio         = cboxServicio.Text;
                cboxEmpresa.DisplayMember = "nombre_EmpresaServicio";
                cboxEmpresa.DataSource    = obtenerServicios.ObtenerEmpresaServicio(servicio);
            }
            //Para ver que departamento fue seleccionado en DETALLES
            lblDepartamento.Text = cboxDepartamento.Text;
            //Para cargar el total de expensas
            //CargarTotalExpensas();
        }
Esempio n. 2
0
        /*
         * DELETE FROM pago_servicio WHERE id_PagoServicio = 26;
         */

        #endregion

        public void CargaAutomatica_TotalExpensas()
        {
            int auxMes = 0;

            #region Para obtener los nombres y ID de los departamentos en una lista para luego ver su estado_vivienda
            MySqlDataReader obternerDepartamentos = gtrDepartamentos.DeparatamentosDiferentes_a_NoHabitado();

            if (obternerDepartamentos.HasRows)
            {
                while (obternerDepartamentos.Read())
                {
                    listaDepartamento.Add(new Departamento()
                    {
                        Nombre      = Convert.ToString(obternerDepartamentos["nombre"]),
                        ID_Vivienda = Convert.ToInt32(obternerDepartamentos["id_Vivienda"])
                    });
                }
            }
            #endregion
            #region Luego comparamos todos los departamentos de la lista para ver su estado_vivienda
            for (int i = 0; i < listaDepartamento.Count; i++)
            {
                departamento.Nombre      = listaDepartamento[i].Nombre;
                departamento.ID_Vivienda = listaDepartamento[i].ID_Vivienda;
                #endregion
                #region Para ver el estado del departamento si ees diferente a no habitado
                MySqlDataReader departametoEstado = gtrServicios.EstadoDepartamento(departamento);
                if (departametoEstado.HasRows)
                {
                    while (departametoEstado.Read())
                    {
                        //PARA VER EL ESTADO DEL DEPARTAMENTO
                        if (departametoEstado.GetString(0).ToUpper() != "NO HABITADO")
                        {
                            #endregion
                            #region Para ver la ultima fecha de pago_Servicio
                            MySqlDataReader obtener_UltimoMes = gtrExpensas.MostrarUltimaFecha_PagoServicio(departamento);
                            if (obtener_UltimoMes.HasRows)
                            {
                                while (obtener_UltimoMes.Read())
                                {
                                    //Para corregir el error de extraccion del mes en la consulta
                                    //que se incrementaba el mes automaticamente y para corregirlo
                                    //construimos un algoritmo donde ya no se incremente el ultimo mes obtenido
                                    string dateTime = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
                                    if (obtener_UltimoMes.GetString(0) == dateTime)
                                    {
                                    }
                                    else
                                    {
                                        //para registrar la fecha siguiente que le toca pagar al departamento
                                        string fechaPago = DateTime.Now.Year + "-" + DateTime.Now.Month + "-10";
                                        #endregion
                                        #region Para obtener el el saldo total del agua y el saldo de los otros servicios
                                        //Para obtener el el saldo total del agua y el saldo de los otros servicios
                                        MySqlDataReader obternerSaldo = gtrServicios.TotalPagoExpensas(departamento);
                                        if (obternerSaldo.HasRows)
                                        {
                                            while (obternerSaldo.Read())
                                            {
                                                totalPagar = obternerSaldo.GetInt32(0) - obternerSaldo.GetInt32(1);
                                                totalAgua  = obternerSaldo.GetInt32(1);
                                            }
                                        }
                                        #endregion
                                        #region Para obterner la cantidad de habitantes en cada departamento
                                        //obtenemos el id_departamento
                                        int             idDepartamento             = departamento.ID_Vivienda;
                                        MySqlDataReader obterner_CantidadHabitante = gtrDepartamentos.ContidadHabitante(idDepartamento);
                                        if (obterner_CantidadHabitante.HasRows)
                                        {
                                            while (obterner_CantidadHabitante.Read())
                                            {
                                                //multiplicamos el agua por la cantidad de habitantes
                                                totalAgua = totalAgua * obterner_CantidadHabitante.GetInt32(0);
                                            }
                                        }
                                        #endregion
                                        //La suma total de todo las expensas que tiene que pagar
                                        totalPagar = totalPagar + totalAgua;
                                        string auxTotalPago = Convert.ToString(totalPagar) + ".00";
                                        //para poner el estado de cancelado  =  NO
                                        bool cancelado = false;
                                        #region Insersion de pago de servicios del departameto
                                        int resulInsert_PagoServicio = GestionarExpensas.Pago_Servicio(departamento, fechaPago, auxTotalPago, cancelado);

                                        if (resulInsert_PagoServicio > 0)
                                        {
                                            MessageBox.Show("Se actualizo la base de datos de registro de pago de servicios de cada departameto", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                        }
                                        else
                                        {
                                            MessageBox.Show("No se logro actualizar la base de datos de pago de servicios de los departamentos", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                        }
                                        #endregion
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }