Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
8
8timerapiv200
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
8timerv2
8timerapiv200
Commits
ffc6ae3e
Commit
ffc6ae3e
authored
4 years ago
by
ilal
Committed by
chenzg
3 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交
parent
161ed67e
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
108 additions
and
45 deletions
+108
-45
src/main/java/cn/timer/api/bean/xcgl/XcglAssoGztzt.java
+4
-0
src/main/java/cn/timer/api/controller/xcgl/SalaryManagementController.java
+104
-45
No files found.
src/main/java/cn/timer/api/bean/xcgl/XcglAssoGztzt.java
View file @
ffc6ae3e
...
...
@@ -62,6 +62,9 @@ public class XcglAssoGztzt extends Model<XcglAssoGztzt> {
@ApiModelProperty
(
value
=
"工资条组id"
,
example
=
"101"
)
private
Integer
gztszid
;
@ApiModelProperty
(
value
=
"实发工资"
,
example
=
"101"
)
private
Double
sfgz
;
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
src/main/java/cn/timer/api/controller/xcgl/SalaryManagementController.java
View file @
ffc6ae3e
...
...
@@ -1130,7 +1130,7 @@ public class SalaryManagementController {
zzx
.
setRulestate
(
1
);
//规则状态[0:系统自动提取;1:系统固定值;2:固定公式计算;3:自定义公式计算;4:每月自动导入]
}
else
{
//
String
xxs
=
"自动提取数据"
;
String
[]
strxz
=
{
"从人事花名册-"
,
"从
考勤报表
-"
,
"从社保账单-"
};
String
[]
strxz
=
{
"从人事花名册-"
,
"从
月度汇总
-"
,
"从社保账单-"
};
String
describe
=
""
;
int
rule
=
0
;
//规则状态[0:系统自动提取;1:系统固定值;2:固定公式计算;3:自定义公式计算;4:每月手动导入]
if
(
term
[
a
].
getOptitemid
()
==
1
)
{
//人事信息
...
...
@@ -1661,6 +1661,7 @@ public class SalaryManagementController {
double
secretary_ling
=
0
;
//司龄
double
grsb
=
0
;
//个人社保
double
grgjj
=
0
;
//个人公积金
double
net_salary
=
0
;
//实发工资
//薪资组内成员
for
(
XcglAssoXzury
pag
:
paygrlist
)
{
...
...
@@ -1699,9 +1700,9 @@ public class SalaryManagementController {
XcglAssoXzb
.
builder
().
xzxjg
(
secretary_ling
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
//公式计算
个税
//公式计算
//(固定公式计算):迟到早退扣款、事假扣款、病假扣款、旷工扣款、司龄工资、应发工资、实发工资
if
(
xzx
.
getRulestate
().
equals
(
2
)
||
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
69
)
)
{
if
(
xzx
.
getRulestate
().
equals
(
2
))
{
double
result
=
0
;
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
31
)
{
//司龄工资
String
formula
=
xzx
.
getGsgs
();
//#司龄#*100
...
...
@@ -1711,19 +1712,25 @@ public class SalaryManagementController {
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
27
)
{
//事假扣款
String
formula
=
xzx
.
getGsgs
();
//#基本工资#/#应出勤天数#*#事假# #事假#*200
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#应出勤天数#"
,
String
.
valueOf
(
attendance_days
)).
replace
(
"#事假#"
,
String
.
valueOf
(
matter_leave
));
result
=
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)));
if
(
attendance_days
>
0
)
{
result
=
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)));
}
matter_leave_deduction
=
result
;
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
28
)
{
//病假扣款
String
formula
=
xzx
.
getGsgs
();
//#基本工资#/#应出勤天数#*#病假#*0.4 #病假#*100
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#应出勤天数#"
,
String
.
valueOf
(
attendance_days
)).
replace
(
"#病假#"
,
String
.
valueOf
(
sick_leave
));
result
=
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)));
if
(
attendance_days
>
0
)
{
result
=
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)));
}
sick_leave_deduction
=
result
;
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
29
)
{
//旷工扣款
String
formula
=
xzx
.
getGsgs
();
//#基本工资#/#应出勤天数#*#旷工天数#*3 #旷工天数#*100
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#应出勤天数#"
,
String
.
valueOf
(
attendance_days
)).
replace
(
"#旷工天数#"
,
String
.
valueOf
(
absenteeism_days
));
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
))));
if
(
attendance_days
>
0
)
{
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
))));
}
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
30
)
{
//迟到早退扣款
String
qaz
=
""
;
...
...
@@ -1739,55 +1746,91 @@ public class SalaryManagementController {
}
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
48
)
{
//应发工资
String
formula
=
xzx
.
getGsgs
();
//#基本工资#+#岗位津贴#+#绩效奖金#+#业绩提成#+#税前补差#-#事假扣款#-#病假扣款#
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#岗位津贴#"
,
String
.
valueOf
(
post_allowance
)).
replace
(
"#绩效奖金#"
,
String
.
valueOf
(
achievement_bonus
))
.
replace
(
"#业绩提成#"
,
String
.
valueOf
(
performance_commission
)).
replace
(
"#税前补差#"
,
String
.
valueOf
(
pre_taxmakediff
))
.
replace
(
"#事假扣款#"
,
String
.
valueOf
(
matter_leave_deduction
)).
replace
(
"#病假扣款#"
,
String
.
valueOf
(
sick_leave_deduction
));
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
))));
wages_payable
=
result
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
//应发工资
if
(
xzx
.
getRulestate
().
equals
(
2
)
&&
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
48
)
{
String
formula
=
xzx
.
getGsgs
();
//#基本工资#+#岗位津贴#+#绩效奖金#+#业绩提成#+#税前补差#-#事假扣款#-#病假扣款#
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#岗位津贴#"
,
String
.
valueOf
(
post_allowance
)).
replace
(
"#绩效奖金#"
,
String
.
valueOf
(
achievement_bonus
))
.
replace
(
"#业绩提成#"
,
String
.
valueOf
(
performance_commission
)).
replace
(
"#税前补差#"
,
String
.
valueOf
(
pre_taxmakediff
))
.
replace
(
"#事假扣款#"
,
String
.
valueOf
(
matter_leave_deduction
)).
replace
(
"#病假扣款#"
,
String
.
valueOf
(
sick_leave_deduction
));
double
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
))));
wages_payable
=
result
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
else
if
(
xzx
.
getRulestate
()
==
3
&&
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
48
)
{
//(自定义公式计算): 应发工资
double
result
=
0
;
//计薪规则组项中自定义项
List
<
XcglAssoJsgzzx
>
zdyx
=
XcglAssoJsgzzx
.
builder
().
build
().
selectList
(
new
QueryWrapper
<
XcglAssoJsgzzx
>().
lambda
().
eq
(
XcglAssoJsgzzx:
:
getXzzid
,
calcomtiondto
.
getPay_group_id
()).
eq
(
XcglAssoJsgzzx:
:
getIsCustom
,
1
));
String
formula
=
xzx
.
getGsgs
();
//#基本工资#+#岗位津贴#+#绩效奖金#+#业绩提成#+#税前补差#-#事假扣款#-#病假扣款#?
String
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#岗位津贴#"
,
String
.
valueOf
(
post_allowance
)).
replace
(
"#绩效奖金#"
,
String
.
valueOf
(
achievement_bonus
))
.
replace
(
"#业绩提成#"
,
String
.
valueOf
(
performance_commission
)).
replace
(
"#税前补差#"
,
String
.
valueOf
(
pre_taxmakediff
))
.
replace
(
"#事假扣款#"
,
String
.
valueOf
(
matter_leave_deduction
)).
replace
(
"#病假扣款#"
,
String
.
valueOf
(
sick_leave_deduction
));
for
(
XcglAssoJsgzzx
zdy
:
zdyx
)
{
double
custom_
=
0
;
//自定义
boolean
status
=
qaz
.
contains
(
"#"
+
zdy
.
getSalaryitem
()+
"#"
);
//公式中是否存在自定义
if
(
status
)
{
//存在
XcglAssoJsgzzx
zdygsx
=
XcglAssoJsgzzx
.
builder
().
build
().
selectOne
(
new
QueryWrapper
<
XcglAssoJsgzzx
>().
lambda
().
eq
(
XcglAssoJsgzzx:
:
getRulestate
,
4
).
eq
(
XcglAssoJsgzzx:
:
getIsCustom
,
1
)
.
eq
(
XcglAssoJsgzzx:
:
getOptionid
,
0
).
eq
(
XcglAssoJsgzzx:
:
getSalaryitem
,
zdy
.
getSalaryitem
()));
XcglAssoXzb
xzb_custom
=
XcglAssoXzb
.
builder
().
build
().
selectOne
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
zdygsx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
custom_
=
xzb_custom
.
getXzxjg
();
qaz
=
qaz
.
replace
(
"#"
+
zdy
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_
));
}
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
69
)
{
//个税
//个税计算
try
{
personal_income_tax
=
CalculationOfIndividualIncomeTax
(
String
.
valueOf
(
pag
.
getUserid
()),
salary_month
,
orgcode
,
wages_payable
,
other_deductions
);
}
catch
(
ParseException
e
)
{
e
.
printStackTrace
();
System
.
out
.
println
(
"个税计算错误"
);
boolean
status
=
qaz
.
contains
(
"#"
);
//再次确认公式中是否存在系统数据项
if
(
status
)
{
List
<
XcglAssoJsgzzx
>
system_zdyx
=
XcglAssoJsgzzx
.
builder
().
build
().
selectList
(
new
QueryWrapper
<
XcglAssoJsgzzx
>().
lambda
().
eq
(
XcglAssoJsgzzx:
:
getXzzid
,
calcomtiondto
.
getPay_group_id
())
.
eq
(
XcglAssoJsgzzx:
:
getIsCustom
,
0
).
ne
(
XcglAssoJsgzzx:
:
getType
,
1
));
for
(
XcglAssoJsgzzx
sys
:
system_zdyx
)
{
if
(
qaz
.
contains
(
"#"
+
sys
.
getSalaryitem
()+
"#"
))
{
XcglAssoXzb
xzb_custom
=
XcglAssoXzb
.
builder
().
build
().
selectOne
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
sys
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
double
custom_two
=
xzb_custom
.
getXzxjg
();
qaz
=
qaz
.
replace
(
"#"
+
sys
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_two
));
}
}
result
=
personal_income_tax
<
0
?
0.0
:
personal_income_tax
;
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
70
)
{
//实发工资
String
formula
=
xzx
.
getGsgs
();
//#应发工资#-#个人社保#-#个人公积金#-#个税#
String
qaz
=
formula
.
replace
(
"#应发工资#"
,
String
.
valueOf
(
wages_payable
)).
replace
(
"#个人社保#"
,
String
.
valueOf
(
grsb
)).
replace
(
"#个人公积金#"
,
String
.
valueOf
(
grgjj
)).
replace
(
"#个税#"
,
String
.
valueOf
(
personal_income_tax
<
0
?
0.0
:
personal_income_tax
));
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)))
);
if
(
!
qaz
.
contains
(
"#"
))
{
result
=
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
)));
}
else
{
System
.
err
.
println
(
xzx
.
getOptionid
()
+
":"
+
qaz
+
"有误!!!"
);
}
wages_payable
=
result
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
69
)
{
//个税
//个税计算
try
{
personal_income_tax
=
CalculationOfIndividualIncomeTax
(
String
.
valueOf
(
pag
.
getUserid
()),
salary_month
,
orgcode
,
wages_payable
,
other_deductions
);
}
catch
(
ParseException
e
)
{
e
.
printStackTrace
();
System
.
out
.
println
(
"个税计算错误"
);
}
double
result
=
personal_income_tax
<
0
?
0.0
:
personal_income_tax
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
//(自定义公式计算): 应发工资、实发工资
if
(
xzx
.
getRulestate
()
==
3
)
{
//实发工资
if
(
xzx
.
getRulestate
().
equals
(
2
)
&&
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
70
)
{
String
formula
=
xzx
.
getGsgs
();
//#应发工资#-#个人社保#-#个人公积金#-#个税#
String
qaz
=
formula
.
replace
(
"#应发工资#"
,
String
.
valueOf
(
wages_payable
)).
replace
(
"#个人社保#"
,
String
.
valueOf
(
grsb
)).
replace
(
"#个人公积金#"
,
String
.
valueOf
(
grgjj
)).
replace
(
"#个税#"
,
String
.
valueOf
(
personal_income_tax
<
0
?
0.0
:
personal_income_tax
));
double
result
=
SalaryTool
.
formatDouble
(
Double
.
valueOf
(
String
.
valueOf
(
js
.
eval
(
qaz
))));
net_salary
=
result
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
else
if
(
xzx
.
getRulestate
().
equals
(
3
)
&&
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
70
)
{
double
result
=
0
;
String
qaz
=
""
;
String
formula
=
""
;
//计薪规则组项中自定义项
List
<
XcglAssoJsgzzx
>
zdyx
=
XcglAssoJsgzzx
.
builder
().
build
().
selectList
(
new
QueryWrapper
<
XcglAssoJsgzzx
>().
lambda
().
eq
(
XcglAssoJsgzzx:
:
getXzzid
,
calcomtiondto
.
getPay_group_id
()).
eq
(
XcglAssoJsgzzx:
:
getIsCustom
,
1
));
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
48
)
{
//应发工资
formula
=
xzx
.
getGsgs
();
//#基本工资#+#岗位津贴#+#绩效奖金#+#业绩提成#+#税前补差#-#事假扣款#-#病假扣款#?
qaz
=
formula
.
replace
(
"#基本工资#"
,
String
.
valueOf
(
base_pay
)).
replace
(
"#岗位津贴#"
,
String
.
valueOf
(
post_allowance
)).
replace
(
"#绩效奖金#"
,
String
.
valueOf
(
achievement_bonus
))
.
replace
(
"#业绩提成#"
,
String
.
valueOf
(
performance_commission
)).
replace
(
"#税前补差#"
,
String
.
valueOf
(
pre_taxmakediff
))
.
replace
(
"#事假扣款#"
,
String
.
valueOf
(
matter_leave_deduction
)).
replace
(
"#病假扣款#"
,
String
.
valueOf
(
sick_leave_deduction
));
}
if
(
xzx
.
getIsCustom
()
==
0
&&
xzx
.
getOptionid
()
==
70
)
{
//实发工资
formula
=
xzx
.
getGsgs
();
//#应发工资#-#个人社保#-#个人公积金#-#个税#
qaz
=
formula
.
replace
(
"#应发工资#"
,
String
.
valueOf
(
wages_payable
)).
replace
(
"#个人社保#"
,
String
.
valueOf
(
grsb
)).
replace
(
"#个人公积金#"
,
String
.
valueOf
(
grgjj
)).
replace
(
"#个税#"
,
String
.
valueOf
(
personal_income_tax
));
}
String
formula
=
xzx
.
getGsgs
();
//#应发工资#-#个人社保#-#个人公积金#-#个税#
String
qaz
=
formula
.
replace
(
"#应发工资#"
,
String
.
valueOf
(
wages_payable
)).
replace
(
"#个人社保#"
,
String
.
valueOf
(
grsb
)).
replace
(
"#个人公积金#"
,
String
.
valueOf
(
grgjj
)).
replace
(
"#个税#"
,
String
.
valueOf
(
personal_income_tax
));
for
(
XcglAssoJsgzzx
zdy
:
zdyx
)
{
double
custom_
=
0
;
//自定义
...
...
@@ -1797,7 +1840,7 @@ public class SalaryManagementController {
.
eq
(
XcglAssoJsgzzx:
:
getOptionid
,
0
).
eq
(
XcglAssoJsgzzx:
:
getSalaryitem
,
zdy
.
getSalaryitem
()));
XcglAssoXzb
xzb_custom
=
XcglAssoXzb
.
builder
().
build
().
selectOne
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
zdygsx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
custom_
=
xzb_custom
.
getXzxjg
();
qaz
=
formula
.
replace
(
"#"
+
zdy
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_
));
qaz
=
qaz
.
replace
(
"#"
+
zdy
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_
));
}
}
boolean
status
=
qaz
.
contains
(
"#"
);
//再次确认公式中是否存在系统数据项
...
...
@@ -1808,7 +1851,7 @@ public class SalaryManagementController {
if
(
qaz
.
contains
(
"#"
+
sys
.
getSalaryitem
()+
"#"
))
{
XcglAssoXzb
xzb_custom
=
XcglAssoXzb
.
builder
().
build
().
selectOne
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
sys
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
double
custom_two
=
xzb_custom
.
getXzxjg
();
qaz
=
formula
.
replace
(
"#"
+
sys
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_two
));
qaz
=
qaz
.
replace
(
"#"
+
sys
.
getSalaryitem
()+
"#"
,
String
.
valueOf
(
custom_two
));
}
}
}
...
...
@@ -1818,12 +1861,28 @@ public class SalaryManagementController {
}
else
{
System
.
err
.
println
(
xzx
.
getOptionid
()
+
":"
+
qaz
+
"有误!!!"
);
}
net_salary
=
result
;
XcglAssoXzb
.
builder
().
xzxjg
(
result
).
build
().
update
(
new
QueryWrapper
<
XcglAssoXzb
>().
lambda
().
eq
(
XcglAssoXzb:
:
getXzxid
,
xzx
.
getId
()).
eq
(
XcglAssoXzb:
:
getUserid
,
pag
.
getUserid
()));
}
}
//存在的计薪规则组项数据对应 写入薪资表 --结束
XcglAssoGztzt
.
builder
().
build
().
delete
(
new
QueryWrapper
<
XcglAssoGztzt
>().
lambda
().
eq
(
XcglAssoGztzt:
:
getUserid
,
pag
.
getUserid
()).
eq
(
XcglAssoGztzt:
:
getXzyf
,
salary_month
)
.
eq
(
XcglAssoGztzt:
:
getQyid
,
orgcode
));
//xcgl_asso_gztzt
XcglAssoGztzt
gzt
=
XcglAssoGztzt
.
builder
().
build
();
gzt
.
setUserid
(
pag
.
getUserid
());
gzt
.
setXzyf
(
salary_month
);
//薪资月
gzt
.
setFsType
(
0
);
gzt
.
setCkType
(
0
);
gzt
.
setQrType
(
0
);
gzt
.
setFkyj
(
null
);
gzt
.
setYhqm
(
null
);
gzt
.
setSfgz
(
net_salary
);
gzt
.
setQyid
(
orgcode
);
gzt
.
insert
();
}
//薪资组内成员--结束
return
ResultUtil
.
data
(
null
,
"计算完成"
);
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment