zhangqian
2024-07-31 3bbe212120c1199e574087f63afe8f384ffe16f5
service/location_forms.go
@@ -104,46 +104,20 @@
   unitData, unitIndexMap := GetAllUnits()
   // 自定义表头
   headers := []interface{}{"位置", "产品", "产品类别", map[string][]string{"在库数量": unitData}, "价值"}
   // 设置表头
   i := 1
   for _, h := range headers {
      if v, ok := h.(string); ok {
         f.SetCellValue("Sheet1", getColumnAlphabet(i)+"1", v)
         i++
      } else if childHeaders, ok := h.(map[string][]string); ok {
         for title, list := range childHeaders {
            f.SetCellValue("Sheet1", getColumnAlphabet(i)+"1", title)
            err = f.MergeCell("Sheet1", getColumnAlphabet(i)+"1", getColumnAlphabet(i-1+len(list))+"1") // 合并单元格
            for _, t := range list {
               f.SetCellValue("Sheet1", getColumnAlphabet(i)+"2", t)
               i++
            }
         }
      }
   }
   // 设置表头样式
   style := &excelize.Style{
      Border: nil,
      Fill: excelize.Fill{
         Type:    "pattern",
         Pattern: 1,
         Shading: 0,
      },
      Font: &excelize.Font{
         Bold: true,
      },
      Alignment: &excelize.Alignment{
         Horizontal: "center",
      },
   }
   titleStyle, err := f.NewStyle(style)
   lastColumnNumber, err := SetExcelHeaders(headers, f)
   if err != nil {
      return
      return "", err
   }
   f.MergeCell("Sheet1", "A1", "A2") // 合并单元格
   f.MergeCell("Sheet1", "B1", "B2") // 合并单元格
   f.MergeCell("Sheet1", "C1", "C2") // 合并单元格
   titleStyle, err := SetHeaderStyle(f)
   if err != nil {
      return "", err
   }
   lastColumn := getColumnAlphabet(i)
   lastColumn := getColumnAlphabet(lastColumnNumber)
   f.SetCellStyle("Sheet1", "A1", lastColumn+"2", titleStyle)
   // 设置列宽
   f.SetColWidth("Sheet1", "A", "C", 30)