1、 产品库存汇总(按门店)导出excel新增二三级分类;
This commit is contained in:
parent
32f819845b
commit
db1416c42e
|
@ -686,24 +686,38 @@ func reportByProductExport(req *InventoryReportByProductResp) (string, error) {
|
|||
fmt.Println("url fileName:", url+fileName)
|
||||
|
||||
// 组合标题栏数据
|
||||
title := []interface{}{"门店", "商品编号", "商品名称", "商品分类", "有效库存数", "调出中数量", "总数量", "有效库存金额",
|
||||
title1 := []interface{}{"门店", "商品编号", "商品名称", "商品分类", "", "", "有效库存数", "调出中数量", "总数量", "有效库存金额",
|
||||
"调出中金额", "总金额"}
|
||||
for i, _ := range title {
|
||||
title2 := []interface{}{"门店", "商品编号", "商品名称", "一级分类", "二级分类", "三级分类", "有效库存数", "调出中数量",
|
||||
"总数量", "有效库存金额",
|
||||
"调出中金额", "总金额"}
|
||||
for i, _ := range title1 {
|
||||
cell, _ := excelize.CoordinatesToCellName(1+i, 1)
|
||||
err := file.SetCellValue(fSheet, cell, title[i])
|
||||
err := file.SetCellValue(fSheet, cell, title1[i])
|
||||
if err != nil {
|
||||
logger.Error("file set value err:", logger.Field("err", err))
|
||||
logger.Errorf("file set value err:", err)
|
||||
}
|
||||
}
|
||||
|
||||
for i, _ := range title2 {
|
||||
cell, _ := excelize.CoordinatesToCellName(1+i, 2)
|
||||
err := file.SetCellValue(fSheet, cell, title2[i])
|
||||
if err != nil {
|
||||
logger.Errorf("file set value err:", err)
|
||||
}
|
||||
}
|
||||
|
||||
var row1 []interface{}
|
||||
nExcelStartRow := 0
|
||||
for _, reportData := range req.List {
|
||||
categoryLevels, _ := GetCategoryLevels(reportData.CategoryID)
|
||||
row1 = []interface{}{
|
||||
reportData.StoreName, // 门店
|
||||
reportData.CommoditySerialNumber, // 商品编号
|
||||
reportData.CommodityName, // 商品名称
|
||||
reportData.CategoryName, // 商品分类
|
||||
categoryLevels.Level1.Name, // 一级分类
|
||||
categoryLevels.Level2.Name, // 二级分类
|
||||
categoryLevels.Level3.Name, // 三级分类
|
||||
reportData.EffectiveCount, // 有效库存数
|
||||
reportData.TransferCount, // 调出中数量
|
||||
reportData.Count, // 总数量
|
||||
|
@ -713,7 +727,7 @@ func reportByProductExport(req *InventoryReportByProductResp) (string, error) {
|
|||
}
|
||||
|
||||
for j, _ := range row1 {
|
||||
cell, _ := excelize.CoordinatesToCellName(1+j, nExcelStartRow+2)
|
||||
cell, _ := excelize.CoordinatesToCellName(1+j, nExcelStartRow+3)
|
||||
err := file.SetCellValue(fSheet, cell, row1[j])
|
||||
if err != nil {
|
||||
logger.Error("file set value err:", logger.Field("err", err))
|
||||
|
@ -723,10 +737,10 @@ func reportByProductExport(req *InventoryReportByProductResp) (string, error) {
|
|||
}
|
||||
|
||||
totalData := "记录数:" + strconv.FormatInt(int64(req.Total), 10)
|
||||
end := []interface{}{totalData, "", "", "", req.TotalEffectiveCount, req.TotalTransferCount, req.TotalCount,
|
||||
end := []interface{}{totalData, "", "", "", "", "", req.TotalEffectiveCount, req.TotalTransferCount, req.TotalCount,
|
||||
req.TotalEffectiveAmount, req.TotalTransferAmount, req.TotalAmount}
|
||||
for i, _ := range end {
|
||||
cell, _ := excelize.CoordinatesToCellName(1+i, nExcelStartRow+2)
|
||||
cell, _ := excelize.CoordinatesToCellName(1+i, nExcelStartRow+3)
|
||||
err := file.SetCellValue(fSheet, cell, end[i])
|
||||
if err != nil {
|
||||
logger.Error("file set value err:", logger.Field("err", err))
|
||||
|
@ -740,8 +754,21 @@ func reportByProductExport(req *InventoryReportByProductResp) (string, error) {
|
|||
{"type":"right","color":"000000","style":1},
|
||||
{"type":"bottom","color":"000000","style":1}]}`)
|
||||
|
||||
// 合并单元格
|
||||
_ = file.MergeCell(fSheet, "A1", "A2")
|
||||
_ = file.MergeCell(fSheet, "B1", "B2")
|
||||
_ = file.MergeCell(fSheet, "C1", "C2")
|
||||
_ = file.MergeCell(fSheet, "D1", "F1")
|
||||
_ = file.MergeCell(fSheet, "G1", "G2")
|
||||
_ = file.MergeCell(fSheet, "H1", "H2")
|
||||
_ = file.MergeCell(fSheet, "I1", "I2")
|
||||
_ = file.MergeCell(fSheet, "J1", "J2")
|
||||
_ = file.MergeCell(fSheet, "K1", "K2")
|
||||
_ = file.MergeCell(fSheet, "L1", "L2")
|
||||
|
||||
//设置单元格高度
|
||||
file.SetRowHeight("Sheet1", 1, 20)
|
||||
file.SetRowHeight("Sheet1", 2, 20)
|
||||
|
||||
// 设置单元格大小
|
||||
file.SetColWidth("Sheet1", "A", "A", 30)
|
||||
|
@ -752,8 +779,10 @@ func reportByProductExport(req *InventoryReportByProductResp) (string, error) {
|
|||
file.SetColWidth("Sheet1", "H", "H", 15)
|
||||
file.SetColWidth("Sheet1", "I", "I", 15)
|
||||
file.SetColWidth("Sheet1", "J", "J", 15)
|
||||
file.SetColWidth("Sheet1", "K", "K", 15)
|
||||
file.SetColWidth("Sheet1", "L", "L", 15)
|
||||
|
||||
endRow := fmt.Sprintf("J"+"%d", nExcelStartRow+2)
|
||||
endRow := fmt.Sprintf("L"+"%d", nExcelStartRow+3)
|
||||
// 应用样式到整个表格
|
||||
_ = file.SetCellStyle("Sheet1", "A1", endRow, style)
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user