Ejemplo n.º 1
0
        public ConsultaLiquidacionProcesoPlantaPorIdBE ConsultarLiquidacionProcesoPlantaPorId(ConsultaLiquidacionProcesoPlantaPorIdRequestDTO request)
        {
            ConsultaLiquidacionProcesoPlantaPorIdBE consultaLiquidacionProcesoPlantaPorIdBE = _ILiquidacionProcesoPlantaRepository.ConsultarLiquidacionProcesoPlantaPorId(request.LiquidacionProcesoPlantaId);

            consultaLiquidacionProcesoPlantaPorIdBE.Preparacion = consultaLiquidacionProcesoPlantaPorIdBE.ProductoTerminado + " - " + consultaLiquidacionProcesoPlantaPorIdBE.SubProductoTerminado + " - " + consultaLiquidacionProcesoPlantaPorIdBE.Calidad;

            if (consultaLiquidacionProcesoPlantaPorIdBE != null)
            {
                consultaLiquidacionProcesoPlantaPorIdBE.Detalle   = _ILiquidacionProcesoPlantaRepository.ConsultarLiquidacionProcesoPlantaDetallePorId(request.LiquidacionProcesoPlantaId).ToList();
                consultaLiquidacionProcesoPlantaPorIdBE.Resultado = _ILiquidacionProcesoPlantaRepository.ConsultarLiquidacionProcesoPlantaResultadoPorId(request.LiquidacionProcesoPlantaId, request.EmpresaId).ToList();

                decimal totalKilosNetos = 0;
                foreach (ConsultaLiquidacionProcesoPlantaResultadoBE item in consultaLiquidacionProcesoPlantaPorIdBE.Resultado)
                {
                    totalKilosNetos = totalKilosNetos + item.KilosNetos;
                }

                foreach (ConsultaLiquidacionProcesoPlantaResultadoBE item in consultaLiquidacionProcesoPlantaPorIdBE.Resultado)
                {
                    item.Porcentaje = decimal.Round(((item.KilosNetos / totalKilosNetos) * 100), 2);
                }


                List <ConsultaDetalleTablaBE> lista = _IMaestroRepository.ConsultarDetalleTablaDeTablas(consultaLiquidacionProcesoPlantaPorIdBE.EmpresaId, String.Empty).ToList();


                string[] certificacionesIds = consultaLiquidacionProcesoPlantaPorIdBE.TipoCertificacionId.Split('|');

                string certificacionLabel = string.Empty;


                if (certificacionesIds.Length > 0)
                {
                    List <ConsultaDetalleTablaBE> certificaciones = lista.Where(a => a.CodigoTabla.Trim().Equals("TipoCertificacion")).ToList();

                    foreach (string certificacionId in certificacionesIds)
                    {
                        ConsultaDetalleTablaBE certificacion = certificaciones.Where(a => a.Codigo == certificacionId).FirstOrDefault();

                        if (certificacion != null)
                        {
                            certificacionLabel = certificacionLabel + certificacion.Label + " ";
                        }
                    }
                }

                consultaLiquidacionProcesoPlantaPorIdBE.TipoCertificacion = certificacionLabel;
            }

            return(consultaLiquidacionProcesoPlantaPorIdBE);
        }
        public ConsultaLiquidacionProcesoPlantaPorIdBE ConsultarLiquidacionProcesoPlantaPorId(int liquidacionProcesoPlantaId)
        {
            ConsultaLiquidacionProcesoPlantaPorIdBE itemBE = null;

            var parameters = new DynamicParameters();

            parameters.Add("@LiquidacionProcesoPlantaId", liquidacionProcesoPlantaId);

            using (IDbConnection db = new SqlConnection(_connectionString.Value.CoffeeConnectDB))
            {
                var list = db.Query <ConsultaLiquidacionProcesoPlantaPorIdBE>("uspLiquidacionProcesoPlantaConsultarPorId", parameters, commandType: CommandType.StoredProcedure);

                if (list.Any())
                {
                    itemBE = list.First();
                }
            }
            return(itemBE);
        }