예제 #1
0
        public async Task <ImportResponse> ImportAlbumsAsync(AlbumImportRequest request)
        {
            ImportResponse response = await CheckRequest(request.UserID, request.Albums.Count);

            if (!response.Successful)
            {
                return(response);
            }

            var user = await _userManager.FindByIdAsync(request.UserID);

            foreach (var album in request.Albums)
            {
                try
                {
                    album.UserID  = request.UserID;
                    album.UserNum = user.UserNum;
                    album.ID      = 0;
                    _albumService.Add(album);
                    response.Imported++;
                }
                catch (Exception ex)
                {
                    response.Failed++;
                    response.Message += $"{album.Title}- {ex.Message} : {ex.InnerException?.Message} ,";
                }
            }

            response.Successful = true;

            return(response);
        }
예제 #2
0
        public async Task <IActionResult> ImportAlbums([FromBody] AlbumImportRequest request)
        {
            if (request == null)
            {
                return(BadRequest("Request missing"));
            }

            var result = await _importService.ImportAlbumsAsync(request);

            return(Json(result));
        }