let initObject = JSON.parse(JSON.stringify(
{ID: 2020120102,
account: 114514,
deptName: "办公室",
salary_Count: 0,
salary_Total: 0,
'salary_interest&total': 0,
salary_ninBo: 0,
salary_ninBo_date: "",
salary_ninBo_diffDay: 0,
salary_ninBo_interest: 0,
salary_nongShang: 0,
salary_nongShang731: 0,
salary_nongShang731_date: "",
salary_nongShang731_diffDay: 0,
salary_nongShang731_interest: 0,
salary_nongShang_date: "",
salary_nongShang_diffDay: 0,
salary_nongShang_interest: 0,
salary_shangHang: 0,
salary_shangHang_date: "",
salary_shangHang_diffDay: 0,
salary_shangHang_interest: 0,
salary_xingYe: 0,
salary_xingYe_date: "",
salary_xingYe_diffDay: 0,
salary_xingYe_interest: 0,
salary_zhaoHang: 0,
salary_zhaoHang731: 0,
salary_zhaoHang731_date: "",
salary_zhaoHang731_diffDay: 0,
salary_zhaoHang731_interest: 0,
salary_zhaoHang_date: "",
salary_zhaoHang_diffDay: 0,
salary_zhaoHang_interest: 0,
salary_zhongXin: 0,
salary_zhongXin731: 0,
salary_zhongXin731_date: "",
salary_zhongXin731_diffDay: 0,
salary_zhongXin731_interest: 0,
salary_zhongXin_date: "2024/8/13",
salary_zhongXin_diffDay: 0,
salary_zhongXin_interest: 0,
staffName: "",
staffName_ninBo: "",
staffName_nongShang: "",
staffName_nongShang731: "",
staffName_shangHang: "",
staffName_xingYe: "",
staffName_zhaoHang: "",
staffName_zhaoHang731: "",
staffName_zhongXin: "",
staffName_zhongXin731: ""}
))
const bank = [
'ninBo',
'zhaoHang731',
'zhaoHang',
'nongShang731',
'nongShang',
'xingYe',
'shangHang',
'zhongXin731',
'zhongXin'
]
let staffData = [
]
for(let i = 0;i<=10;i++){
nitObject
}
// 数据初始化
const valueDate = new Date('2024/6/21')
staffData.forEach((e)=>{
let interestTotal = 0
bank.forEach((bankStr)=>{
// 进行判断,如果该银行卡下存在罚款日期,则会计算利息
if(e[`salary_${bankStr}_date`]){
let lateDate = new Date( e[`salary_${bankStr}_date`])
// 把毫秒转为天数
let diffDay = (lateDate-valueDate)/1000/3600/24
// 为了防止精度丢失,先乘10000再除10000
let interest = e[`salary_${bankStr}`]*0.06*10000/365*diffDay/10000
interestTotal = interestTotal + interest
e[`salary_${bankStr}_diffDay`] = diffDay
e[`salary_${bankStr}_interest`] = interest
}
})
// 保留两位小数并且转为数字类型
e[`salary_interest&total`] = e[`salary_Total`]+ parseFloat(interestTotal.toFixed(2))
})
console