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
5769ac07
Commit
5769ac07
authored
Mar 16, 2026
by
fangxinjiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加日期查询接口-fxj
parent
887900f8
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
64 additions
and
1 deletion
+64
-1
THolidayInfoController.java
...lus/v1/yifu/social/controller/THolidayInfoController.java
+17
-0
THolidayInfoService.java
...loud/plus/v1/yifu/social/service/THolidayInfoService.java
+2
-0
THolidayInfoServiceImpl.java
.../v1/yifu/social/service/impl/THolidayInfoServiceImpl.java
+45
-1
No files found.
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/THolidayInfoController.java
View file @
5769ac07
...
@@ -37,6 +37,7 @@ import org.springframework.web.bind.annotation.*;
...
@@ -37,6 +37,7 @@ import org.springframework.web.bind.annotation.*;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.time.LocalDate
;
import
java.util.List
;
import
java.util.List
;
...
@@ -276,4 +277,20 @@ public class THolidayInfoController {
...
@@ -276,4 +277,20 @@ public class THolidayInfoController {
return
tHolidayInfoService
.
getOneMonthDay
();
return
tHolidayInfoService
.
getOneMonthDay
();
}
}
/**
* @Author fxj
* @Description 获取某天之后的指定数量的工作日
* @Date 11:31 2026/3/16
* @Param date 指定天 count 指定天数 type: 0 后一个工作日 1 前一个工作日
* @return
**/
@GetMapping
(
"/calculateReminderWorkDays"
)
public
R
calculateReminderWorkDays
(
@RequestParam
(
required
=
true
)
LocalDate
date
,
@RequestParam
(
required
=
true
)
int
count
,
@RequestParam
(
required
=
true
)
int
type
)
{
if
(
date
==
null
)
{
date
=
LocalDate
.
now
();
}
return
R
.
ok
(
tHolidayInfoService
.
calculateReminderWorkDays
(
date
,
count
,
type
));
}
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/THolidayInfoService.java
View file @
5769ac07
...
@@ -29,6 +29,7 @@ import com.yifu.cloud.plus.v1.yifu.social.vo.THolidayInfoSearchVo;
...
@@ -29,6 +29,7 @@ import com.yifu.cloud.plus.v1.yifu.social.vo.THolidayInfoSearchVo;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.InputStream
;
import
java.io.InputStream
;
import
java.time.LocalDate
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -80,4 +81,5 @@ public interface THolidayInfoService extends IService<THolidayInfo> {
...
@@ -80,4 +81,5 @@ public interface THolidayInfoService extends IService<THolidayInfo> {
List
<
THolidayInfo
>
noPageDiy
(
THolidayInfoSearchVo
searchVo
);
List
<
THolidayInfo
>
noPageDiy
(
THolidayInfoSearchVo
searchVo
);
LocalDate
calculateReminderWorkDays
(
LocalDate
lastDay
,
int
count
,
int
type
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/THolidayInfoServiceImpl.java
View file @
5769ac07
...
@@ -555,5 +555,49 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
...
@@ -555,5 +555,49 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
}
}
return
R
.
ok
(
"success"
);
return
R
.
ok
(
"success"
);
}
}
/**
* @Author fxj
* @Description 往前找指定个工作日 含当前日期
* @param type 0 往前 1 往后
* @Date 19:24 2026/2/26
* @return
**/
@Override
public
LocalDate
calculateReminderWorkDays
(
LocalDate
lastDay
,
int
count
,
int
type
)
{
LocalDate
currentDate
=
lastDay
;
int
workDayCount
=
0
;
// 往前找3个工作日
while
(
workDayCount
<
count
)
{
// 检查当前日期是否为工作日
if
(
isWorkDay
(
currentDate
))
{
workDayCount
++;
}
if
(
workDayCount
==
count
){
return
currentDate
;
}
// 往前一天
currentDate
=
currentDate
.
minusDays
(
0
==
type
?
1
:-
1
);
}
return
currentDate
;
}
/**
* 判断指定日期是否为工作日
* @param date 要检查的日期
* @return true-工作日,false-非工作日
*/
private
boolean
isWorkDay
(
LocalDate
date
)
{
TEmployeeInsuranceWorkDayVo
workDayVo
=
new
TEmployeeInsuranceWorkDayVo
();
workDayVo
.
setRegistDate
(
LocalDateTimeUtils
.
convertLDToDate
(
date
));
// 使用 THolidayInfoService 的 checkIsWorkDay 方法判断是否为假期
// 如果是假期则不是工作日,否则是工作日
Boolean
res
=
checkIsWorkDay
(
workDayVo
);
// 添加空值检查,避免 NPE,并提高代码可读性
if
(
res
==
null
)
{
log
.
warn
(
"checkIsWorkDay 返回结果为空,默认视为非工作日"
);
return
false
;
}
// res.getData() 为 true 表示是假期(非工作日),为 false 表示是工作日
return
!
res
.
booleanValue
();
}
}
}
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