Esempio n. 1
0
 public void ICMS40ShouldHaveMotDestNullable()
 {
     var icms = new ICMS40()
     {
         motDesICMS = null
     };
 }
Esempio n. 2
0
 public void ICMS40ShouldHaveMotDestNullable()
 {
     var icms = new ICMS40()
     {
         motDesICMS = null
     };
 }
Esempio n. 3
0
        /// <summary>
        /// Obtém um objeto ICMSBasico com base nos dados do objeto ICMSGeral e da CRT informada no parâmetro.
        /// Esse método pode devolver, por exemplo, um objeto ICMS00, ICMS10, ICMSSN101, etc.
        /// </summary>
        /// <param name="crt"></param>
        /// <returns></returns>
        public ICMSBasico ObterICMSBasico(CRT crt)
        {
            ICMSBasico icmsBasico;

            switch (crt)
            {
            case CRT.SimplesNacional:
                switch (CSOSN)
                {
                case Csosnicms.Csosn101:
                    icmsBasico = new ICMSSN101();
                    break;

                case Csosnicms.Csosn102:
                case Csosnicms.Csosn103:
                case Csosnicms.Csosn300:
                case Csosnicms.Csosn400:
                    icmsBasico = new ICMSSN102();
                    break;

                case Csosnicms.Csosn201:
                    icmsBasico = new ICMSSN201();
                    break;

                case Csosnicms.Csosn202:
                case Csosnicms.Csosn203:
                    icmsBasico = new ICMSSN202();
                    break;

                case Csosnicms.Csosn500:
                    icmsBasico = new ICMSSN500();
                    break;

                case Csosnicms.Csosn900:
                    icmsBasico = new ICMSSN900();
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
                break;

            case CRT.SimplesNacionalExcessoSublimite:
            case CRT.RegimeNormal:
                switch (CST)
                {
                case Csticms.Cst00:
                    icmsBasico = new ICMS00();
                    break;

                case Csticms.Cst10:
                    icmsBasico = new ICMS10();
                    break;

                case Csticms.CstPart10:
                case Csticms.CstPart90:
                    icmsBasico = new ICMSPart();
                    break;

                case Csticms.Cst20:
                    icmsBasico = new ICMS20();
                    break;

                case Csticms.Cst30:
                    icmsBasico = new ICMS30();
                    break;

                case Csticms.Cst40:
                case Csticms.Cst41:
                case Csticms.Cst50:
                    icmsBasico = new ICMS40();
                    break;

                case Csticms.CstRep41:
                    icmsBasico = new ICMSST();
                    break;

                case Csticms.Cst51:
                    icmsBasico = new ICMS51();
                    break;

                case Csticms.Cst60:
                    icmsBasico = new ICMS60();
                    break;

                case Csticms.Cst70:
                    icmsBasico = new ICMS70();
                    break;

                case Csticms.Cst90:
                    icmsBasico = new ICMS90();
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
                break;

            default:
                throw new ArgumentOutOfRangeException("crt", crt, null);
            }

            icmsBasico.CopiarPropriedades(this);
            return(icmsBasico);
        }