Beispiel #1
0
 protected override void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command)
 {
     if (componente.Mrp == null)
     {
         command.AdicionarErro(nameof(command.EtapaSolicitacao), "Não é possível finalizar etapa pois não existem dados de MRP cadastrado");
     }
 }
Beispiel #2
0
 protected override void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command)
 {
     if (componente.AbasteceProducao == null || componente.Granel == null)
     {
         command.AdicionarErro(nameof(command.EtapaSolicitacao), "Não é possível finalizar etapa pois não existem dados de Logistica cadastrados");
     }
 }
Beispiel #3
0
        protected override void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command)
        {
            if (!componente.Fornecedores.Any())
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao),
                                      "Não é possível finalizar etapa pois não existem Fornecedores vinculados ao Componente");
            }

            if (componente.Fornecedores.Count(x => x.Padrao) != 1)
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao),
                                      "Não é possível finalizar etapa pois não existe um Fornecedor padrão cadastrado");
            }

            if (componente.Suprimento?.DataLimite == null)
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao),
                                      "Não é possível finalizar etapa pois a Data Limite para três Fornecedores não está cadastrada");
            }

            if (!componente.Fornecedores.All(x => x.Armazenagens.Any(y => y.Padrao)))
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao),
                                      "Não é possível finalizar etapa pois existem Fornecedores sem Embalagem Padrão cadastradas");
            }

            if (componente.SolicitacaoComponente.OrigemId == (int)Origem.Importado && componente.Fornecedores.Any(x => x.Importacao == null))
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao),
                                      "Não é possível finalizar etapa pois existem Fornecedores sem Dados de Importação cadastrados");
            }
        }
Beispiel #4
0
        public virtual void Validar(Componente componente, FinalizarEtapaCommand command)
        {
            if (componente.EtapaJaEstaFinalizada(command.EtapaSolicitacao))
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao), "Etapa já encontra-se finalizada");
            }

            if (!command.PossuiErros())
            {
                ValidarInformacoesEspecificas(componente, command);
            }
        }
Beispiel #5
0
        protected override void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command)
        {
            if (!componente.Fornecedores.Any())
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao), "Não é possível finalizar etapa pois não existem Fornecedores vinculados ao Componente");
            }

            if (!componente.Fornecedores.All(x => x.Especificacoes.Any()))
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao), "Não é possível finalizar etapa pois algum Fornecedor não possui dados de Especificação cadastrados");
            }
        }
Beispiel #6
0
        protected override void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command)
        {
            var valido = true;

            if (componente.SolicitacaoComponente.ProprietarioId == (int)Proprietario.Ihara)
            {
                valido = componente.Suprimento != null && componente.SuprimentoIhara != null;
            }
            else if (componente.SolicitacaoComponente.ProprietarioId == (int)Proprietario.Terceiro)
            {
                valido = componente.Suprimento != null;
            }

            if (!valido)
            {
                command.AdicionarErro(nameof(command.EtapaSolicitacao), "Não é possível finalizar etapa pois não existem dados de Suprimento cadastrados");
            }
        }
Beispiel #7
0
 protected abstract void ValidarInformacoesEspecificas(Componente componente, FinalizarEtapaCommand command);