public int NovaTransacao() { string json = File.ReadAllText(pathControl); var primeiroCadastro = String.IsNullOrEmpty(json); ChaveDominio chave = _chaveRepositorio.ProximaChave(tipoTransacao); List <TransacaoDominio> transacoes; TransacaoDominio transacao = new TransacaoDominio { Tid = chave.ProximaChave, Status = 0 }; if (primeiroCadastro) { transacoes = new List <TransacaoDominio>(); transacoes.Add(transacao); EscreverNovasTransacoes(transacoes); } else { transacoes = JsonConvert.DeserializeObject <List <TransacaoDominio> >(json); transacoes.Add(transacao); EscreverNovasTransacoes(transacoes); } CriaArquivoProcessos(transacao.Path); return(transacao.Tid); }
public ChaveDominio ProximaChave(int tipoChave) { List <ChaveDominio> chaves = this.ListarChaves(); List <ChaveDominio> chavesAtualizadas = new List <ChaveDominio>(); var chaveFiltro = chaves.Where(chave => chave.Tipo == tipoChave).First(); ChaveDominio chaveRetorno = new ChaveDominio { Tipo = chaveFiltro.Tipo, ProximaChave = chaveFiltro.ProximaChave, ChaveAtual = chaveFiltro.ChaveAtual }; foreach (ChaveDominio chave in chaves) { if (chave.Tipo == tipoChave) { chave.ProximaChave++; chave.ChaveAtual++; } chavesAtualizadas.Add(chave); } EscreverNovasChaves(chavesAtualizadas); return(chaveRetorno); }
private void PrepararChave(JsonTextWriter writer, ChaveDominio chave) { writer.WriteStartObject(); writer.WritePropertyName("tipo"); writer.WriteValue(chave.Tipo); writer.WritePropertyName("proximaChave"); writer.WriteValue(chave.ProximaChave); writer.WritePropertyName("chaveAtual"); writer.WriteValue(chave.ChaveAtual); writer.WriteEndObject(); }