Ignore:
Timestamp:
02/08/21 16:39:25 (3 years ago)
Author:
Dimitar Slezenkovski <dslezenkovski@…>
Branches:
master
Children:
8eb1e21, dae4cde
Parents:
0a694bb
Message:

Fix all bugs

Location:
FarmatikoData/FarmatikoRepo
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • FarmatikoData/FarmatikoRepo/AdminRepo.cs

    r0a694bb re0cdea2  
    2020        public async Task<IEnumerable<RequestPharmacyHead>> GetClaimingRequests()
    2121        {
    22             var reqs = await _context.PHRequests.OrderBy(x => x.Head.Name).ToListAsync();
     22            var reqs = await _context.PHRequests.Select(x => new RequestPharmacyHead
     23            {
     24                Head = x.Head,
     25                Pharmacy = x.Pharmacy
     26            }).OrderBy(x => x.Head.Name).ToListAsync();
    2327            return reqs;
    2428        }
     
    3539        }
    3640        //POST
    37         public async void RemoveClaimRequest(int Id)
     41        public void RemoveClaimRequest(RequestPharmacyHead request)
    3842        {
    39             var req = _context.PHRequests.Where(x => x.Id == Id).FirstOrDefault();
     43            var req = _context.PHRequests.Select(x => new RequestPharmacyHead { Head = x.Head, Pharmacy = x.Pharmacy, Id = x.Id})
     44                .Where(x => x.Head.Email.Equals(request.Head.Email)).FirstOrDefault();
    4045            _context.PHRequests.Remove(req);
    41             await _context.SaveChangesAsync();
     46            _context.SaveChanges();
    4247        }
    4348    }
  • FarmatikoData/FarmatikoRepo/PHRepo.cs

    r0a694bb re0cdea2  
    4141        public async Task UpdatePharmacyHead(PharmacyHead pharmacyHead)
    4242        {
    43             var Phead = await _context.PharmacyHeads.Where(x => x.Email == pharmacyHead.Email).FirstOrDefaultAsync();
    44             var EditedPHead = await _context.PharmacyHeads.AsNoTracking<PharmacyHead>().Where(x => x.Email == pharmacyHead.Email).FirstOrDefaultAsync();
     43            var user = await _context.Users.Where(x => x.Email == pharmacyHead.Email).FirstOrDefaultAsync();
     44            var EditedPHead = await _context.PharmacyHeads.Where(x => x.Email.Equals(pharmacyHead.Email)).FirstOrDefaultAsync();
    4545
    46             if (!EditedPHead.Email.Equals(pharmacyHead.Email))
     46            /*if (!EditedPHead.Email.Equals(pharmacyHead.Email) && !user.Email.Equals(pharmacyHead.Email))
     47            {
    4748                EditedPHead.Email = pharmacyHead.Email;
     49                user.Email = pharmacyHead.Email;
     50            }*/
    4851
    49             if (!EditedPHead.Name.Equals(pharmacyHead.Name))
     52            if (!EditedPHead.Name.Equals(pharmacyHead.Name) || !user.Name.Equals(pharmacyHead.Name))
     53            {
    5054                EditedPHead.Name = pharmacyHead.Name;
     55                user.Name = pharmacyHead.Name;
     56            }
    5157
    52             if (!EditedPHead.Password.Equals(pharmacyHead.Password))
     58            if (!EditedPHead.Password.Equals(pharmacyHead.Password) || !user.Password.Equals(pharmacyHead.Password))
     59            {
    5360                EditedPHead.Password = pharmacyHead.Password;
     61                user.Password = pharmacyHead.Password;
     62            }
     63            /*if (EditedPHead.Pharmacies != null)
     64            {
     65                if (EditedPHead.Pharmacies.Count() > 0)
     66                    if (!EditedPHead.Pharmacies.Equals(pharmacyHead.Pharmacies))
     67                        EditedPHead.Pharmacies = pharmacyHead.Pharmacies;
     68            }
     69            if (EditedPHead.Medicines != null)
     70            {
     71                if (EditedPHead.Medicines.Count() > 0)
     72                {
     73                    if (!EditedPHead.Medicines.Equals(pharmacyHead.Medicines))
     74                        EditedPHead.Medicines = pharmacyHead.Medicines;
     75                   
     76                }
     77                   
     78            }*/
    5479
    55             if (!EditedPHead.Pharmacies.Equals(pharmacyHead.Pharmacies))
    56                 EditedPHead.Pharmacies = pharmacyHead.Pharmacies;
    57 
    58             if (!EditedPHead.Medicines.Equals(pharmacyHead.Medicines))
    59                 EditedPHead.Medicines = pharmacyHead.Medicines;
    60 
    61             await _context.SaveChangesAsync();
     80            _context.SaveChanges();
    6281        }
    6382        public async Task ClaimPharmacy(RequestPharmacyHead pharmacy)
    6483        {
     84            var phead = _context.PharmacyHeads.Where(x => x.Email.Equals(pharmacy.Head.Email)).FirstOrDefault();
     85            pharmacy.Head = phead;
    6586            await _context.PHRequests.AddAsync(pharmacy);
    6687            await _context.SaveChangesAsync();
  • FarmatikoData/FarmatikoRepo/Repository.cs

    r0a694bb re0cdea2  
    1919        public async Task<IEnumerable<HealthcareWorker>> GetAllWorkers()
    2020        {
    21             var Workers = await _context.HealthcareWorkers.Take(5).ToListAsync();
     21            var Workers = await _context.HealthcareWorkers.Select(x => new HealthcareWorker
     22            {
     23                Id = x.Id,
     24                Name = x.Name,
     25                Branch = x.Branch,
     26                Facility = x.Facility,
     27                Title = x.Title
     28            }).Take(5).ToListAsync();
    2229            return Workers;
    2330        }
     
    5461                Packaging = x.Packaging
    5562
    56             }).Take(3).ToListAsync();
     63            }).Take(5).ToListAsync();
    5764            return Medicines;
    5865        }
     
    9299        {
    93100            var SearchQuery = await _context.HealthFacilities
    94             .Where(x => x.Name.ToLowerInvariant().Contains(query.ToLowerInvariant()))
     101            .Where(x => x.Name.ToLower().Contains(query.ToLower())
     102            || x.Municipality.ToLower().Contains(query.ToLower())
     103            || x.Type.ToLower().Contains(query.ToLower())).Take(5)
    95104            .OrderBy(x => x.Name).ToListAsync();
    96105
     
    101110        {
    102111            var SearchQuery = await _context.Medicines
    103             .Where(x => x.Name.ToLowerInvariant().Contains(query.ToLowerInvariant()))
     112            .Where(x => x.Name.ToLower().Contains(query.ToLower())
     113            || x.Form.ToLower().Contains(query.ToLower())
     114            || x.Strength.ToLower().Contains(query.ToLower())
     115            || x.Packaging.ToLower().Contains(query.ToLower())).Take(20)
    104116            .OrderBy(x => x.Name).ToListAsync();
    105117
     
    110122        {
    111123            var SearchQuery = await _context.Pharmacies
    112             .Where(x => x.Name.ToLowerInvariant().Contains(query.ToLowerInvariant()))
     124            .Where(x => x.Name.ToLower().Contains(query.ToLower())
     125            || x.PharmacyHead.Name.ToLower().Contains(query.ToLower())).Take(5)
    113126            .OrderBy(x => x.Name).ToListAsync();
    114127
     
    118131        public async Task<IEnumerable<HealthcareWorker>> SearchWorkers(string query)
    119132        {
    120             var SearchQuery = await _context.HealthcareWorkers
    121             .Where(x => x.Name.ToLowerInvariant().Contains(query.ToLowerInvariant()))
     133            var SearchQuery = await _context.HealthcareWorkers.Include(x => x.Facility)
     134            .Where(x => x.Name.ToLower().Contains(query.ToLower())
     135            || x.Facility.Name.ToLower().Contains(query.ToLower())).Take(20)
    122136            .OrderBy(x => x.Name).ToListAsync();
    123137
     
    146160        public async Task AddPharmacy(Pharmacy pharmacy)
    147161        {
    148             await _context.Pharmacies.AddAsync(pharmacy);
    149             _context.SaveChanges();
     162            pharmacy.Id = 0;
     163            if (pharmacy.Id == 0)
     164            {
     165                var phars = _context.Pharmacies.Select(x => new Pharmacy
     166                {
     167                    Name = x.Name,
     168                    Location = x.Location,
     169                    Address = x.Address
     170                }).ToList();
     171                var pharms = phars.Where(x => x.Name.Equals(pharmacy.Name) && x.Location.Equals(pharmacy.Location) && x.Address.Equals(pharmacy.Address)).ToList();
     172                if (pharms is null || pharms.Count() == 0)
     173                {
     174                    await _context.Pharmacies.AddAsync(pharmacy);
     175                    _context.SaveChanges();
     176                }
     177               
     178            }
    150179        }
    151180
     
    242271        {
    243272            var PHead = await _context.PharmacyHeads.Where(x => x.Id == Id).FirstOrDefaultAsync();
    244             PHead.DeletedOn = DateTime.UtcNow;
    245             await _context.SaveChangesAsync();
     273            var user = await _context.Users.Where(x => x.Email.Equals(PHead.Email)).FirstOrDefaultAsync();
     274            _context.PharmacyHeads.Remove(PHead);
     275            _context.Users.Remove(user);
     276            _context.SaveChanges();
    246277        }
    247278
     
    290321            return phmeds;
    291322        }
    292 
    293         public async Task<bool> AddUser(User user)
     323       
     324        /*public async Task<bool> AddUser(User user)
    294325        {
    295326            if (user.Id == 0)
     
    303334                }).ToListAsync();
    304335                var usr = users.Where(x => x.Email.Equals(user.Email)).ToList();
    305                 if (usr != null || usr.Count() > 0)
     336                if (usr != null && usr.Count() > 0)
    306337                {
    307338                    return true;
     
    315346            }
    316347            return false;
    317         }
     348        }*/
    318349
    319350        public async Task<List<PharmacyHeadMedicine>> GetAllPHMedicines()
     
    329360            return list;
    330361        }
     362
     363        public ICollection<PharmacyHeadMedicine> GetPHMedicines()
     364        {
     365            var meds = _context.PharmacyHeadMedicines.Select(x => new PharmacyHeadMedicine
     366            {
     367                PheadId = x.PheadId,
     368                Head = x.Head,
     369                MedicineId = x.MedicineId,
     370                Medicine = x.Medicine
     371            }).ToList();
     372            return meds;
     373        }
    331374    }
    332375}
Note: See TracChangeset for help on using the changeset viewer.