88 lines
2.3 KiB
Go
88 lines
2.3 KiB
Go
package l_export_async
|
|
|
|
import (
|
|
"context"
|
|
"finance/internal/data"
|
|
"finance/internal/initialize"
|
|
"finance/internal/pkg"
|
|
"finance/internal/pkg/helper/attachment"
|
|
log2 "finance/internal/pkg/log"
|
|
"fmt"
|
|
"os"
|
|
"strings"
|
|
"testing"
|
|
"time"
|
|
|
|
attachmentsdk "codeup.aliyun.com/5f9118049cffa29cfdd3be1c/attachment-sdk"
|
|
)
|
|
|
|
func Test_Merge(t *testing.T) {
|
|
path := "/tmp/f63b2047-dd7b-11f0-b1a8-00155d5ef0f92960656377/csv/"
|
|
outputDir := "/tmp/f63b2047-dd7b-11f0-b1a8-00155d5ef0f92960656377/xlsx/aaa.xlsx"
|
|
csvFiles, err := listFiles(path)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
m := NewMerge(
|
|
Reader{Files: csvFiles, Index: len(csvFiles) - 1},
|
|
Writer{File: outputDir, Limit: 30000, BufferSize: 3000},
|
|
NewLogPrint(nil),
|
|
)
|
|
err = m.Merge()
|
|
t.Log(err)
|
|
}
|
|
|
|
func Test_Tsk(t *testing.T) {
|
|
taskId := "38089ced-dfde-11f0-a860-00155d5ef0f9"
|
|
t.Log(NewTask(NewRedisTaskStore(dat().Rdb)).GetTaskInfo(context.Background(), taskId))
|
|
}
|
|
|
|
func Test_Upload(t *testing.T) {
|
|
task_id := "c0abe2b3-dede-11f0-9178-00155d5ef0f92369485728"
|
|
filename := "供应商结算交易流水20251222100502"
|
|
|
|
file := "/tmp/" + task_id + "/zip/" + filename + ".zip"
|
|
//file := "/tmp/a03f82a8-deda-11f0-9c0b-00155d5ef0f9796292421/zip/供应商结算交易流水20251222100502.zip"
|
|
|
|
host := "http://192.168.6.194:8004"
|
|
sys := "crmApi"
|
|
business := "download"
|
|
fieldFormName := "file"
|
|
resp, err := attachment.Upload(host, file, sys, business, fieldFormName)
|
|
if err != nil {
|
|
t.Log(err)
|
|
}
|
|
url := attachmentsdk.GeneratePreviewPrivateUrl(host, "", resp.Url, "", strings.TrimSuffix("供应商结算交易流水20251222100502", ".zip"), time.Now().Unix()+300)
|
|
t.Log(url, err)
|
|
}
|
|
|
|
var (
|
|
Name = "test"
|
|
Version string
|
|
id, _ = os.Hostname()
|
|
)
|
|
|
|
func listFiles(dirPath string) ([]string, error) {
|
|
entries, err := os.ReadDir(dirPath)
|
|
if err != nil {
|
|
return nil, fmt.Errorf("failed to read directory: %w", err)
|
|
}
|
|
|
|
var files []string
|
|
for _, entry := range entries {
|
|
if !entry.IsDir() { // 只添加文件(排除子目录)
|
|
files = append(files, dirPath+entry.Name())
|
|
}
|
|
}
|
|
return files, nil
|
|
}
|
|
|
|
func dat() *data.Data {
|
|
bootstrap := initialize.LoadConfigWithTest()
|
|
businessLogger := log2.NewBusinessLogger(bootstrap.Logs, id, Name, Version)
|
|
helper := pkg.NewLogHelper(businessLogger, bootstrap)
|
|
|
|
dataData, _, _ := data.NewData(bootstrap, helper)
|
|
return dataData
|
|
}
|