From ba5c9371fa8993acd703735fe4875aed8a267c26 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 17 十一月 2023 19:12:54 +0800 Subject: [PATCH] 位置报表索引新增数据 --- service/search.go | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 deletions(-) diff --git a/service/search.go b/service/search.go index aa1f235..0d48905 100644 --- a/service/search.go +++ b/service/search.go @@ -9,11 +9,11 @@ ) type LocationReport struct { - LocationProductAmount int - LocationName string `json:"name" gorm:"index;type:varchar(255);not null;comment:浣嶇疆鍚嶇О"` //浣嶇疆鍚嶇О - LocationJointName string `json:"jointName" gorm:"type:varchar(255);comment:鎷兼帴鍚嶇О"` //鎷兼帴鍚嶇О - MaterialName string `json:"materialName"` //鐗╂枡鍚嶇О - ProductCategoryName string `json:"productCategoryName"` //鍒嗙被鍚嶇О + LocationProductAmountID int + LocationName string `json:"name" gorm:"index;type:varchar(255);not null;comment:浣嶇疆鍚嶇О"` //浣嶇疆鍚嶇О + LocationJointName string `json:"jointName" gorm:"type:varchar(255);comment:鎷兼帴鍚嶇О"` //鎷兼帴鍚嶇О + MaterialName string `json:"materialName"` //鐗╂枡鍚嶇О + ProductCategoryName string `json:"productCategoryName"` //鍒嗙被鍚嶇О } const ( @@ -33,7 +33,7 @@ reports := make([]*LocationReport, 0) search := models.NewLocationProductAmountSearch() err = search.Orm.Model(&models.LocationProductAmount{}). - Raw("select wms_location_product_amount.id as LocationProductAmount, wms_location.name as LocationName, wms_location.joint_name as LocationJointName, material.name as MaterialName, wms_product_category.Name as ProductCategoryName from wms_location_product_amount " + + Raw("select wms_location_product_amount.id as LocationProductAmountID, wms_location.name as LocationName, wms_location.joint_name as LocationJointName, material.name as MaterialName, wms_product_category.Name as ProductCategoryName from wms_location_product_amount " + "left join wms_location on wms_location.id=wms_location_product_amount.location_id " + "left join material on material.id = wms_location_product_amount.product_id " + "left join wms_product_category on wms_product_category.id=material.category_id").Scan(&reports).Error @@ -41,7 +41,7 @@ logx.Errorf("InitLocationReportData scan err:%v", err) } for _, result := range reports { - err = blevex.Add(LocationReportIndexName, strconv.Itoa(result.LocationProductAmount), result) + err = blevex.Add(LocationReportIndexName, strconv.Itoa(result.LocationProductAmountID), result) if err != nil { logx.Errorf("InitLocationReportData add failed, err:%v, index:%v, data:%v", err, LocationReportIndexName, result) } @@ -64,3 +64,21 @@ list, total, err = models.NewLocationProductAmountSearch().SetPage(page, pageSize).SetPreload(true).SetIds(recordIds).FindByPage() return } + +func AddNewLocationReportRecord(id int) { + var report LocationReport + err := models.NewLocationProductAmountSearch().Orm.Model(&models.LocationProductAmount{}). + Raw("select wms_location_product_amount.id as LocationProductAmountID, wms_location.name as LocationName, wms_location.joint_name as LocationJointName, material.name as MaterialName, wms_product_category.Name as ProductCategoryName from wms_location_product_amount "+ + "left join wms_location on wms_location.id=wms_location_product_amount.location_id "+ + "left join material on material.id = wms_location_product_amount.product_id "+ + "left join wms_product_category on wms_product_category.id=material.category_id where LocationProductAmountID = ?", id).Scan(&report).Error + if err != nil { + logx.Errorf("AddNewLocationReportRecord scan err:%v", err) + return + } + err = blevex.Add(LocationReportIndexName, strconv.Itoa(id), report) + if err != nil { + logx.Errorf("AddNewLocationReportRecord add err:%v", err) + return + } +} -- Gitblit v1.8.0