

前面讲了报销模块功能的整体实现步骤,这次从数据表的角度出发,讲讲报销模块的数据表设计思路,并进行总结。报销模块包含三个数据表,报销申请表、报销类型表、报销明细表。
报销类型表是用来存放类型名称,字段类型为“字符”;报销明细表有字段关联到报销类型表,后续在报销明细中,该字段就可选择报销类型表里的数据。
报销明细表用来存放每一次报销申请的报销内容以及金额。
其中报销类型字段关联报销类型表;报销申请字段关联报销申请表(关联报销申请表,确保多项明细对应一次申请);其它字段类型则按图所示去设置即可。
报销申请表是用来存放申请的基础信息,其中申请人字段关联到用户表(用户表系统自带);报销明细字段集合报销明细(前面步骤报销明细表已经先关联了报销申请表,报销申请表才可集合报销明细;集合报销明细,可看到该申请有多少条明细关联到它);申请状态字段则是用来标识该申请的进度或结果。其他字段的类型按图所示去设置即可。
报销模块的数据表设计思路如上文所述,总的来讲则是:要提交报销申请,得有一张数据表存放申请数据(报销申请表);而报销一般来说会是一次报销申请里有多项报销内容,这样就得有一张数据表存放各项内容(报销明细表);报销明细里面,报销的项目内容统一选择的效果则需要一张数据表存放选择内容,产生关联后才可选择(报销类型表)。