Export DataSet to GoogleSheet

This commit is contained in:
2022-12-22 15:12:19 +01:00
parent c7b907da7c
commit f2d2d3f28b
8 changed files with 149 additions and 22 deletions

View File

@@ -12,6 +12,7 @@ using System.IdentityModel.Tokens.Jwt;
using System.Security.Claims;
using System.Text;
using WebAPI.dataParsers;
using WebAPI.Exports;
using WebAPI.Models;
namespace WebAPI.Controllers
@@ -23,9 +24,14 @@ namespace WebAPI.Controllers
{
private readonly AppDbContext db;
private SpreadsheetsResource.ValuesResource googleSheetValues;
public DataSetsController(AppDbContext _db, GoogleSheetsHelper _googleSheetsHelper) {
private GoogleDriveHelper googleDriveHelper;
public DataSetsController(
AppDbContext _db,
GoogleSheetsHelper _googleSheetsHelper,
GoogleDriveHelper _googleDriveHelper) {
db = _db;
googleSheetValues = _googleSheetsHelper.Service.Spreadsheets.Values;
googleDriveHelper = _googleDriveHelper;
}
[HttpGet]
@@ -85,6 +91,18 @@ namespace WebAPI.Controllers
var parser = new csvParser();
return Ok(parser.parse(Request.Form.Files[0]));
}
[HttpGet]
[Route("exportToGoogleSheet/{id}")]
public IActionResult ExportToGoogleSheet(Guid id)
{
DataSet dataSet = db.DataSets
.Include(x => x.DataRows)
.Where(x => x.Id == id && !x.IsDeleted).First();
var export = new googleSheetExport(googleDriveHelper, googleSheetValues);
export.export(dataSet);
return Ok(true);
}
//
private DataSet AddDataSet(DataSet input, Guid currentUserId)