作者:宋文哲 | 来源:互联网 | 2023-05-20 15:01
一个月发多次工资,数据库结构上,如何实现好呢?我的工资管理系统的数据库结构,是按照一个人,没有只发一次工资设计的。即工资表的主键是:月份+编号但是,劳资提出年底12月要发两次工资,因
一个月发多次工资,数据库结构上,如何实现好呢?
我的工资管理系统的数据库结构,是按照一个人,没有只发一次工资设计的。
即 工资表的主键是:月份+编号
但是,劳资提出年底12月要发两次工资,因为要多发一次年终奖。
我提出来,不好实现,因为这样的话,底层结构就要大修改,主键改为:
月份+发放批次+编号
这意味着,所有的查询汇总程序,都要修改。
另外,工资计算不好设计。比如扣税是按照 月为单位的,计算2次工资,每个人的两条记录是要关联的。
而且,工资是由多个项目组成的。比如绩效工资,每个月只有一个金额【不管发几次工资】,
所以,如何要实现一个月可以发多次工资,技术上不好实现,至少工作量很大。
但是领导不会理解这些,我也解释不明白。
大家是搞技术的,我想听听大家的意见。
我的顾虑有道理吗?
另外,如果要实现每月多次工资,在结构上,如何设计好呢?
12 个解决方案
有时候一个很小的需求就要做整体的改动,体谅楼主的心情。千锤百炼吧
把年终奖加到工资的一个字段里去 ,特别说明是年终奖
你可以分开看,其实最后还是只发了一次工资,另外一次其实不叫工资,项目名称应该是年底的双薪制,我觉得项目可以不叫工资了
你啊。
把表跟前台UI脱离开,让前台只看见VIEW,后台的表你爱怎么改就怎么改,而你也只需要改下VIEW的定义,前端UI五十年不动摇啊。
不想修改就增加,增加一层明细表,月份+编号明显不适合作主键呢,一跨年不就疯了么?所以我估计你月份+编码也是个虚拟的,设一层明细表我认为比较合适,这样汇总表都不改了。
只需要:
1、增加明细表;2、修改工资的储存逻辑(不用大改了吧);3、增加明细工资查询;
基本够用了