- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
FarmatikoServices/Services/ProcessJSONService.cs
rc73269d rc406ae5 10 10 using FarmatikoServices.FarmatikoServiceInterfaces; 11 11 using RestSharp; 12 using System.Threading.Tasks; 12 13 13 14 namespace FarmatikoServices.Services … … 15 16 public class ProcessJSONService : IProcessJSONService 16 17 { 17 //private IHealthFacilityRepository _healthFacilityRepository;18 private IHealthFacilityRepository _healthFacilityRepository; 18 19 private IPandemicRepository _pandemicRepository; 19 //private IHealthcareWorkerRepository _healthcareWorkerRepository;20 //private IMedicineRepository _medicineRepository;21 //private readonly ILogger _logger;22 public ProcessJSONService( /*IHealthFacilityRepository healthFacilityRepository, */IPandemicRepository pandemicRepository/*,23 IHealthcareWorkerRepository healthcareWorkerRepository, IMedicineRepository medicineRepository */)20 private IHealthcareWorkerRepository _healthcareWorkerRepository; 21 private IMedicineRepository _medicineRepository; 22 private readonly ILogger _logger; 23 public ProcessJSONService(IHealthFacilityRepository healthFacilityRepository, IPandemicRepository pandemicRepository, 24 IHealthcareWorkerRepository healthcareWorkerRepository, IMedicineRepository medicineRepository, ILogger logger) 24 25 { 25 //_logger = logger;26 //_healthFacilityRepository = healthFacilityRepository;26 _logger = logger; 27 _healthFacilityRepository = healthFacilityRepository; 27 28 _pandemicRepository = pandemicRepository; 28 //_healthcareWorkerRepository = healthcareWorkerRepository;29 //_medicineRepository = medicineRepository;29 _healthcareWorkerRepository = healthcareWorkerRepository; 30 _medicineRepository = medicineRepository; 30 31 } 31 32 public List<HealthFacilities> GetProcessedHealthFacilitiesFromJSON()32 33 public async Task<HashSet<HealthFacilities>> GetProcessedHealthFacilitiesFromJSON() 33 34 { 34 35 try 35 36 { 36 /*var client = new WebClient(); 37 var json = client.DownloadString(@"C:\Users\Miki\Desktop\ustanovi.json"); 37 HashSet<HealthFacilities> hashSet = new HashSet<HealthFacilities>(); 38 var client = new WebClient(); 39 var json = client.DownloadString(@"C:\Users\dslez\Desktop\ustanovi.json"); 38 40 39 41 var jsonResponse = JObject.Parse(json); 40 42 var records = JArray.Parse(jsonResponse.GetValue("records").ToString()); 41 43 42 foreach (var rec in records)44 foreach (var rec in records) 43 45 { 44 46 dynamic obj = JsonConvert.DeserializeObject(rec.ToString()); … … 49 51 var Phone = obj[11]; 50 52 var Type = obj[5]; 51 HealthFacilities healthFacility = new HealthFacilities( );52 healthFacility.Name = Name;53 HealthFacilities healthFacility = new HealthFacilities(Name, Municipality, Address, Type, Email, Phone); 54 /*healthFacility.Name = Name; 53 55 healthFacility.Municipality = Municipality; 54 56 healthFacility.Address = Address; 55 57 healthFacility.Email = Email; 56 58 healthFacility.Phone = Phone; 57 healthFacility.Type = Type; 58 _healthFacilityRepository.Add(healthFacility); 59 60 }*/ 59 healthFacility.Type = Type;*/ 60 //hashSet.Add(healthFacility); 61 await Task.Run(() => _healthFacilityRepository.Add(healthFacility)); 61 62 63 } 62 64 65 } 66 catch (Exception e) 67 { 68 _logger.LogInformation(e.Message); 69 throw new Exception("Cannot process health facilities from JSON."); 70 } 71 return null; 72 } 63 73 64 var client1 = new RestClient("https://api.covid19api.com/summary"); 65 var response = client1.Execute(new RestRequest()); 74 public async Task<HashSet<Pandemic>> GetProcessedPandemicsFromJSONApi() 75 { 76 try 77 { 78 var client = new RestClient("https://api.covid19api.com/summary"); 79 var response = client.Execute(new RestRequest()); 66 80 string original = response.Content; 67 81 var jsonResponsePandemic = JObject.Parse(original); … … 78 92 var NewMK = Int32.Parse(objP.GetValue("NewConfirmed").ToString()); 79 93 80 Pandemic pandemic = new Pandemic(); 81 pandemic.TotalGlobal = TotalConfirmed; 94 var Name = "Coronavirus"; 95 var ActiveMk = TotalMk - (TotalRecoveredMK + TotalDeathsMK); 96 var ActiveGlobal = TotalConfirmed - (TotalRecovered + TotalDeaths); 97 98 Pandemic pandemic = new Pandemic(Name, TotalMk, ActiveMk, TotalDeathsMK, NewMK, TotalConfirmed, TotalDeaths, ActiveGlobal); 99 /*pandemic.TotalGlobal = TotalConfirmed; 82 100 pandemic.ActiveGlobal = TotalConfirmed - (TotalRecovered + TotalDeaths); 83 101 pandemic.DeathsGlobal = TotalDeaths; … … 86 104 pandemic.DeathsMK = TotalDeathsMK; 87 105 pandemic.NewMK = NewMK; 88 pandemic.Name = "Coronavirus"; 89 _pandemicRepository.Add(pandemic); 106 pandemic.Name = "Coronavirus";*/ 107 await Task.Run(() => _pandemicRepository.Add(pandemic)); 108 } 109 catch (Exception e) 110 { 111 _logger.LogInformation(e.Message); 112 } 113 return null; 114 } 90 115 91 92 93 /*var jsonW = client.DownloadString(@"C:\Users\Miki\Desktop\rabotnici.json"); 116 public async Task<HashSet<HealthcareWorkers>> GetProcessedHealthcareWorkersFromJSON() 117 { 118 try 119 { 120 var client = new WebClient(); 121 var jsonW = client.DownloadString(@"C:\Users\dslez\Desktop\rabotnici.json"); 94 122 95 123 var jsonResponseW = JObject.Parse(jsonW); … … 101 129 var Name = obj[4]; 102 130 var Branch = obj[2]; 103 HealthFacilities facility = new HealthFacilities(); 104 facility.Name = obj[1]; 105 facility.Municipality = "WorkerFacilityMunicipality"; 106 facility.Address = "WorkerFacilityAddress"; 131 var FacilityName = obj[1]; 107 132 var Title = obj[3]; 108 HealthcareWorkers healthcareWorker = new HealthcareWorkers(); 109 healthcareWorker.Name = Name; 133 HealthFacilities facility = _healthFacilityRepository.GetByName(FacilityName); 134 HealthFacilities Facility = new HealthFacilities(facility.Name, facility.Municipality, facility.Address, 135 facility.Type, facility.Email, facility.Phone); 136 HealthcareWorkers healthcareWorker = new HealthcareWorkers(Name, Branch, Facility, Title); 137 /*Facility.Name = obj[1]; 138 Facility.Municipality = "WorkerFacilityMunicipality"; 139 Facility.Address = "WorkerFacilityAddress";*/ 140 /*healthcareWorker.Name = Name; 110 141 healthcareWorker.Branch = Branch; 111 healthcareWorker.Facility = facility;112 healthcareWorker.Title = Title; 113 _healthcareWorkerRepository.Add(healthcareWorker);142 healthcareWorker.Facility = Facility; 143 healthcareWorker.Title = Title;*/ 144 await Task.Run(() => _healthcareWorkerRepository.Add(healthcareWorker)); 114 145 } 146 } 147 catch (Exception e) 148 { 149 _logger.LogInformation(e.Message); 150 } 151 return null; 152 } 115 153 116 117 118 var jsonM = client.DownloadString(@"C:\Users\Miki\Desktop\lekovi.json"); 154 public async Task<HashSet<Medicine>> GetProcessedMedicinesFromJSON() 155 { 156 try 157 { 158 var client = new WebClient(); 159 var jsonM = client.DownloadString(@"C:\Users\dslez\Desktop\lekovi.json"); 119 160 120 161 var jsonResponseM = JObject.Parse(jsonM); … … 131 172 var Price = float.Parse(obj[17]); 132 173 var Packaging = obj[8]; 133 Medicine medicine = new Medicine( );134 medicine.Name = Name;174 Medicine medicine = new Medicine(Name, Strength, Form, WayOfIssuing, Manufacturer, Price, Packaging); 175 /*medicine.Name = Name; 135 176 medicine.Strength = Strength; 136 177 medicine.Form = Form; … … 138 179 medicine.Manufacturer = Manufacturer; 139 180 medicine.Price = Price; 140 medicine.Packaging = Packaging; 141 _medicineRepository.Add(medicine); 142 }*/ 143 144 181 medicine.Packaging = Packaging;*/ 182 await Task.Run(() => _medicineRepository.Add(medicine)); 183 } 145 184 } 146 185 catch (Exception e) 147 186 { 148 //_logger.LogError(e.Message); 149 Console.WriteLine(e.Message); 150 throw e; 151 return null; 187 _logger.LogInformation(e.Message); 152 188 } 153 189 return null; 154 190 } 155 156 191 } 157 192 }
Note:
See TracChangeset
for help on using the changeset viewer.