From c9b52c35041b3838e4fef7a2052b7d798ec00883 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 14 六月 2024 10:43:19 +0800
Subject: [PATCH] 操作明细查询支持位置和仓库过滤
---
service/more_units.go | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 52 insertions(+), 0 deletions(-)
diff --git a/service/more_units.go b/service/more_units.go
index 8671ce3..3a4cf49 100644
--- a/service/more_units.go
+++ b/service/more_units.go
@@ -1,6 +1,7 @@
package service
import (
+ "errors"
"github.com/shopspring/decimal"
"github.com/xuri/excelize/v2"
"strconv"
@@ -33,3 +34,54 @@
}
return
}
+
+func SetExcelHeader(headers []interface{}, f *excelize.File) (err error) {
+ // 璁剧疆琛ㄥご
+ var i int
+ for _, h := range headers {
+ if v, ok := h.(string); ok {
+ err = f.SetCellValue("Sheet1", getColumnAlphabet(i)+"1", v)
+ if err != nil {
+ return
+ }
+ i++
+ } else if childHeaders, ok := h.(map[string][]string); ok {
+ for title, list := range childHeaders {
+ err = f.SetCellValue("Sheet1", getColumnAlphabet(i)+"1", title)
+ if err != nil {
+ return err
+ }
+ err = f.MergeCell("Sheet1", getColumnAlphabet(i)+"1", getColumnAlphabet(i-1+len(list))+"1") // 鍚堝苟鍗曞厓鏍�
+ for _, t := range list {
+ err = f.SetCellValue("Sheet1", getColumnAlphabet(i)+"2", t)
+ if err != nil {
+ return err
+ }
+ i++
+ }
+ }
+ } else {
+ return errors.New("unsupported header value")
+ }
+ }
+ return nil
+}
+
+func SetHeaderStyle(f *excelize.File) (styleInt int, err error) {
+ // 璁剧疆琛ㄥご鏍峰紡
+ style := &excelize.Style{
+ Border: nil,
+ Fill: excelize.Fill{
+ Type: "pattern",
+ Pattern: 1,
+ Shading: 0,
+ },
+ Font: &excelize.Font{
+ Bold: true,
+ },
+ Alignment: &excelize.Alignment{
+ Horizontal: "center",
+ },
+ }
+ return f.NewStyle(style)
+}
--
Gitblit v1.8.0