コード例 #1
0
        public IndicadoresClaveProveedor(int proveedorID) 
        {
            this.ProveedorID = proveedorID;
            this.promedioOCArriendoEquipo = 0;
            /*1.- Obtenemos el tiempo medio de respuesta:*/
            
            //Se obtienen los códigos de todos los productos comprados:
            List<int> IDsProductos = this.obtenerProductos();

            //Se obtienen los datos de tiempo de respuesta para cada producto:
            tiemposRespuestaProducto = new List<tiempoRespuestaProducto>();
            foreach (int idProducto in IDsProductos) 
            {
                tiemposRespuestaProducto.Add(new tiempoRespuestaProducto(this.ProveedorID, idProducto));
            }

            //Se obtiene el tiempo promedio de respuesta
            foreach (tiempoRespuestaProducto TR in tiemposRespuestaProducto) 
            {
                this.tiempoMedioRespuesta = TR.tiempoPromedioRespuesta;
            }

            if (tiemposRespuestaProducto.Count > 0) this.tiempoMedioRespuesta /= tiemposRespuestaProducto.Count;

            /*2.- Obtenemos el monto total de compras y el promedio de compras por orden de compra*/
            
            //Obtenemos los ID de ordenes de compra en que ha participado el proveedor y que han sido entregadas
            List<int> IDsOrdenesCompra = obtenerIDsOrdenesCompra();
            this.montosCompra = new List<MontoCompraOrdenCompra>();

            foreach (int IDOrdenCompra in IDsOrdenesCompra) 
            {
                this.montosCompra.Add(new MontoCompraOrdenCompra(this.ProveedorID,IDOrdenCompra));
            }

            //Se calcula el monto total de compras
            foreach (MontoCompraOrdenCompra montoOC in this.montosCompra) 
            {
                this.montoTotalCompras += montoOC.montoCompra;
            }

            //Se obtiene el monto promedio de compras
            this.promedioComprasPorOC = this.montoTotalCompras / montosCompra.Count;



            Context db = new Context();
            List<ordenDeCompraArriendoEquipo> listaOCArriendoEquipo = db.ordenDeCompraArriendoEquipoes.Where(s=>s.ProveedorID==ProveedorID & s.estado=="ENTREGADA").ToList();
            tiemposRespuestaEquipo = new List<tiempoRespuestaEquipo>();
            int cantidadOCArriendoEquipo=0;
           
            foreach(ordenDeCompraArriendoEquipo OC in listaOCArriendoEquipo){

                tiempoRespuestaEquipo tiempoRespuestaEquipo = new tiempoRespuestaEquipo(ProveedorID,OC);
                promedioOCArriendoEquipo += tiempoRespuestaEquipo.tiempoRespuesta;                    
                tiemposRespuestaEquipo.Add(tiempoRespuestaEquipo);
                cantidadOCArriendoEquipo++;
            }
            
            if(cantidadOCArriendoEquipo>0){
                promedioOCArriendoEquipo =   promedioOCArriendoEquipo/cantidadOCArriendoEquipo;
            }


        }
コード例 #2
0
        public IndicadoresClaveProveedor(int proveedorID)
        {
            this.ProveedorID = proveedorID;
            this.promedioOCArriendoEquipo = 0;
            /*1.- Obtenemos el tiempo medio de respuesta:*/

            //Se obtienen los códigos de todos los productos comprados:
            List <int> IDsProductos = this.obtenerProductos();

            //Se obtienen los datos de tiempo de respuesta para cada producto:
            tiemposRespuestaProducto = new List <tiempoRespuestaProducto>();
            foreach (int idProducto in IDsProductos)
            {
                tiemposRespuestaProducto.Add(new tiempoRespuestaProducto(this.ProveedorID, idProducto));
            }

            //Se obtiene el tiempo promedio de respuesta
            foreach (tiempoRespuestaProducto TR in tiemposRespuestaProducto)
            {
                this.tiempoMedioRespuesta = TR.tiempoPromedioRespuesta;
            }

            if (tiemposRespuestaProducto.Count > 0)
            {
                this.tiempoMedioRespuesta /= tiemposRespuestaProducto.Count;
            }

            /*2.- Obtenemos el monto total de compras y el promedio de compras por orden de compra*/

            //Obtenemos los ID de ordenes de compra en que ha participado el proveedor y que han sido entregadas
            List <int> IDsOrdenesCompra = obtenerIDsOrdenesCompra();

            this.montosCompra = new List <MontoCompraOrdenCompra>();

            foreach (int IDOrdenCompra in IDsOrdenesCompra)
            {
                this.montosCompra.Add(new MontoCompraOrdenCompra(this.ProveedorID, IDOrdenCompra));
            }

            //Se calcula el monto total de compras
            foreach (MontoCompraOrdenCompra montoOC in this.montosCompra)
            {
                this.montoTotalCompras += montoOC.montoCompra;
            }

            //Se obtiene el monto promedio de compras
            this.promedioComprasPorOC = this.montoTotalCompras / montosCompra.Count;



            Context db = new Context();
            List <ordenDeCompraArriendoEquipo> listaOCArriendoEquipo = db.ordenDeCompraArriendoEquipoes.Where(s => s.ProveedorID == ProveedorID & s.estado == "ENTREGADA").ToList();

            tiemposRespuestaEquipo = new List <tiempoRespuestaEquipo>();
            int cantidadOCArriendoEquipo = 0;

            foreach (ordenDeCompraArriendoEquipo OC in listaOCArriendoEquipo)
            {
                tiempoRespuestaEquipo tiempoRespuestaEquipo = new tiempoRespuestaEquipo(ProveedorID, OC);
                promedioOCArriendoEquipo += tiempoRespuestaEquipo.tiempoRespuesta;
                tiemposRespuestaEquipo.Add(tiempoRespuestaEquipo);
                cantidadOCArriendoEquipo++;
            }

            if (cantidadOCArriendoEquipo > 0)
            {
                promedioOCArriendoEquipo = promedioOCArriendoEquipo / cantidadOCArriendoEquipo;
            }
        }