|
|
@@ -8,6 +8,8 @@ import (
|
|
|
"MeterService/database/meterCalcParam"
|
|
|
"MeterService/service/downStreamService/proto/acrel"
|
|
|
"MeterService/service/rtuService"
|
|
|
+ "strconv"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
func collectData(sn string, config *dataStruct.DtuConfig) []*dataStruct.CollectData {
|
|
|
@@ -75,30 +77,26 @@ func processCollectData(colData *dataStruct.CollectData, cfg *dataStruct.DtuSlav
|
|
|
// 计算电表数据
|
|
|
logger.Debug("计算电表数据: %s", cfg.NO)
|
|
|
calc := &dataStruct.MeterCalcParam{}
|
|
|
- tms := utils.NowDataToTimeStamp()
|
|
|
+ now := time.Now()
|
|
|
+ today, _ := strconv.Atoi(now.Format("20060102"))
|
|
|
+ tms := int64(today)
|
|
|
if x, ok := data.CalcParam.Get(cfg.NO); ok {
|
|
|
calc = x.(*dataStruct.MeterCalcParam)
|
|
|
+ if calc.Time != tms {
|
|
|
+ calc.ClearDayEnergy()
|
|
|
+ }
|
|
|
} else {
|
|
|
- calc.PowerRate.Count = 1
|
|
|
- calc.PowerRate.MaxPower = colData.P
|
|
|
- calc.PowerRate.SumPower = colData.P
|
|
|
- calc.ClearDayEnergy()
|
|
|
- }
|
|
|
- t := (&dataStruct.DateTime{}).TimeStampToData(tms)
|
|
|
- if t.Hour == 0 && t.Minute == 0 {
|
|
|
- calc.PowerRate.Count = 1
|
|
|
- calc.PowerRate.MaxPower = colData.P
|
|
|
- calc.PowerRate.SumPower = colData.P
|
|
|
calc.ClearDayEnergy()
|
|
|
}
|
|
|
+
|
|
|
// 计算电表数据
|
|
|
logger.Debug("[%s] 计算前: [%v]", cfg.NO, calc)
|
|
|
colData.CalcWithParam(calc)
|
|
|
calc.Time = tms
|
|
|
logger.Debug("[%s] 计算完成: [%v]", cfg.NO, calc)
|
|
|
// 更新电表计算参数
|
|
|
- db := meterCalcParam.NewMeterCalcParamDb()
|
|
|
data.CalcParam.Add(cfg.NO, calc)
|
|
|
+ db := meterCalcParam.NewMeterCalcParamDb()
|
|
|
if db != nil {
|
|
|
calcEt := &meterCalcParam.MeterCalcParam{
|
|
|
Id: cfg.NO,
|