Пример #1
0
        public IActionResult InsertReps()
        {
            var r = new Random();
            var a = new MedicalRep[30000];

            for (int i = 0; i < 30000; i++)
            {
                a[i] = new MedicalRep
                {
                    Active               = true,
                    CityId               = r.Next(152, 300),
                    FName                = r.Next(1000, 10000650).ToString() + r.Next(1255558, 654654654).ToString(),
                    LName                = r.Next(1000, 14550000).ToString() + r.Next(155258, 654654654).ToString(),
                    ProfileUrl           = "ceqmnfcpkmfadlmcla;mscplm;V;PLDSMVLMS;DLVM,L;DMVL;D",
                    WorkedOnCompany      = "VDSKANVKLJDSN;AFKJVNKLDSNVKLNCFSVLK; NFD B;LKNCKLN BCKLNVLKLDFSMNVKMSDNVOKNSKDMFNM",
                    MedicalRepPositionId = r.Next(1, 4),
                    IdentityUser         = new IdentityUser
                    {
                        Email       = $"engamaeae{i}@gmail.com",
                        UserName    = $"ahmedEmbaby{i}",
                        PhoneNumber = "01011051728",
                    },
                    PermanentDeleted = false,
                };
            }
            _context.MedicalReps.AddRange(a);
            _context.SaveChanges();
            return(Ok());
        }
Пример #2
0
 public void Init(Evaluation evaluation, MedicalRep evaluator, Visit visit, Doctor doctor)
 {
     _doctor     = doctor;
     _visit      = visit;
     _evaluation = evaluation;
     _evaluator  = evaluator;
 }
Пример #3
0
 public MedicalRep ModifyUser(MedicalRep old, MedicalRep newMedicalRep)
 {
     //move data
     old.City = newMedicalRep.City;
     old.IdentityUser.PhoneNumber = newMedicalRep.IdentityUser.PhoneNumber;
     old.WorkedOnCompany          = newMedicalRep.WorkedOnCompany;
     old.CityId             = newMedicalRep.CityId;
     old.MedicalRepPosition = newMedicalRep.MedicalRepPosition;
     old.ProfileUrl         = newMedicalRep.ProfileUrl;
     //end of moving data
     return(old);
 }
        private void UnActiveRepIfDeserve(MedicalRep rep)
        {
            var div = rep.LikeCount + rep.DisLikeCount;

            if (div == 0)
            {
                return;
            }

            if (rep.DisLikeCount / div * 100 >= _allowablePercentageOfDisLikeToLike)
            {
                _medicalRepRepo.UnActive(rep);
                RebExists = false;
            }
            else
            {
                RebExists = true;
            }
        }
Пример #5
0
        private async Task <string> GenerateToken(IdentityUser user, MedicalRep rep)
        {
            var claims = new List <Claim>
            {
                new Claim(JwtRegisteredClaimNames.Email, user.Email),
                new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
                new Claim("id", rep.Id.ToString()),
                new Claim("IsActive", rep.Active.ToString())
            };

            await AddRolesToPrincipalClaims(user, claims);

            var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_jwtSettings.Secret));
            var jwt = new JwtSecurityToken(
                null,
                null,
                claims: claims,
                DateTime.UtcNow,
                expires:  DateTime.UtcNow.AddHours(2),
                signingCredentials: new SigningCredentials(key: key, SecurityAlgorithms.HmacSha256)
                );

            return(new JwtSecurityTokenHandler().WriteToken(jwt));
        }
Пример #6
0
        public async Task <RegisterServiceResult> RegisterAsync(IdentityUser newUser, string password, MedicalRep rep)
        {
            var user = await _userManager.FindByEmailAsync(newUser.Email);

            if (user != null)
            {
                return(new RegisterServiceResult("the user is already existed !"));
            }

            var state = await _userManager.CreateAsync(newUser, password);

            if (!state.Succeeded)
            {
                return(new RegisterServiceResult
                {
                    Errors = state.Errors.Select(error => error.Description).ToList()
                });
            }

            var refreshToken = GenerateRefreshToken();

            await AddRefreshTokenAsync(new RefreshingToken
            {
                IP           = _accessor.HttpContext.Connection.RemoteIpAddress.ToString(),
                RefreshToken = refreshToken,
                UserId       = newUser.Id,
            });

            return(new RegisterServiceResult
            {
                Token = await GenerateToken(newUser, rep),
                RefreshToken = refreshToken
            });
        }
Пример #7
0
 public void DeleteUserPermanently(MedicalRep medicalRep)
 {
     medicalRep.PermanentDeleted = true;
 }
Пример #8
0
 public void ActiveUser(MedicalRep rep)
 {
     rep.Active = true;
 }
Пример #9
0
 public void  UnActive(MedicalRep rep)
 {
     rep.Active       = false;
     rep.DeActiveDate = DateTime.Now;
 }
Пример #10
0
        public async Task <MedicalRep> AddUser(MedicalRep medicalRep)
        {
            await Context.MedicalReps.AddAsync(medicalRep);

            return(medicalRep);
        }