// GET: ClientSubscriptions/Create public ActionResult Create(long accountId) { var account = db.ClientAccounts.Find(accountId); var stationOptions = new SelectList( db.StationAccounts.Select( n => new SelectListItem() { Selected = false, Text = n.StationName, Value = n.StationAccountId.ToString() }).ToList(), "Value", "Text", 0); var model = new ClientSubscriptionViewModel() { ClientAccountId = account.ClientAccountId, ClientAccountName = account.ClientAccountName, StationList = stationOptions }; return(View(model)); }
public ActionResult Create([Bind(Include = "ClientAccountId,StationAccountId, VesselName, Quantity,UnitPrice,Notes,Timestamp")] ClientSubscriptionViewModel clientSubscriptionViewModel) { if (ModelState.IsValid) { DateTime time = clientSubscriptionViewModel.Timestamp; var clientSubscription = new ClientSubscription() { UnitPrice = clientSubscriptionViewModel.UnitPrice, State = ClientSubscriptionState.Created, StartQuantity = clientSubscriptionViewModel.Quantity, CurrentQuantity = clientSubscriptionViewModel.Quantity, ClientAccountId = clientSubscriptionViewModel.ClientAccountId, Notes = clientSubscriptionViewModel.Notes, VesselName = clientSubscriptionViewModel.VesselName, StationAccountId = int.Parse(clientSubscriptionViewModel.StationAccountId), Timestamp = time }; db.ClientSubscriptions.Add(clientSubscription); db.SaveChanges(); var clientSubscriptionHistory = new ClientSubscriptionHistory() { UnitPrice = clientSubscriptionViewModel.UnitPrice, State = ClientSubscriptionState.Created, Quantity = clientSubscriptionViewModel.Quantity, Notes = clientSubscriptionViewModel.Notes, VesselName = clientSubscriptionViewModel.VesselName, ClientSubscriptionId = clientSubscription.ClientSubscriptionId, Timestamp = time }; db.ClientSubscriptionHistories.Add(clientSubscriptionHistory); db.SaveChanges(); return(RedirectToAction("Index", new { accountId = clientSubscriptionViewModel.ClientAccountId })); } return(View(clientSubscriptionViewModel)); }