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
3858cf2a
Commit
3858cf2a
authored
Nov 28, 2025
by
fangxinjiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
节假日表获取逻辑更新-代码优化-fxj
parent
606363cc
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
68 additions
and
2 deletions
+68
-2
HolidayCrawler.java
...u/cloud/plus/v1/yifu/common/core/util/HolidayCrawler.java
+23
-0
THolidayInfoController.java
...lus/v1/yifu/social/controller/THolidayInfoController.java
+12
-0
THolidayInfoService.java
...loud/plus/v1/yifu/social/service/THolidayInfoService.java
+3
-1
THolidayInfoServiceImpl.java
.../v1/yifu/social/service/impl/THolidayInfoServiceImpl.java
+30
-1
No files found.
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/util/HolidayCrawler.java
View file @
3858cf2a
...
...
@@ -17,6 +17,8 @@ public class HolidayCrawler {
* 年度法定节假日、公休日查询接口地址
*/
private
static
final
String
YEAR_HOLIDAY_URL
=
"https://api.apihubs.cn/holiday/get?field=date,weekend&year="
+
DateUtil
.
getYear
(
new
Date
())+
"&workday=2&order_by=1&cn=1&page=1&size=500"
;
private
static
final
String
NEXT_YEAR_HOLIDAY_URL
=
"https://api.apihubs.cn/holiday/get?field=date,weekend&year="
+(
DateUtil
.
getYearOfInt
(
new
Date
())+
1
)+
"&workday=2&order_by=1&cn=1&page=1&size=500"
;
/**
* http请求工具类
*/
...
...
@@ -42,4 +44,25 @@ public class HolidayCrawler {
}
return
null
;
}
public
static
List
<
Map
<
String
,
Object
>>
initNextYearHolidays
(){
long
ts
=
System
.
currentTimeMillis
();
Map
<
String
,
Object
>
result
=
REST_TEMPLATE
.
getForObject
(
String
.
format
(
NEXT_YEAR_HOLIDAY_URL
,
ts
,
ts
),
Map
.
class
);
if
(
null
!=
result
){
String
code
=
String
.
valueOf
(
result
.
get
(
"code"
));
String
msg
=
String
.
valueOf
(
result
.
get
(
"msg"
));
if
(
code
.
equals
(
"0"
)
&&
msg
.
equals
(
"ok"
)){
Map
data
=
(
Map
)
result
.
get
(
"data"
);
if
(
null
!=
data
){
List
<
Map
<
String
,
Object
>>
list
=
(
List
<
Map
<
String
,
Object
>>)
data
.
get
(
"list"
);
return
list
;
/*int i=0;
for(Map<String,Object> d:list){
System.out.println("i="+(++i)+" 日期="+d.get("date")+" 类型="+d.get("weekend")+" weekend_cn="+d.get("weekend_cn"));
}*/
}
}
}
return
null
;
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/THolidayInfoController.java
View file @
3858cf2a
...
...
@@ -175,6 +175,18 @@ public class THolidayInfoController {
tHolidayInfoService
.
createHolidayInfo
();
}
/**
* @Description: 手动生成次年年度假期表 --考虑到数据没出来可多次操作,线上再添加
* @Author: fxj
* @Date: 2024/5/8
**/
@Operation
(
summary
=
"手动生成次年年度假期表 "
,
description
=
"手动生成次年年度假期表 "
)
@SysLog
(
"手动生成次年年度假期表 "
)
@PostMapping
(
"/createNextYearHolidayInfo"
)
public
void
createNextYearHolidayInfo
()
{
tHolidayInfoService
.
createHolidayInfo
();;
}
/**
* @Author huyc
* @Description 查询日期的前一个/后一个工作日
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/THolidayInfoService.java
View file @
3858cf2a
...
...
@@ -54,7 +54,9 @@ public interface THolidayInfoService extends IService<THolidayInfo> {
TEmployeeInsuranceWorkDayVo
getInitBeforeOrAfterWorkDay
(
TEmployeeInsuranceWorkDayVo
vo
);
TEmployeeInsuranceWorkDayVo
selectBeforeOrAfterWorkDay
(
TEmployeeInsuranceWorkDayVo
vo
);
void
createNextYearHolidayInfo
();
TEmployeeInsuranceWorkDayVo
selectBeforeOrAfterWorkDay
(
TEmployeeInsuranceWorkDayVo
vo
);
TEmployeeInsuranceWorkDayVo
selectBeforeOrAfterWorkDayCommon
(
TEmployeeInsuranceWorkDayVo
vo
);
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/THolidayInfoServiceImpl.java
View file @
3858cf2a
...
...
@@ -257,7 +257,7 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
@Override
public
void
createHolidayInfo
()
{
baseMapper
.
delete
(
Wrappers
.<
THolidayInfo
>
query
().
lambda
());
baseMapper
.
delete
(
Wrappers
.<
THolidayInfo
>
query
().
lambda
()
.
eq
(
THolidayInfo:
:
getYear
,
DateUtil
.
getYear
(
new
Date
()))
);
List
<
Map
<
String
,
Object
>>
json
=
HolidayCrawler
.
initHolidays
();
List
<
THolidayInfo
>
saveList
=
new
ArrayList
<>();
THolidayInfo
save
;
...
...
@@ -284,6 +284,35 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
log
.
info
(
DateUtil
.
getYear
(
new
Date
())+
"年假期表初始化完成:"
);
}
@Override
public
void
createNextYearHolidayInfo
()
{
baseMapper
.
delete
(
Wrappers
.<
THolidayInfo
>
query
().
lambda
().
eq
(
THolidayInfo:
:
getYear
,(
DateUtil
.
getYearOfInt
(
new
Date
())+
1
)+
""
));
List
<
Map
<
String
,
Object
>>
json
=
HolidayCrawler
.
initNextYearHolidays
();
List
<
THolidayInfo
>
saveList
=
new
ArrayList
<>();
THolidayInfo
save
;
for
(
Map
<
String
,
Object
>
d:
json
){
save
=
new
THolidayInfo
();
try
{
save
.
setDate
(
DateUtil
.
stringToDate
((
String
)
d
.
get
(
"date"
).
toString
(),
DateUtil
.
ISO_DATE_FORMAT
));
}
catch
(
Exception
e
){
log
.
error
(
"假期表初始化异常:"
+
d
.
get
(
"date"
),
e
);
continue
;
}
save
.
setDay
(
DateUtil
.
getDay
(
save
.
getDate
()));
save
.
setMonth
(
DateUtil
.
getMonth
(
save
.
getDate
()));
save
.
setYear
(
DateUtil
.
getYear
(
save
.
getDate
()));
save
.
setCreateBy
(
"1"
);
save
.
setCreateName
(
"admin"
);
save
.
setCreateTime
(
LocalDateTime
.
now
());
save
.
setUpdateBy
(
"1"
);
saveList
.
add
(
save
);
}
if
(
Common
.
isNotNull
(
saveList
)){
this
.
saveBatch
(
saveList
);
}
log
.
info
(
DateUtil
.
getYear
(
new
Date
())+
"年假期表初始化完成:"
);
}
@Override
public
TEmployeeInsuranceWorkDayVo
selectBeforeOrAfterWorkDay
(
TEmployeeInsuranceWorkDayVo
vo
)
{
//获取当年所有假期配置表
...
...
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