public ColaboradorTreinadoCertificado Persistir(Model.ColaboradorTreinadoCertificado objColaboradorTreinadoCertificado)
        {
            ColaboradorTreinadoCertificado TmpColaboradorTreinadoCertificado = null;

            if (objColaboradorTreinadoCertificado.IdMatricula.HasValue)
            {
                TmpColaboradorTreinadoCertificado = RepositoryService.ColaboradorTreinadoCertificado.ObterPor(objColaboradorTreinadoCertificado.IdMatricula.Value);

                if (TmpColaboradorTreinadoCertificado != null)
                {
                    objColaboradorTreinadoCertificado.ID = TmpColaboradorTreinadoCertificado.ID;

                    //Altera Status - Se necessário
                    if (!TmpColaboradorTreinadoCertificado.Status.Equals(objColaboradorTreinadoCertificado.Status) && objColaboradorTreinadoCertificado.Status != null)
                    {
                        this.MudarStatus(TmpColaboradorTreinadoCertificado.ID.Value, objColaboradorTreinadoCertificado.Status.Value);
                    }

                    RepositoryService.ColaboradorTreinadoCertificado.Update(objColaboradorTreinadoCertificado);

                    return(TmpColaboradorTreinadoCertificado);
                }
                else
                {
                    objColaboradorTreinadoCertificado.ID = RepositoryService.ColaboradorTreinadoCertificado.Create(objColaboradorTreinadoCertificado);
                    return(objColaboradorTreinadoCertificado);
                }
            }
            return(null);
        }
Example #2
0
        public void VerificaCumprimento(ColaboradorTreinadoCertificado colaboradorTreiCert)
        {
            if (colaboradorTreiCert.Canal != null && colaboradorTreiCert.Canal.Id != null)
            {
                List <TreinamentoCanal> lstTreinamentosCanal = RepositoryService.TreinamentoCanal.ListarPor(colaboradorTreiCert.TreinamentoCertificado.Id, colaboradorTreiCert.Canal.Id);

                string statusCompromisso = string.Empty;

                foreach (TreinamentoCanal treinamento in lstTreinamentosCanal)
                {
                    statusCompromisso = Domain.Enum.CompromissoCanal.StatusCompromisso.Nao_Cumprido;

                    if (QuantidadeRequerida(colaboradorTreiCert.Canal.Id, colaboradorTreiCert.TreinamentoCertificado.Id))
                    {
                        statusCompromisso = Domain.Enum.CompromissoCanal.StatusCompromisso.Cumprido;
                    }

                    //AtualizaTreinamentoCanal((Guid)colaboradorTreiCert.TreinamentoCertificado.Id, statusCompromisso);
                    AtualizaTreinamentoCanal(treinamento.ID.Value, statusCompromisso);
                }
            }
        }
Example #3
0
        public ColaboradorTreinadoCertificado DefinirPropriedades(Intelbras.Message.Helper.MSG0106 xml)
        {
            var crm = new ColaboradorTreinadoCertificado(this.Organizacao, this.IsOffline);

            #region Propriedades Crm->Xml


            if (xml.DataConclusao.HasValue)
            {
                crm.DataConclusao = xml.DataConclusao;
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "DataConclusao não enviada!";
                return(crm);
            }

            if (xml.DataValidade.HasValue)
            {
                crm.DataValidade = xml.DataValidade;
            }
            else
            {
                //Se nao enviar datavalidade adicionamos 24meses a data de conclusao
                crm.DataValidade = crm.DataConclusao.Value.AddMonths(24);
            }

            if (xml.Situacao == 1 || xml.Situacao == 0)
            {
                crm.Status = xml.Situacao;
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "Situação não enviada!";
                return(crm);
            }
            if (xml.StatusAproveitamento.HasValue)
            {
                if (xml.StatusAproveitamento != (int)Enum.ColaboradorTreinamentoCertificado.Status.Aprovado &&
                    xml.StatusAproveitamento != (int)Enum.ColaboradorTreinamentoCertificado.Status.Pendente &&
                    xml.StatusAproveitamento != (int)Enum.ColaboradorTreinamentoCertificado.Status.Reprovado)
                {
                    resultadoPersistencia.Sucesso  = false;
                    resultadoPersistencia.Mensagem = "Status Aproveitamento não existente.";
                    return(crm);
                }

                crm.RazaoStatus = xml.StatusAproveitamento;
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "Status Aproveitamento não enviado!";
                return(crm);
            }
            if (xml.IdentificadorTreinamento.HasValue)
            {
                TreinamentoCertificacao treinamentoCertif = new Servicos.TreinamentoCertificacaoService(this.Organizacao, this.IsOffline).ObterPor(xml.IdentificadorTreinamento.Value);

                if (treinamentoCertif != null)
                {
                    crm.TreinamentoCertificado = new Lookup(treinamentoCertif.ID.Value, "");
                }
                else
                {
                    resultadoPersistencia.Sucesso  = false;
                    resultadoPersistencia.Mensagem = "IdentificadorTreinamento não cadastrado no Crm!";
                    return(crm);
                }
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "IdentificadorTreinamento não enviado!";
                return(crm);
            }

            if (!String.IsNullOrEmpty(xml.CodigoContato))
            {
                Guid contato;
                if (!Guid.TryParse(xml.CodigoContato, out contato))
                {
                    resultadoPersistencia.Sucesso  = false;
                    resultadoPersistencia.Mensagem = "CodigoConta inválido!";
                    return(crm);
                }

                crm.Contato = new Lookup(contato, "");

                Contato contatoObj = new Intelbras.CRM2013.Domain.Servicos.ContatoService(this.Organizacao, this.IsOffline).BuscaContato(contato);
                if (contatoObj == null)
                {
                    resultadoPersistencia.Sucesso  = false;
                    resultadoPersistencia.Mensagem = "Contato não encontrado!";
                    return(crm);
                }
                if (!String.IsNullOrEmpty(contatoObj.NomeCompleto))
                {
                    crm.Nome = contatoObj.NomeCompleto + " em " + xml.IdentificadorTreinamento.ToString();
                }
                else if (!String.IsNullOrEmpty(contatoObj.PrimeiroNome))
                {
                    crm.Nome = contatoObj.PrimeiroNome + " em " + xml.IdentificadorTreinamento.ToString();
                }
                else
                {
                    crm.Nome = xml.IdentificadorTreinamento.ToString();
                }

                Helper.Truncate(crm.Nome, 100);

                if (contatoObj.AssociadoA != null && contatoObj.AssociadoA.Type == SDKore.Crm.Util.Utility.GetEntityName <Domain.Model.Conta>().ToLower())
                {
                    crm.Canal = new Lookup(contatoObj.AssociadoA.Id, "");
                }
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "CodigoContato não enviado!";
                return(crm);
            }

            if (xml.IdentificadorMatricula.HasValue)
            {
                crm.IdMatricula = xml.IdentificadorMatricula;
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "IdentificadorMatricula não enviado!";
                return(crm);
            }

            #endregion

            return(crm);
        }
Example #4
0
        public string Enviar(ColaboradorTreinadoCertificado objModel)
        {
            string resposta = string.Empty;

            return(resposta);
        }