Ejemplo n.º 1
0
        public async Task <StageChangeResponse> InsertOrUpdateAsync(AppState.Stage stage, int userId)
        {
            async Task AddNewStage()
            {
                var stageDto = new StageDto()
                {
                    UserId = userId,
                    Title  = stage.Title
                };

                _appDbContext.Stages.Add(stageDto);
                await _appDbContext.SaveChangesAsync();
            }

            if (stage.Id != 0)
            {
                var exist = await _appDbContext.Stages.SingleOrDefaultAsync(p => p.Id == stage.Id && p.UserId == userId);

                if (exist != null)
                {
                    exist.Title = stage.Title;
                    await _appDbContext.SaveChangesAsync();
                }
                else
                {
                    await AddNewStage();
                }
            }
            else
            {
                await AddNewStage();
            }

            return(new StageChangeResponse());
        }
Ejemplo n.º 2
0
        public async Task <StageChangeResponse> DeleteStageAsync(AppState.Stage stage)
        {
            var result = await _httpClient.DeleteAsyncEx <StageChangeResponse>($"api/stage/{stage.Id}", $"Delete column '{stage.Title}'");

            OnStateChanged?.Invoke(this, result.AppState);

            return(result);
        }
Ejemplo n.º 3
0
        public async Task <StageChangeResponse> EditStageAsync(AppState.Stage stage)
        {
            var result = await _httpClient.PostAsyncEx <StageChangeResponse, AppState.Stage>("api/stage", stage, $"Edit column '{stage.Title}'");

            OnStateChanged?.Invoke(this, result.AppState);

            return(result);
        }
Ejemplo n.º 4
0
 public async Task <StageChangeResponse> Post(AppState.Stage stage)
 {
     return(await _stageService.InsertOrUpdateAsync(stage, _authUser.Id));
 }