public async Task <bool> AddAsync(Tenant tenant, ApplicationUser creator)
        {
            tenant.Creator = creator.UserName;

            _context.Tenants.Add(tenant);
            await _context.SaveChangesAsync();

            _myHealthDataInitializer.CreateTenantSampleData(_serviceProvider, tenant.TenantId);

            return(true);
        }
        public async Task DeleteAsync(int tenantId, int doctorId)
        {
            var doctor = await _context.Doctors
                         .Where(ic => !ic.Deleted)
                         .SingleOrDefaultAsync(p => p.DoctorId == doctorId && p.TenantId == tenantId);

            if (doctor != null)
            {
                doctor.Deleted = true;
                await _context.SaveChangesAsync();
            }
        }
        public async Task DeleteAsync(int tenantId, int patientId)
        {
            var patient = await _context.Patients
                          .SingleOrDefaultAsync(p => p.PatientId == patientId && p.TenantId == tenantId && !p.Deleted);

            if (patient != null)
            {
                patient.Deleted = true;
                await _context.SaveChangesAsync();
            }
        }
Exemple #4
0
        static async Task <int> CreateDefaultTenant(MyHealthContext context)
        {
            var tenant = new Tenant()
            {
                Name               = "HealthClinic.biz",
                Address            = "Madison Ave 10037",
                City               = "New York",
                WaitTimeAvg        = Randomize.Next(1, 10),
                AssociatedUsername = _configuration["DefaultUsername"],
                Creator            = _configuration["DefaultAdminUsername"]
            };

            context.Tenants.Add(tenant);
            await context.SaveChangesAsync();

            return(tenant.TenantId);
        }
        public async Task RemoveTenantSampleData(MyHealthContext context, UserManager<ApplicationUser> userManager, int tenantId)
        {
            if (context.Tenants.Any(t => t.TenantId == tenantId))
            {
                context.HomeAppointments.RemoveRange(context.HomeAppointments.Where(t => t.TenantId == tenantId));
                context.ClinicAppointments.RemoveRange(context.ClinicAppointments.Where(t => t.TenantId == tenantId));
                context.Medicines.RemoveRange(context.Medicines.Where(t => t.TenantId == tenantId));

                var usersToDelete = context.Users.Where(t => t.TenantId == tenantId).ToList();

                foreach (var user in usersToDelete)
                    await userManager.DeleteAsync(user);

                context.Tenants.Remove(context.Tenants.FirstOrDefault(t => t.TenantId == tenantId));
                await context.SaveChangesAsync();
            }
        }
Exemple #6
0
        public async Task <int> AddAsync(ClinicAppointment appointment)
        {
            // these properties are updated for demo porpouse.
            if (appointment.RoomNumber == 0)
            {
                appointment.RoomNumber = Randomize.Next(3, 15);
            }

            if (string.IsNullOrEmpty(appointment.Description))
            {
                appointment.Description = "Follow up in order to determine the effectiveness of treatment received";
            }

            _context.ClinicAppointments.Add(appointment);
            await _context.SaveChangesAsync();

            return(appointment.AppointmentId);
        }
Exemple #7
0
        public async Task RemoveTenantSampleData(MyHealthContext context, UserManager <ApplicationUser> userManager, int tenantId)
        {
            if (context.Tenants.Any(t => t.TenantId == tenantId))
            {
                context.HomeAppointments.RemoveRange(context.HomeAppointments.Where(t => t.TenantId == tenantId));
                context.ClinicAppointments.RemoveRange(context.ClinicAppointments.Where(t => t.TenantId == tenantId));
                context.Medicines.RemoveRange(context.Medicines.Where(t => t.TenantId == tenantId));

                var usersToDelete = context.Users.Where(t => t.TenantId == tenantId).ToList();

                foreach (var user in usersToDelete)
                {
                    await userManager.DeleteAsync(user);
                }

                context.Tenants.Remove(context.Tenants.FirstOrDefault(t => t.TenantId == tenantId));
                await context.SaveChangesAsync();
            }
        }
Exemple #8
0
 public async Task UpdateAsync(HomeAppointment homeAppointment)
 {
     _context.HomeAppointments.Update(homeAppointment);
     await _context.SaveChangesAsync();
 }
        static async Task<int> CreateDefaultTenant(MyHealthContext context)
        {
            var tenant = new Tenant()
            {
                Name = "HealthClinic.biz",
                Address = "Madison Ave 10037",
                City = "New York",
                WaitTimeAvg = Randomize.Next(1, 10),
                AssociatedUsername = _configuration["DefaultUsername"],
                Creator = _configuration["DefaultAdminUsername"]
            };

            context.Tenants.Add(tenant);
            await context.SaveChangesAsync();

            return tenant.TenantId;
        }