我正在使用Python/Django,但这更多地是关于“数据模型”,以及我如何与信息交互--我只是想知道我是否疯了。
我正在我的公司开发一个小应用程序(大约55名员工),它将跟踪可用的休假/病假时间。部分目的是将“自助服务”整合到我们的内联网中,这样员工就可以以电子方式提交“休假申请”,而不是填写并向人力资源部提交文件。
显然,这个应用程序需要保持每个员工的运行平衡,并且将验证员工是否有足够的休假时间来满足他们的任何请求。
与财务/会计软件一样,我知道我不一定要存储浮点值,也不应该只保持单一的运行平衡。
我的想法是使用如下的数据库表结构来存储时间“信用”和“借方”:
Employee | Year | Credit/Debit | Amount | Timestamp
“年份”是贷方/借方所属的年份,因为休假和病假是按年处理的,而不是按每个员工的运行余额处理的。
为了确定员工可用的休假/病假时间,我将获得给定年度雇员的“事务”,并找到余额。
我知道我遗漏了很多信息,但我在想:,这看起来是一种合理的方法吗?是因为它需要非常准确,还是--我完全把事情复杂化了吗?
发布于 2010-08-27 15:29:41
如果你认为你的解决方案很复杂,那就不是了。将病假/假期建模为与员工相关的账户是一个非常好的主意,而且非常容易。
在最简单的情况下,您可以拥有一个“事务”表和一个“帐户”表,这样,从年初开始重新运行所有事务(每个帐户)将产生一个与余额完全匹配的总和。
事务
ID _帐户_
账号
ID _n.name/ Employee _
事务提供了审计跟踪,而余额为您的下一个事务提供了一个参考点。通过确保这两种匹配,您已经确保了一致性(尽管不一定是正确的-这必须通过对每种事务类型(即存款、取款)的单元测试来检查)
我推荐一个“事务详细信息”表,该表引用Transactions.ID,并包括您想要的所有好东西,比如是谁发起的,备注等等。
发布于 2010-08-27 15:13:21
这看起来是个好的开始。以下几点:
发布于 2010-08-27 15:24:20
我也同意这是个好的开始。
我看不出有什么领域需要批准/反对。如果这个应用程序也被人力资源部使用,那么他们的决定也需要用你的模型来表达。
如果HR被从图片中删除(我对此表示怀疑,但可能),那么就没有必要这样做;应用程序可以跟踪请求和留下的余额,并立即判断请求是否有效。但我怀疑事情不会这么简单。:)
https://stackoverflow.com/questions/3585428
复制相似问题