143 Star 968 Fork 355

MyEMS / MyEMS能源管理系统

 / 详情

关于child space对汇总数据的影响

已取消
缺陷
创建于  
2022-03-10 16:36
  1. 复现场景
    以汇总 tbl_space_input_item_hourly数据为例,做了几个表的假数据
tbl_spaces

输入图片说明

tbl_meters

输入图片说明

tbl_spaces_meters

输入图片说明

tbl_equipments

输入图片说明

tbl_spaces_equipments

输入图片说明

tbl_equipment_input_item_hourly

输入图片说明

tbl_space_input_item_hourly

输入图片说明

  • tbl_spaces表里可以看到space_id=2,3是space_id =1的child space

  • 注意此时最终被汇总的表里只有space_id=1的数据

  • 在执行以下代码的时候,由于tbl_space_input_item_hourly没有space_id=2,3的数据,所以rows_energy_values为none
    输入图片说明

  • 由于rows_energy_values为none导致了energy_child_space_hourly这个字典只有key,value为none
    输入图片说明

  • 由于energy_child_space_hourly中的value为none,也就是energy_hourly为none,导致了common_start_datetime_utccommon_end_datetime_utc都为none
    输入图片说明

  • common_start_datetime_utccommon_end_datetime_utc都为none 导致了汇总数据的时候,while循环一直进不去,也就是不会进行汇总
    输入图片说明

  • 以上代码流程导致结果 :如果tbl_space_input_item_hourly没有child space的数据,那么这个parent id的所有数据(包括meters,equipment等)都不会进行汇总

  1. 问题:
    是否是特意设置如果最终汇总表tbl_space_input_item_hourly里没有child space的数据,那么parent id的所有数据都不进行汇总。
    个人认为即使child_spcae没有数据,那么也应该汇总equipment_hourly和meter_hourly的数据

评论 (1)

kakascx 创建了缺陷

仔细分析了您的问题,这是正常的功能,由于子空间2(一号楼),3(二号楼)能耗是否汇总(is_input_counted)属性都是true,那一定要等二者都有数据后才能计算上层空间数据,而且上层空间又直接绑定了设备和计量表,要等它们也算出数据,才最终汇总到上层空间1(MyEMS Headquarter),计算逻辑就是这样的。

感谢您的深入分析和讨论。

Guangyu Zhang 任务状态待办的 修改为已取消

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(2)
Python
1
https://gitee.com/myems/myems.git
git@gitee.com:myems/myems.git
myems
myems
MyEMS能源管理系统

搜索帮助