コード例 #1
0
        public async Task <IActionResult> GetDoctorProfileById(string Id)
        {
            try
            {
                AppUserModelVM doctorDetails = await _doctorService.GetDoctorById(Id);

                return(Ok(new { status = true, doctorDetails }));
            }
            catch (Exception ae)
            {
                return(BadRequest(new { status = false, message = ae.Message.ToString() }));
            }
        }
コード例 #2
0
        public async Task <IActionResult> FinishDoctorProfile(AppUserModelVM model)
        {
            try
            {
                string currentUserId = GlobalMethods.GetUserID(User);
                if (string.IsNullOrWhiteSpace(currentUserId))
                {
                    return(Unauthorized(new { status = false, message = "Unauthorized Access" }));
                }
                var user = await _userManager.FindByIdAsync(currentUserId);

                //data will not be updated untill and unless changed phonenumber is verified
                if (user.PhoneNumber != model.PhoneNumber)
                {
                    return(Ok(new { status = false, message = "Please verify PhoneNumber", isPhoneVerified = false }));
                }
                user.FirstName      = model.FirstName;
                user.LastName       = model.LastName;
                user.Gender         = model.Gender;
                user.DOB            = model.DOB;
                user.SpecialityId   = model.SpecialityId;
                user.ClinicAddress  = model.ClinicAddress;
                user.PhoneNumber    = model.PhoneNumber;
                user.AppointmentFee = model.AppointmentFee;
                user.StateId        = model.StateId;
                user.LicenseNumber  = model.LicenseNumber;
                user.GraduatedFrom  = model.GraduatedFrom;
                user.MasterIn       = model.MasterIn;
                user.MasterFrom     = model.MasterFrom;
                user.Experience     = model.Experience;
                //user.ReferralBonus = model.ReferralBonus;
                //user.TotalConsultations = model.TotalConsultations;

                IdentityResult result = await _userManager.UpdateAsync(user);

                if (!result.Succeeded)
                {
                    return(Ok(new { status = false, message = result.Errors.First().Description }));
                }
                return(Ok(new { status = true, message = "Updated successfully" }));
            }
            catch (Exception ae)
            {
                return(BadRequest(new { status = false, message = ae.Message.ToString() }));
            }
        }
コード例 #3
0
        public async Task <IActionResult> FinishDoctorProfile()
        {
            try
            {
                string currentUserId = GlobalMethods.GetUserID(User);
                if (string.IsNullOrWhiteSpace(currentUserId))
                {
                    return(Unauthorized(new { status = false, message = "Unauthorized Access" }));
                }
                var user = await _userManager.FindByIdAsync(currentUserId);

                if (user == null)
                {
                    return(BadRequest(new { status = false, message = "User not exist" }));
                }

                //Referral Bonus & TotalConsultations Logic to be implemented

                var applicationUser = new AppUserModelVM
                {
                    FirstName          = user.FirstName,
                    LastName           = user.LastName,
                    DOB                = user.DOB,
                    Email              = user.Email,
                    Gender             = user.Gender,
                    SpecialityId       = user.SpecialityId,
                    PhoneNumber        = user.PhoneNumber,
                    StateId            = user.StateId,
                    AppointmentFee     = user.AppointmentFee,
                    ClinicAddress      = user.ClinicAddress,
                    LicenseNumber      = user.LicenseNumber,
                    GraduatedFrom      = user.GraduatedFrom,
                    MasterIn           = user.MasterIn,
                    MasterFrom         = user.MasterFrom,
                    Experience         = user.Experience,
                    ReferralBonus      = user.ReferralBonus,
                    TotalConsultations = user.TotalConsultations
                };

                return(Ok(new { status = true, message = "", appUser = applicationUser }));
            }
            catch (Exception ae)
            {
                return(BadRequest(new { status = false, message = ae.Message.ToString() }));
            }
        }
コード例 #4
0
        public async Task <IActionResult> FinishPatientProfile(AppUserModelVM model)
        {
            try
            {
                string currentUserId = GlobalMethods.GetUserID(User);
                if (string.IsNullOrWhiteSpace(currentUserId))
                {
                    return(Unauthorized(new { status = false, message = "Unauthorized Access" }));
                }
                var user = await _userManager.FindByIdAsync(currentUserId);

                //data will not be updated untill and unless changed phonenumber is verified
                if (user.PhoneNumber != model.PhoneNumber)
                {
                    return(Ok(new { status = false, message = "Please verify PhoneNumber", isPhoneVerified = false }));
                }
                user.FirstName    = model.FirstName;
                user.LastName     = model.LastName;
                user.Gender       = model.Gender;
                user.DOB          = model.DOB;
                user.PhoneNumber  = model.PhoneNumber;
                user.StateId      = model.StateId;
                user.Height       = model.Height;
                user.Weight       = model.Weight;
                user.BloodGroupId = model.BloodGroupId;

                IdentityResult result = await _userManager.UpdateAsync(user);

                if (!result.Succeeded)
                {
                    return(Ok(new { status = false, message = result.Errors.First().Description }));
                }
                return(Ok(new { status = true, message = "Updated successfully" }));
            }
            catch (Exception ae)
            {
                return(BadRequest(new { status = false, message = ae.Message.ToString() }));
            }
        }
コード例 #5
0
 public async Task <AppUserModelVM> GetDoctorById(string doctorId)
 {
     using (IDbConnection con = Connection)
     {
         con.Open();
         try
         {
             AppUserModelVM appUserModel = new AppUserModelVM();
             string         sql          = "select Asp.FirstName,Asp.LastName,Asp.GraduatedFrom,Asp.MasterIn,Asp.MasterFrom,Asp.Experience,Asp.ReferralBonus,Asp.TotalConsultations,Asp.AppointmentFee,s.*,dsr.* from AspNetUsers as Asp inner join Specialities as s on s.SpecialitieId = Asp.SpecialityId inner join DoctorRecurringSchedules as dsr on dsr.DoctorId = Asp.Id where Asp.Id = @Id";
             var            appUser      = con.Query <ApplicationUsers, Specialitie, DoctorRecurringSchedule, AppUserModelVM>(
                 sql,
                 (user, spec, doctorRecurringDetails) =>
             {
                 appUserModel.AppointmentFee          = user.AppointmentFee;
                 appUserModel.Experience              = user.Experience;
                 appUserModel.FirstName               = user.FirstName;
                 appUserModel.LastName                = user.LastName;
                 appUserModel.MasterIn                = user.MasterIn;
                 appUserModel.MasterFrom              = user.MasterFrom;
                 appUserModel.TotalConsultations      = user.TotalConsultations;
                 appUserModel.GraduatedFrom           = user.GraduatedFrom;
                 appUserModel.SpecialityName          = spec.SpecialityName;
                 appUserModel.DoctorRecurringSchedule = doctorRecurringDetails;
                 return(appUserModel);
             }, new
             {
                 @Id = doctorId
             },
                 splitOn: "SpecialitieId,Id")
                                           .FirstOrDefault();
             return(appUser);
         }
         catch (Exception ae)
         {
             throw ae;
         }
     }
 }
コード例 #6
0
        public async Task <IActionResult> FinishPatientProfile()
        {
            try
            {
                string currentUserId = GlobalMethods.GetUserID(User);
                if (string.IsNullOrWhiteSpace(currentUserId))
                {
                    return(Unauthorized(new { status = false, message = "Unauthorized Access" }));
                }
                var user = await _userManager.FindByIdAsync(currentUserId);

                if (user == null)
                {
                    return(BadRequest(new { status = false, message = "User not exist" }));
                }

                var applicationUser = new AppUserModelVM
                {
                    FirstName    = user.FirstName,
                    LastName     = user.LastName,
                    DOB          = user.DOB,
                    Email        = user.Email,
                    Gender       = user.Gender,
                    PhoneNumber  = user.PhoneNumber,
                    StateId      = user.StateId,
                    Height       = user.Height,
                    Weight       = user.Weight,
                    BloodGroupId = user.BloodGroupId
                };

                return(Ok(new { status = true, message = "", appUser = applicationUser }));
            }
            catch (Exception ae)
            {
                return(BadRequest(new { status = false, message = ae.Message.ToString() }));
            }
        }