|
@@ -25,7 +25,6 @@ type EdbInfoCalculateTcz struct {
|
|
ModifyTime time.Time `description:"修改时间"`
|
|
ModifyTime time.Time `description:"修改时间"`
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
func TczSub(a, b float64) string {
|
|
func TczSub(a, b float64) string {
|
|
af := decimal.NewFromFloat(float64(a))
|
|
af := decimal.NewFromFloat(float64(a))
|
|
fmt.Println(af)
|
|
fmt.Println(af)
|
|
@@ -52,13 +51,13 @@ func RefreshCalculateTcz(edbInfoId int, fromEdbInfo *EdbInfo, edbCode, startDate
|
|
return
|
|
return
|
|
}
|
|
}
|
|
edbInfoIdStr := strconv.Itoa(edbInfoId)
|
|
edbInfoIdStr := strconv.Itoa(edbInfoId)
|
|
- //计算数据
|
|
|
|
|
|
|
|
|
|
+ fmt.Println(edbInfoId, fromEdbInfo.EdbInfoId)
|
|
//计算数据
|
|
//计算数据
|
|
var condition string
|
|
var condition string
|
|
var pars []interface{}
|
|
var pars []interface{}
|
|
condition += " AND edb_info_id=? "
|
|
condition += " AND edb_info_id=? "
|
|
- pars = append(pars, edbInfoId)
|
|
|
|
|
|
+ pars = append(pars, fromEdbInfo.EdbInfoId)
|
|
|
|
|
|
if startDate != "" {
|
|
if startDate != "" {
|
|
condition += " AND data_time>=? "
|
|
condition += " AND data_time>=? "
|
|
@@ -82,8 +81,7 @@ func RefreshCalculateTcz(edbInfoId int, fromEdbInfo *EdbInfo, edbCode, startDate
|
|
|
|
|
|
addSql := ` INSERT INTO edb_data_calculate_tcz(edb_info_id,edb_code,data_time,value,create_time,modify_time,status,data_timestamp) values `
|
|
addSql := ` INSERT INTO edb_data_calculate_tcz(edb_info_id,edb_code,data_time,value,create_time,modify_time,status,data_timestamp) values `
|
|
var isAdd bool
|
|
var isAdd bool
|
|
- for ak, av := range dateArr {
|
|
|
|
- fmt.Println(ak, av)
|
|
|
|
|
|
+ for _, av := range dateArr {
|
|
currentItem := dataMap[av]
|
|
currentItem := dataMap[av]
|
|
if currentItem != nil {
|
|
if currentItem != nil {
|
|
//当前日期
|
|
//当前日期
|
|
@@ -196,17 +194,11 @@ func RefreshCalculateTcz(edbInfoId int, fromEdbInfo *EdbInfo, edbCode, startDate
|
|
break
|
|
break
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- nextDateDay := preDate.AddDate(0, 0, 1)
|
|
|
|
- nextDateDayStr := nextDateDay.Format(utils.FormatDate)
|
|
|
|
-
|
|
|
|
- preDateDay := preDate.AddDate(0, 0, -1)
|
|
|
|
- preDateDayStr := preDateDay.Format(utils.FormatDate)
|
|
|
|
|
|
+ nextDateDay := preDate
|
|
|
|
+ preDateDay := preDate
|
|
|
|
|
|
for i := 0; i < 35; i++ {
|
|
for i := 0; i < 35; i++ {
|
|
- if i >= 1 {
|
|
|
|
- nextDateDay = nextDateDay.AddDate(0, 0, i)
|
|
|
|
- nextDateDayStr = nextDateDay.Format(utils.FormatDate)
|
|
|
|
- }
|
|
|
|
|
|
+ nextDateDayStr := nextDateDay.Format(utils.FormatDate)
|
|
if findItem, ok := dataMap[nextDateDayStr]; ok { //上一年同期->下一个月找到
|
|
if findItem, ok := dataMap[nextDateDayStr]; ok { //上一年同期->下一个月找到
|
|
timestamp := currentDate.UnixNano() / 1e6
|
|
timestamp := currentDate.UnixNano() / 1e6
|
|
timestampStr := fmt.Sprintf("%d", timestamp)
|
|
timestampStr := fmt.Sprintf("%d", timestamp)
|
|
@@ -227,10 +219,7 @@ func RefreshCalculateTcz(edbInfoId int, fromEdbInfo *EdbInfo, edbCode, startDate
|
|
}
|
|
}
|
|
break
|
|
break
|
|
} else {
|
|
} else {
|
|
- if i >= 1 {
|
|
|
|
- preDateDay = preDate.AddDate(0, 0, -i)
|
|
|
|
- preDateDayStr = nextDateDay.Format(utils.FormatDate)
|
|
|
|
- }
|
|
|
|
|
|
+ preDateDayStr := preDateDay.Format(utils.FormatDate)
|
|
if findItem, ok := dataMap[preDateDayStr]; ok { //上一年同期->上一个月找到
|
|
if findItem, ok := dataMap[preDateDayStr]; ok { //上一年同期->上一个月找到
|
|
timestamp := currentDate.UnixNano() / 1e6
|
|
timestamp := currentDate.UnixNano() / 1e6
|
|
timestampStr := fmt.Sprintf("%d", timestamp)
|
|
timestampStr := fmt.Sprintf("%d", timestamp)
|
|
@@ -252,11 +241,15 @@ func RefreshCalculateTcz(edbInfoId int, fromEdbInfo *EdbInfo, edbCode, startDate
|
|
}
|
|
}
|
|
break
|
|
break
|
|
}
|
|
}
|
|
|
|
+ nextDateDay = nextDateDay.AddDate(0, 0, 1)
|
|
|
|
+ preDateDay = preDateDay.AddDate(0, 0, -1)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ fmt.Println("isAdd:", isAdd)
|
|
|
|
+
|
|
if isAdd {
|
|
if isAdd {
|
|
addSql = strings.TrimRight(addSql, ",")
|
|
addSql = strings.TrimRight(addSql, ",")
|
|
_, err = o.Raw(addSql).Exec()
|
|
_, err = o.Raw(addSql).Exec()
|
|
@@ -308,15 +301,15 @@ func GetEdbInfoCalculateTczDetail(edbInfoId int) (item *EdbInfoCalculateTczDetai
|
|
func GetEdbDataCalculateTczByCodeAndDate(edbCode string, startDate string) (count int, err error) {
|
|
func GetEdbDataCalculateTczByCodeAndDate(edbCode string, startDate string) (count int, err error) {
|
|
o := orm.NewOrm()
|
|
o := orm.NewOrm()
|
|
o.Using("data")
|
|
o.Using("data")
|
|
- sql := ` SELECT COUNT(1) AS count FROM edb_info_calculate_tcz WHERE edb_code=? AND data_time=? `
|
|
|
|
|
|
+ sql := ` SELECT COUNT(1) AS count FROM edb_data_calculate_tcz WHERE edb_code=? AND data_time=? `
|
|
err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
|
|
err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
-func ModifyEdbDataCalculateTcz(edbInfoId int64, dataTime,value string) (err error) {
|
|
|
|
|
|
+func ModifyEdbDataCalculateTcz(edbInfoId int64, dataTime, value string) (err error) {
|
|
o := orm.NewOrm()
|
|
o := orm.NewOrm()
|
|
o.Using("data")
|
|
o.Using("data")
|
|
- sql := ` UPDATE edb_info_calculate_tcz SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
|
|
|
|
|
|
+ sql := ` UPDATE edb_data_calculate_tcz SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
|
|
_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
|
|
_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
|
|
return
|
|
return
|
|
}
|
|
}
|