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
4969961f
Commit
4969961f
authored
Nov 09, 2022
by
fangxinjiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
预派单调整
parent
db85b018
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
131 additions
and
43 deletions
+131
-43
TPreDispatchInfo.java
...fu/cloud/plus/v1/yifu/social/entity/TPreDispatchInfo.java
+1
-1
TPreDispatchInfoServiceImpl.java
...yifu/social/service/impl/TPreDispatchInfoServiceImpl.java
+130
-42
No files found.
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/TPreDispatchInfo.java
View file @
4969961f
...
...
@@ -74,7 +74,7 @@ public class TPreDispatchInfo extends BaseEntity {
*/
@Schema
(
description
=
"接单分公司"
)
@Size
(
max
=
50
,
message
=
"接单分公司不可超过50位"
)
@ExcelAttribute
(
name
=
"接单分公司"
,
maxLength
=
50
)
@ExcelAttribute
(
name
=
"接单分公司"
,
isNotEmpty
=
true
,
errorInfo
=
"接单分公司不能为空"
,
maxLength
=
50
)
private
String
company
;
/**
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TPreDispatchInfoServiceImpl.java
View file @
4969961f
...
...
@@ -50,10 +50,7 @@ import javax.servlet.http.HttpServletResponse;
import
java.io.IOException
;
import
java.net.URLEncoder
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
/**
* 预派单记录
...
...
@@ -652,8 +649,8 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
}
TSettleDomainSelectVo
selectVo
=
domainR
.
getData
();
// 获取基数配置信息
HashMap
<
String
,
SysBaseSetInfo
>
baseSocialSetMap
=
new
HashMap
<>();
HashMap
<
String
,
SysBaseSetInfo
>
baseFundSetMap
=
new
HashMap
<>();
HashMap
<
String
,
List
<
SysBaseSetInfo
>
>
baseSocialSetMap
=
new
HashMap
<>();
HashMap
<
String
,
List
<
SysBaseSetInfo
>
>
baseFundSetMap
=
new
HashMap
<>();
HashMap
<
String
,
TPreDispatchInfo
>
baseSocialTimeMap
=
new
HashMap
<>();
HashMap
<
String
,
TPreDispatchInfo
>
baseFundTimeMap
=
new
HashMap
<>();
initSocialAndFundBaseSet
(
listInfo
,
baseSocialSetMap
,
baseFundSetMap
,
baseSocialTimeMap
,
baseFundTimeMap
);
...
...
@@ -663,6 +660,11 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
// 获取所有地市的最迟派单日限制
HashMap
<
String
,
Integer
>
dayConfMap
=
new
HashMap
<>();
initDayConfMap
(
dayConfMap
);
// 存放所有社保户和公积金户信息,不用每次都去数据库处理 fxj 2022-11-09
HashMap
<
String
,
SysHouseHoldInfo
>
socialHoldMap
=
new
HashMap
<>();
HashMap
<
String
,
SysHouseHoldInfo
>
fundHoldMap
=
new
HashMap
<>();
SysHouseHoldInfo
sh
=
null
;
SysHouseHoldInfo
fh
=
null
;
int
i
=
1
;
for
(
TPreDispatchInfo
info
:
listInfo
)
{
i
++;
...
...
@@ -676,7 +678,7 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
continue
;
}
// 基础封装 其他
initBaseInfo
(
s
ocialHouse
,
fundHouse
,
selectVo
,
info
);
initBaseInfo
(
s
h
,
fh
,
selectVo
,
info
,
socialHoldMap
,
fundHoldMap
);
// 2.先校验已有数据
checkBatchSave
(
info
,
CommonConstants
.
ZERO_STRING
);
// 3.封装 社保缴纳地 公积金缴纳地
...
...
@@ -799,8 +801,8 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
return
errorList
;
}
// 获取基数配置信息
HashMap
<
String
,
SysBaseSetInfo
>
baseSocialSetMap
=
new
HashMap
<>();
HashMap
<
String
,
SysBaseSetInfo
>
baseFundSetMap
=
new
HashMap
<>();
HashMap
<
String
,
List
<
SysBaseSetInfo
>
>
baseSocialSetMap
=
new
HashMap
<>();
HashMap
<
String
,
List
<
SysBaseSetInfo
>
>
baseFundSetMap
=
new
HashMap
<>();
HashMap
<
String
,
TPreDispatchInfo
>
baseSocialTimeMap
=
new
HashMap
<>();
HashMap
<
String
,
TPreDispatchInfo
>
baseFundTimeMap
=
new
HashMap
<>();
HashMap
<
String
,
TPreDispatchInfo
>
existsMap
=
new
HashMap
<>();
...
...
@@ -1148,11 +1150,17 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
* @param socialHouse
* @param selectVo
* @param info
* @param socialHoldMap
* @param fundHoldMap
* @return
* @Author huyc
* @Date 2022-07-18
**/
private
void
initBaseInfo
(
String
socialHouse
,
String
fundHouse
,
TSettleDomainSelectVo
selectVo
,
TPreDispatchInfo
info
)
{
private
void
initBaseInfo
(
SysHouseHoldInfo
sysHouseHoldInfo
,
SysHouseHoldInfo
sysHouseHoldFund
,
TSettleDomainSelectVo
selectVo
,
TPreDispatchInfo
info
,
HashMap
<
String
,
SysHouseHoldInfo
>
socialHoldMap
,
HashMap
<
String
,
SysHouseHoldInfo
>
fundHoldMap
)
{
info
.
setType
(
CommonConstants
.
ZERO_STRING
);
info
.
setDataSubStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setStatus
(
CommonConstants
.
ZERO_STRING
);
...
...
@@ -1169,24 +1177,50 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
// 默认合同名称为代理社保 合同类型为其他
info
.
setContractNameAdd
(
PreDispatchConstants
.
CONTRACT_NAME
);
info
.
setContractTypeAdd
(
CommonConstants
.
ONE_STRING
);
info
.
setContractStartAdd
(
DateUtil
.
getFirstDayString
(
info
.
getPensionStart
()));
// 默认为开始时间后的两年时间
info
.
setContractEndAdd
(
DateUtil
.
getFirstDayString
(
DateUtil
.
getYearAndMonth
(
info
.
getPensionStart
(),
24
)));
if
(
Common
.
isNotNull
(
info
.
getPensionStart
())){
info
.
setContractStartAdd
(
DateUtil
.
getFirstDayString
(
info
.
getPensionStart
()));
info
.
setContractEndAdd
(
DateUtil
.
getFirstDayString
(
DateUtil
.
getYearAndMonth
(
info
.
getPensionStart
(),
24
)));
}
// 默认合同期限2年
info
.
setContractTermAdd
(
CommonConstants
.
TWO_STRING
);
// 默认工时制 综合工时制2
info
.
setWorkingHoursAdd
(
CommonConstants
.
TWO_STRING
);
SysHouseHoldInfo
sysHouseHoldInfo
=
sysHouseHoldInfoMapper
.
selectOne
(
Wrappers
.<
SysHouseHoldInfo
>
query
().
lambda
()
.
eq
(
SysHouseHoldInfo:
:
getName
,
socialHouse
).
eq
(
SysHouseHoldInfo:
:
getType
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
SysHouseHoldInfo:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
));
info
.
setSocialHouseAdd
(
sysHouseHoldInfo
.
getId
());
SysHouseHoldInfo
sysHouseHoldFund
=
sysHouseHoldInfoMapper
.
selectOne
(
Wrappers
.<
SysHouseHoldInfo
>
query
().
lambda
()
.
eq
(
SysHouseHoldInfo:
:
getName
,
fundHouse
).
eq
(
SysHouseHoldInfo:
:
getType
,
CommonConstants
.
ONE_STRING
)
.
eq
(
SysHouseHoldInfo:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
));
sysHouseHoldInfo
=
socialHoldMap
.
get
(
info
.
getCompany
());
if
(
Common
.
isEmpty
(
sysHouseHoldInfo
)){
sysHouseHoldInfo
=
sysHouseHoldInfoMapper
.
selectOne
(
Wrappers
.<
SysHouseHoldInfo
>
query
().
lambda
()
.
eq
(
SysHouseHoldInfo:
:
getName
,
info
.
getCompany
()).
eq
(
SysHouseHoldInfo:
:
getType
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
SysHouseHoldInfo:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
));
if
(
Common
.
isNotNull
(
sysHouseHoldInfo
)){
socialHoldMap
.
put
(
info
.
getCompany
(),
sysHouseHoldInfo
);
}
}
if
(
Common
.
isNotNull
(
sysHouseHoldInfo
)){
info
.
setSocialHouseAdd
(
sysHouseHoldInfo
.
getId
());
}
if
(
Common
.
isEmpty
(
info
.
getSocialHouseAdd
())
&&
Common
.
isNotNull
(
info
.
getPensionAddress
())){
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
"未获取到可用社保户配置!"
);
return
;
}
sysHouseHoldFund
=
fundHoldMap
.
get
(
info
.
getCompany
());
if
(
Common
.
isEmpty
(
sysHouseHoldFund
)){
sysHouseHoldFund
=
sysHouseHoldInfoMapper
.
selectOne
(
Wrappers
.<
SysHouseHoldInfo
>
query
().
lambda
()
.
eq
(
SysHouseHoldInfo:
:
getName
,
info
.
getCompany
()).
eq
(
SysHouseHoldInfo:
:
getType
,
CommonConstants
.
ONE_STRING
)
.
eq
(
SysHouseHoldInfo:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
));
if
(
Common
.
isNotNull
(
sysHouseHoldFund
)){
fundHoldMap
.
put
(
info
.
getCompany
(),
sysHouseHoldFund
);
}
}
if
(
Common
.
isNotNull
(
sysHouseHoldFund
))
{
info
.
setFundHouseAdd
(
sysHouseHoldFund
.
getId
());
}
if
(
Common
.
isEmpty
(
info
.
getFundHouseAdd
())
&&
Common
.
isNotNull
(
info
.
getFundAddress
())){
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
"未获取到可用公积金户配置!"
);
return
;
}
}
/**
...
...
@@ -1799,8 +1833,8 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
* @Author huyc
* @Date 2022-07-18
**/
private
void
checkStartTime
(
Map
<
String
,
SysBaseSetInfo
>
baseSocialSetMap
,
Map
<
String
,
SysBaseSetInfo
>
baseFundSetMap
,
private
void
checkStartTime
(
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseSocialSetMap
,
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseFundSetMap
,
TPreDispatchInfo
temp
,
TPreDispatchInfo
info
)
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
info
.
getType
()))
{
// 社保地址或缴纳时间变更 要重新校验
...
...
@@ -1819,10 +1853,11 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
* @Author huyc
* @Date 2022-07-18
*/
private
void
checkSocialStartTime
(
Map
<
String
,
SysBaseSetInfo
>
baseSocialSetMap
,
TPreDispatchInfo
temp
,
TPreDispatchInfo
info
)
{
private
void
checkSocialStartTime
(
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseSocialSetMap
,
TPreDispatchInfo
temp
,
TPreDispatchInfo
info
)
{
boolean
flag
;
LocalDateTime
dateTime
;
SysBaseSetInfo
socialBaseSetInfo
;
Date
dateTime
;
List
<
SysBaseSetInfo
>
socialBases
;
SysBaseSetInfo
socialBaseSetInfo
=
null
;
String
str
;
flag
=
Common
.
isNotNull
(
info
.
getPensionAddress
())
&&
Common
.
isNotNull
(
info
.
getPensionStart
())
&&
...
...
@@ -1832,18 +1867,29 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
!
info
.
getPensionStart
().
equals
(
temp
.
getPensionStart
()));
}
if
(
flag
)
{
dateTime
=
LocalDateTimeUtils
.
dateOfYearAndMonth
(
info
.
getPensionStart
(),
LocalDateTimeUtils
.
DATE_SHORT_PATTERN
);
dateTime
=
DateUtil
.
stringToDate
(
info
.
getPensionStart
()+
"01"
,
DateUtil
.
ISO_DATE_FORMAT
);
if
(
null
!=
dateTime
)
{
socialBaseSetInfo
=
baseSocialSetMap
.
get
(
LocalDateTimeUtils
.
formatTime
(
dateTime
,
ValidityConstants
.
DATEFORMAT3_PATTERN
)
+
CommonConstants
.
DOWN_LINE_STRING
+
info
.
getSocialHouseAdd
()
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getSocialProvince
())
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getSocialCity
())
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getSocialTown
()));
socialBases
=
baseSocialSetMap
.
get
(
info
.
getCompany
());
if
(
Common
.
isNotNull
(
socialBases
)){
for
(
SysBaseSetInfo
base:
socialBases
){
if
(
Common
.
isNotNull
(
base
.
getApplyEndDate
())
&&
base
.
getApplyStartDate
().
before
(
dateTime
)
&&
base
.
getApplyEndDate
().
after
(
dateTime
)){
socialBaseSetInfo
=
base
;
}
if
(
Common
.
isEmpty
(
base
.
getApplyEndDate
())
&&
base
.
getApplyStartDate
().
before
(
dateTime
)
){
socialBaseSetInfo
=
base
;
}
}
}
str
=
checkSocialStartDate
(
info
,
socialBaseSetInfo
);
if
(
null
!=
str
)
{
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
str
);
}
}
else
{
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
"获取社保起缴日期异常"
);
}
}
}
...
...
@@ -1858,10 +1904,11 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
* @Author huyc
* @Date 2022-07-18
**/
private
void
checkFundStartTime
(
Map
<
String
,
SysBaseSetInfo
>
baseFundSetMap
,
TPreDispatchInfo
temp
,
TPreDispatchInfo
info
)
{
private
void
checkFundStartTime
(
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseFundSetMap
,
TPreDispatchInfo
temp
,
TPreDispatchInfo
info
)
{
boolean
flag
;
LocalDateTime
dateTime
;
SysBaseSetInfo
fundBaseSetIfno
;
Date
dateTime
;
List
<
SysBaseSetInfo
>
baseSetInfos
;
SysBaseSetInfo
fundBaseSetIfno
=
null
;
String
str
;
flag
=
Common
.
isNotNull
(
info
.
getFundStart
())
&&
Common
.
isNotNull
(
info
.
getFundAddress
())
&&
...
...
@@ -1871,18 +1918,29 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
!
info
.
getFundStart
().
equals
(
temp
.
getFundStart
()));
}
if
(
flag
)
{
dateTime
=
LocalDateTimeUtils
.
dateOfYearAndMonth
(
info
.
getFundStart
(),
LocalDateTimeUtils
.
DATE_SHORT_PATTERN
);
dateTime
=
DateUtil
.
stringToDate
(
info
.
getFundStart
()+
"01"
,
DateUtil
.
ISO_DATE_FORMAT
);
if
(
null
!=
dateTime
)
{
fundBaseSetIfno
=
baseFundSetMap
.
get
(
LocalDateTimeUtils
.
formatTime
(
dateTime
,
ValidityConstants
.
DATEFORMAT3_PATTERN
)
+
CommonConstants
.
DOWN_LINE_STRING
+
info
.
getFundHouseAdd
()
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getFundProvince
())
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getFundCity
())
+
CommonConstants
.
DOWN_LINE_STRING
+
Common
.
isBlankToNullString
(
info
.
getFundTown
()));
baseSetInfos
=
baseFundSetMap
.
get
(
info
.
getCompany
());
if
(
Common
.
isNotNull
(
baseSetInfos
)){
for
(
SysBaseSetInfo
base:
baseSetInfos
){
if
(
Common
.
isNotNull
(
base
.
getApplyEndDate
())
&&
base
.
getApplyStartDate
().
before
(
dateTime
)
&&
base
.
getApplyEndDate
().
after
(
dateTime
)){
fundBaseSetIfno
=
base
;
}
if
(
Common
.
isEmpty
(
base
.
getApplyEndDate
())
&&
base
.
getApplyStartDate
().
before
(
dateTime
)
){
fundBaseSetIfno
=
base
;
}
}
}
str
=
checkFundStartDate
(
info
,
fundBaseSetIfno
);
if
(
null
!=
str
)
{
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
str
);
}
}
else
{
info
.
setPreStatus
(
CommonConstants
.
ONE_STRING
);
info
.
setExceptionContent
(
"获取公积金起缴日期异常"
);
}
}
}
...
...
@@ -1977,13 +2035,15 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
* @Date 2022-07-18
**/
private
void
initSocialAndFundBaseSet
(
List
<
TPreDispatchInfo
>
listInfo
,
Map
<
String
,
SysBaseSetInfo
>
baseSocialSetMap
,
Map
<
String
,
SysBaseSetInfo
>
baseFundSetMap
,
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseSocialSetMap
,
Map
<
String
,
List
<
SysBaseSetInfo
>
>
baseFundSetMap
,
Map
<
String
,
TPreDispatchInfo
>
baseSocialTimeMap
,
Map
<
String
,
TPreDispatchInfo
>
baseFundTimeMap
)
{
List
<
String
>
idList
=
new
ArrayList
<>();
Map
<
String
,
String
>
houseMap
=
new
HashMap
<>();
if
(
Common
.
isNotNull
(
listInfo
))
{
for
(
TPreDispatchInfo
info
:
listInfo
)
{
houseMap
.
put
(
info
.
getCompany
(),
info
.
getCompany
());
if
(
Common
.
isNotNull
(
info
.
getPensionStart
()))
{
baseSocialTimeMap
.
put
(
info
.
getPensionStart
(),
info
);
}
...
...
@@ -1993,8 +2053,36 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
idList
.
add
(
info
.
getId
());
}
}
// 获取所有户对应的社保户和公积金户对应的在用基数配置
if
(
Common
.
isNotNull
(
houseMap
)){
List
<
SysBaseSetInfo
>
baseSetInfoList
=
sysBaseSetInfoMapper
.
selectList
(
Wrappers
.<
SysBaseSetInfo
>
query
().
lambda
()
.
eq
(
SysBaseSetInfo:
:
getDeleteFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
SysBaseSetInfo:
:
getStatus
,
CommonConstants
.
ZERO_INT
)
.
in
(
SysBaseSetInfo:
:
getDepartName
,
houseMap
.
values
()));
List
<
SysBaseSetInfo
>
baseList
;
if
(
Common
.
isNotNull
(
baseSetInfoList
)){
for
(
SysBaseSetInfo
base:
baseSetInfoList
){
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
base
.
getBaseType
())){
baseList
=
baseSocialSetMap
.
get
(
base
.
getDepartName
());
if
(
Common
.
isEmpty
(
baseList
)){
baseList
=
new
ArrayList
<>();
}
baseList
.
add
(
base
);
baseSocialSetMap
.
put
(
base
.
getDepartName
(),
baseList
);
}
if
(
CommonConstants
.
ONE_STRING
.
equals
(
base
.
getBaseType
())){
baseList
=
baseFundSetMap
.
get
(
base
.
getDepartName
());
if
(
Common
.
isEmpty
(
baseList
)){
baseList
=
new
ArrayList
<>();
}
baseList
.
add
(
base
);
baseFundSetMap
.
put
(
base
.
getDepartName
(),
baseList
);
}
}
}
}
// 初始化社保和公积金配置数据
initBaseSetMap
(
baseSocialTimeMap
,
baseFundTimeMap
,
baseSocialSetMap
,
baseFundSetMap
);
//
initBaseSetMap(baseSocialTimeMap, baseFundTimeMap, baseSocialSetMap, baseFundSetMap);
}
/**
...
...
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