水务营收系统之户表关系
² 前言
目前很多自来水公司都在进行一户一表改造,但还是有不少自来水公司存在总分表、套表(子母表)等现象。本文主要描述一下总分表、套表、消防表的水量计算及水量分摊。把原本没有人缴费的总表、消防表所使用的水量分摊到各分表中,以避免给自来水公司带来损失。
² 总分表
1,一个总表对应多个分表,即:1:N(一对多的关系)
一个总表下有N个分表,总表水量计算方式:
设总表的抄表水量为:S,各分表的抄表水量为:A1,A2......则:
总表待分摊水量 = S -(A1 + A2 + A3 +......)
若S < (A1 + A2 + A3 +......)则:总表待分摊水量 = 0
由于总表没有用户缴费“总表待分摊水量”需把水量分摊到个分表中。
分摊方式:(各分表/分表水量之和)*总表待分摊水量,分摊后,总表待分摊水量=0
例如:
总表 | 编号 | 上期读数 | 本期读数 | 抄表水量 | 待分摊水量 |
| 100000 | 23760 | 24580 | 820 | 40 |
分表 | 编号 | 上期读数 | 本期读数 | 抄表水量 | 分摊水量 |
| 100001 | 78 | 94 | 16 | 0.82 |
| 100002 | 134 | 156 | 22 | 1.13 |
| 100003 | 257 | 298 | 41 | 2.10 |
| ...... |
|
| ...... | ...... |
合计 |
|
|
| 780 | 39.99 |
总表待分摊水量=820-780=40
各分表分摊得到的水量为(保留两位小数):
100001: (16/780)*40=0.82
......
说明:由于总表的待分摊水量分摊时按两位小数计算,所以分摊后分表中的分摊水量之后与总表的待分摊水量是存在一定的误差。
2,多个总表对应多个分表,即:N:N(多对多的关系)
假设各总表的水量分别为S1,S2......,则总表的水量合计S为:
S = S1 + S2 + ......
假设各分表的水量分别为A1,A2......,则分表的水量合计A为:
A = A1 + A2 +......
(1)若 S < A 则 S = 0
(2)若 S >= A 则 总表待分摊水量为:总表待分摊水量 = S - A,
水量分摊方式跟一个总表的分摊方式一致。
(各分表/分表水量之和)*总表待分摊水量,分摊后,总表待分摊水量=0
例如:
总表 | 编号 | 上期读数 | 本期读数 | 抄表水量 | 待分摊水量 |
| 100000 | 23760 | 24580 | 820 | 260 |
| 100001 | 21100 | 21320 | 220 | 0 |
合计 |
|
|
| 1040 |
|
分表 | 编号 | 上期读数 | 本期读数 | 抄表水量 | 分摊水量 |
| 100002 | 78 | 94 | 16 | 5.33 |
| 100003 | 134 | 156 | 22 | 7.33 |
| 100004 | 257 | 298 | 41 | 13.67 |
| ...... |
|
| ...... | ...... |
合计 |
|
|
| 780 | 260 |
由于总表中编号为100001的抄表水量为220小于了分表的合计抄表水量780,则该总表的待分摊水量直接更新为0,
待分摊水量标记到总表编号为100000的水表上,然后再进行分摊。
各分表分摊得到的水量为(保留两位小数):
100002: (16/780)*260=5.33
......
² 套表(子母表)
母表的计费水量=母表抄表水量 - 子表抄表水量
由于母表是有用户缴费,母表的计费水量不需要分摊。
² 消防表
消防表实际用水量根据抄表读数计算,计算出的水量再分摊到各用户水表中。水量分摊的方式与总分表的分摊方式一致:
(各分表/分表水量之和)*消防表水量,分摊后,消防表水量=0