|
|
@@ -31,6 +31,8 @@ import org.springframework.web.socket.TextMessage;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.text.ParseException;
|
|
|
+import java.time.LocalDate;
|
|
|
+import java.time.ZoneId;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.atomic.AtomicReference;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -1836,19 +1838,14 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
|
|
|
actualDuration=actualDuration.add(BigDecimal.valueOf(in.getDuration()));
|
|
|
frequency++;
|
|
|
}
|
|
|
+ LocalDate startDate = LocalDate.now().withMonth(1).withDayOfMonth(1);
|
|
|
+ String sumYear= String.valueOf(startDate.getYear());
|
|
|
+ LocalDate endDate = startDate.withYear(startDate.getYear()+1);
|
|
|
for (PublicRelease e : list) {
|
|
|
- //新增直接计算
|
|
|
- if (in.getId()==null){
|
|
|
- if (e.getDuration()!=null){
|
|
|
- actualDuration=actualDuration.add(BigDecimal.valueOf(e.getDuration()));
|
|
|
- if (!peopleList.contains(e.getAid())){
|
|
|
- peopleList.add(e.getAid());
|
|
|
- }
|
|
|
- frequency++;
|
|
|
- }
|
|
|
- }else {
|
|
|
- //修改当前数据要从修改后获取
|
|
|
- if (!e.getId().equals(in.getId())){
|
|
|
+ LocalDate date = e.getReleaseStart().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
|
|
+ if (date.isAfter(startDate)&&date.isBefore(endDate)){
|
|
|
+ //新增直接计算
|
|
|
+ if (in.getId()==null){
|
|
|
if (e.getDuration()!=null){
|
|
|
actualDuration=actualDuration.add(BigDecimal.valueOf(e.getDuration()));
|
|
|
if (!peopleList.contains(e.getAid())){
|
|
|
@@ -1857,17 +1854,26 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
|
|
|
frequency++;
|
|
|
}
|
|
|
}else {
|
|
|
- if (outPublicRelease != null && outPublicRelease.getDuration() != null) {
|
|
|
- actualDuration = actualDuration.add(BigDecimal.valueOf(outPublicRelease.getDuration()));
|
|
|
- if (!peopleList.contains(outPublicRelease.getAid())) {
|
|
|
- peopleList.add(outPublicRelease.getAid());
|
|
|
+ //修改当前数据要从修改后获取
|
|
|
+ if (!e.getId().equals(in.getId())){
|
|
|
+ if (e.getDuration()!=null){
|
|
|
+ actualDuration=actualDuration.add(BigDecimal.valueOf(e.getDuration()));
|
|
|
+ if (!peopleList.contains(e.getAid())){
|
|
|
+ peopleList.add(e.getAid());
|
|
|
+ }
|
|
|
+ frequency++;
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ if (outPublicRelease != null && outPublicRelease.getDuration() != null) {
|
|
|
+ actualDuration = actualDuration.add(BigDecimal.valueOf(outPublicRelease.getDuration()));
|
|
|
+ if (!peopleList.contains(outPublicRelease.getAid())) {
|
|
|
+ peopleList.add(outPublicRelease.getAid());
|
|
|
+ }
|
|
|
+ frequency++;
|
|
|
}
|
|
|
- frequency++;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
Map map=new HashMap();
|
|
|
CheckOrderNoOut data= new CheckOrderNoOut();
|
|
|
@@ -1881,6 +1887,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
|
|
|
update.setFrequency(frequency);
|
|
|
update.setActualDuration(actualDuration.doubleValue());
|
|
|
update.setPeopleCount(peopleList.size());
|
|
|
+ update.setSumYear(sumYear);
|
|
|
tOrderPublicReleaseCountMapper.updateByOrderNo(update);
|
|
|
}
|
|
|
data.setTimesCount(frequency);
|