package data_manage

// PredictEdbInfoCalculateSaveReq 预测指标运算请求
type PredictEdbInfoCalculateSaveReq struct {
	AdminId          int              `description:"添加人id"`
	AdminName        string           `description:"添加人名称"`
	EdbInfoId        int              `description:"指标id"`
	EdbName          string           `description:"指标名称"`
	Frequency        string           `description:"频率"`
	Unit             string           `description:"单位"`
	ClassifyId       int              `description:"分类id"`
	CalculateFormula string           `description:"计算公式"`
	EmptyType        int              `description:"空值处理类型(0查找前后35天,1不计算,2前值填充,3后值填充,4等于0)"`
	MaxEmptyType     int              `description:"MAX、MIN公式空值处理类型(1、等于0;2、跳过空值)"`
	EdbInfoIdArr     []EdbInfoFromTag `description:"指标信息"`
}

// PredictEdbInfoCalculateBatchSaveReq  预测指标比对请求(同比、同差等)
type PredictEdbInfoCalculateBatchSaveReq struct {
	AdminId          int    `description:"添加人id"`
	AdminName        string `description:"添加人名称"`
	EdbInfoId        int    `description:"指标id"`
	EdbName          string `description:"指标名称"`
	Frequency        string `description:"频度"`
	Unit             string `description:"单位"`
	ClassifyId       int    `description:"分类id"`
	Formula          string `description:"N值/移动天数"`
	FromEdbInfoId    int    `description:"计算来源指标id"`
	Source           int    `description:"来源:32:同比,33:同差,39:数值移动平均计算,42:累计值转月,43:环比值,44:环差值,45:变频,46:时间移位,47:直接拼接,48累计值同比拼接,49:超季节性,50 拟合残差"`
	CalculateFormula string `description:"计算公式"`
	EdbInfoIdArr     []struct {
		EdbInfoId int    `description:"指标id"`
		FromTag   string `description:"指标对应标签"`
		MoveValue int    `description:"移动的值"`
	}
	MoveType      int    `description:"移动方式:1:领先(默认),2:滞后"`
	MoveFrequency string `description:"移动频度:天/周/月/季/年"`
	Calendar      string `description:"公历/农历"`
}

// BatchPredictEdbInfoCalculateBatchSaveReq 批量添加 计算指标
type BatchPredictEdbInfoCalculateBatchSaveReq struct {
	CalculateId   string `description:"当前请求时,单个计算的唯一标识"`
	CalculateInfo PredictEdbInfoCalculateBatchSaveReq
}