public void addToCart(Instrument instrument, int amount = 1) { LineOrder lineOr = GetLineOrder(instrument); if (lineOr == null) { lineOr = new LineOrder //Order,OrderId no set (link when pay?) { Name = instrument.Name, Quantity = amount, UnitaryPrice = instrument.Price, TotalPrice = instrument.Price, InstrumentId = instrument.Id, Instrument = instrument }; _context.LineOrder.Add(lineOr); //No store on db? volatile LineOrders until Pay? } else { lineOr.Quantity++; } _context.SaveChanges(); //LineOrders.Add(lineOr); }
public static bool createLinkAppDB(string name, string surName, IdentityUser ideUser, ClaveSolDbContext cntxt) { cntxt.User.Add( new User { OwnerID = ideUser.Id, Name = name, Surname = surName, Mail = ideUser.Email, Premium = false, Status = 0 } ); int res = cntxt.SaveChanges(); return(res == 1 ? true : false); }
//AJAX Create Comment public Dictionary <string, string> createComment(int insId, string title, string body) { Dictionary <string, string> commentValues = new Dictionary <string, string>(); User userLogged = retrieveUser(); Comment comment; try { comment = new Comment { Date = System.DateTime.Now, Title = title, Body = body, Stars = 0, Deleted = false, User = userLogged, UserId = userLogged.Id, Instrument = _context.Instrument.Find(insId), InstrumentId = insId }; _context.Add(comment); _context.SaveChanges(); } catch (System.Exception) { throw; } commentValues.Add("title", comment.Title); commentValues.Add("body", comment.Body); commentValues.Add("author", userLogged.Name); return(commentValues); User retrieveUser() //%FUNC DUPLICATED ON CARTCONTROLLER!! { try { var claimUser = _signInManager.Context.User; //%if no LOGIN throw EXCEP string ideUserId = _signInManager.UserManager.GetUserId(claimUser); return(_context.User.Where(x => x.OwnerID == ideUserId).FirstOrDefault()); } catch (System.Exception) { throw; } } }
public ActionResult addToCart(int id, string attribsValues = null) { ISession session = _signInManager.Context.Session; //OPTIMIZA Y TESTEA ESTA SHIT DE CODIGO !! Order cartOrder = retrieveCart(session); // if(session.GetInt32("cartId") == null) // { // cartOrder = retrieveCart(session); // } Instrument instrument = _context.Instrument.Find(id); LineOrder lineOr = GetLineOrder(id, cartOrder); //lineOr NULL try { if (lineOr != null && instrument == lineOr.Instrument) //lineOr.Instrument NULL { lineOr.Quantity++; //UPDATE LINE ORDER ON DB _context.LineOrder.Update(lineOr); _context.SaveChanges(); } else { lineOr = new LineOrder { Order = cartOrder, OrderId = (int)session.GetInt32("cartId"), Instrument = instrument, InstrumentId = instrument.Id, Name = instrument.Name, Quantity = 1, UnitaryPrice = instrument.Price, TotalPrice = instrument.Price }; //Adding attribs to LineOrder if (String.IsNullOrEmpty(attribsValues)) //Attribs passed { //Default Attribs attribsValues = getDefValuesEachType(lineOr.InstrumentId); } insertAttribsIds(attribsValues, lineOr); _context.LineOrder.Add(lineOr); _context.SaveChanges(); } } catch (System.Exception) { throw; } int nLineOrders = countCartLines(session); //return RedirectToAction("Index","Cart"); if (nLineOrders == -1) { return(StatusCode(400)); } else { updateOrder(nLineOrders);//$ FULL-SPAGUETTI return(StatusCode(200, nLineOrders)); } }