songxiaohang 1 жил өмнө
parent
commit
3240fe80ef

+ 0 - 1
app/cmd/organization/internal/logic/multiAddItemHistoryDataLogic.go

@@ -28,6 +28,5 @@ func (l *MultiAddItemHistoryDataLogic) MultiAddItemHistoryData(in *pb.MultiAddIt
 	if err != nil {
 		return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "item history data table multi Insert err:%v", err)
 	}
-
 	return &pb.MultiAddItemHistoryDataResp{}, nil
 }

+ 6 - 5
app/model/dcitemhistorydatamodel.go

@@ -66,7 +66,9 @@ func (m *defaultDcItemHistoryDataModel) MultiInsert(ctx context.Context, project
 func (m *defaultDcItemHistoryDataModel) QueryHistoryDataByTime(ctx context.Context, in *pb.ItemHistoryDataByTimeReq) ([]ItemHistoryData, error) {
 	resp := make([]ItemHistoryData, 0)
 	var err error
-	query := fmt.Sprintf("SELECT * FROM %s WHERE item_name in (?) AND h_time BETWEEN ? AND ?", m.getTableName(in.ProjectId))
+	query := fmt.Sprintf("SELECT * FROM %s AS hd "+
+		" LEFT JOIN dc_item_config as ic ON hd.item_name = ic.item_name "+
+		" WHERE hd.val > ic.min_val AND hd.val < ic.max_val AND hd.item_name in (?) AND h_time BETWEEN ? AND ?", m.getTableName(in.ProjectId))
 	if strings.Index(in.ItemName, ",") > 0 {
 		err = m.conn.QueryRowsCtx(ctx, &resp, query, strings.Split(in.ItemName, ","), in.Stime, in.Etime)
 	} else {
@@ -86,7 +88,9 @@ func (m *defaultDcItemHistoryDataModel) QueryHistoryDataByTime(ctx context.Conte
 func (m *defaultDcItemHistoryDataModel) QueryHistoryDataMaxMinByTime(ctx context.Context, in *pb.ItemHistoryDataByTimeReq) (*MaxMinData, error) {
 	resp := &MaxMinData{}
 	var err error
-	query := fmt.Sprintf("SELECT max(val) as max_val, min(val) as min_val FROM %s WHERE item_name = ? AND h_time BETWEEN ? AND ?", m.getTableName(in.ProjectId))
+	query := fmt.Sprintf("SELECT max(val) as max_val, min(val) as min_val FROM %s AS hd "+
+		" LEFT JOIN dc_item_config as ic ON hd.item_name = ic.item_name "+
+		" WHERE hd.val > ic.min_val AND hd.val < ic.max_val AND hd.item_name = ? AND h_time BETWEEN ? AND ?", m.getTableName(in.ProjectId))
 	err = m.conn.QueryRowCtx(ctx, resp, query, in.ItemName, in.Stime, in.Etime)
 
 	switch err {
@@ -106,9 +110,6 @@ func (m *defaultDcItemHistoryDataModel) QueryHistoryDataMaxMinByTime(ctx context
 }
 
 func (m *defaultDcItemHistoryDataModel) getTableName(projectId int64) string {
-	//itemDataStr := "dc_item_history_data_"
-	//projectStr := strconv.Itoa(int(projectId))
-	//return itemDataStr + projectStr
 	return fmt.Sprintf("dc_item_history_data_%d", projectId)
 }