计算ecpm值时不返回error

This commit is contained in:
xiabin 2025-01-23 17:45:17 +08:00
parent 1490b262b8
commit b5871b3f47

View File

@ -127,20 +127,21 @@ func (d *DouYinOpenApiClient) GetEcpmData(appId, openId, dateHour string) (list
// GetEcpm 计算ECPM
// https://bytedance.larkoffice.com/docx/Vg4yd0RDSovZINxJDyIc6THhnod
func (d *DouYinOpenApiClient) GetEcpm(res []douyinopenapi.Record) (ecpm float64, err error) {
func (d *DouYinOpenApiClient) GetEcpm(res []douyinopenapi.Record) (ecpm float64) {
// 计算 ECPM
totalCost := 0
totalRecords := len(res)
// 如果没有记录,则返回 0
if totalRecords == 0 {
return
}
totalCost := 0
for _, record := range res {
totalCost += record.Cost
}
// 如果没有记录,则返回错误
if totalRecords == 0 {
err = errors.New("未找到记录,无法计算 ECPM")
return
}
// 总 cost / 100000 * 1000 / 总记录数
ecpm = float64(totalCost) / 100000 * 1000 / float64(totalRecords)
return