Exemplo n.º 1
0
        private UserDetailResponseDTO FillUserDetail(PayLendUser resultDto)
        {
            UserDetailResponseDTO userDetail = new UserDetailResponseDTO();

            try
            {
                userDetail.simpleReturnDTO = new SimpleReturnDTO();
                if (resultDto != null)
                {
                    userDetail.payLendUser         = resultDto;
                    userDetail.payLendUser.Country = _countryManager.GetAll().FirstOrDefault(x => x.ID == resultDto.CountryId);
                    userDetail.payLendUser.Banks   = _repository.GetAll <PayLend.Core.Entities.BankUser>(includeProperties: "Bank").Where(x => x.PayLendUser.Id == resultDto.Id).ToList();

                    var memberInfo = resultDto.GetType().BaseType;
                    if (memberInfo != null && memberInfo.Name == DiscriminatorEnum.Borrower.ToString())
                    {
                        userDetail.payLendUser.DiscriminatorType = DiscriminatorEnum.Borrower;
                        //Legal Representative tem que passar a ser os dados da empresa
                        if (userDetail.payLendUser.RegisterType == RegisterTypeEnum.EmpresaCompleto)
                        {
                            //userDetail.legalRepresentative = Repository.GetAll<LegalRepresentative>(x => x.PayLendUserId == resultDTO.Id).FirstOrDefault();
                        }
                    }
                    else if (resultDto.GetType().BaseType.Name == DiscriminatorEnum.Lender.ToString())
                    {
                        userDetail.payLendUser.DiscriminatorType = DiscriminatorEnum.Lender;
                    }
                    else if (resultDto.GetType().BaseType.Name == DiscriminatorEnum.Admin.ToString())
                    {
                        userDetail.payLendUser.DiscriminatorType = DiscriminatorEnum.Admin;
                    }
                    else
                    {
                        userDetail.payLendUser.DiscriminatorType = DiscriminatorEnum.Todos;
                    }

                    userDetail.payLendUser.PayLendCard.FirstOrDefault().Balance         = userDetail.payLendUser.PayLendCard.FirstOrDefault().Balance;
                    userDetail.payLendUser.PayLendCard.FirstOrDefault().PendingBalance  = userDetail.payLendUser.PayLendCard.FirstOrDefault().PendingBalance;
                    userDetail.payLendUser.PayLendCard.FirstOrDefault().AvaiableBalance = userDetail.payLendUser.PayLendCard.FirstOrDefault().AvaiableBalance;
                }
                else
                {
                    userDetail.simpleReturnDTO.ErrorMessage = "HaveUserID_DontHaveData";
                    userDetail.simpleReturnDTO.ErrorType    = ErrorType.Form;
                    userDetail.simpleReturnDTO.ErrorKey     = "UserDetails";
                }
            }
            catch (Exception e)
            {
                userDetail.simpleReturnDTO.ErrorMessage = e.Message;
                userDetail.simpleReturnDTO.ErrorType    = ErrorType.Form;
                userDetail.simpleReturnDTO.ErrorKey     = "UserDetails";
                return(userDetail);
            }
            return(userDetail);
        }
Exemplo n.º 2
0
        SimpleReturnDTO IActionManager <PayLendUser> .Create(PayLendUser entity)
        {
            SimpleReturnDTO simpleReturnDto = new SimpleReturnDTO();

            try
            {
                _repository.Add(entity);
                simpleReturnDto.ID = entity.Id;
                return(simpleReturnDto);
            }
            catch (Exception e)
            {
                simpleReturnDto.ErrorMessage = e.Message;
                return(simpleReturnDto);
            }
        }
Exemplo n.º 3
0
        public SimpleReturnDTO CreateNewBo(PayLendUser entity)
        {
            SimpleReturnDTO simpleReturnDto = new SimpleReturnDTO();

            try
            {
                entity.DiscriminatorType = DiscriminatorEnum.Admin;
                Create(entity);


                var permissions = _repository.GetAll <Permission>(x => x.CategoryID == 3 && x.isVisible == true).ToList();

                foreach (var item in permissions)
                {
                    _userPermissionManager.Create(new PayLend.Core.Entities.Perfil.User_Permission {
                        PayLendUser = entity, Permission = item, Active = true, CreatedDate = DateTime.Now
                    });
                }

                var currency = _repository.Get <Currency>(11);
                _payLendCardManager.Create(new PayLend.Core.Entities.PayLendCard
                {
                    CardNumber       = (entity.CountryId.ToString() + (entity.Id.ToString().PadLeft(000000, '0'))),
                    PayLendUser      = entity,
                    Active           = true,
                    CardFriendlyName = "Conta Paylend",
                    Currency         = currency,
                    Default          = true
                });
                SaveChanges();

                return(simpleReturnDto);
            }
            catch (Exception e)
            {
                simpleReturnDto.ErrorMessage = e.Message;
                return(simpleReturnDto);
            }
        }
Exemplo n.º 4
0
 public void Create(PayLendUser entity)
 {
     _repository.Create(entity);
 }
Exemplo n.º 5
0
 public void Delete(PayLendUser entity)
 {
     _repository.Remove(entity);
 }
Exemplo n.º 6
0
 public void Update(PayLendUser entity)
 {
     _repository.Update(entity);
 }
Exemplo n.º 7
0
        public SimpleReturnDTO CreateNewBorrower(PayLendUser entity)
        {
            SimpleReturnDTO simpleReturnDto = new SimpleReturnDTO();

            try
            {
                var isDuplicated = FindBy(x => x.Email.Equals(entity.Email)).Any();

                if (isDuplicated)
                {
                    simpleReturnDto.ErrorKey     = "DuplicateEmail";
                    simpleReturnDto.ErrorMessage = "DuplicateEmail";
                    simpleReturnDto.ErrorType    = ErrorType.Register;
                }
                else
                {
                    Random generator = new Random();
                    String r         = generator.Next(1000, 99999).ToString("D6");
                    Create(entity);
                    var accountcode = new AccountCodeConfirmation
                    {
                        Email       = entity.Email,
                        CreatedDate = DateTime.Now,
                        Code        = r
                    };

                    var permissions = _repository.GetAll <Permission>(x => x.CategoryID == 4 && x.isVisible == true).ToList();

                    foreach (var item in permissions)
                    {
                        _userPermissionManager.Create(new PayLend.Core.Entities.Perfil.User_Permission {
                            PayLendUser = entity, Permission = item, Active = true, CreatedDate = DateTime.Now
                        });
                    }

                    _accountCodeConfirmationManager?.Create(accountcode);
                    var currency = _repository.Get <Currency>(11);
                    _payLendCardManager.Create(new PayLend.Core.Entities.PayLendCard
                    {
                        CardNumber       = (entity.CountryId.ToString() + (entity.Id.ToString().PadLeft(000000, '0'))),
                        PayLendUser      = entity,
                        Active           = true,
                        CardFriendlyName = "Conta Paylend",
                        Currency         = currency,
                        Default          = true
                    });
                    SaveChanges();

                    string subject     = PayLend.Core.Languages.Site.TyRegister + " " + entity.Name;
                    string messageBody = PayLend.Core.Languages.Email.MailTop;
                    var    text        = PayLend.Core.Languages.Email.EmailConfirmacao;

                    messageBody += text.Replace("[AccountCode]", accountcode.Code)
                                   .Replace("[User]", PayLend.Core.Languages.Site.TyRegister + " " + entity.Name)
                                   .Replace("[Email]", entity.Email)
                                   .Replace("[BaseUrl]", ConfigurationManager.AppSettings["urlClient"].ToString())
                                   .Replace("[Password]", PayLend.Core.EncriptPassword.Decrypt(entity.Password));


                    messageBody += PayLend.Core.Languages.Email.MailBottom;
                    MailSender.SendHtmlMenssage(new List <string> {
                        entity.Email
                    }, new List <string>(), subject, messageBody, "*****@*****.**", null);
                }

                return(simpleReturnDto);
            }
            catch (Exception e)
            {
                simpleReturnDto.ErrorMessage = e.Message;
                return(simpleReturnDto);
            }
        }