示例#1
0
        public ActionResult Create([FromForm] PrescriptionCreateViewModel model)
        {
            var prescriptionMedicines = model.Medicine.Select(elem => new PrescriptionMedicine
            {
                Amount     = elem.Amount,
                MedicineId = elem.Id
            }).ToList();


            var user = new User {
                Id = model.ChosenUserId
            };
            var createModel = new Prescription
            {
                Buyer = model.Buyer, SaleTime = model.SaleTime, User = user, Medicine = prescriptionMedicines
            };

            try
            {
                var result = _prescriptionBc.AddPrescription(createModel);
                return(RedirectToAction(nameof(Details), new { id = result }));
            }
            catch (Exception e)
            {
                return(View(model));
            }
        }
示例#2
0
        public ActionResult Edit(int id, [FromForm] PrescriptionCreateViewModel model)
        {
            var user = new User {
                Id = model.ChosenUserId
            };
            var prescriptionMedicines = model.Medicine.Select(elem => new PrescriptionMedicine
            {
                Amount = elem.Amount, MedicineId = elem.Id, PrescriptionId = id,
                PrescriptionMedicineId = elem.PrescriptionMedicineId > 0 ? elem.PrescriptionMedicineId : 0,
                Medicine = GetMedicineWithPrice(elem.Id, elem.Price)
            }).ToList();

            var updatedModel = new Prescription
            {
                Id = id, Buyer = model.Buyer, SaleTime = model.SaleTime, User = user, Medicine = prescriptionMedicines
            };

            try
            {
                var result = _prescriptionBc.UpdatePrescription(id, updatedModel);

                return(RedirectToAction(nameof(Details), new { id = result.Id }));
            }
            catch (Exception e)
            {
                return(View(model));
            }
        }
示例#3
0
        // GET: Prescriptions/Create
        public async Task <IActionResult> Create()
        {
            ApplicationUser user = await GetCurrentUserAsync();

            var model = new PrescriptionCreateViewModel(_context, user);

            return(View(model));
        }
示例#4
0
        // GET: Prescription/Create
        public ActionResult Create()
        {
            var model = new PrescriptionCreateViewModel {
                SaleTime = DateTime.Now
            };
            var allUsers    = _userBc.ReadAll() ?? new List <User>();
            var allMedicine = _medicineBc.ReadAll() ?? new List <Medicine>();

            model.AvailableUsers    = allUsers.Select(elem => new UserViewModel(elem));
            model.AvailableMedicine = allMedicine.Select(elem => new MedicineDetailsViewModel(elem, 0, 0));

            return(View(model));
        }
示例#5
0
        private PrescriptionCreateViewModel GetCreateEdit(int id)
        {
            var model       = _prescriptionBc.GetPrescription(id);
            var allUsers    = _userBc.ReadAll() ?? new List <User>();
            var allMedicine = _medicineBc.ReadAll() ?? new List <Medicine>();

            if (model == null)
            {
                return(null);
            }

            var result = new PrescriptionCreateViewModel(model, allUsers.Select(u => new UserViewModel(u)));

            result.AvailableMedicine = allMedicine.Select(m => new MedicineDetailsViewModel(m, 0, 0));
            return(result);
        }