仪表管理需求文档 === **1. 流程图** --- --- ### [仪表管理-操作流程](https://pro.modao.cc/app/ea38650adb1b43bac2e9285f68cdc9dd352ba444) ```flow st=>start: 创建仪表 cond1=>condition: 查看仪表 cond2=>condition: 抄表 op3=>operation: 编辑仪表 op4=>operation: 换表 op5=>operation: 仪表度数 e=>end: 实际行度 st->cond1(yes) op5->e op3->cond1 op4->cond2 cond1(yes)->cond2(yes) cond1(no)->op3 cond2(yes)->op5 cond2(no)->op4 ``` --- **2. 产品原型** --- --- ### [原型链接](https://pro.modao.cc/app/ea38650adb1b43bac2e9285f68cdc9dd352ba444) 涉及页面为:*住户表管理及其子页面*、*公共表管理及其子页面* --- **3. 业务说明** --- --- **1)新建仪表** > * **选择位置:**左侧楼栋结构信息决定了当前页面的内容,创建仪表之前需手动选择所要创建的仪表所在的具体位置(具体位置至少选择小区,楼栋,单元等信息可在创建页面进行修改)。 > > ![住户列表](image/住户列表.png) > > > * **创建仪表(住户表):** > > ![创建仪表(住户表)](image/创建仪表(住户表).png) > > > * 1.住户表管理功能下,创建仪表会默认创建住户表。 > > > > > > * 2.所属位置:会根据点击创建仪表时所查看的页面(具体房屋下,仪表查看页面)来自动填写,当没有具体的房屋位置时(只点击上级位置,未点击房屋),则继承小区、楼栋、单元信息,由使用者手动选择房间号。住户表位置需要精确到房间号。 > > ![创建仪表(住户表)(所属位置选择)](image/创建仪表(住户表)(所属位置选择).png) > > > * 3.表名称:表名称是仪表日常使用中展现的名称,需要保证小区级别的唯一性,推荐命名方式为手动输入:房间号+表类型+编号。系统不做自动命名或自动生成房屋号前缀。 > > > > > > * 4.倍数:倍数用以计算实际行度,默认倍数为1。 > > > > > > > > > > > > * 5.仪表回程:仪表回程非必填项,其中机械仪表一般会有最大读数,对大读数用于抄表进位计算。电子仪表可无最大读数。 > > > > > > > > > > > > > > > > > > > > > > > > * 6.初始度数:作为仪表的第一次读数,用以显示和计算后续抄表产生的实际行度。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > * 7.计费模式:仅做属性判断标签,包含:抄表计费,预充值计费。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > * **创建仪表(公共表):** > > ![创建仪表(公共表)](image/创建仪表(公共表).png) > > > * 1.公共表管理功能下,创建仪表会默认创建公共表。 > > > > > > * 2.所属位置:与住户表所属位置整体逻辑一致,但公共表位置的精确度级别为:小区、楼栋或单元。不可精确到房间。 > > > > > > > > > > > > * 3.分摊方式:分摊仅仅作为一个仪表属性判断标签。 > > > > > > > > > > > > > > > > > > > > > > > > * 4.下级表:下级表可以同时选择公共表和住户表,根据实际从属关系进行编辑。 **2)仪表筛选/查找** > * **住户表管理:**通过左侧小区楼栋列表进行选择,选择的小区、楼栋、单元或房屋在顶部展示,页面内展示属于主体范围内的所有仪表。仪表排列顺序优先根据更新时间倒叙排列(最近更新的仪表在前),时间一致时根据楼栋与房屋的排序依据进行排列,同房屋仪表根据创建时间先后再进行排序。 > > > * **筛选仪表:**现在可通过两个维度进行仪表筛选。 > > > > > > * 1.更新时间维度,按照日期进行区间选择,筛选出时间区间内更新过读数的仪表。 > > ![筛选(时间区间)](image/筛选(时间区间).png) > > > * 2.表类型维度,按照水电表类型进行筛选。 > > ![筛选(表类型)](image/筛选(表类型).png) **3)仪表信息查看/修改** ![仪表信息(缩略与详情)](image/仪表信息(缩略与详情).png) > * **仪表信息列表缩略:**仪表管理页面默认查看列表缩略。 > > > * 1.表名称/表类型:表名称与创建仪表中的表名称一致,不存在系统自动加入房屋号前缀的情况。表类型以标签形式存在,当前只存在四种标签,两类:水表、电表、住户表、公共表。 > > ![表属性](image/表属性.png) > > > * 2.更新时间与当前读数:最近一次的抄表读数与抄表时间进行显示,时间格式为YYYY/MM/DD HH:MM:SS > > > > > > * 3.下级表(公共表):公共表的表标签后可直接点击查看已经关联的下级表。 > > ![关联仪表](image/关联仪表.png) > > > * **仪表信息列表详情:**点击仪表列表缩略的空白处可展开仪表,同时只支持展开一个仪表详情。展开后按照时间倒叙排列(最近操作在前),记录抄表信息,其中换表操作用标签标注。默认展开最近六次的抄表信息,点击查看更多再展开六条记录,以此类推,无上限。 > > > > > > * **仪表信息:**点击仪表名称可查看仪表信息弹窗。 > > ![仪表信息](image/仪表信息.png) > > > * **仪表信息编辑:**仪表信息弹窗可点击编辑,可对仪表的设置信息进行修改,修改原则与创建仪表一致,但已有读数的仪表无法设置初始度数与倍数。 > > ![仪表编辑](image/仪表编辑.png) **4)抄表/换表** > * **在线抄表:**列表缩略状态下可点击仪表的当前读数,点击后弹出抄表弹窗,填写表单完成抄表 > > ![在线抄表](image/在线抄表.png) > > > * 1.当前读数:不可编辑,数据来源为最近的仪表读数,第一次抄表时的当前读数应为创建仪表时输入的初始读数。 > > > > > > * 2.实际行度:实际行度计算公式参考下面的字段说明公式。 > > > > > > > > > > > > * 3.上传凭证:凭证为图片上传,非必须。 > > > > > > > > > > > > > > > > > > > > > > > > * 4.抄表时间:时间记录格式为YYYY/MM/DD HH:MM:SS,系统默认根据弹窗弹出时间自动生成抄表时间。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > * **在线换表:**换表与抄表在实际操作中属于同一状态下的衍生操作,换表中就同时完成了一次抄表(同理,创建仪表时的初始度数也可视为进行了一次抄表) > > ![在线换表](image/在线换表.png) > > > * 1.所属位置,表名称:保留原表信息,不可更改。 > > > > > > * 2.表编号:可变内容,进行唯一性检测,小区级别不可重复。 > > > > > > > > > > > > * 3.类型不可变,倍数可变,在换表时计算实际行度根据旧表倍数进行计算。 > > > > > > > > > > > > > > > > > > > > > > > > * 4.初始读数:新表初始度数作用与新建仪表保持一致,不参与和旧表读数间的行度计算。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > * 5.换表体现:在仪表信息列表详情中,换表会以标签形态标注在抄表记录中。 > > ![换表标签](image/换表标签.png) > > > * **抄表导出:**创建仪表按键下拉隐藏按键包含抄表导出 > > ![抄表导出](image/抄表导出.png) > > > * 1.类型选择:选择表类型,仅可选择一种。 > > > > > > * 2.范围选择:与公共表选择下级表同类关联,可同时选择住户表与公共表同时导出。 > > > > > > > > > > > > * 3.导出模板:模板文件**抄表电子表格20190108131421** > > > > > > > > > > > > > > > > > > > > > > > > * **模板文件: > > ![抄表导出(模板)](image/抄表导出(模板).png) > > > * 1.文件名称:名称格式,**抄表电子表格+表格导出时间(时间精确到秒)**。表格内标题为**抄表电子表格,首行包括导出时间、导出表类型、导出表数量、导出操作人**。 > > > > > > * 2.表格内容(不可编辑):小区、楼栋、房间号、表名称、表编号、表类型、最大读数、当前读数(最近一次抄表读数)、更新时间(最近一次抄表时间)这些数据自动生成,表格内无法编辑。 > > > > > > > > > > > > * 3.表格内容(可编辑):最新读数(抄表数)、更新时间(手动填写,可只填写至日期,系统导入时默认补齐至日期0点)、操作员(需保持和系统内员工名称一致)。 > > > > > > > > > > > > > > > > > > > > > > > > * 4.表格内容(自动生成):通过当前读数与最新读数进行行度计算,计算规则与行度计算公式一致。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > * **抄表导入:**创建仪表按键下拉隐藏按键包含抄表导入,使用已经填写完成的抄表导出文件进行导入。 > > ![抄表导入](image/抄表导入.png) > > > * 1.选择文件:选择本地文件进行导入。 > > > > > > * 2.重新选择:上传中与上传完成状态时可选择重新上传,自动打断当前的上传动作或数据对比状态。 > > > > > > > > > > > > * 3.数据对比:上传完成后系统自动进行数据对比,判断导入数据是否能成功录入,其中对比成功数据无误状态可直接完成导入操作。当数据错误时则需要在线表格预览,对错误数据进行查看,进而判断后续操作。 > > > > > > > > > > > > > > > > > > > > > > > > * 4.数据对比错误详情:页面待定。 --- **4. 字段说明** --- | 字段名称 | 备注 | 是否必填 | 字段限制 | | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ---- | -------------------------------------------------------- | | 所属位置 | 同时包含小区、楼栋、单元、房号等级别的位置信息,用以确认表与系统资产间的关系,其中住户表需精确到房号,公共表则可属于除房号外的任何一级。 | 是 | 住户表位置必包含字段:小区、楼栋、单元、房号。公共表位置最多包含三个字段:小区、楼栋(非必须)、单元(非必须)。 | | 表名称 | 用以描述表所在位置及基础属性的名称,需保证唯一性(1.0中保证唯一性的方法是自动在表名称前加入所在房号,2.0中表名称不进行此方式)通过提示用户输入保证唯一性 | 是 | 支持文字、数字、符号、字母。最大支持12位 | | 表编号 | 小区真实的仪表资产编号或者出厂时的产品编号(后续用来生成二维码或者用于资产管理)保证唯一性 | 是 | 支持数字、符号、字母。最大支持12位 | | 表类型 | 当前仅有两种表类型:水表m³、电表KW·H | 是 | 水表m³、电表KW·H | | 表属性 | 表属性在创建时就已经选择(根据所属页面不同进行操作时就会区分),两种属性:住户表、公共表 | 是 | 住户表、公共表 | | 倍数 | 当前仪表的读数与实际用量之间的倍数关系(默认为1),倍数可选择:1、10、100、1000。如:小区总表的倍数是100,抄表读数后实际行度为抄表差值的100倍,而非两次抄表的差值 | 是 | 1、10、100、1000 | | 仪表回程 | 仪表的最大读数,仅在机械表中有最大值需求,超过后涉及到表重置计算(1.0有相同概念),而电子表无最大读数,可根据是否有最大读数判断是否自动重置表读数 | 否 | 最大支持8位数字(可使用小数点) | | 计费模式 | 仅做属性判断标签,包含:抄表计费、预充值计费 | 是 | 抄表计费、预充值计费 | | 初始度数 | 创建仪表时的基础读数 | 是 | 最大支持8位数字(可使用小数点) | | 抄表读数 | 抄表读数 | - | 最大支持8位数字(可使用小数点) | | 当前读数 | 最近的读数信息 | - | 最大支持8位数字(可使用小数点) | | 换表 | 在进行抄表操作时可同时进行换表的相关操作(线下实际的操作逻辑就是同时进行) | - | | | 旧表最终读数 | 旧表在被更换时的最终读数或者推测读数(表损坏时可能会进行读数推测但不影响系统计算逻辑) | 是 | 最大支持8位数字(可使用小数点) | | 新表初始读数 | 新表在被更换时的最初读数(可为0) | 是 | 最大支持8位数字(可使用小数点) | | 更新时间 | 每次操作都需要有精确到秒的时间记录 | - | 格式YYYY/MM/DD HH:MM:SS,时间根据抄表操作创建时间自动填写 | | 实际行度 | 本次抄表读数与上次读数的差值【计算公式:(本次读数-上次读数)倍数】,可为0,但不可为负数。在有最大读数的表下,当计算结果为负数时,根据最大值进行重置计算【计算公式:(最大值-上次读数+本次读数)倍数】,换表操作时显示当前读数为新表初始度数【计算公式:(旧表最终读数-上次读数)旧表倍数】 | - | 计算得出最大支持12位数字 | | 凭证 | 在抄表时可选择照片等方式进行凭证收集,非必填内容,根据小区管理自行规范 | 否 | 图片文件(jpg、png等) | | 操作员 | 当前操作的工作人员账号名称,系统自动记录。在进行抄表导入时,可根据表格填写的操作员进行自动录入 | - | | | 分摊方式 | 此分摊方式仅作为仪表属性标注,不影响实际的算法和算法相关的分摊 | 是 | | | 下级表 | 与此公共表相关的所有下级表,下级表可为住户表或者其他公共表(暂定),此关联关系作为分摊相关算法的数据来源 | - | 用量分摊、损耗分摊 | ## **5. 使用场景** --- **1)创建仪表** - **场景描述:**小区新建过程中首次创建仪表,或在小区运营中有新增加的仪表等情况进行操作,所有已经创建的仪表均为小区的固定资产,有唯一识别编号。 - **操作流程:** **2)正常抄表** - **场景描述:**小区在日常工作中,会进行在线抄表或者导出抄表。 - **操作流程:** **3)修改仪表基础数据** - **场景描述:**仪表录入发生错误时进行的操作,出现频率很小,错误仪表当前版本不可删除,仅仅可以部分修改。在此仪表未产生抄表数据情况下,所有仪表数据均可更改。产生抄表数据后,仅有部分数据可进行更改,可更改数据包括:所属位置、表名称、表编号、计费模式、分摊方式、仪表关联。其他字段均不可修改。 - **操作流程:** **4)读数错误情况** - **场景描述:**可能出现读数录入错误的情况,当前可对最近未生成账单的仪表读数进行删除,删除后不保留错误读数操作记录。已产生费用的仪表读数无法删除。 - **操作流程:** **5)换表操作** - **场景描述:**仪表进行更换或维修产生数据的重新计算时可进行换表操作,换表后依然在原有仪表的数据记录基础上继续记录。 - **操作流程:**