
- OAuth Yandex API (#2vc89e8) - OAuth Google API (#2vc8cqc) - MAIN - работа с дисками (#2wmf8jf) -
41 lines
916 B
Go
41 lines
916 B
Go
package templategen
|
|
|
|
import (
|
|
"github.com/Pena-Co-Ltd/amocrm_templategen_back/dal/model"
|
|
"github.com/Pena-Co-Ltd/amocrm_templategen_back/gdisk"
|
|
)
|
|
|
|
func GDiskGenerateDoc(template *model.Template, saveFolderID string, client *GDisk.Client, data interface{}) error {
|
|
filename := GenerateDocName(template.Name, template.UserID)
|
|
|
|
// Download file
|
|
downloaded := TempDownloaded + "/" + filename
|
|
err := client.DownloadFile(downloaded, template.FileID)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
// Generate file
|
|
generated := TempGenerated + "/" + filename
|
|
err = GenerateFile(filename, data)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
// Upload file
|
|
err = client.UploadFile(
|
|
TempGenerated+"/"+filename,
|
|
"application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
|
saveFolderID)
|
|
|
|
// Delete temps
|
|
err = DeleteDocument(downloaded)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
err = DeleteDocument(generated)
|
|
|
|
return err
|
|
}
|