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; } }