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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • FarmatikoServices/Services/PHService.cs

    r0a694bb re0cdea2  
    6565
    6666                phead.Medicines = _repository.GetPHMedicines(phead.Email).ToList();
    67                
     67
     68                var phmeds = await _repository.GetAllPHMedicines();
     69
    6870                List<Medicine> medicines = _repository.GetMedicines().ToList();
    69                
    70                 List<Medicine> PHMedicines = medicines.Where(x => x.Id == phead.Medicines.Select(x => x.MedicineId).Single()).ToList();
    71                
     71
     72                List<Medicine> PHMedicines = new List<Medicine>();
     73
    7274                List<PharmacyHeadMedicine> list = new List<PharmacyHeadMedicine>();
    7375
    74                
    75                 if (pharmacyHead.Medicines != null || pharmacyHead.Medicines.Count() > 0)
     76
     77                if (pharmacyHead.Medicines != null && pharmacyHead.Medicines.Count() > 0)
     78                {
     79                    foreach (var med in phead.Medicines)
     80                    {
     81                        var medicine = medicines.Where(x => x.Id == med.MedicineId).FirstOrDefault();
     82                        if (medicine != null)
     83                            PHMedicines.Add(medicine);
     84                    }
     85
    7686                    if (!pharmacyHead.Medicines.Equals(PHMedicines))
    7787                    {
     
    8696                            return;
    8797                        }
    88                         foreach (var med in pharmacyHead.Medicines)
    89                         {
    90 
    91                             PharmacyHeadMedicine PHMObj = phead.Medicines.Select(x => new PharmacyHeadMedicine
     98                        if (phead.Medicines != null && phead.Medicines.Count() > 0)
     99                        {
     100                            foreach (var med in pharmacyHead.Medicines)
    92101                            {
    93                                 Id = x.Id,
    94                                 PheadId = x.PheadId,
    95                                 Head = x.Head,
    96                                 MedicineId = x.MedicineId,
    97                                 Medicine = x.Medicine
    98                             }).Where(x => !x.Medicine.Equals(med)).Single();
    99                             if (PHMObj == null || PHMObj == default)
    100                                 break;
    101                             if (PHMObj.MedicineId == med.Id)
    102                                 list.Add(PHMObj);
    103 
    104                         }
     102                                Medicine medicine = new Medicine()
     103                                {
     104                                    Name = med.Name,
     105                                    Form = med.Form,
     106                                    Manufacturer = med.Manufacturer,
     107                                    Medicines = med.Medicines,
     108                                    Packaging = med.Packaging,
     109                                    Price = med.Price,
     110                                    Strength = med.Strength,
     111                                    WayOfIssuing = med.WayOfIssuing
     112                                };
     113
     114                                PharmacyHeadMedicine phm = new PharmacyHeadMedicine()
     115                                {
     116                                    PheadId = phead.Id,
     117                                    Head = phead,
     118                                    MedicineId = med.Id,
     119                                    Medicine = medicine
     120                                };
     121                               
     122                                bool ifExists = phead.Medicines.Contains(phm);
     123                                if (!ifExists)
     124                                    list.Add(phm);
     125
     126                            }
     127                        }
     128                        else
     129                        {
     130                            foreach (var med in pharmacyHead.Medicines)
     131                            {
     132                                PharmacyHead head1 = new PharmacyHead()
     133                                {
     134                                    Id = pharmacyHead.Id,
     135                                    Name = pharmacyHead.Name,
     136                                    Email = pharmacyHead.Email,
     137                                    Password = pharmacyHead.Password
     138                                };
     139                                PharmacyHeadMedicine phMed = new PharmacyHeadMedicine()
     140                                {
     141                                    Head = head1,
     142                                    Medicine = med
     143                                };
     144                                list.Add(phMed);
     145                            }
     146                        }
     147
    105148
    106149                        phead.Medicines = list;
     
    109152
    110153                    }
    111                
    112                 if (pharmacyHead.Pharmacies != null || pharmacyHead.Pharmacies.Count() > 0)
    113                 {
    114                     phead.Pharmacies = pharmacyHead.Pharmacies;
    115                 }
     154                }
     155
    116156                PharmacyHead head = new PharmacyHead()
    117157                {
     
    120160                    Password = pharmacyHead.Password
    121161                };
     162
     163                if (pharmacyHead.Pharmacies != null)
     164                {
     165                    if (pharmacyHead.Pharmacies.Count() > 0)
     166                    {
     167                        phead.Pharmacies = pharmacyHead.Pharmacies;
     168                        head.Pharmacies = pharmacyHead.Pharmacies;
     169                    }
     170                }
     171               
    122172                if (!phead.Equals(head))
    123173                {
Note: See TracChangeset for help on using the changeset viewer.