Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="token"></param>
        /// <returns></returns>
        /// <exception cref="OportunidadeException"></exception>
        /// <exception cref="InvalidTokenException"></exception>
        public async Task <Oportunidade> SaveAsync(Oportunidade entity, string token)
        {
            try
            {
                await _segService.ValidateTokenAsync(token);

                if (entity.ID == 0)
                {
                    entity.DataCriacao = DateTime.UtcNow;
                    entity.DataEdicao  = DateTime.UtcNow;
                    entity.Ativo       = true;

                    var result = _opRepository.Add(entity);

                    entity.Endereco.OportunidadeId = result;
                }
                else
                {
                    entity = await UpdateAsync(entity, token);
                }

                return(entity);
            }
            catch (InvalidTokenException e)
            {
                throw e;
            }
            catch (Exception e)
            {
                throw new OportunidadeException("Não foi possível completar a operação.", e);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="oportunidade"></param>
        /// <param name="token"></param>
        /// <returns></returns>
        /// <exception cref="OportunidadeException"></exception>
        public async Task SaveAsync(Oportunidade oportunidade, string token)
        {
            try
            {
                if (oportunidade.ID == 0)
                {
                    await _segService.ValidateTokenAsync(token);

                    oportunidade.DataCriacao = DateTime.UtcNow;
                    oportunidade.DataEdicao  = DateTime.UtcNow;
                    oportunidade.Ativo       = true;

                    var result = _opRepository.Add(oportunidade);

                    await _endService.SaveEnderecoAsync(oportunidade.Endereco, token);
                }
                else
                {
                    await UpdateAsync(oportunidade, token);
                }
            }
            catch (Exception e)
            {
                throw new OportunidadeException("Não foi possível salvar a oportunidade.", e);
            }
        }