public static ProducaoContext GetProducaoContext() { var options = new DbContextOptionsBuilder <ProducaoContext> () .UseInMemoryDatabase("ProducaoDB") .Options; ProducaoContext dbContext = new ProducaoContext(options); Seed(dbContext); return(dbContext); }
public ProdutoController(ProducaoContext context) { _context = context; repo = new ProdutoRepositorio(_context); if (_context.Produtos.Count() == 0) { _context.Produtos.Add(new Produto { nome = new NomeProduto { nome = "ProdutoBase" }, descricao = new DescricaoProduto { descricao = "Produto por defeito" }, planoFabrico = new NomePlanoFabrico { nome = "PlanoFabrico1" } }); _context.SaveChanges(); } }
public PlanoFabricoRepositorio(ProducaoContext context) { _context = context; }
public async Task <IActionResult> Otimizar([FromBody] ParametrosCenso _formulario) { this.Formulario = _formulario; Stopwatch sw = new Stopwatch(); sw.Start(); var TaskEnade = await Task.Run(() => { return(this.Context.CursoCenso.ToList()); }); var ResId = Convert.ToInt64(DateTime.Now.ToString("yyyyMMddHHmmss")); try { var query = await this.Context.ProfessorCursoEmec.ToListAsync(); var query20p = await this.Context.ProfessorCursoEmec20p.ToListAsync(); var ListaCursoArea = await this.CursoEnquadramentoContext.CursoEnquadramento.ToListAsync(); var ListaPrevisaoSKU = GeraListaPrevisaoSKU(); var Cursoprofessor = MontaCursoProfessor(query, ListaCursoArea); // // Obtem lista dos professores escolhidos no filtro var lista = _formulario.MontaLista(); List <CursoProfessor> cursoProfessorAtual = new List <CursoProfessor>(); Cursoprofessor.ForEach((item) => { cursoProfessorAtual.Add((CursoProfessor)item.Clone()); } ); var CursoNota = getNotaCursos(query, ListaCursoArea); var CursoEnade = TaskEnade.Where(x => x.IndEnade.Contains('S')).Select(c => c.CodEmec.ToString()).Distinct().ToList(); List <Resultado> ResultadoAtual = Otm.CalculaNotaCursos(ListaPrevisaoSKU, cursoProfessorAtual, CursoEnade); // ######################## Alavanca 20% ######################## // if (_formulario.otimiza20p) { Otm.AddProfessor20p(Cursoprofessor, query20p, ListaPrevisaoSKU, _formulario, CursoEnade); } List <Resultado> resultado = Otm.OtimizaCurso(ListaPrevisaoSKU, query, Cursoprofessor, ListaCursoArea, _formulario); // ############## Monta resultados a partir do cenário otimizado ################# // var Resumoresultado = Otm.MontaResultadoFinal(resultado); var ResumoresultadoAtual = Otm.MontaResultadoFinal(ResultadoAtual); sw.Stop(); // ############ Monta Objeto resultado Otimizado ############## // Task <string> json = Task.Run( () => { return(JsonConvert.SerializeObject(resultado)); } ); Task <string> formJson = Task.Run( () => { return(JsonConvert.SerializeObject(_formulario)); } ); Task <string> resumoJson = Task.Run( () => { return((string)JsonConvert.SerializeObject(Resumoresultado)); } ); Task <string> professorJson = Task.Run( () => { return(JsonConvert.SerializeObject(Cursoprofessor)); } ); // ############ Monta Objeto resultado Atual ############## // Task <string> jsonAt = Task.Run( () => { return(JsonConvert.SerializeObject(ResultadoAtual)); } ); Task <string> formJsonAt = Task.Run( () => { return(JsonConvert.SerializeObject(_formulario)); } ); Task <string> resumoJsonAt = Task.Run( () => { return((string)JsonConvert.SerializeObject(ResumoresultadoAtual)); } ); Task <string> professorJsonAt = Task.Run( () => { return(JsonConvert.SerializeObject(cursoProfessorAtual)); } ); var objRes = new TbResultado(); objRes.Id = ResId; var objResAtual = new TbResultadoAtual(); objResAtual.Id = ResId; Task.WaitAll(json, formJson, resumoJson, professorJson); Task.WaitAll(jsonAt, formJsonAt, resumoJsonAt, professorJsonAt); objRes.Resultado = json.Result; objRes.Parametro = formJson.Result; objRes.Resumo = resumoJson.Result; objRes.Professores = professorJson.Result; objRes.TempoExecucao = DateTime.Now.ToString("HH:mm:ss"); objRes.Observacao = _formulario.Observacao; objResAtual.Resultado = jsonAt.Result; objResAtual.Parametro = formJsonAt.Result; objResAtual.Resumo = resumoJsonAt.Result; objResAtual.Professores = professorJsonAt.Result; ProducaoContext.Add(objRes); ProducaoContext.Add(objResAtual); ProducaoContext.SaveChanges(); return(Ok()); } catch (System.Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, "Erro no processamento." + e.Message)); } }
private static void Seed(this ProducaoContext dbContext) { List <Operacao> lo1 = new List <Operacao> (); List <Operacao> lo2 = new List <Operacao> (); List <Operacao> lo3 = new List <Operacao> (); Operacao op1 = new Operacao { nome = "Operacao 1" }; Operacao op2 = new Operacao { nome = "Operacao 2" }; Operacao op3 = new Operacao { nome = "Operacao 3" }; Operacao op4 = new Operacao { nome = "Operacao 4" }; Operacao op5 = new Operacao { nome = "Operacao 5" }; Operacao op6 = new Operacao { nome = "Operacao 6" }; Operacao op7 = new Operacao { nome = "Operacao 7" }; Operacao op8 = new Operacao { nome = "Operacao 8" }; Operacao op9 = new Operacao { nome = "Operacao 9" }; lo1.Add(op1); lo1.Add(op2); lo1.Add(op3); lo2.Add(op4); lo2.Add(op5); lo2.Add(op6); lo3.Add(op7); lo3.Add(op8); lo3.Add(op9); dbContext.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico1" }, listaOperacoes = lo1 }); dbContext.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico2" }, listaOperacoes = lo2 }); dbContext.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico3" }, listaOperacoes = lo3 }); dbContext.Produtos.Add(new Produto { nome = new NomeProduto { nome = "ProdutoBase" }, descricao = new DescricaoProduto { descricao = "Produto por defeito" }, planoFabrico = new NomePlanoFabrico { nome = "PlanoFabrico1" } }); dbContext.SaveChanges(); }
public PlanoFabricoController(ProducaoContext context) { _context = context; repo = new PlanoFabricoRepositorio(_context); if (_context.PlanosFabrico.Count() == 0) { List <Operacao> lo1 = new List <Operacao> (); List <Operacao> lo2 = new List <Operacao> (); List <Operacao> lo3 = new List <Operacao> (); Operacao op1 = new Operacao { nome = "Operacao 1" }; Operacao op2 = new Operacao { nome = "Operacao 2" }; Operacao op3 = new Operacao { nome = "Operacao 3" }; Operacao op4 = new Operacao { nome = "Operacao 4" }; Operacao op5 = new Operacao { nome = "Operacao 5" }; Operacao op6 = new Operacao { nome = "Operacao 6" }; Operacao op7 = new Operacao { nome = "Operacao 7" }; Operacao op8 = new Operacao { nome = "Operacao 8" }; Operacao op9 = new Operacao { nome = "Operacao 9" }; lo1.Add(op1); lo1.Add(op2); lo1.Add(op3); lo2.Add(op4); lo2.Add(op5); lo2.Add(op6); lo3.Add(op7); lo3.Add(op8); lo3.Add(op9); _context.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico1" }, listaOperacoes = lo1 }); _context.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico2" }, listaOperacoes = lo2 }); _context.PlanosFabrico.Add(new PlanoFabrico { nome = new NomePlanoFabrico { nome = "PlanoFabrico3" }, listaOperacoes = lo3 }); _context.SaveChanges(); } }
public UnitOfWork(ProducaoContext db) { this._db = db; }
public ProdutoRepository(ProducaoContext context) { this._context = context; }
public ProdutoRepositorio(ProducaoContext context) { _context = context; }
public SolicitacaoCompraRepository(ProducaoContext context) { _context = context; }