Example #1
0
        public User Create(User user, string password)
        {
            // validation
            if (string.IsNullOrWhiteSpace(password))
            {
                throw new AppException("Password is required");
            }

            if (_context.Users.Any(x => x.Username == user.Username))
            {
                throw new AppException("Username \"" + user.Username + "\" is already taken");
            }

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(password, out passwordHash, out passwordSalt);

            user.PasswordHash = passwordHash;
            user.PasswordSalt = passwordSalt;

            _context.Users.Add(user);
            _context.SaveChanges();

            return(user);
        }
Example #2
0
        public static void Main(string[] args)
        {
            using (var db = new PharmacyContext())
            {
                db.Database.EnsureCreated();

                Prescription prescription = new Prescription();
                Customer     customer     = new Customer();
                customer.CustomerType = CustomerType.Druzinska_medicina;
                customer.Prescription = prescription;

                db.Customers.Add(customer);
                db.SaveChanges();
            }
            CreateWebHostBuilder(args).Build().Run();
        }
Example #3
0
        public Drug Create(Drug model)
        {
            using (var ctx = new PharmacyContext(CONNECTION_STRING))
            {
                model.Form = new Form()
                {
                    Name = "Solution"
                };
                model.FormId = 0;

                ctx.Drugs.Add(model);
                ctx.SaveChanges();
            };

            return(model);
        }
        public void DoneOreder(PharmacyContext context, int orderId, int quantity)
        {
            var order = context.Orders.Single(x => x.Id == orderId);

            var medicine = context.Medicines.Single(m => m.Id == order.MedicineId);

            medicine.Quantity = medicine.Quantity - quantity;

            context.Medicines.Update(medicine);

            order.StatusOfOrder = "Zamowienie zrealizowane";

            context.Orders.Update(order);

            context.SaveChanges();
        }
        public void AddOrder(OrderDto dto, PharmacyContext context)
        {
            var order = new Order
            {
                UserID         = dto.UserID,
                MedicineId     = dto.MedicineId,
                Quantity       = dto.Quantity,
                DeliveryMethod = dto.DeliveryMethod,
                DataOfOrder    = dto.DataOfOrder,
                StatusOfOrder  = dto.StatusOfOrder,
                Price          = dto.Price
            };

            context.Orders.Add(order);
            context.SaveChanges();
        }
        public void AddUser(UserDto dto, PharmacyContext context)
        {
            var user = new User
            {
                Name        = dto.Name,
                Surname     = dto.Surname,
                Login       = dto.Login,
                Password    = dto.Password,
                Role        = dto.Role,
                City        = dto.City,
                Street      = dto.Street,
                PhoneNumber = dto.PhoneNumber
            };

            context.Users.Add(user);
            context.SaveChanges();
        }
        public void AddMedicine(CreateMedicineDto dto, PharmacyContext context)
        {
            var medicine = new Medicine
            {
                DataExpiration = dto.DataExpiration,
                Manufacturer   = dto.Manufacturer,
                Name           = dto.Name,
                Perscription   = dto.Perscription,
                Price          = dto.Price,
                Refunded       = dto.Refunded,
                StorageMethod  = dto.StorageMethod,
                Use            = dto.Use,
                Quantity       = dto.Quantity
            };

            context.Medicines.Add(medicine);
            context.SaveChanges();
        }
Example #8
0
        public IActionResult CreateProduct([FromBody] Product product)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Products.Add(product);
                    _context.SaveChanges();

                    return(CreatedAtAction("GetProduct", new { id = product.Id }, product));
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError(string.Empty, e.Message);
            }

            return(BadRequest(ModelState));
        }
        public ActionResult View_RefillDetails(Refill refill)
        {
            string Token = HttpContext.Request.Cookies["Token"];

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Token);

            HttpResponseMessage response = client.GetAsync(client.BaseAddress + "/Refill/RefillStatus/" + refill.Subscription_ID).Result;

            if (response.IsSuccessStatusCode)
            {
                string scheduleData = response.Content.ReadAsStringAsync().Result;
                Refill r            = JsonConvert.DeserializeObject <Refill>(scheduleData);
                context.RefillDetails.Add(r);
                context.SaveChanges();


                return(View("RefillStatus", r));
            }
            return(View());
        }
        public static void Initialize(PharmacyContext context)
        {
            context.Database.EnsureCreated();

            if (context.Categorii.Any())
            {
                return; // BD a fost creata anterior
            }

            var categorii = new Categorie[]
            {
                new Categorie {
                    NumeCategorie = "Durere"
                },
                new Categorie {
                    NumeCategorie = "Răceală şi gripă"
                },
                new Categorie {
                    NumeCategorie = "Cardiovascular"
                },
                new Categorie {
                    NumeCategorie = "Dermatologie"
                },
                new Categorie {
                    NumeCategorie = "Afecţiuni gastrointestinale"
                },
            };

            foreach (Categorie s in categorii)
            {
                context.Categorii.Add(s);
            }
            context.SaveChanges();

            var furnizori = new Furnizor[]
            {
                new Furnizor {
                    FurnizorID = 1, NumeFurnizor = "BAYER SRL", Adresa = "Şos Pipera nr 42, etajele: 1,16,17, România", Telefon = "0215295900", Email = "*****@*****.**"
                },
                new Furnizor {
                    FurnizorID = 2, NumeFurnizor = "TERAPIA SA", Adresa = "Str. Fabricii nr.124, România", Telefon = "0264501500", Email = "*****@*****.**"
                },
                new Furnizor {
                    FurnizorID = 3, NumeFurnizor = "ACTAVIS Group", Adresa = "Reykjavíkurvegi 76-78, ICELAND", Telefon = "3545503300", Email = "*****@*****.**"
                },
                new Furnizor {
                    FurnizorID = 4, NumeFurnizor = "RECKITT BENCKISER România SRL", Adresa = "Str. Grigore Alexandrescu, nr. 89-97, Et.5, Sector 1, România", Telefon = "0215296700", Email = "*****@*****.**"
                },
                new Furnizor {
                    FurnizorID = 5, NumeFurnizor = "S.C. BIOFARM SA", Adresa = "Str.Logofatul Tautu nr.99, sector 3, Romania", Telefon = "0213010600", Email = "*****@*****.**"
                },
            };

            foreach (Furnizor c in furnizori)
            {
                context.Furnizori.Add(c);
            }
            context.SaveChanges();

            var produse = new Produs[]
            {
                new Produs {
                    CategorieID = 1, FurnizorID = 1, NumeMedicament = "ASPIRIN", Doza = "20 compr x 500 mg", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 1, FurnizorID = 3, NumeMedicament = "ADAGIN", Doza = "10 cps x 400 mg", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 2, FurnizorID = 4, NumeMedicament = "NUROFEN", Doza = "100 ml", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 3, FurnizorID = 2, NumeMedicament = "ASPACARDIN", Doza = "39mg/12mg x 30 tb", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 5, FurnizorID = 4, NumeMedicament = "GAVISCON MENTOL", Doza = "200 ml", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 2, FurnizorID = 5, NumeMedicament = "BIXTONIM Xylo", Doza = "10 ml", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
                new Produs {
                    CategorieID = 2, FurnizorID = 2, NumeMedicament = "PARACETAMOL", Doza = "10 cps X 400 mg", Pret = 0, DataExpirare = DateTime.Parse("2020-12-22")
                },
            };

            foreach (Produs e in produse)
            {
                context.Produse.Add(e);
            }
            context.SaveChanges();

            var tipuri = new Tip[]
            {
                new Tip {
                    TipMedicament = "Comprimate"
                },
                new Tip {
                    TipMedicament = "Capsule"
                },
                new Tip {
                    TipMedicament = "Sirop"
                },
                new Tip {
                    TipMedicament = "Spray"
                },
                new Tip {
                    TipMedicament = "Picături"
                },
            };

            foreach (Tip p in tipuri)
            {
                context.Tipuri.Add(p);
            }
            context.SaveChanges();

            var formaproduse = new FormaProdus[]
            {
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "ASPIRIN").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Comprimate").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "ADAGIN").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Capsule").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "NUROFEN").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Sirop").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "ASPACARDIN").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Comprimate").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "GAVISCON MENTOL").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Sirop").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "BIXTONIM Xylo").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Spray").TipID
                },
                new FormaProdus {
                    ProdusID = produse.Single(c => c.NumeMedicament == "BIXTONIM Xylo").ProdusID, TipID = tipuri.Single(i => i.TipMedicament == "Picături").TipID
                },
            };

            foreach (FormaProdus pb in formaproduse)
            {
                context.FormaProduse.Add(pb);
            }
            context.SaveChanges();
        }
Example #11
0
        public IActionResult Subscribe([Bind("InsurancePolicyNumber,InsuranceProvider,PrescriptionDate,DrugName,DoctorName,RefillOccurrence")] PrescriptionDetails prescription)
        {
            if (String.IsNullOrEmpty(HttpContext.Session.GetString("Token")))
            {
                _log4net.Warn("Anonymous user trying to Subscribe");
                return(RedirectToAction("Index", "Home"));
            }

            // Get MemberId from Session

            SubscriptionDetails result = new SubscriptionDetails();
            int    id     = (int)HttpContext.Session.GetInt32("MemberId");
            string policy = "sad";

            // Call Subscription Service -- Subscribe method with prescription details and policy details and Member Id



            using (var httpClient = new HttpClient())
            {
                var content = new StringContent(JsonConvert.SerializeObject(prescription), Encoding.UTF8, "application/json");

                string url = "" + configuration["ServiceUrls:Subscription"] + "PostSubscribe";

                var request = new HttpRequestMessage(HttpMethod.Post, url + "/" + policy + "/" + id)
                {
                    Content = content
                };

                request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", HttpContext.Session.GetString("Token"));

                using (var response = httpClient.SendAsync(request).Result)
                {
                    if (!response.IsSuccessStatusCode)
                    {
                        _log4net.Error("False Response");
                        string message = "Something Went Wrong " + response.StatusCode;
                        return(RedirectToAction("Subscribe", new { message }));
                    }

                    var data = response.Content.ReadAsStringAsync().Result;

                    result = JsonConvert.DeserializeObject <SubscriptionDetails>(data);

                    if (result == null)
                    {
                        _log4net.Error("Exception On Subscription Service side");
                        string message = "Something Went Wrong " + response.StatusCode;
                        return(RedirectToAction("Subscribe", new { message }));
                    }

                    if (!result.Status)
                    {
                        _log4net.Info(prescription.DrugName + " Drug Not Available.... Subscription Failed ");
                        string message = "Subscription failed due to InAvailability of Drugs ";
                        return(RedirectToAction("Subscribe", new { message }));
                    }

                    details.Add(result);

                    var db = context.Subscriptions.FirstOrDefault(x => x.Id == result.Id);
                    if (db == null)
                    {
                        context.Subscriptions.Add(result);
                        context.SaveChanges();
                    }

                    string status1  = "Success";
                    string message1 = " Subscription Successfull..... Subscription Id is " + result.Id;
                    return(RedirectToAction("Index", new { status = status1, message = message1 }));
                }
            }
        }
 public void SaveChanges()
 {
     context.SaveChanges();
 }
Example #13
0
 public void SaveChanges() => _context.SaveChanges();
Example #14
0
 public int Complete()
 {
     return(_context.SaveChanges());
 }