private static async Task <IResult> UserHistory(int userid, int?days, IBeanService beanService, IHoldingService holdingService) { if (userid <= 0) { return(Results.BadRequest(string.Format(Strings.Invalid, "user id"))); } if (!days.HasValue) { days = int.MaxValue; } var ids = await beanService.BeanIdsAsync(userid); List <BeanHistoryModel> ret = new(); foreach (var id in ids) { var history = await beanService.HistoryAsync(id, days.Value); if (history is not null) { history.Basis = await holdingService.GetCostBasisAsync(userid, id); history.Quantity = (await holdingService.SummaryAsync(userid, history.BeanId))?.Quantity ?? 0; ret.Add(history); } } return(Results.Ok(ret)); }
private static async Task <IResult> BeanHistory(int beanid, int?days, IBeanService beanService) { if (!days.HasValue) { days = int.MaxValue; } var history = await beanService.HistoryAsync(beanid, days.Value); if (history is null) { return(Results.BadRequest(new ApiError(Strings.NoHistory))); } return(Results.Ok(history)); }
private static async Task <IResult> AllBeanHistory(int?days, IBeanService beanService) { if (!days.HasValue) { days = int.MaxValue; } var ids = await beanService.BeanIdsAsync(); List <BeanHistoryModel> ret = new(); foreach (var id in ids) { var history = await beanService.HistoryAsync(id, days.Value); if (history is not null) { ret.Add(history); } } return(Results.Ok(ret)); }
public InternalController(IOptions <AppSettings> settings, IMovementService movementService, IBeanService beanService) { _movementService = movementService; _beanService = beanService; _settings = settings.Value; }
public BeanController(IBeanService beanService, IHostingEnvironment appEnvironment) { _beanService = beanService; _appEnvironment = appEnvironment; }
public CoffeeService(IWaterService waterService, IBeanService <Catimor> beanService) { }
private static async Task <IResult> ById(int beanid, IBeanService beanService) { var bean = await beanService.ReadAsync(beanid); return(bean is null?Results.BadRequest(new ApiError(string.Format(Strings.ItemNotFound, "bean", "id", beanid))) : Results.Ok(bean)); }
private static async Task <IResult> ByName(string name, IBeanService beanService) { var bean = await beanService.ReadAsync(name); return(bean is null?Results.BadRequest(new ApiError(string.Format(Strings.ItemNotFound, "bean", "name", name))) : Results.Ok(bean)); }
private static async Task <IResult> GetBeans(IBeanService beanService) => Results.Ok(await beanService.GetAsync());
private static async Task <IResult> BuyFromExchange(int userid, int beanid, long quantity, IBeanService beanService) { var result = await beanService.BuyFromExchangeAsync(userid, beanid, quantity); if (result.Successful) { return(Results.Ok()); } return(Results.BadRequest(result.ErrorMessage())); }
private static async Task <IResult> SellToExchange(int holdingid, long quantity, IHoldingService holdingService, IBeanService beanService) { var result = await beanService.SellToExchangeAsync(holdingid, quantity); if (result.Successful) { return(Results.Ok()); } return(Results.BadRequest(result.ErrorMessage())); }
public static async Task <IResult> HistoryByName(string beanname, int days, IMovementService movementService, IBeanService beanService) { if (string.IsNullOrWhiteSpace(beanname)) { return(Results.BadRequest(new ApiError(string.Format(Strings.Invalid, "bean name")))); } var bean = await beanService.ReadAsync(beanname); if (bean is null) { return(Results.BadRequest(new ApiError(string.Format(Strings.ItemNotFound, "bean", "name", beanname)))); } var date = days == 0 ? default : DateTime.UtcNow.AddDays(-(days - 1)); var movements = await movementService.HistoryAsync(bean.Id, date); return(Results.Ok(movements)); }
public static async Task <IResult> Move([FromBody] string key, IMovementService movementService, IBeanService beanService, IOptions <AppSettings> settings) { List <string> messages = new(); if (key != settings.Value.ApiKey) { return(Results.BadRequest(new ApiError(Strings.NotAuthorized))); } var beanids = await beanService.BeanIdsAsync(); foreach (var beanid in beanids) { var result = await movementService.MoveAsync(beanid, settings.Value.MinimumValue, DateTime.UtcNow); if (!result.Successful) { messages.Add(result.ErrorMessage()); } } if (messages.Any()) { return(Results.BadRequest(new ApiError(messages.ToArray()))); } return(Results.Ok()); }