public ActionResult Entrust(MarketCriteria criteria) { var parameter = new DynamicParameters(); var where = new StringBuilder(); criteria.UserId = CurrentUser.Id; where.Append(" e.UserId = @userId "); parameter.Add("userId", CurrentUser.Id); if (criteria.StartDate.HasValue) { where.Append(" AND e.CreateTime >= @start"); parameter.Add("start", criteria.StartDate.Value); } if (criteria.EndDate.HasValue) { where.Append(" AND e.CreateTime < @end"); parameter.Add("end", criteria.EndDate.Value); } if (criteria.ProductId > 0) { where.Append(" AND e.ProductId = @pid"); parameter.Add("pid", criteria.ProductId); } if (criteria.IsBuy.HasValue && criteria.IsBuy > -1) { where.Append(" AND e.IsBuy = @buy"); parameter.Add("buy", criteria.IsBuy); } var pc = new PageCriteria { Where = where.ToString(), PageIndex = CurrentPageIndex, PageSize = PageSize, Parameter = parameter, Table = "Entrust e INNER JOIN Product p ON e.ProductId = p.Id", Order = "e.Id DESC" }; //var entrusts = mr.GetEntrusts(criteria); var model = new EntrustRepository().GetPagedData <Entrust, Product, Entrust>(pc, (e, p) => { e.Product = p; return(e); }); ViewBag.Products = pr.GetAllProducts().Select(p => new SelectListItem { Text = p.ProductName, Value = p.Id.ToString() }); return(View(model)); }
public IEnumerable <Entrust> GetEntrusts(MarketCriteria criteria) { string sql = @"SELECT * FROM Entrust e INNER JOIN Product p on e.ProductId = p.Id WHERE 1 = 1"; var parameters = new DynamicParameters(); if (criteria.UserId > 0) { sql += " AND e.UserId = @userId"; parameters.Add("userId", criteria.UserId); } if (criteria.StartDate.HasValue) { sql += " AND e.CreateTime >= @start"; parameters.Add("start", criteria.StartDate.Value); } if (criteria.EndDate.HasValue) { sql += " AND e.CreateTime < @end"; parameters.Add("end", criteria.EndDate.Value); } if (criteria.ProductId > 0) { sql += " AND e.ProductId = @pid"; parameters.Add("pid", criteria.ProductId); } if (criteria.IsBuy > -1) { sql += " AND e.IsBuy = @buy"; parameters.Add("buy", criteria.IsBuy); } if (criteria.Cancelled.HasValue && criteria.Cancelled.Value > -1) { sql += " AND e.Cancelled = @cancelled"; parameters.Add("cancelled", criteria.Cancelled); } sql += " ORDER BY e.Id DESC"; return(Conn.Query <Entrust, Product, Entrust>(sql, (e, p) => { e.Product = p; return e; }, parameters)); }
public ActionResult TradeHistory(MarketCriteria criteria) { var where = new StringBuilder(); var parameter = new DynamicParameters(); where.Append(" 1 = 1 "); if (criteria.StartDate.HasValue) { where.Append(" AND t.CreateTime >= @start"); parameter.Add("start", criteria.StartDate.Value); } if (criteria.EndDate.HasValue) { where.Append(" AND t.CreateTime < @end"); parameter.Add("end", criteria.EndDate.Value); } if (criteria.ProductId > 0) { where.Append(" AND t.ProductId = @pid"); parameter.Add("pid", criteria.ProductId); } if (criteria.IsBuy > -1) { where.Append(" AND t.IsBuy = @buy"); parameter.Add("buy", criteria.IsBuy); } var pc = new PageCriteria { Order = "t.Id DESC", Where = where.ToString(), Parameter = parameter, PageIndex = CurrentPageIndex, Table = "[Transaction] t INNER JOIN Product p on t.ProductId = p.Id", PageSize = PageSize }; var model = new TransactionRepository().GetPagedData <Transaction, Product, Transaction>(pc, (t, p) => { t.Product = p; return(t); }); ViewBag.Products = pr.GetAllProducts().Select(p => new SelectListItem { Text = p.ProductName, Value = p.Id.ToString() }); return(View(model)); }
public IEnumerable <Transaction> GetTransactions(MarketCriteria criteria) { return(null); }