public async Task <InsertResponse> GenerateContractsAsync(GenerateItemsRequest request) { var patientIds = await UserManager.GetUsersIdAsync(new UsersIdRequest { Amount = request.Count, UserType = UserType.Patient }); var doctorIds = await UserManager.GetUsersIdAsync(new UsersIdRequest { Amount = request.Count, UserType = UserType.Doctor }); var familyMemberIds = await UserManager.GetUsersIdAsync(new UsersIdRequest { Amount = request.Count, UserType = UserType.FamilyMember }); var contracts = new Faker <Contract>() .RuleFor(u => u.Id, f => ObjectId.GenerateNewId().ToString()) .RuleFor(bp => bp.PatientId, f => f.PickRandom(patientIds)) .RuleFor(bp => bp.DoctorId, f => f.PickRandom(doctorIds)) .RuleFor(bp => bp.FamilyMemberId, f => f.PickRandom(familyMemberIds)) .Generate(request.Count).ToList(); return(await ContractRepository.BulkInsertContractAsync(contracts)); }
public async Task <InsertResponse> GenerateHistoriesAsync(GenerateItemsRequest request) { var patientIds = await UserManager.GetUsersIdAsync(new UsersIdRequest { Amount = request.Count, UserType = UserType.Patient }); var doctorIds = await UserManager.GetUsersIdAsync(new UsersIdRequest { Amount = request.Count, UserType = UserType.Doctor }); var historyPoints = Builder <HistoryPoint> .CreateNew() .With(e => e.CreationDate = Date.Between(new DateTime(1930, 1, 1), DateTime.UtcNow)) .With(e => e.Report = Faker.Lorem.Paragraph()); var histories = new Bogus.Faker <History>() .RuleFor(u => u.Id, f => ObjectId.GenerateNewId().ToString()) .RuleFor(bp => bp.DoctorId, f => f.PickRandom(doctorIds)) .RuleFor(bp => bp.PatientId, f => f.PickRandom(patientIds)) .RuleFor(u => u.HistoryPoints, f => f.Make(10, () => historyPoints.Build())) .Generate(request.Count).ToList(); return(await HistoryRepository.BulkInsertHistoriesAsync(histories)); }
public async Task <InsertResponse> GenerateHospitalsAsync(GenerateItemsRequest request) { var hospitals = new Faker <Hospital>() .RuleFor(u => u.Id, f => ObjectId.GenerateNewId().ToString()) .RuleFor(bp => bp.Name, f => f.Lorem.Word()) .RuleFor(u => u.Level, f => f.PickRandom <HospitalLevel>()) .RuleFor(bp => bp.City, f => f.Address.City()) .RuleFor(bp => bp.Street, f => f.Address.StreetName()) .RuleFor(bp => bp.Country, f => f.Address.Country()) .Generate(request.Count).ToList(); return(await HospitalRepository.Create(hospitals)); }
public async Task <InsertResponse> GenerateDrugstoresAsync(GenerateItemsRequest request) { var address = Builder <Address> .CreateNew() .With(e => e.City = Faker.Address.USCity()) .With(e => e.Street = Faker.Address.StreetName()) .With(e => e.Country = Faker.Address.Country()); var hospitalIds = await HospitalManager.GetHospitalsIdAsync(); var drugstores = new Faker <Drugstore>() .RuleFor(u => u.Id, f => ObjectId.GenerateNewId().ToString()) .RuleFor(bp => bp.Name, f => f.Lorem.Word()) .RuleFor(bp => bp.HospitalId, f => f.PickRandom(hospitalIds)) .RuleFor(u => u.Address, f => address.Build()) .Generate(request.Count).ToList(); return(await DrugstoreRepository.BulkInsertDrugstoresAsync(drugstores)); }
public async Task <InsertResponse> GenerateUsersAsync(GenerateItemsRequest request) { var users = new Faker <Patient>() .RuleFor(u => u.Id, f => ObjectId.GenerateNewId().ToString()) .RuleFor(bp => bp.FirstName, f => f.Lorem.Word()) .RuleFor(bp => bp.LastName, f => f.Lorem.Word()) .RuleFor(bp => bp.BirthDate, f => f.Date.Between(new DateTime(1930, 1, 1), DateTime.UtcNow)) .RuleFor(u => u.Gender, f => f.PickRandom <GenderType>()) .RuleFor(u => u.Type, f => UserType.Patient) .RuleFor(bp => bp.Phone, f => f.Phone.PhoneNumber()) .RuleFor(bp => bp.Email, f => f.Internet.Email()) .RuleFor(bp => bp.City, f => f.Address.City()) .RuleFor(bp => bp.Street, f => f.Address.StreetName()) .RuleFor(bp => bp.Country, f => f.Address.Country()) .RuleFor(u => u.Email, (f, u) => f.Internet.Email(u.FirstName + f.Random.Number(1, 1000), u.LastName + f.Random.Number(1, 1000))) .Generate(request.Count).ToList(); return(await PatientRepository.Create(users)); }
public async Task <IActionResult> Insert([FromBody] GenerateItemsRequest request) { return(Ok(await DrugstoreManager.GenerateDrugstoresAsync(request))); }
public async Task <IActionResult> Insert([FromBody] GenerateItemsRequest request) { return(Ok(await HospitalManager.GenerateHospitalsAsync(request))); }
public async Task <IActionResult> Insert([FromBody] GenerateItemsRequest request) { return(Ok(await ContractManager.GenerateContractsAsync(request))); }
public async Task <IActionResult> Insert([FromBody] GenerateItemsRequest request) { return(Ok(await PatientManager.GenerateUsersAsync(request))); }