示例#1
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);
            }
        }
示例#2
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);
            }
        }
示例#3
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);
            }
        }
示例#4
0
        public SimpleReturnDTO CreateNewLender(Lender 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
                {
                    entity.DiscriminatorType = DiscriminatorEnum.Lender;

                    if (entity.SWIFT == null)
                    {
                        string zip    = entity.IBAN.Substring(4, 4);
                        var    result = _bankManager.FindBy(x => x.IbanCode.Equals(zip)).ToList();
                        entity.SWIFT = result.FirstOrDefault()?.SwiftCode;
                    }

                    if (!entity.Banks.Any() || !entity.Banks.Any(x => x.Bank.SwiftCode.Equals(entity.SWIFT)))
                    {
                        var bank = _bankManager.GetAll().FirstOrDefault(x => x.SwiftCode.Equals(entity.SWIFT));

                        entity.Banks.Add(new PayLend.Core.Entities.BankUser
                        {
                            IBAN    = entity.IBAN,
                            Bank    = bank,
                            NIB     = entity.IBAN,
                            Default = true,
                        });
                    }


                    _repository.Create(entity);
                    _bankUserManager.Create(entity.Banks.FirstOrDefault());
                    //this._repository.Create(entity);
                    //this._repository.SaveChanges();

                    var permissions = _repository.GetAll <Permission>(x => x.CategoryID == 5 && 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
                    });

                    //this._repository.SaveChanges();
                }

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