public async System.Threading.Tasks.Task <List <BetListDto> > GetBetsByGameAdmin(int id) { List <BetListDto> BetList = new List <BetListDto>(); BetsByGameReq bbgr = new BetsByGameReq { GameSn = id //, // UserID = UserID }; HttpResponseMessage response = await client.PostAsJsonAsync("api/BetsByGame", bbgr); if (response.IsSuccessStatusCode) { BetList = await response.Content.ReadAsAsync <List <BetListDto> >(); } return(BetList); }
public async System.Threading.Tasks.Task <ActionResult> BetsByGame(int id) { string UserID = User.Identity.GetUserId(); BetsByGameReq bbgr = new BetsByGameReq { GameSn = id //, //UserID = UserID }; List <BetListDto> BetList = new List <BetListDto>(); HttpResponseMessage response = await client.PostAsJsonAsync("api/BetsByGame", bbgr); if (response.IsSuccessStatusCode) { BetList = await response.Content.ReadAsAsync <List <BetListDto> >(); } return(View(BetList)); }
public async System.Threading.Tasks.Task <List <BetListDto> > GetBetsByGame(int id /*,string UserID*/) { BetsByGameReq bbgr = new BetsByGameReq { GameSn = id //, // UserID = UserID }; List <BetListDto> BetList = new List <BetListDto>(); lock (_cache) { if (_cache.Contains("GameBets_" + id)) { return(_cache.Get("GameBets_" + id) as List <BetListDto>); } } HttpResponseMessage response = await client.PostAsJsonAsync("api/BetsByGame", bbgr); if (response.IsSuccessStatusCode) { BetList = await response.Content.ReadAsAsync <List <BetListDto> >(); } lock (_cache) { CacheItemPolicy cacheItemPolicy = new CacheItemPolicy() { AbsoluteExpiration = DateTime.Now.AddDays(1) }; _cache.Add("GameBets_" + id, BetList, cacheItemPolicy); } return(BetList); }
internal List <BetListDto> getBetsByGame(BetsByGameReq bbgr) { List <BetListDto> BetList = new List <BetListDto>(); using (IDbConnection cn = new SqlConnection(WebConfigurationManager.ConnectionStrings["SQLData"].ConnectionString.ToString())) { string query = @" SELECT g.sn AS gameSn, g.title AS game ,g.betModel ,t.sn AS topicSn,t.title AS topic ,c.sn AS choiceSn,c.choiceStr AS choice ,b.Odds ,b.money,b.sn as betSn ,(CASE c.isTrue WHEN 1 THEN Round(pa.realMoney,2) when 2 then 0 ELSE b.money*-1 END) realmoney ,t.totalmoney as topicMoney,c.totalMoney as choiceMoney ,isnull(g.rake,0) as rake ,cu.name AS unit ,(case c.isTrue WHEN 1 THEN '勝' WHEN 0 THEN '負' when 2 then '無效' ELSE '未定' END) AS isTrue ,(case c.isTrue WHEN 1 THEN 'true' WHEN 0 THEN 'false' when 2 then 'invalid' ELSE 'unknow' END) AS isTrueValue ,u.userID,b.comSn ,b.createDate as betDatetime,b.equalchoice FROM dbo.bets b JOIN dbo.choices c ON c.sn=b.choiceSn JOIN dbo.topics t ON t.sn=b.topicSn JOIN dbo.games g ON g.sn=t.gameSn JOIN dbo.users u ON u.sn=b.userSn JOIN dbo.cfgUnit cu ON cu.sn=b.unitSn JOIN dbo.users uAdmin ON uAdmin.sn=g.userSn left join dbo.payouts pa on pa.betSn=b.sn WHERE g.sn=@GameSn and b.valid in (1,2) "; using (var multi = cn.QueryMultiple(query, new { GameSn = bbgr.GameSn })) { BetList = multi.Read <BetListDto>().ToList(); } } return(BetList); }
public IHttpActionResult BetsByGame(BetsByGameReq bbgr) { return(Ok(new BetRepository().getBetsByGame(bbgr))); }