满一年时取数是正确,但两年以上取数就是0,帮忙检查一下哪里出错了
客户需求:工龄:1年 2年 3年 4年 5年 6年 10元 20元 30元 60元 90元 120元
7年 8年 9年 10年及以上
170元 220元 270元 320元(最高320元)
备注:比如张三2017年1月(1日至10日来,到发2018年工资1月份工资工龄发10元,大于10日来的要在2018年2月份才能有10元工龄工资。
正式公式:
工龄年=GetSalaryPeriod(1,-1)-GETYEAR(入职日期)工龄月=工龄年*12+GetSalaryPeriod(2,-1)-GetMonth(入职日期) 如果 工龄年<1 则 工龄工资=0如果完如果 工龄年=1 且 GetDay(入职日期)<=10 且 工龄月>=工龄年*12 则 工龄工资=10否则 工龄工资=0如果完 如果 工龄年=2 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=20否则 如果 工龄年=2 且 工龄月<工龄年*12 则 工龄工资=10如果完如果完 如果 工龄年=3 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=30否则 如果 工龄年=3 且 工龄月<工龄年*12 则 工龄工资=20如果完如果完 如果 工龄年=4 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=60否则 如果 工龄年=4 且 工龄月<工龄年*12 则 工龄工资=30如果完如果完 如果 工龄年=5 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=90否则如果 工龄年=5 且 工龄月<工龄年*12 则 工龄工资=60如果完如果完 如果 工龄年=6 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=120否则 如果 工龄年=6 且 工龄月<工龄年*12 则 工龄工资=90如果完如果完 如果 工龄年=7 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=170否则 如果 工龄年=7 且 工龄月<工龄年*12 则 工龄工资=120如果完如果完 如果 工龄年=8 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=220否则 如果 工龄年=8 且 工龄月<工龄年*12 则 工龄工资=170如果完如果完 如果 工龄年=9 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=270否则 如果 工龄年=9 且 工龄月<工龄年*12 则 工龄工资=220如果完如果完 如果 工龄年=10 且GetDay(入职日期) <=10 且 工龄月>=工龄年*12 则 工龄工资=320否则 如果 工龄年=10 且 工龄月<工龄年*12 则 工龄工资=270如果完如果完 如果 工龄年>10 则 工龄工资=320如果完
推荐阅读