From 05dc9a97deaf9af9db4cc2b8fd00ef39332982f1 Mon Sep 17 00:00:00 2001 From: zty <1048209592@qq.com> Date: Thu, 8 Aug 2024 12:31:00 +0800 Subject: [PATCH] =?UTF-8?q?1.=E7=9B=91=E6=8E=A7=E5=99=A8=E5=88=86=E7=AE=A1?= =?UTF-8?q?=E9=A2=86=E5=AF=BC=EF=BC=8C=E8=AF=B7=E5=81=87=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E9=83=A8=E9=97=A8=E5=88=A4=E6=96=AD=E5=85=A8?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E5=89=AF=E6=89=80=E9=95=BF=202.=E8=AF=B7?= =?UTF-8?q?=E5=81=87=E5=88=A4=E6=96=AD=E7=94=B1=E5=A4=A9=E6=95=B0=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E6=94=B9=E4=B8=BA=E9=80=9A=E8=BF=87=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E6=90=93=E8=AE=A1=E7=AE=97=E5=A4=A9=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kehui/flows/util/MyTaskListener.java | 3 ++- .../action/PersonalEventsController.java | 25 +++++++++++++++---- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/xqopen/kehui/flows/util/MyTaskListener.java b/src/main/java/com/xqopen/kehui/flows/util/MyTaskListener.java index 592d10d..499051c 100644 --- a/src/main/java/com/xqopen/kehui/flows/util/MyTaskListener.java +++ b/src/main/java/com/xqopen/kehui/flows/util/MyTaskListener.java @@ -417,6 +417,7 @@ public class MyTaskListener implements TaskListener { private String setBranchLeader(activitiEnum.activitiClass aClass, String name, Long id) { AdminDocumentManagement management = documentManagementService.selectById(id); switch (aClass) { + case leave: case leaveMin: case leaveCountry: //婚丧/育儿假分管领导是副所长(与请假天数无关) case postDocumentCgPj: //公文管理(发文管理)->成果评价->分管领导由所长改为副所长,且删除所长节点 @@ -514,7 +515,7 @@ public class MyTaskListener implements TaskListener { } } break; - case leave: +// case leave: case foreignVisit: case abroad: PersonalEvents personalEvents = personalEventsService.selectById(id); diff --git a/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java b/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java index 4840581..882e460 100644 --- a/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java +++ b/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java @@ -18,6 +18,7 @@ import com.xqopen.kehui.personal.entity.PersonalEvents; import com.xqopen.kehui.personal.entity.PersonalMember; import com.xqopen.kehui.personal.service.IPersonalEventsService; import com.xqopen.kehui.personal.service.IPersonalMemberService; +import com.xqopen.kehui.personal.util.personalEnum; import com.xqopen.kehui.util.ApiResponse; import com.xqopen.kehui.util.JacksonUtil; import com.xqopen.kehui.util.MailUtil; @@ -27,10 +28,12 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; +import javax.xml.crypto.Data; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; +import java.time.ZoneId; import java.time.temporal.ChronoUnit; import java.util.ArrayList; import java.util.Date; @@ -146,6 +149,7 @@ public class PersonalEventsController implements PersonalEventsApi { } if(flag){ aType = activitiEnum.activitiType.leaveLeader; +// aClass=activitiEnum.activitiClass.leaveLeader; break; } } @@ -157,6 +161,7 @@ public class PersonalEventsController implements PersonalEventsApi { case "marriageLeave": //婚丧假 case "maternityLeave": //产假 aType = activitiEnum.activitiType.leaveCountry; +// aClass=activitiEnum.activitiClass.leaveCountry; break; case "leave"://事假 case "annualLeave"://年休假 @@ -167,31 +172,41 @@ public class PersonalEventsController implements PersonalEventsApi { LocalDate end = LocalDate.parse(formatter.format(endDate)); LocalTime beginTime = LocalTime.parse(beginM); LocalTime endTime = LocalTime.parse(endM); - LocalDateTime startDateTime = LocalDateTime.of(start, beginTime); - LocalDateTime endDateTime = LocalDateTime.of(end, endTime); - long days = ChronoUnit.DAYS.between(startDateTime, endDateTime); +// LocalDateTime startDateTime = LocalDateTime.of(start, beginTime); +// LocalDateTime endDateTime = LocalDateTime.of(end, endTime); +// long days = ChronoUnit.DAYS.between(startDateTime, endDateTime); + beginDate = Date.from(LocalDateTime.of(start, beginTime).atZone(ZoneId.systemDefault()).toInstant()); + endDate = Date.from(LocalDateTime.of(end,endTime).atZone(ZoneId.systemDefault()).toInstant()); + long msNum = endDate.getTime() - beginDate.getTime(); +// long days=msNum/(24*60*60*1000); + long days=msNum%(24*60*60*1000)==0?msNum/(24*60*60*1000):msNum/(24*60*60*1000)+1; if(!"sickLeave".equals(leaveType)){ - if(days>=1){ + if(days>1){ aType = activitiEnum.activitiType.leaveCountry; +// aClass = Enum.valueOf(activitiEnum.activitiClass.class, personalEnum.Events.leaveCountry.name()); break; } else{ aType = activitiEnum.activitiType.leaveMin; +// aClass=activitiEnum.activitiClass.leaveMin; break; } } else{ - if(days>=3){ + if(days>3){ aType = activitiEnum.activitiType.leaveCountry; +// aClass=activitiEnum.activitiClass.leaveCountry; break; } else{ aType = activitiEnum.activitiType.leaveMin; +// aClass=activitiEnum.activitiClass.leaveMin; break; } } default: aType = activitiEnum.activitiType.leave; +// aClass=activitiEnum.activitiClass.leave; break; } }