Esempio n. 1
0
        public static DateTime InZone(this DateTime date, TUfEmi uf)
        {
            var zoneName = uf.GetTimeZoneName();

            var zone = DateTimeZoneProviders.Tzdb[zoneName];

            var instant = Instant.FromDateTimeUtc(date);

            return instant.InZone(zone).ToDateTimeUnspecified();
        }
Esempio n. 2
0
        public static DateTime InZone(this DateTime date, TUfEmi uf)
        {
            var zoneName = uf.GetTimeZoneName();

            var zone = DateTimeZoneProviders.Tzdb[zoneName];

            var instant = Instant.FromDateTimeUtc(date);

            return(instant.InZone(zone).ToDateTimeUnspecified());
        }
Esempio n. 3
0
        public static string ToUfString(TUfEmi uf)
        {
            switch (uf)
            {
            case XmlSchemas.NfeAutorizacao.Envio.TUfEmi.DF:
                return("DF");

            default:
                throw new NotImplementedException();
            }
        }
Esempio n. 4
0
        public static string GetTimeZoneName(this TUfEmi uf)
        {
            // http://en.wikipedia.org/wiki/Time_in_Brazil#IANA_time_zone_database

            string zoneName = "";

            switch (uf)
            {
            //case Atlantic islands
            //    zoneName = "America/Noronha";
            //    break;
            case TUfEmi.AP:
            case TUfEmi.PA:     //East
                zoneName = "America/Belem";
                break;

            case TUfEmi.MA:
            case TUfEmi.PI:
            case TUfEmi.CE:
            case TUfEmi.RN:
            case TUfEmi.PB:
                zoneName = "America/Fortaleza";
                break;

            case TUfEmi.PE:
                zoneName = "America/Fortaleza";
                break;

            case TUfEmi.TO:
                zoneName = "America/Araguaiaina";
                break;

            case TUfEmi.AL:
            case TUfEmi.SE:
                zoneName = "America/Maceio";
                break;

            case TUfEmi.BA:
                zoneName = "America/Bahia";
                break;

            case TUfEmi.GO:
            case TUfEmi.DF:
            case TUfEmi.MG:
            case TUfEmi.ES:
            case TUfEmi.RJ:
            case TUfEmi.SP:
            case TUfEmi.PR:
            case TUfEmi.SC:
            case TUfEmi.RS:
                zoneName = "America/Sao_Paulo";
                break;

            case TUfEmi.MS:
                zoneName = "America/Campo_Grande";
                break;

            case TUfEmi.MT:
                zoneName = "America/Cuiaba";
                break;

            //case TUfEmi.PA: //West
            //    zoneName = "America/Santarem";
            //    break;
            case TUfEmi.RO:
                zoneName = "America/Boa_Vista";
                break;

            case TUfEmi.RR:
                zoneName = "America/Porto_Velho";
                break;

            case TUfEmi.AM:     //East
                zoneName = "America/Manaus";
                break;

            //case TUfEmi.AM: //West
            //    zoneName = "America/Eirunepe";
            //    break;
            case TUfEmi.AC:
                zoneName = "America/Rio_Branco";
                break;
            }

            return(zoneName);
        }