Example #1
0
        private void CadastrarVagas()
        {
            foreach (var vagaTextBox in _vagas)
            {
                _vagaDomain.Save(new VagaRemocao
                {
                    CargoId   = (int)vagaTextBox.Tag,
                    Data      = DateTime.Now.Date,
                    UnidadeId = _unidadeId,
                    Vagas     = int.Parse(vagaTextBox.Text)
                });

                vagaTextBox.Text = "0";
            }
        }
Example #2
0
        /// <summary>
        /// Salvar vagas para remocao no banco de dados
        /// </summary>
        /// <param name="vagas"></param>
        static void Processar(IEnumerable <VagaRemocao> vagas)
        {
            if (vagas == null)
            {
                throw new ArgumentNullException("vagas");
            }

            if (vagas.GroupBy(a => new { a.CargoId, a.UnidadeId, a.Data.Year }).Where(a => a.Count() > 1).Any())
            {
                throw new Exception($"Existem vagas repetidas na coleção");
            }

            var ano = vagas.First().Data.Year;

            if (_vagaDomain.Get().Any(a => a.Data.Year == ano))
            {
                if (_vagaDomain.Get().ToArray().Any(a => vagas.Any(b => a.CargoId == b.CargoId && a.UnidadeId == b.UnidadeId && a.Data.Year == b.Data.Year)))
                {
                    throw new Exception($"Existem vagas já cadastradas no banco de dados");
                }
            }

            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Salvando vagas em lote...");

            _vagaDomain.Save(vagas);

            Console.ForegroundColor = ConsoleColor.Red;
            Console.WriteLine("Todas Vagas foram registradas com sucesso!");
            Console.ReadLine();
        }
Example #3
0
        static bool RegistrarNomeUnidade(string linha)
        {
            var comparativo = linha.StartsWith("CEI DIRET ") ? linha.Replace(" DIRET ", " ") : linha;
            KeyValuePair <int, string> unidadePair;

            unidadePair = _unidadeDictionary.SingleOrDefault(a => comparativo.Equals(a.Value, StringComparison.CurrentCultureIgnoreCase));

            //procurar em nomes do DO
            if (unidadePair.Equals(default(KeyValuePair <int, string>)))
            {
                //usamos a var linha ao inves de comparativo
                //pois entende-se que o mesmo nome da linha e o que esta salvo na coluan NomeDiarioOficial
                unidadePair = _unidadeDoDictionary.SingleOrDefault(a => linha.Equals(a.Value, StringComparison.CurrentCultureIgnoreCase));
            }

            if (unidadePair.Equals(default(KeyValuePair <int, string>)))
            {
                if (!Regex.IsMatch(comparativo, ".*, (PROF|VER|GEN|DR|MAL|DES|TTE|DEP|PRES|PREF|SG|MIN|CEL|PE|ENG|PDE|SEN|CAP|CM|CTE|ALM|ARQ|SGT|BRIG|MJ|GOV|EMB|CDE)(A|.|A.|)"))
                {
                    return(false);
                }

                comparativo = CorrigirNomeUnidade(comparativo);
                unidadePair = _unidadeDictionary.SingleOrDefault(a => comparativo.Equals(a.Value, StringComparison.CurrentCultureIgnoreCase));

                if (unidadePair.Equals(default(KeyValuePair <int, string>)))
                {
                    return(false);
                }
            }

            var unidade = _unidadeDomain.Get(unidadePair.Key);

            if (unidade.NomeDiarioOficial != null)
            {
                return(true);
            }

            unidade.NomeDiarioOficial = linha;
            _unidadeDomain.Save(unidade);
            return(true);
        }