コード例 #1
0
        public MarcoDTO CrearMarco(MarcoDTO marcoDTO)
        {
            Marco marco = this.MarcoAssembler.FromTo(marcoDTO);

            marco.Numero  = GetNumeroMarco();
            marco.Estado  = Estados.EstadoMarco.Pendiente;
            marco.Precio  = CalcularPrecio(marcoDTO);
            marco.Varilla = VarillaRepository.GetById(marcoDTO.VarillaId);

            this.EntityRepository.Save(marco);

            return(this.MarcoAssembler.ToDTO(marco));
        }
コード例 #2
0
        public decimal CalcularPrecio(MarcoDTO marco)
        {
            Varilla varilla = VarillaRepository.GetById(marco.VarillaId);

            // Regla de negocio
            // ancho y largo [cm]
            // conversion a mts
            // ( perimetro [cm] + 8 x ancho de varilla [cm] ) x precio varilla [$/m2]

            decimal perimetroCuadro = CalcularPerimetro(marco);

            decimal angulosVarilla = 8 * varilla.Ancho;

            decimal metrosNecesarios = (perimetroCuadro + angulosVarilla) / 100;

            return(metrosNecesarios * varilla.Precio);
        }