/// <summary> /// Converter /// </summary> /// <param name="userModel"></param> /// <returns></returns> public static DTOUserPublic DtoUserToDtoUserPublic(DTOUser userModel) { DTOUserPublic userPublic = new DTOUserPublic(); userPublic.Id = userModel.Id; userPublic.Name = userModel.Name; userPublic.UserName = userModel.UserName; userPublic.Note = userModel.Note; userPublic.Gender = userModel.Gender; return(userPublic); }
/// <summary> /// Show on a View which transaction have been noted /// </summary> /// <param name="CurrentarticleId"></param> /// <param name="sellername"></param> /// <returns>View with updated transactions note status</returns> public async Task <IActionResult> secondPageManager(long CurrentarticleId, string sellername) { var email = HttpContext.User.Identity.Name; var Buyer = _userRepo.GetUserByEmail(email); var transactionList = new List <DTOArticle>(); var Seller = _userRepo.GetUserByUserName(sellername); var BuyerTransactions = await _transactionRepo.GetTransactionByUserId(Buyer.Id); foreach (var transaction in BuyerTransactions) { var toInsert = new DTOArticle(); var currentArticle = await _articleRepo.GetById(transaction.ArticleId); toInsert.Name = currentArticle.Name; toInsert.State = currentArticle.State; toInsert.Id = currentArticle.Id; if (toInsert.Transaction == null) { toInsert.Transaction = new DTOTransaction(); } var sellerToInsert = new DTOUserPublic(); sellerToInsert.Name = Seller.Name; sellerToInsert.UserName = Seller.UserName; toInsert.User = sellerToInsert; if (currentArticle.Id == CurrentarticleId) { toInsert.Transaction = transaction; if (transaction.TransactionState == "sold") { toInsert.Transaction.TransactionState = "Sold and Noted"; transaction.TransactionState = "Sold and Noted"; } var upt = await _transactionRepo.Update(transaction); } else { toInsert.Transaction.TransactionState = transaction.TransactionState; } transactionList.Add(toInsert); } ViewData["transactionlist"] = transactionList; return(View("Profile_secondPage")); }
public async Task <IActionResult> Profile() { var email = HttpContext.User.Identity.Name; var user = _userRepo.GetUserByEmail(email); DTOLoginUser userToReturn = new DTOLoginUser(); userToReturn.Name = user.Name; userToReturn.Email = user.Email; userToReturn.UserName = user.UserName; userToReturn.Address = user.Address; userToReturn.Gender = user.Gender; userToReturn.Note = user.Note; userToReturn.NbNotes = user.NbNotes; var transactionList = new List <DTOArticle>(); var userTransactions = await _transactionRepo.GetTransactionByUserId(user.Id); foreach (var transaction in userTransactions) { var toInsert = new DTOArticle(); var article = await _articleRepo.GetById(transaction.ArticleId); toInsert.Name = article.Name; toInsert.State = article.State; toInsert.Id = article.Id; if (toInsert.Transaction == null) { toInsert.Transaction = new DTOTransaction(); toInsert.Transaction.TransactionState = transaction.TransactionState; } var sellerFromDb = await _userRepo.GetById(article.SellerId); var sellerToInsert = new DTOUserPublic(); sellerToInsert.Name = sellerFromDb.Name; sellerToInsert.UserName = sellerFromDb.UserName; toInsert.User = sellerToInsert; transactionList.Add(toInsert); } ViewData["transactionlist"] = transactionList; return(View(userToReturn)); }
public async Task <IActionResult> NoteUser() { var email = HttpContext.User.Identity.Name; var Buyer = _userRepo.GetUserByEmail(email); var transactionList = new List <DTOArticle>(); var SellerName = Request.Form["id"].ToString(); var Seller = _userRepo.GetUserByUserName(SellerName); var BuyerTransactions = await _transactionRepo.GetTransactionByUserId(Buyer.Id); var articleId = (long)Convert.ToDouble(Request.Form["articleId"].ToString()); foreach (var transaction in BuyerTransactions) { var toInsert = new DTOArticle(); var currentArticle = await _articleRepo.GetById(transaction.ArticleId); toInsert.Name = currentArticle.Name; toInsert.State = currentArticle.State; toInsert.Id = currentArticle.Id; if (toInsert.Transaction == null) { toInsert.Transaction = new DTOTransaction(); } var sellerToInsert = new DTOUserPublic(); sellerToInsert.Name = Seller.Name; sellerToInsert.UserName = Seller.UserName; toInsert.User = sellerToInsert; if (currentArticle.Id == articleId) { toInsert.Transaction = transaction; if (transaction.TransactionState == "sold") { toInsert.Transaction.TransactionState = "Sold and Noted"; transaction.TransactionState = "Sold and Noted"; } var upt = await _transactionRepo.Update(transaction); var note = Convert.ToDouble(Request.Form["note"]); Seller.NbNotes += 1; Seller.Note = FindNoteAverage(note, Seller.NbNotes); var test = await _userRepo.Update(Seller); if (test == null) { View("Cart", "Failed"); } } else { toInsert.Transaction.TransactionState = transaction.TransactionState; } transactionList.Add(toInsert); } ViewData["transactionlist"] = transactionList; return(RedirectToAction("secondPageManager", new { CurrentarticleId = articleId, sellername = SellerName })); }