示例#1
0
        public async Task <IActionResult> PutAnalytic(Guid id, EditAnalyticCommand command)
        {
            if (id != command.Id)
            {
                return(BadRequest());
            }

            await this._mediator.Send(command);

            return(Ok());
        }
示例#2
0
        public async Task OnValidSubmit()
        {
            Success = true;
            StateHasChanged();



            if (this.Analytic.Id != Guid.Empty)
            {
                var analytic = new EditAnalyticCommand
                {
                    Id        = this.Analytic.Id,
                    Key       = this.Analytic.Key,
                    Dimension = this.Analytic.Dimension
                };

                bool success = await _microscopeClient.PutAnalyticAsync(analytic.Id, analytic);

                if (success)
                {
                    _snackBar.Add("Analytic updated", Severity.Success);
                    MudDialog.Close(DialogResult.Ok(this.Analytic));
                }
                else
                {
                    _snackBar.Add("Error", Severity.Error);
                    MudDialog.Close(DialogResult.Cancel());
                }
            }
            else
            {
                var analytic = new AddAnalyticCommand
                {
                    Key       = this.Analytic.Key,
                    Dimension = this.Analytic.Dimension
                };

                string id = await _microscopeClient.PostAnalyticAsync(analytic);

                if (!string.IsNullOrEmpty(id))
                {
                    this.Analytic.Id = Guid.Parse(id);
                    _snackBar.Add("Analytic added", Severity.Success);
                    MudDialog.Close(DialogResult.Ok(this.Analytic));
                }
                else
                {
                    _snackBar.Add("Error", Severity.Error);
                    MudDialog.Close(DialogResult.Cancel());
                }
            }
        }
示例#3
0
        public async Task <bool> PutAnalyticAsync(Guid id, EditAnalyticCommand command)
        {
            var response = await this._httpClient.PutAsJsonAsync(AnalyticsEndpoint.Update(id), command);

            return(response.IsSuccessStatusCode);
        }