コード例 #1
0
ファイル: AuthRepo.cs プロジェクト: alvanrahimli/PoS-API
        public async Task <RepoResponse <Seller> > Register(SellerRegisterDto seller)
        {
            var oldSeller = await _context.Sellers
                            .AsNoTracking()
                            .FirstOrDefaultAsync(s => s.Email == seller.Email);

            if (oldSeller != null)
            {
                return(new RepoResponse <Seller>()
                {
                    Content = null,
                    IsSucces = false,
                    Message = "Daxil edilmiş email ilə artıq satıcı mövcuddur."
                });
            }

            var newGuid   = Guid.NewGuid();
            var newSeller = new Seller()
            {
                Id       = newGuid,
                Name     = seller.Name,
                Details  = seller.Details,
                Email    = seller.Email,
                Password = seller.Password
            };

            _context.Sellers.Add(newSeller);
            var result = await _context.SaveChangesAsync();

            if (result > 0)
            {
                var returnValue = await Login(new SellerLoginDto()
                {
                    Email    = newSeller.Email,
                    Password = seller.Password
                });

                if (returnValue.IsSucces)
                {
                    return(new RepoResponse <Seller>()
                    {
                        Content = returnValue.Content,
                        IsSucces = true,
                        Message = returnValue.Message
                    });
                }
            }

            return(new RepoResponse <Seller>()
            {
                Content = null,
                IsSucces = false,
                Message = "Verilənlər bazasına satıcını əlavə etmək mümkün olmadı."
            });
        }
コード例 #2
0
        public async Task <IActionResult> Register([FromBody] SellerRegisterDto regCreds)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var result = await _repo.Register(regCreds);

            if (result.IsSucces)
            {
                var returnDto = new SellerReturnDto()
                {
                    Credentials = result.Content,
                    Token       = result.Message
                };

                return(Ok(returnDto));
            }

            return(StatusCode(500, result.Message));
        }
コード例 #3
0
        public async Task <RegistrationResult> Register(SellerRegisterDto sellerDto)
        {
            if (await IsEmailExistAsync(sellerDto.Email))
            {
                return(RegistrationResult.EmailAlreadyExist);
            }

            var account = new Account
            {
                Email        = sellerDto.Email,
                PasswordHash = _hashingService.CreateMD5(sellerDto.Password)
            };

            await _context.Accounts.AddAsync(account);

            await _context.SaveChangesAsync();

            var secretKey = new SecretKey
            {
                Value     = "SellerSecretKey" + account.Id,
                AccountId = account.Id
            };

            var seller = new Seller
            {
                AccountId = account.Id,
                PublicKey = "SellerPublicKey" + account.Id,
            };

            await _context.SecretKeys.AddAsync(secretKey);

            await _context.Sellers.AddAsync(seller);

            await _context.SaveChangesAsync();

            return(RegistrationResult.Success);
        }
コード例 #4
0
        public async Task <IActionResult> Register(SellerRegisterDto sellerDto)
        {
            var result = await _sellerService.Register(sellerDto);

            return(Ok(result));
        }
コード例 #5
0
        public LongResult UpdateSellerFullInfo(SellerRegisterDto input)
        {
            var userId = ClaimPrincipalFactory.GetUserId(User);//10136
            var seller = _repository.Seller.FindByCondition(c => c.UserId == userId).FirstOrDefault();

            if (seller == null)
            {
                var ress = LongResult.GetFailResult("فروشنده پیدا نشد!");
                _logger.LogData(MethodBase.GetCurrentMethod(), ress, null, input);
                return(ress);
            }

            if (input.Mobile == null)
            {
                var ress = LongResult.GetFailResult("شماره موبایل  وارد نشده است");
                _logger.LogData(MethodBase.GetCurrentMethod(), ress, null, input);
                return(ress);
            }

            try
            {
                seller.Mobile           = input.Mobile;
                seller.Email            = input.Email;
                seller.Name             = input.Name;
                seller.MelliCode        = input.MelliCode;
                seller.Fname            = input.Fname;
                seller.MobileAppTypeId  = input.MobileAppTypeId;
                seller.HaveMobileApp    = input.HaveMobileApp;
                seller.RealOrLegal      = input.RealOrLegal;
                seller.SecondMobile     = input.SecondMobile;
                seller.ShabaNo          = input.ShabaNo;
                seller.Tel              = input.Tel;
                seller.SellerCode       = _repository.Seller.FindAll().Max(c => c.SellerCode) + 1;
                seller.Cdate            = DateTime.Now.Ticks;
                seller.Bdate            = DateTimeFunc.MiladiToTimeTick(input.Bdate);
                seller.FinalStatusId    = 14;
                seller.MobileAppVersion = input.MobileAppVersion;
                seller.Gender           = input.Gender;
                seller.IdentityNo       = input.IdentityNo;

                if (!string.IsNullOrWhiteSpace(input.PassWord))
                {
                    var u = _repository.Users.FindByCondition(c => c.Id == userId).FirstOrDefault();
                    u.Hpassword = input.PassWord;
                    _repository.Users.Update(u);
                }

                if (input.Address.ID == 0)
                {
                    var sellerAddress = new SellerAddress
                    {
                        Address    = input.Address.Address,
                        Fax        = input.Address.Fax,
                        CityId     = input.Address.CityId,
                        PostalCode = input.Address.PostalCode,
                        ProvinceId = input.Address.ProvinceId,
                        Tel        = input.Address.Tel,
                        Titel      = input.Address.Titel,
                        Xgps       = input.Address.Xgps,
                        Ygps       = input.Address.Ygps,
                        Cdate      = DateTime.Now.Ticks,
                        SellerId   = seller.Id
                    };
                    _repository.SellerAddress.Create(sellerAddress);
                    _repository.Seller.Update(seller);
                    _repository.Save();
                }
                else
                {
                    var sellerAddress = _repository.SellerAddress.FindByCondition(c => c.Id == input.Address.ID).FirstOrDefault();
                    if (sellerAddress != null)
                    {
                        sellerAddress.Address    = input.Address.Address;
                        sellerAddress.Fax        = input.Address.Fax;
                        sellerAddress.CityId     = input.Address.CityId;
                        sellerAddress.PostalCode = input.Address.PostalCode;
                        sellerAddress.ProvinceId = input.Address.ProvinceId;
                        sellerAddress.Tel        = input.Address.Tel;
                        sellerAddress.Titel      = input.Address.Titel;
                        sellerAddress.Xgps       = input.Address.Xgps;
                        sellerAddress.Ygps       = input.Address.Ygps;
                        sellerAddress.Mdate      = DateTime.Now.Ticks;
                        sellerAddress.MuserId    = ClaimPrincipalFactory.GetUserId(User);
                        _repository.SellerAddress.Update(sellerAddress);
                    }
                    _repository.Seller.Update(seller);
                    _repository.Save();
                }

                var finalres = LongResult.GetSingleSuccessfulResult(seller.Id);
                _logger.LogData(MethodBase.GetCurrentMethod(), finalres, null, input);
                return(finalres);
            }
            catch (Exception e)
            {
                _logger.LogError(e, MethodBase.GetCurrentMethod(), input);
                return(LongResult.GetFailResult("خطا در سامانه"));
            }
        }