
- Добавлена проверка токенов при запросе /amo/state - Исправлена работа с amo oauth-токенами - Добавлены примеры шаблонизатора - Добавлена возможность генерации и создания шаблонов из примеров - В ответ генератора добавлены ссылки для скачивания сгенерированных файлов - Вернул очиску temp после загрузки файла в Яндекс.Диск - yadisk.UploadResources - добавлено ожидание окончания отправки файла и таймаут в 5 секунд для отправки файла - Добавлены эндпоинты для загрузки файлов в хранилища - Актуализирован генератор по вебхуку - Обновлены генератор по данным - Обновлен генератор по лиду
46 lines
896 B
Go
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
|
|
}
|