fonchain-fiee/pkg/utils/excel/excel_test.go
2025-02-19 14:24:15 +08:00

62 lines
1.4 KiB
Go

// Package excel -----------------------------
// @file : excel_test.go
// @author : JJXu
// @contact : wavingBear@163.com
// @time : 2022/12/19 16:52:11
// -------------------------------------------
package excel
import (
"fmt"
"reflect"
"testing"
)
// 定义sheet表结构
type sheet1Define struct {
Xid int `json:"xid" form:"xid" db:"column:xid;comment: "`
Name string `json:"name" form:"name" db:"column:name;comment: "`
Age int `json:"age" form:"age" db:"column:age;comment: "`
}
func TestSlice(t *testing.T) {
var sheet1Datas = []sheet1Define{
{1, "张三", 16},
{2, "黑猫警长", 18},
}
var sheet1 = NewTemplateSheet("Sheet1", &sheet1Datas)
d := sheet1.GetData()
v := reflect.ValueOf(d)
switch v.Kind() {
case reflect.Slice:
t.Log(v.Index(0))
case reflect.Struct:
t.Log(v)
default:
t.Log("错误格式")
}
}
func TestEmptySheet(t *testing.T) {
var sheet1Headers = []string{"序号", "姓名", "年龄"}
var sheet1Data = []sheet1Define{
{1, "张三", 16},
{2, "黑猫警长", 18},
}
var sheet1 = NewSheet("Sheet1", sheet1Data, sheet1Headers)
var file, err = NewExcelCreatorFromTemplate("demo.xlsx", "./", "", sheet1)
if err != nil {
t.Error(err)
return
}
file.AfterAddData(AfterAddHeader1(sheet1, "大标题1"))
path, name, err := file.WriteToFile()
if err != nil {
t.Error(err)
}
fmt.Println(path)
fmt.Println(name)
}