docxTemplater/templategen/yadisk.go
Danil Solovyov fba01b2518 Changes:
- Добавлена проверка токенов при запросе /amo/state
  - Исправлена работа с amo oauth-токенами
  - Добавлены примеры шаблонизатора
  - Добавлена возможность генерации и создания шаблонов из примеров
  - В ответ генератора добавлены ссылки для скачивания сгенерированных файлов
  - Вернул очиску temp после загрузки файла в Яндекс.Диск
  - yadisk.UploadResources - добавлено ожидание окончания отправки файла и таймаут в 5 секунд для отправки файла
  - Добавлены эндпоинты для загрузки файлов в хранилища
  - Актуализирован генератор по вебхуку
  - Обновлены генератор по данным
  - Обновлен генератор по лиду
2022-11-25 00:37:47 +05:00

46 lines
896 B
Go

package templategen
import (
"github.com/Pena-Co-Ltd/amocrm_templategen_back/yadisk"
"os"
)
func YaDiskGenerateDoc(file, name, userID, saveFolder string, client *YaDisk.Client, data interface{}) (string, error) {
filename := GenerateDocName(name)
// Download file
downloaded := TempDownloaded + "/" + filename
err := client.DownloadResource(file, downloaded)
if err != nil {
return "", err
}
// Generate file
generated := TempGenerated + "/" + filename
err = GenerateFile(filename, data)
if err != nil {
return "", err
}
out, err := os.Open(generated)
defer out.Close()
if err != nil {
}
// Upload file
exportUrl, err := client.UploadResources(saveFolder+"/"+filename, out)
if err != nil {
return "", err
}
// Delete temps
err = DeleteDocument(downloaded)
if err != nil {
return exportUrl, err
}
err = DeleteDocument(generated)
return exportUrl, err
}