public async Task ASXCompany(string stockCode, [Remainder] string parameter = "") { var dataResult = await _asxService.Company(stockCode); if (!dataResult.IsSuccess) { await ReplyAsync(dataResult.Message); return; } var data = dataResult.Payload; var embed = ASXSearchViewBuilders.BuildCompanyView(data); await ReplyAsync("", embed : embed); }
public async Task ASXIndex([Remainder] string parameter = "") { var chartDataResult = await _asxService.Highchart("XAO"); if (!chartDataResult.IsSuccess) { await ReplyAsync(chartDataResult.Message); return; } var data = chartDataResult.Payload; var lastPoint = data.OrderBy(x => x.Date).Last(); var secondLastPoint = data.Last(x => x.Date != lastPoint.Date); var embed = ASXSearchViewBuilders.BuildIndexView(lastPoint, secondLastPoint); await ReplyAsync("", embed : embed); }
public async Task ASXSearch(string stockCode, string option = "def", [Remainder] string parameter = "") { if (option != "def") { switch (option) { case "company": case "info": case "i": await ASXCompany(stockCode); return; case "annualreport": case "annual": case "report": case "r": case "ar": await ASXAnnualReport(stockCode); return; case "announce": case "announcements": case "an": case "ann": await ASXAnnouncements(stockCode); return; case "similar": case "sim": case "s": await ASXSimilar(stockCode); return; case "upcomingevents": case "e": case "agm": case "events": await ASXUpcomingEvents(stockCode); return; default: break; } } if (stockCode.ToUpper() == "XAO") { await ASXIndex(); return; } var dataResult = await _asxService.Lookup(stockCode); if (!dataResult.IsSuccess) { await ReplyAsync(dataResult.Message); return; } var data = dataResult.Payload; var embed = ASXSearchViewBuilders.BuildLookupView(data); await ReplyAsync("", embed : embed); }