Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
yifu-mvp
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fangxinjiang
yifu-mvp
Commits
325f1f86
You need to sign in or sign up before continuing.
Commit
325f1f86
authored
Aug 17, 2022
by
hongguangwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
工资-按照项目的配置来取社保公积金
parent
44935282
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
161 additions
and
154 deletions
+161
-154
TSettleDomain.java
...ifu/cloud/plus/v1/yifu/archives/entity/TSettleDomain.java
+16
-0
TSettleDomainMapper.xml
...ves-biz/src/main/resources/mapper/TSettleDomainMapper.xml
+56
-55
SalaryUploadServiceImpl.java
.../v1/yifu/salary/service/impl/SalaryUploadServiceImpl.java
+89
-99
No files found.
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/entity/TSettleDomain.java
View file @
325f1f86
...
...
@@ -16,10 +16,12 @@
*/
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
archives
.
entity
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
...
...
@@ -328,5 +330,19 @@ public class TSettleDomain extends BaseEntity {
@Schema
(
description
=
"回款周期1-12"
)
private
String
backPayCycle
;
/**
* 社保类型0:缴费库;1:预估库
*/
@ExcelAttribute
(
name
=
"社保类型0:缴费库;1:预估库"
)
@ExcelProperty
(
"社保类型0:缴费库;1:预估库"
)
@Schema
(
description
=
"社保类型0:缴费库;1:预估库"
)
private
String
socialType
;
/**
* 公积金类型0:缴费库;1:预估库
*/
@ExcelAttribute
(
name
=
"公积金类型0:缴费库;1:预估库"
)
@ExcelProperty
(
"公积金类型0:缴费库;1:预估库"
)
@Schema
(
description
=
"公积金类型0:缴费库;1:预估库"
)
private
String
fundType
;
}
yifu-archives/yifu-archives-biz/src/main/resources/mapper/TSettleDomainMapper.xml
View file @
325f1f86
...
...
@@ -71,64 +71,65 @@
<result
property=
"exceptionRemark"
column=
"EXCEPTION_REMARK"
/>
<result
property=
"existAdvancePayment"
column=
"EXIST_ADVANCE_PAYMENT"
/>
<result
property=
"backPayCycle"
column=
"BACK_PAY_CYCLE"
/>
<result
property=
"socialType"
column=
"SOCIAL_TYPE"
/>
<result
property=
"fundType"
column=
"FUND_TYPE"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a
.
ID
,
a.DEPART_NO,
a.DEPART_NAME,
a.IS_NEW,
a.NEW_REMARK,
a.DELETE_FLAG,
a.DP_AUDIT_FLAG,
a.OLD_ID,
a.BELONG_CONTRACT,
a.DP_AUDIT_OPINION,
a.DP_AUDIT_MAN,
a.DP_AUDIT_MAN_NAME,
a.LAST_AUDIT_DATE,
a.SERVER_ITEM,
a.INCOME_BELONG,
a.INCOME_BELONG_SUB,
a.CUSTOMER_ID,
a.CREATE_USER_NAME,
a.COMMIT_USER,
a.COMMIT_USER_NAME,
a.BALANCE,
a.INVOICE_BALANCE,
a.FIRST_PASS_FLAG,
a.FIRST_PASS_TIME,
a.PROVINCE,
a.CITY,
a.TOWN,
a.STOP_FLAG,
a.employee_num,
a.STOP_DATE,
a.STOP_REASON,
a.STOP_USER,
a.STOP_USER_NAME,
a.TYPE,
a.BUSINESS_PRIMARY_TYPE,
a.BUSINESS_SECOND_TYPE,
a.BUSINESS_THIRD_TYPE,
a.MANAGER_AUDIT_OPINION,
a.MANAGER_AUDIT_MAN,
a.MANAGER_AUDIT_MAN_NAME,
a.AUDIT_TIME,
a.MANAGER_AUDIT_TIME,
a.CREATE_TYPE,
a.RELATE_FLAG,
a.EXCEPTION_REMARK,
a.EXIST_ADVANCE_PAYMENT,
a.BACK_PAY_CYCLE,
a.CREATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_BY,
a.UPDATE_TIME
a.ID,
a.DEPART_NO,
a.DEPART_NAME,
a.IS_NEW,
a.NEW_REMARK,
a.DELETE_FLAG,
a.DP_AUDIT_FLAG,
a.OLD_ID,
a.BELONG_CONTRACT,
a.DP_AUDIT_OPINION,
a.DP_AUDIT_MAN,
a.DP_AUDIT_MAN_NAME,
a.LAST_AUDIT_DATE,
a.SERVER_ITEM,
a.INCOME_BELONG,
a.INCOME_BELONG_SUB,
a.CUSTOMER_ID,
a.CREATE_USER_NAME,
a.COMMIT_USER,
a.COMMIT_USER_NAME,
a.BALANCE,
a.INVOICE_BALANCE,
a.FIRST_PASS_FLAG,
a.FIRST_PASS_TIME,
a.PROVINCE,
a.CITY,
a.TOWN,
a.STOP_FLAG,
a.employee_num,
a.STOP_DATE,
a.STOP_REASON,
a.STOP_USER,
a.STOP_USER_NAME,
a.TYPE,
a.BUSINESS_PRIMARY_TYPE,
a.BUSINESS_SECOND_TYPE,
a.BUSINESS_THIRD_TYPE,
a.MANAGER_AUDIT_OPINION,
a.MANAGER_AUDIT_MAN,
a.MANAGER_AUDIT_MAN_NAME,
a.AUDIT_TIME,
a.MANAGER_AUDIT_TIME,
a.CREATE_TYPE,
a.RELATE_FLAG,
a.EXCEPTION_REMARK,
a.EXIST_ADVANCE_PAYMENT,
a.BACK_PAY_CYCLE,
a.CREATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_BY,
a.UPDATE_TIME,
a.SOCIAL_TYPE,
a.FUND_TYPE
</sql>
<resultMap
id=
"tSettleDomainSelectVoMap"
type=
"com.yifu.cloud.plus.v1.yifu.archives.vo.TSettleDomainSelectVo"
>
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/impl/SalaryUploadServiceImpl.java
View file @
325f1f86
...
...
@@ -292,7 +292,6 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
if
(
Common
.
isEmpty
(
invoiceTitle
))
{
return
R
.
failed
(
"新建工资主表失败-获取结算主体的-封面抬头-信息为空,请去<客户管理-结算主体>模块,编辑封面抬头后再导入"
);
}
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
null
==
user
||
null
==
user
.
getId
())
{
return
R
.
failed
(
"新建工资主表失败-获取登录人信息为空"
);
...
...
@@ -369,8 +368,20 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
,
List
<
TSalaryAccountItem
>
saiList
,
TSalaryAccountItem
sai
,
TSettleDomainSelectVo
dept
,
String
invoiceTitle
,
YifuUser
user
,
LocalDateTime
nowTime
,
TSalaryStandard
salary
,
boolean
isActual
)
{
// 社保类型0:缴费库;1:预估库
String
socialType
=
CommonConstants
.
ZERO_STRING
;
if
(
Common
.
isNotNull
(
dept
.
getSocialType
()))
{
socialType
=
dept
.
getSocialType
();
}
// 公积金类型0:缴费库;1:预估库
String
fundType
=
CommonConstants
.
ZERO_STRING
;
if
(
Common
.
isNotNull
(
dept
.
getFundType
()))
{
fundType
=
dept
.
getFundType
();
}
List
<
TSalaryAccount
>
aList
;
TSalaryAccount
a
;
//定库:
TSalaryAccount
a
;
//定库:
List
<
TPaymentBySalaryVo
>
socialEstmateList
=
null
;
//社保缴费库
List
<
TPaymentBySalaryVo
>
fundEstmateList
=
null
;
//公积金缴费库
List
<
TPaymentBySalaryVo
>
socialForecastList
=
null
;
//社保预估库
...
...
@@ -386,16 +397,20 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
}
else
{
forecast
.
setSocialPayMonth
(
SalaryConstants
.
PRIORITY_ZERO
);
//没优先级,则限制住
}
R
<
TPaymentVo
>
tPaymentVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tpaymentinfo/inner/selectTPaymentBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tPaymentVoR
!=
null
&&
tPaymentVoR
.
getData
()
!=
null
&&
tPaymentVoR
.
getData
().
getPaymentList
()
!=
null
)
{
socialEstmateList
=
tPaymentVoR
.
getData
().
getPaymentList
();
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialType
))
{
R
<
TPaymentVo
>
tPaymentVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tpaymentinfo/inner/selectTPaymentBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tPaymentVoR
!=
null
&&
tPaymentVoR
.
getData
()
!=
null
&&
tPaymentVoR
.
getData
().
getPaymentList
()
!=
null
)
{
socialEstmateList
=
tPaymentVoR
.
getData
().
getPaymentList
();
}
}
// 预估数据
R
<
TPaymentVo
>
tForecastVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tforecastlibrary/inner/selectTForecastBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tForecastVoR
!=
null
&&
tForecastVoR
.
getData
()
!=
null
&&
tForecastVoR
.
getData
().
getPaymentList
()
!=
null
)
{
socialForecastList
=
tForecastVoR
.
getData
().
getPaymentList
();
if
(
CommonConstants
.
ONE_STRING
.
equals
(
socialType
))
{
// 预估数据
R
<
TPaymentVo
>
tForecastVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tforecastlibrary/inner/selectTForecastBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tForecastVoR
!=
null
&&
tForecastVoR
.
getData
()
!=
null
&&
tForecastVoR
.
getData
().
getPaymentList
()
!=
null
)
{
socialForecastList
=
tForecastVoR
.
getData
().
getPaymentList
();
}
}
}
if
(
salaryAccountVo
!=
null
&&
!
CommonConstants
.
ZERO_STRING
.
equals
(
salaryAccountVo
.
getIsDeductFund
()))
{
...
...
@@ -408,16 +423,20 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
}
else
{
forecast
.
setProvidentPayMonth
(
SalaryConstants
.
PRIORITY_ZERO
);
//没优先级,则限制住
}
R
<
TPaymentVo
>
tPaymentVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tpaymentinfo/inner/selectTPaymentBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tPaymentVoR
!=
null
&&
tPaymentVoR
.
getData
()
!=
null
&&
tPaymentVoR
.
getData
().
getPaymentList
()
!=
null
)
{
fundEstmateList
=
tPaymentVoR
.
getData
().
getPaymentList
();
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
fundType
))
{
R
<
TPaymentVo
>
tPaymentVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tpaymentinfo/inner/selectTPaymentBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tPaymentVoR
!=
null
&&
tPaymentVoR
.
getData
()
!=
null
&&
tPaymentVoR
.
getData
().
getPaymentList
()
!=
null
)
{
fundEstmateList
=
tPaymentVoR
.
getData
().
getPaymentList
();
}
}
// 预估数据
R
<
TPaymentVo
>
tForecastVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tforecastlibrary/inner/selectTForecastBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tForecastVoR
!=
null
&&
tForecastVoR
.
getData
()
!=
null
&&
tForecastVoR
.
getData
().
getPaymentList
()
!=
null
)
{
fundForecastList
=
tForecastVoR
.
getData
().
getPaymentList
();
if
(
CommonConstants
.
ONE_STRING
.
equals
(
fundType
))
{
// 预估数据
R
<
TPaymentVo
>
tForecastVoR
=
HttpDaprUtil
.
invokeMethodPost
(
socialProperties
.
getAppUrl
(),
socialProperties
.
getAppId
()
,
"/tforecastlibrary/inner/selectTForecastBySalaryVo"
,
forecast
,
TPaymentVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
tForecastVoR
!=
null
&&
tForecastVoR
.
getData
()
!=
null
&&
tForecastVoR
.
getData
().
getPaymentList
()
!=
null
)
{
fundForecastList
=
tForecastVoR
.
getData
().
getPaymentList
();
}
}
}
aList
=
new
ArrayList
<>();
...
...
@@ -571,30 +590,32 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
}
}
if
(
Common
.
isEmpty
(
a
.
getIsDeductSocial
())
||
SalaryConstants
.
IS_DEDUCT_ONE
.
equals
(
a
.
getIsDeductSocial
()))
{
a
.
setSocialType
(
socialType
);
a
.
setIsDeductSocial
(
SalaryConstants
.
IS_DEDUCT_ONE
);
//社保公积金金额扣缴: true : 从库里扣除社保等;false : 走代扣
if
(
modelPersonSocialFlag
)
{
personalDebt
=
personalDebt
.
add
(
this
.
saveNewItems
(
sai
,
saiList
,
SalaryConstants
.
PERSONAL_SOCIAL
,
SalaryConstants
.
PERSONAL_SOCIAL_JAVA
,
this
.
getSocialOrFundMoneyForForecast
(
a
,
deptSet
,
a
.
getEmpIdcard
(),
socialEstmateList
,
socialForecastList
,
true
,
true
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ONE_INT
));
this
.
getSocialOrFundMoneyForForecast
(
socialType
,
deptSet
,
a
.
getEmpIdcard
(),
socialEstmateList
,
socialForecastList
,
true
,
true
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ONE_INT
));
}
if
(
modelUnitSocialFlag
)
{
this
.
saveNewItems
(
sai
,
saiList
,
SalaryConstants
.
UNIT_SOCIAL
,
SalaryConstants
.
UNIT_SOCIAL_JAVA
,
this
.
getSocialOrFundMoneyForForecast
(
a
,
deptSet
,
a
.
getEmpIdcard
(),
socialEstmateList
,
socialForecastList
,
true
,
false
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ZERO_INT
);
this
.
getSocialOrFundMoneyForForecast
(
socialType
,
deptSet
,
a
.
getEmpIdcard
(),
socialEstmateList
,
socialForecastList
,
true
,
false
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ZERO_INT
);
}
}
if
(
Common
.
isEmpty
(
a
.
getIsDeductFund
())
||
SalaryConstants
.
IS_DEDUCT_ONE
.
equals
(
a
.
getIsDeductFund
()))
{
a
.
setFundType
(
fundType
);
a
.
setIsDeductFund
(
SalaryConstants
.
IS_DEDUCT_ONE
);
if
(
modelPersonFundFlag
)
{
personalDebt
=
personalDebt
.
add
(
this
.
saveNewItems
(
sai
,
saiList
,
SalaryConstants
.
PERSONAL_FUND
,
SalaryConstants
.
PERSONAL_FUND_JAVA
,
this
.
getSocialOrFundMoneyForForecast
(
a
,
deptSet
,
a
.
getEmpIdcard
(),
fundEstmateList
,
fundForecastList
,
false
,
true
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ONE_INT
));
this
.
getSocialOrFundMoneyForForecast
(
fundType
,
deptSet
,
a
.
getEmpIdcard
(),
fundEstmateList
,
fundForecastList
,
false
,
true
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ONE_INT
));
}
if
(
modelUnitFundFlag
)
{
this
.
saveNewItems
(
sai
,
saiList
,
SalaryConstants
.
UNIT_FUND
,
SalaryConstants
.
UNIT_FUND_JAVA
,
this
.
getSocialOrFundMoneyForForecast
(
a
,
deptSet
,
a
.
getEmpIdcard
(),
fundEstmateList
,
fundForecastList
,
false
,
false
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ZERO_INT
);
this
.
getSocialOrFundMoneyForForecast
(
fundType
,
deptSet
,
a
.
getEmpIdcard
(),
fundEstmateList
,
fundForecastList
,
false
,
false
,
socialList
,
fundList
,
forecastSocialList
,
forecastFundList
),
CommonConstants
.
ZERO_INT
);
}
}
}
...
...
@@ -1008,7 +1029,7 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
* @Date: 2019/9/26 15:38
* @return: java.math.BigDecimal
**/
public
BigDecimal
getSocialOrFundMoneyForForecast
(
TSalaryAccount
a
,
TDepartSettlementInfo
deptSet
,
String
idNumber
public
BigDecimal
getSocialOrFundMoneyForForecast
(
String
socialFundType
,
TDepartSettlementInfo
deptSet
,
String
idNumber
,
List
<
TPaymentBySalaryVo
>
estmateList
,
List
<
TPaymentBySalaryVo
>
forecastList
,
boolean
isSocial
,
boolean
isPerson
,
Set
<
String
>
socialList
,
Set
<
String
>
fundList
,
Set
<
String
>
forecastSocialList
,
Set
<
String
>
forecastFundList
)
{
BigDecimal
money
=
SalaryConstants
.
B_ZERO
;
...
...
@@ -1018,87 +1039,56 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
sub
=
(
new
BigDecimal
(
"100"
).
subtract
(
deptSet
.
getUnitSeriousIllnessProp
()))
.
divide
(
SalaryConstants
.
B_ONEHUNDRED
,
SalaryConstants
.
PLACES
,
BigDecimal
.
ROUND_HALF_UP
);
}
boolean
typeFlag
=
true
;
if
(
estmateList
!=
null
&&
!
estmateList
.
isEmpty
())
{
money
=
money
.
setScale
(
SalaryConstants
.
PLACES
,
BigDecimal
.
ROUND_HALF_UP
);
for
(
TPaymentBySalaryVo
m
:
estmateList
)
{
if
(
Common
.
isNotNull
(
idNumber
)
&&
idNumber
.
equals
(
m
.
getEmpIdcard
()))
{
//社保
if
(
isSocial
&&
(
m
.
getPersonalSocialSum
()
!=
null
||
m
.
getUnitSocialSum
()
!=
null
))
{
typeFlag
=
false
;
if
(
Common
.
isEmpty
(
m
.
getSalarySocialFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalarySocialFlag
()))
{
if
(
isPerson
&&
m
.
getPersonalSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
if
(!
isPerson
&&
m
.
getUnitSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
subtract
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
a
.
setSocialType
(
CommonConstants
.
ZERO_STRING
);
socialList
.
add
(
m
.
getId
());
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialFundType
)
&&
estmateList
!=
null
&&
!
estmateList
.
isEmpty
())
{
money
=
this
.
getSocialFundMoney
(
idNumber
,
estmateList
,
isSocial
,
isPerson
,
socialList
,
fundList
,
money
,
sub
);
}
// 缴费库没找到,从预估库找
if
(
CommonConstants
.
ONE_STRING
.
equals
(
socialFundType
)
&&
forecastList
!=
null
&&
!
forecastList
.
isEmpty
())
{
money
=
this
.
getSocialFundMoney
(
idNumber
,
forecastList
,
isSocial
,
isPerson
,
forecastSocialList
,
forecastFundList
,
money
,
sub
);
}
return
money
;
}
/**
* @Description: 按类型拉取社保公积金
* @Author: hgw
* @Date: 2022/8/17 11:38
* @return: java.math.BigDecimal
**/
private
BigDecimal
getSocialFundMoney
(
String
idNumber
,
List
<
TPaymentBySalaryVo
>
estmateList
,
boolean
isSocial
,
boolean
isPerson
,
Set
<
String
>
socialList
,
Set
<
String
>
fundList
,
BigDecimal
money
,
BigDecimal
sub
)
{
money
=
money
.
setScale
(
SalaryConstants
.
PLACES
,
BigDecimal
.
ROUND_HALF_UP
);
for
(
TPaymentBySalaryVo
m
:
estmateList
)
{
if
(
Common
.
isNotNull
(
idNumber
)
&&
idNumber
.
equals
(
m
.
getEmpIdcard
()))
{
//社保
if
(
isSocial
&&
(!
Common
.
isNotNull
(
m
.
getSalarySocialFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalarySocialFlag
()))
&&
(
m
.
getPersonalSocialSum
()
!=
null
||
m
.
getUnitSocialSum
()
!=
null
))
{
if
(
isPerson
&&
m
.
getPersonalSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
//公积金
if
(!
isSocial
&&
(
m
.
getPersonalFundSum
()
!=
null
||
m
.
getUnitFundSum
()
!=
null
))
{
typeFlag
=
false
;
if
(
Common
.
isEmpty
(
m
.
getSalaryFundFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalaryFundFlag
()))
{
if
(
isPerson
&&
m
.
getPersonalFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalFundSum
());
}
if
(!
isPerson
&&
m
.
getUnitFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitFundSum
());
}
a
.
setFundType
(
CommonConstants
.
ZERO_STRING
);
fundList
.
add
(
m
.
getId
());
if
(!
isPerson
&&
m
.
getUnitSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
subtract
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
socialList
.
add
(
m
.
getId
());
}
}
}
// 缴费库没找到,从预估库找
if
(
typeFlag
&&
forecastList
!=
null
&&
!
forecastList
.
isEmpty
())
{
money
=
money
.
setScale
(
SalaryConstants
.
PLACES
,
BigDecimal
.
ROUND_HALF_UP
);
for
(
TPaymentBySalaryVo
m
:
forecastList
)
{
if
(
Common
.
isNotNull
(
idNumber
)
&&
idNumber
.
equals
(
m
.
getEmpIdcard
()))
{
//社保
if
(
isSocial
&&
(!
Common
.
isNotNull
(
m
.
getSalarySocialFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalarySocialFlag
()))
&&
(
m
.
getPersonalSocialSum
()
!=
null
||
m
.
getUnitSocialSum
()
!=
null
))
{
if
(
isPerson
&&
m
.
getPersonalSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
if
(!
isPerson
&&
m
.
getUnitSocialSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitSocialSum
());
if
(
sub
.
compareTo
(
SalaryConstants
.
B_ZERO
)
!=
SalaryConstants
.
EQUAL
&&
m
.
getUnitBitmailmentFee
()
!=
null
)
{
money
=
money
.
subtract
(
m
.
getUnitBitmailmentFee
().
multiply
(
sub
));
}
}
a
.
setSocialType
(
CommonConstants
.
ONE_STRING
);
forecastSocialList
.
add
(
m
.
getId
());
//公积金
if
(!
isSocial
&&
(!
Common
.
isNotNull
(
m
.
getSalaryFundFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalaryFundFlag
()))
&&
(
m
.
getPersonalFundSum
()
!=
null
||
m
.
getUnitFundSum
()
!=
null
))
{
if
(
isPerson
&&
m
.
getPersonalFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalFundSum
());
}
//公积金
if
(!
isSocial
&&
(!
Common
.
isNotNull
(
m
.
getSalaryFundFlag
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
m
.
getSalaryFundFlag
()))
&&
(
m
.
getPersonalFundSum
()
!=
null
||
m
.
getUnitFundSum
()
!=
null
))
{
if
(
isPerson
&&
m
.
getPersonalFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getPersonalFundSum
());
}
if
(!
isPerson
&&
m
.
getUnitFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitFundSum
());
}
a
.
setFundType
(
CommonConstants
.
ONE_STRING
);
forecastFundList
.
add
(
m
.
getId
());
if
(!
isPerson
&&
m
.
getUnitFundSum
()
!=
null
)
{
money
=
money
.
add
(
m
.
getUnitFundSum
());
}
fundList
.
add
(
m
.
getId
());
}
}
}
...
...
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