From ec58bf196fb360bfcec35ed784ae9da90ffa3d42 Mon Sep 17 00:00:00 2001 From: jiangshuai <291802688@qq.com> Date: 星期二, 12 十二月 2023 11:06:50 +0800 Subject: [PATCH] 调整listbycondition接口服务 --- service/input_history_search.go | 46 +++++++++++++++++++++++++++++----------------- 1 files changed, 29 insertions(+), 17 deletions(-) diff --git a/service/input_history_search.go b/service/input_history_search.go index c3aca77..45803c5 100644 --- a/service/input_history_search.go +++ b/service/input_history_search.go @@ -20,6 +20,11 @@ OperationTypeName string `json:"operationTypeName,omitempty"` //涓氬姟鍚嶇О FromLocation string `json:"fromLocation,omitempty"` //婧愪綅缃悕绉� ToLocation string `json:"toLocation,omitempty"` //鐩爣浣嶇疆鍚嶇О + Date string `json:"date,omitempty"` //鏃ユ湡 + Company string `json:"company,omitempty"` // 渚涘簲鍟�/瀹㈡埛 + Carrier string `json:"carrier,omitempty"` //鎵胯繍鍟嗗悕绉� + WaybillNumber string `json:"waybillNumber"` //杩愬崟鍙� + ReceiverName string `json:"receiverName"` //鏀惰揣浜� } const ( @@ -36,19 +41,24 @@ return } records := make([]*models.MoveHistory, 0, 100) - reports := make([]*HistoryReport, 0, 100) err = models.NewMoveHistorySearch().Orm.FindInBatches(&records, 100, func(tx *gorm.DB, batch int) error { - err = structx.AssignTo(records, &reports) + operationIds := make([]int, 0, len(records)) + for _, record := range records { + operationIds = append(operationIds, record.OperationId) + } + + operations, err := models.NewOperationSearch().SetPreload(true).SetIds(operationIds).FindNotTotal() if err != nil { - logx.Errorf("AddNewHistoryReportRecord AssignTo err:%v", err) return err } - for _, report := range reports { - err = blevex.Add(HistoryReportIndexName, strconv.Itoa(report.ID), report) - if err != nil { - logx.Errorf("InitHistoryReportData add failed, err:%v, index:%v, data:%v", err, HistoryReportIndexName, report) - return err - } + operationMap := make(map[int]*models.Operation, len(operations)) + + for _, operation := range operations { + operationMap[operation.Id] = operation + } + + for _, record := range records { + AddNewHistoryReportRecord(record, operationMap[record.OperationId]) } return nil }).Error @@ -76,19 +86,21 @@ return } -func AddNewHistoryReportRecord(moveHistoryId int) { +func AddNewHistoryReportRecord(record *models.MoveHistory, operation *models.Operation) { var report HistoryReport - record, err := models.NewMoveHistorySearch().SetID(uint(moveHistoryId)).First() - if err != nil { - logx.Errorf("AddNewHistoryReportRecord Find err:%v", err) - return - } - err = structx.AssignTo(record, &report) + err := structx.AssignTo(record, &report) if err != nil { logx.Errorf("AddNewHistoryReportRecord AssignTo err:%v", err) return } - err = blevex.Add(HistoryReportIndexName, strconv.Itoa(moveHistoryId), report) + + report.Date = record.UpdatedAt.Format("2006-01-02") + report.Carrier = operation.LogisticCompany.Name + report.Company = operation.CompanyName + report.WaybillNumber = operation.WaybillNumber + report.ReceiverName = operation.ReceiverName + + err = blevex.Add(HistoryReportIndexName, strconv.Itoa(record.Id), report) if err != nil { logx.Errorf("AddNewHistoryReportRecord bleve add err:%v", err) return -- Gitblit v1.8.0