Bläddra i källkod

dashboard: update

Yi 1 vecka sedan
förälder
incheckning
d76f63e9e1
1 ändrade filer med 83 tillägg och 83 borttagningar
  1. 83 83
      module/backend/dashboard.go

+ 83 - 83
module/backend/dashboard.go

@@ -193,6 +193,89 @@ func (s *StoreEntry) DataWarningPop(ctx context.Context, req *pasturePb.WarningD
 	return resp, nil
 }
 
+func (s *StoreEntry) FindDataWarning(ctx context.Context, pastureId, userId int64) ([]*model.DataWarning, error) {
+	dataWarningList := make([]*model.DataWarning, 0)
+	if err := s.DB.Model(new(model.DataWarning)).
+		Where("user_id = ?", userId).
+		Where("pasture_id = ?", pastureId).
+		Find(&dataWarningList).Error; err != nil {
+		return nil, xerr.WithStack(err)
+	}
+	return dataWarningList, nil
+}
+
+func (s *StoreEntry) FindDataWarningItems(ctx context.Context, pastureId, userId int64) ([]*model.DataWarningItems, error) {
+	dataWarningItemsList := make([]*model.DataWarningItems, 0)
+	if err := s.DB.Model(new(model.DataWarningItems)).
+		Where("pasture_id = ?", pastureId).
+		Where("user_id = ?", userId).
+		Find(&dataWarningItemsList).Error; err != nil {
+		return nil, xerr.WithStack(err)
+	}
+	return dataWarningItemsList, nil
+}
+
+func (s *StoreEntry) FindDataWarningMap(ctx context.Context, pastureId, userId int64) (map[int64]*model.DataWarning, error) {
+	dataWarning, err := s.FindDataWarning(ctx, pastureId, userId)
+	if err != nil {
+		return nil, xerr.Custom("默认预警数据有误,请联系管理员!")
+	}
+	dataWarningMap := make(map[int64]*model.DataWarning)
+	for _, v := range dataWarning {
+		dataWarningMap[v.Id] = v
+	}
+	return dataWarningMap, nil
+}
+
+func (s *StoreEntry) FindDataWarningItemsMap(ctx context.Context, userId int64) (map[int64]*model.DataWarningItems, error) {
+	dataWarningItemsList := make([]*model.DataWarningItems, 0)
+	if err := s.DB.Model(new(model.DataWarningItems)).
+		Where("user_id = ?", userId).
+		Find(&dataWarningItemsList).Error; err != nil {
+		return nil, xerr.WithStack(err)
+	}
+	dataWarningItemsMap := make(map[int64]*model.DataWarningItems)
+	for _, v := range dataWarningItemsList {
+		dataWarningItemsMap[v.Id] = v
+	}
+	return dataWarningItemsMap, nil
+}
+
+// UpdateWarningData 更新计算数据
+func (s *StoreEntry) UpdateWarningData(ctx context.Context, pastureId int64, needUpdateWarningIds []int64) {
+	if len(needUpdateWarningIds) <= 0 {
+		return
+	}
+	for _, warningId := range needUpdateWarningIds {
+		query, params, err := s.BuildQuery(warningId)
+		if err != nil {
+			zaplog.Error("UpdateWarningData", zap.Any("BuildQuery", err), zap.Any("warningId", warningId))
+		}
+		if len(query) == 0 || len(params) == 0 {
+			continue
+		}
+
+		zaplog.Info("UpdateWarningData", zap.Any("query", query), zap.Any("params", params))
+
+		var count int64
+		if err = s.DB.Model(new(model.Cow)).
+			Where("pasture_id = ?", pastureId).
+			Where(query, params...).
+			Count(&count).Error; err != nil {
+			zaplog.Error("UpdateWarningData", zap.Any("err", err), zap.Any("query", query), zap.Any("params", params))
+		}
+
+		if err = s.DB.Model(new(model.DataWarning)).
+			Where("id = ?", warningId).
+			Updates(map[string]interface{}{
+				"data_value":     count,
+				"data_update_at": time.Now().Local().Unix(),
+			}).Error; err != nil {
+			zaplog.Error("UpdateWarningData", zap.Any("update", err))
+		}
+	}
+}
+
 // 新增用户预警数据
 func (s *StoreEntry) addUserDataWarning(ctx context.Context, pastureId, userId int64, defaultDataWarning []*model.DataWarning, warningDataSet []*pasturePb.WarningDataSet) error {
 	// 将默认预警数据按 Kind 映射
@@ -300,86 +383,3 @@ func (s *StoreEntry) updateUserDataWarning(ctx context.Context, pastureId, userI
 		return nil
 	})
 }
-
-func (s *StoreEntry) FindDataWarning(ctx context.Context, pastureId, userId int64) ([]*model.DataWarning, error) {
-	dataWarningList := make([]*model.DataWarning, 0)
-	if err := s.DB.Model(new(model.DataWarning)).
-		Where("user_id = ?", userId).
-		Where("pasture_id = ?", pastureId).
-		Find(&dataWarningList).Error; err != nil {
-		return nil, xerr.WithStack(err)
-	}
-	return dataWarningList, nil
-}
-
-func (s *StoreEntry) FindDataWarningItems(ctx context.Context, pastureId, userId int64) ([]*model.DataWarningItems, error) {
-	dataWarningItemsList := make([]*model.DataWarningItems, 0)
-	if err := s.DB.Model(new(model.DataWarningItems)).
-		Where("pasture_id = ?", pastureId).
-		Where("user_id = ?", userId).
-		Find(&dataWarningItemsList).Error; err != nil {
-		return nil, xerr.WithStack(err)
-	}
-	return dataWarningItemsList, nil
-}
-
-func (s *StoreEntry) FindDataWarningMap(ctx context.Context, pastureId, userId int64) (map[int64]*model.DataWarning, error) {
-	dataWarning, err := s.FindDataWarning(ctx, pastureId, userId)
-	if err != nil {
-		return nil, xerr.Custom("默认预警数据有误,请联系管理员!")
-	}
-	dataWarningMap := make(map[int64]*model.DataWarning)
-	for _, v := range dataWarning {
-		dataWarningMap[v.Id] = v
-	}
-	return dataWarningMap, nil
-}
-
-func (s *StoreEntry) FindDataWarningItemsMap(ctx context.Context, userId int64) (map[int64]*model.DataWarningItems, error) {
-	dataWarningItemsList := make([]*model.DataWarningItems, 0)
-	if err := s.DB.Model(new(model.DataWarningItems)).
-		Where("user_id = ?", userId).
-		Find(&dataWarningItemsList).Error; err != nil {
-		return nil, xerr.WithStack(err)
-	}
-	dataWarningItemsMap := make(map[int64]*model.DataWarningItems)
-	for _, v := range dataWarningItemsList {
-		dataWarningItemsMap[v.Id] = v
-	}
-	return dataWarningItemsMap, nil
-}
-
-// UpdateWarningData 更新计算数据
-func (s *StoreEntry) UpdateWarningData(ctx context.Context, pastureId int64, needUpdateWarningIds []int64) {
-	if len(needUpdateWarningIds) <= 0 {
-		return
-	}
-	for _, warningId := range needUpdateWarningIds {
-		query, params, err := s.BuildQuery(warningId)
-		if err != nil {
-			zaplog.Error("UpdateWarningData", zap.Any("BuildQuery", err), zap.Any("warningId", warningId))
-		}
-		if len(query) == 0 || len(params) == 0 {
-			continue
-		}
-
-		zaplog.Info("UpdateWarningData", zap.Any("query", query), zap.Any("params", params))
-
-		var count int64
-		if err = s.DB.Model(new(model.Cow)).
-			Where("pasture_id = ?", pastureId).
-			Where(query, params...).
-			Count(&count).Error; err != nil {
-			zaplog.Error("UpdateWarningData", zap.Any("err", err), zap.Any("query", query), zap.Any("params", params))
-		}
-
-		if err = s.DB.Model(new(model.DataWarning)).
-			Where("id = ?", warningId).
-			Updates(map[string]interface{}{
-				"data_value":     count,
-				"data_update_at": time.Now().Local().Unix(),
-			}).Error; err != nil {
-			zaplog.Error("UpdateWarningData", zap.Any("update", err))
-		}
-	}
-}