public MercadoCenario MercadoCenarioFind(int elementoId, int cenarioId) { //pr_VCane_MercadoCenarioFind string codigo = _unitOfw.NoRepository.Get(y => y.Id == elementoId).FirstOrDefault()?.Codigo; if (!string.IsNullOrEmpty(codigo)) { MercadoCenario mercadoCenario = _unitOfw.MercadoCenarioRepository.Get(y => y.NoId == elementoId && y.CenarioId == cenarioId).FirstOrDefault(); mercadoCenario.IsSpot = _unitOfw.MercadoContratoRepository.Count(y => y.MercadoId == mercadoCenario.NoId) > 0; if (mercadoCenario == null) { int tipoDemandaId = _unitOfw.TipoDemandaRepository.Get(y => y.Nome == "Produto").FirstOrDefault().Id; _unitOfw.MercadoCenarioRepository.Insert(new MercadoCenario { NoId = elementoId, CenarioId = cenarioId, TipoDemandaId = tipoDemandaId, IncluirCalculoImpostos = false }); } return(mercadoCenario); } return(null); }
public bool ValidateMC(Collection <EntradaRequest> entradas) { return(true); //Continuar escrevendo o metodo de validação; if (entradas.Count > 0) { this.mercadoCenario = _mercadoAppService.MercadoCenarioFindByCodigo(entradas[0].EntidadeCodigo1, entradas[0].CenarioId); this.FindConfiguracao(entradas[0].EntidadeCodigo1); if (mercadoCenario.IsSpot) { //validation = new entradacomparevalidation(entradas, sessioninfo.cadeiaid, demandalimminimo, demandalimmaximo); } //else //{ // if (this.configuracao.TipoEntrada.Value == (int)TiposConfiguracaoEntrada.ComExcedente) // Para o caso de Valor Fixo com excedente // { // validation = new EntradaCompareValidation(entradas, SessionInfo.CadeiaId, DemandaLimMinimoContratosComExcedente, DemandaLimMaximoContratosComExcedente); // } // else // { // validation = new EntradaCompareValidation(entradas, SessionInfo.CadeiaId, DemandaLimMinimoContratos, DemandaLimMaximoContratos); // } //} //validation.OnError = this.OnValidationError; //return validation.Validate(); } return(true); }
public MercadoCenario MercadoCenarioFindByCodigo(string codigo, int cenarioId) { //pr_VCane_MercadoCenarioFindByCodigo MercadoCenario mercadoCenario = new MercadoCenario(); int tipoEntidadeMercado = _unitOfw.TipoEntidadeRepository.Get(y => y.Nome == "Mercado").FirstOrDefault().Id; var elementoId = (from n in _unitOfw.NoRepository.Get(y => y.Codigo == codigo && y.TipoEntidadeId == tipoEntidadeMercado) join c in _unitOfw.CenarioRepository.Get(y => y.Id == cenarioId) on n.TopologiaId equals c.TopologiaId select n.Id).FirstOrDefault(); if (elementoId > 0) { mercadoCenario = MercadoCenarioFind(elementoId, cenarioId); } return(mercadoCenario); }