コード例 #1
0
 private void bindingRemove_Click(object sender, EventArgs e)
 {
     if (tipoDeClase == TipoDeClase.Dependiente)
     {
         Dependiente d = (Dependiente)bindingSource.Current;
         if (d != null)
         {
             FDependiente ad = new FDependiente(d.Clave, d.Nombre, d.Apellidos, d.ComisionPorVenta, true);
             ad.ShowDialog();
             if (DialogResult.OK.Equals(ad.DialogResult))
             {
                 serviciosDependiente.borrarDependiente(d);
             }
             ad.Dispose();
             bindingSource.Clear();
             bindingSource.DataSource = serviciosDependiente.getDependientesTienda();
         }
     }
     else if (tipoDeClase == TipoDeClase.Articulo)
     {
         Articulo d = (Articulo)bindingSource.Current;
         if (d != null)
         {
             FArticulo ad = new FArticulo(d.Clave, d.Descripcion, d.CosteFabrica.ToString(), true, d.IVA);
             ad.ShowDialog();
             if (DialogResult.OK.Equals(ad.DialogResult))
             {
                 serviciosArticulos.borrarArticulo(d);
             }
             ad.Dispose();
             bindingSource.Clear();
             bindingSource.DataSource = serviciosArticulos.getTodosArticulos();
         }
     }
 }
コード例 #2
0
        public IActionResult Edit(int id, [Bind("Id,Nombres,Apellidos,UsuarioId,Activo")] Dependiente dependiente)
        {
            if (id != dependiente.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(dependiente);
                    TempData["exito"] = "La acción se ha realizado correctamente";
                    _context.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DependienteExists(dependiente.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            TempData["error"] = "Error en ralizar esta acción";
            return(View(dependiente));
        }
コード例 #3
0
ファイル: Form1.cs プロジェクト: Tiburocin/Prestamos
        private void Prestamo(Dependiente dep)
        {
            try
            {
                CrearUsuario(dep);
                ObtenerIDUsuario(dep);

                CrearPrestamo(dep);
                ObtenerIDPrestamo(dep);


                CrearFechas(dep);

                List <SqlParameter> lista = new List <SqlParameter>();
                lista.Add(new SqlParameter("@Opcion", SqlDbType.Int)
                {
                    Value = 2
                });
                lista.Add(new SqlParameter("@cantidad", SqlDbType.Float)
                {
                    Value = dep.Capital - dep.Pedido.Importe
                });

                manager.GetData("spCaja", lista.ToArray());

                MessageBox.Show("Realizado !");
            }
            catch (Exception e)
            {
                MessageBox.Show("" + e);
                throw;
            }
        }
コード例 #4
0
ファイル: Form1.cs プロジェクト: Tiburocin/Prestamos
        private void ObtenerIDPrestamo(Dependiente dep)
        {
            DataSet             ds    = new DataSet();
            List <SqlParameter> lista = new List <SqlParameter>();

            lista.Add(new SqlParameter("@Opcion", SqlDbType.Int)
            {
                Value = 1
            });
            lista.Add(new SqlParameter("@id_usuario", SqlDbType.Int)
            {
                Value = idUsuario
            });
            lista.Add(new SqlParameter("@cantidad", SqlDbType.Float)
            {
                Value = dep.Pedido.Importe
            });
            lista.Add(new SqlParameter("@meses", SqlDbType.Int)
            {
                Value = dep.Pedido.Meses
            });


            ds = manager.GetData("spPrestamo", lista.ToArray());

            if (ds.Tables[0].Rows.Count > 0)
            {
                idPrestamo = Convert.ToInt32(ds.Tables[0].Rows[0][0]);
            }
        }
コード例 #5
0
ファイル: FPrincipal.cs プロジェクト: sod1497/ProyectoTOO
        private void bajaDependiente_Click(object sender, EventArgs e)
        {
            FIntroducir f = new FIntroducir(TipoDeClase.Dependiente);

            f.ShowDialog();
            if (f.DialogResult == DialogResult.OK)
            {
                String clave = f.Clave;
                if (lnd.existeDependiente(clave))
                {
                    Dependiente  d  = lnd.getDependiente(clave);
                    FDependiente ad = new FDependiente(clave, d.Nombre, d.Apellidos, d.ComisionPorVenta, true);
                    ad.ShowDialog();
                    if (DialogResult.OK == ad.DialogResult)
                    {
                        lnd.borrarDependiente(d);
                    }
                    ad.Dispose();
                }
                else
                {
                    MessageBox.Show(this, "No existe un dependiente con ese NSS", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            f.Dispose();
        }
コード例 #6
0
ファイル: Persistencia.cs プロジェクト: sod1497/ProyectoTOO
        /*
         * Devuelve una Lista con las ventas de un mes/año concretos de un dependiente
         * Precondicion: d es no nulo y tiene la clave del dependiente a buscar
         * Postcondición: devuelve una lista con los valores que cumplan las condiciones. sino saldrá vacía
         */


        public static List <Venta> getVentasDeDependiente(Dependiente d, DateTime fecha)
        {
            //podemos pasarle el día 1 de un mes y año y que solo se fije en estos dos últimos
            //Por ejemplo le paso 1/enero/2017 y devuelve las ventas de enero/2017

            //Podría separar en varias clases de persistencia, pero así no cambia la interfaz y el código ya hecho
            //no se ve afectado

            Persistencia <Venta>       persistenciaVenta       = new Persistencia <Venta>();
            Persistencia <Dependiente> persistenciaDependiente = new Persistencia <Dependiente>();

            List <Venta> aux = new List <Venta>();

            foreach (Venta venta in Singleton <Venta> .getColeccion())
            {
                if (venta.Dependiente.Clave.Equals(d.Clave))    //hay que buscar al dependiente por la clave, no por el NSS(pues podria cambiar a identificacion por nombre, por ej)
                {
                    DateTime auxF = venta.Fecha;

                    if (fecha.Month.Equals(auxF.Month) && fecha.Year.Equals(fecha.Year))
                    {
                        aux.Add(venta);
                    }
                }
            }

            return(aux);
        }
コード例 #7
0
        public static void mostrarDepend()
        {
            Console.WriteLine("Mostrar dependiente");
            Console.WriteLine("-NSS");
            Dependiente d = getDepend(Console.ReadLine());

            Console.WriteLine("NSS " + d.NSS + ", Nombre " + d.Nombre + ", Apellidos " + d.Apellidos + " y comisión " + d.ComisionPorVenta);
        }
コード例 #8
0
        private void bDependiente_Click(object sender, EventArgs e)
        {
            Dependiente d       = dependientes[lbDependientes.SelectedIndex];
            FBuscar     fBuscar = new FBuscar(d, TipoDeClase.Dependiente, serviciosVenta, serviciosDependiente, serviciosArticulos);

            fBuscar.ShowDialog();
            fBuscar.Dispose();
        }
コード例 #9
0
 public bool EliminarDependiente(Dependiente pDependiente)
 {
     if (this.EstaDependiente(pDependiente))
     {
         this.listaDependientes.Remove(pDependiente.NSS);
         return(true);
     }
     return(false);
 }
コード例 #10
0
 public bool AnadirDependiente(Dependiente pDependiente)
 {
     if (!this.EstaDependiente(pDependiente))
     {
         this.listaDependientes.Add(pDependiente.NSS, pDependiente);
         return(true);
     }
     return(false);
 }
コード例 #11
0
        private void bModificar_Click(object sender, EventArgs e)
        {
            //Si hay algo seleccionado, abre FBuscar para ese dependiente
            Dependiente d = (Dependiente)lbNSS.SelectedItem;
            FBuscar     fBuscarDependiente = new FBuscar(d, TipoDeClase.Dependiente, serviciosVenta, serviciosDependiente, serviciosArticulos);

            fBuscarDependiente.ShowDialog();
            fBuscarDependiente.Dispose();
            focoCambiado();
        }
コード例 #12
0
        public static void addVenta()
        {
            Console.WriteLine("Añadir venta");
            Console.WriteLine("-NSS de dependiente");
            String      e = Console.ReadLine();
            Dependiente d = getDepend(e);


            Console.WriteLine(new ServiciosVenta().anadirVenta(new VentaSinTarjeta(++idVenta + "", DateTime.Now, d)) ? "Hecho con id " + idVenta : "Error");
        }
コード例 #13
0
 public static bool contieneDependiente(Dependiente d)
 {
     foreach (Dependiente dependiente in BaseDeDatos.Dependientes)
     {
         if (dependiente.NSS.Equals(d.NSS))
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #14
0
 /*
  * Devuelve el dependiente si existe
  * en caso contrario, devuelve null
  */
 public Dependiente getDependiente(Dependiente d)
 {
     if (Persistencia <Dependiente> .existe(d))
     {
         return(Persistencia <Dependiente> .get(d));
     }
     else
     {
         return(null);
     }
 }
コード例 #15
0
 /*
  * devuelve true si borra el dependiente correctamente
  * y false si no encuentra el dependiente o no lo borra correctamente
  */
 public bool borrarDependiente(Dependiente d)
 {
     if (Persistencia <Dependiente> .existe(d))
     {
         return(Persistencia <Dependiente> .borrar(d));
     }
     else
     {
         return(false);
     }
 }
コード例 #16
0
 public static Dependiente getDependiente(Dependiente d)
 {
     foreach (Dependiente dependiente in BaseDeDatos.Dependientes)
     {
         if (dependiente.NSS.Equals(d.NSS))
         {
             return(dependiente.copiar());
         }
     }
     return(null);
 }
コード例 #17
0
 /*
  * devuelve true si guarda el dependiente
  * y false si el dependiente ya existe o ha habido un error al añadirlo
  */
 public bool anadirDependiente(Dependiente d)
 {
     if (!Persistencia <Dependiente> .existe(d))
     {
         return(Persistencia <Dependiente> .anadir(d));
     }
     else
     {
         return(false);
     }
 }
コード例 #18
0
        public bool AnadirVentaADependiente(Venta pVenta, Dependiente pDependiente) //primero usar AnadirVenta para guardarla en la bd y luego usar este metodo para asociarle la venta al dependiente
        {
            Dependiente d = this.bd.BuscarDependiente(pDependiente);                //cogemos el dependiente al que queremos añadirle una venta

            if (d != null)
            {
                d.Ventas.Add(pVenta);
                this.CalcularComision(d);
                return(true);
            }
            return(false);
        }
コード例 #19
0
        /*
         * A partir de las ventas de ese dependiente (este mes), y de la comision que se
         * lleva por cada una, calcula la comision total.
         */
        public double calcularComision(Dependiente d, DateTime date)
        {
            double       comisionTotal = 0;
            List <Venta> ventas        = Persistencia <Venta> .getVentasDeDependiente(d, date);

            foreach (Venta v in ventas)
            {
                comisionTotal += v.ImporteTotal * d.ComisionPorVenta / 100;
            }

            return(comisionTotal);
        }
コード例 #20
0
        /*
         * Devuelve true si el Dependiente existe en la base de datos
         * y lo puede modificar.
         * En caso contrario, devuelve false.
         */
        public bool modificarDependiente(Dependiente original, Dependiente nuevo)
        {
            Dependiente d = getDependiente(original);

            if (d != null && original.Clave == nuevo.Clave)
            {
                return(Persistencia <Dependiente> .modificar(nuevo));
            }
            else
            {
                return(false);
            }
        }
コード例 #21
0
        private void CalcularComision(Dependiente pDependiente)// el dependiente es real, este metodo es privado porque solo lo usare dentro de esta clase
        {
            double dinero = 0.0;

            foreach (Venta v in VentasMes(DateTime.Now.Month, pDependiente))
            {
                foreach (LineaVenta l in v.Lineas)
                {
                    dinero = dinero + l.PrecioLineaVenta;
                }
            }
            pDependiente.Comision = dinero * 0.05;//el 5% de las ventas le corresponderan al dependiente.
        }
コード例 #22
0
        private Dependiente getDependiente(DependienteRequest dependienteRequest)
        {
            var dependiente = new Dependiente(getIdentidad(dependienteRequest.identidadRequest),
                                              getNombre(dependienteRequest.nombreRequest), getParentesco(dependienteRequest.parentescoRequest),
                                              dependienteRequest.fechaNacimiento);

            if (dependienteRequest.IdGuid != Guid.Empty)
            {
                dependiente.idGuid = dependienteRequest.IdGuid;
            }
            dependiente.auditoria = getAuditoria(dependienteRequest.auditoriaRequest);
            return(dependiente);
        }
コード例 #23
0
 public JsonResult obtenerDependientes(int pIdSucursal)
 {
     if (Session[ID_USUARIO] == null)
     {
         return(Json(new { }, JsonRequestBehavior.AllowGet));
     }
     else
     {
         Dependiente   dependiente = new Dependiente(pIdSucursal);
         List <object> toReturn    = dependiente.obtenerIterativamente().ToList();
         return(Json(toReturn, JsonRequestBehavior.AllowGet));
     }
 }
コード例 #24
0
        public List <Venta> VentasMes(int mes, Dependiente pDependiente)//el mes debe estar comprendido entre 1 y 12, del dependiente nos interesa su codigo.
        {
            Dependiente  d         = this.bd.BuscarDependiente(pDependiente);
            List <Venta> ventasMes = new List <Venta>();

            foreach (Venta v in d.Ventas)
            {
                if (v.FechaVenta.Month == mes)
                {
                    ventasMes.Add(v);
                }
            }
            return(ventasMes);
        }
コード例 #25
0
 public Dependiente BuscarDependiente(Dependiente pDependiente)
 {
     if (this.EstaDependiente(pDependiente))
     {
         foreach (Dependiente x in this.ListaDependientes)
         {
             if (pDependiente.Equals(x))
             {
                 return(x);
             }
         }
     }
     return(null);
 }
コード例 #26
0
        public static bool darDeAltaDependiente(Dependiente d)
        {
            //no se preocupa de si el dependiente esta de alta o de baja, simplemente devuelve true si lo encuentra y lo da de alta
            //false en caso contrario

            foreach (Dependiente dependiente in BaseDeDatos.Dependientes)
            {
                if (dependiente.NSS.Equals(d.NSS))
                {
                    dependiente.EstaActivo = true;
                    return(true);
                }
            }
            return(false);
        }
コード例 #27
0
        /*
         * Ejemplo para cargar la base de datos con datos random.
         */
        public void cargarDependientesEjemplo()
        {
            Dependiente aux;
            Random      random = new Random();

            String[] nombres   = { "Paco", "Juan", "Francisca", "Juana", "Michael", "Donald" };
            String[] apellidos = { "Jimenez", "Larrea", "De Arco", "Martínez", "Jackson", "Duck" };
            for (int i = 0; i < nombres.Length; i++)
            {
                long l;
                long.TryParse(random.Next(100000000, 999999999).ToString(), out l);
                aux = new Dependiente((l * 100).ToString(), nombres[i], apellidos[i], i);
                anadirDependiente(aux);
            }
        }
コード例 #28
0
        //Todo debe devolver copias. Las clases básicas tienen un método copiar()

        //DUDA IMPORTANTE
        //Los objetos que se añaden no deberian ser copias tambien?, no vaya a ser que se modifique el
        //objeto que esta guardado en un programa externo y se modifique tambien en la coleccion.

        //Servicios para dependientes

        public static bool anadirDependiente(Dependiente d)
        {
            //recorre la lista de dependientes
            //si el dependiente no esta en la lista lo añade y devuelve true
            //si está en la lista, devuelve false.
            foreach (Dependiente dependiente in BaseDeDatos.Dependientes)
            {
                if (dependiente.NSS.Equals(d.NSS))
                {
                    return(false);
                }
            }

            BaseDeDatos.Dependientes.Add(d);
            return(true);
        }
コード例 #29
0
ファイル: FPrincipal.cs プロジェクト: sod1497/ProyectoTOO
        private void ventasRecientesDeDependienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            FIntroducir  fIntroducir = new FIntroducir(TipoDeClase.Dependiente);
            DialogResult dr          = fIntroducir.ShowDialog();

            if (dr == DialogResult.OK)
            {
                Dependiente dependiente = lnd.getDependiente(fIntroducir.Clave);
                if (dependiente != null)
                {
                    FListadoVentas fListadoVentas = new FListadoVentas(dependiente, lnv, lnd, lna);
                    fListadoVentas.ShowDialog();
                    fListadoVentas.Dispose();
                }
            }
            fIntroducir.Dispose();
        }
コード例 #30
0
        //Método búsqueda de un dependiente
        private void búsquedaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            FormIntroducir fi = new FormIntroducir("NºSS");

            fi.ShowDialog();
            DialogResult dr = fi.DialogResult;

            if (dr == DialogResult.OK)
            {
                Dependiente daux = new Dependiente(fi.textBox1.Text, null, null);
                Dependiente d    = sd.ObtenerInfoDependiente(daux);
                //Si existe el dependiente, lo mostrará en un formulario de lectura
                //Si no, permitirá introducir otro nss
                if (d == null)
                {
                    DialogResult dr2 = MessageBox.Show(this, "¿Quieres introducir otro dato?", "No existe un dependiente con ese NºSS", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (dr2 == DialogResult.Yes)
                    {
                        fi.Dispose();
                        this.búsquedaToolStripMenuItem.PerformClick();
                    }
                    else
                    {
                        fi.Dispose();
                    }
                }
                else
                {
                    //Muestra el dependiente en formato de solo lectura
                    FormDependientes fd = new FormDependientes("Búsqueda");
                    fd.button2.Dispose();
                    fd.button1.Location = new System.Drawing.Point(108, 232); //movemos el boton aceptar



                    fd.textBox1.Text     = d.NSS;
                    fd.textBox2.Text     = d.Nombre;
                    fd.textBox2.ReadOnly = fd.textBox3.ReadOnly = fd.textBox4.ReadOnly = true;
                    fd.textBox3.Text     = d.Apellidos;
                    fd.textBox4.Text     = "" + d.Comision;
                    fd.ShowDialog();
                    //mostrar uno con los datos
                }
            }
            fi.Dispose();
        }