郑皇 5 years ago
parent 743172b71d
commit 9df9cb973d

@ -50,11 +50,12 @@ public class WelcomeCreatedListener {
List<PmnActivityStoreRelation> relations = pmnActivityStoreRelationService.list(Wrappers.<PmnActivityStoreRelation>lambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, event.instance().getId()).in(PmnActivityStoreRelation::getStoreId, storeIds).select(PmnActivityStoreRelation::getStoreId));
Set<Long> hasStores = relations.stream().map(PmnActivityStoreRelation::getStoreId).collect(Collectors.toSet());
if (hasStores.size() > 0) {
saveStores = saveStores.stream().filter(store -> hasStores.contains(store.getStoreId())).collect(Collectors.toList());
saveStores = saveStores.stream().filter(store -> !hasStores.contains(store.getStoreId())).collect(Collectors.toList());
}
saveStores = saveStores.stream().collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.getStoreId()))),
ArrayList::new));
pmnActivityStoreRelationService.remove(Wrappers.<PmnActivityStoreRelation>lambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, event.instance().getId()).notIn(PmnActivityStoreRelation::getStoreId, hasStores));
pmnActivityStoreRelationService.saveBatch(saveStores);
}
}

@ -349,7 +349,7 @@ public class PmnActivityInstanceServiceImpl extends ServiceImpl<PmnActivityInsta
@Override
public void scanValidAndSet() {
Date now = new Date();
List<PmnActivityInstance> starts = pmnActivityInstanceService.list(Wrappers.<PmnActivityInstance>lambdaQuery().eq(PmnActivityInstance::getStatus, 1).le(PmnActivityInstance::getBeginTime, now).ge(PmnActivityInstance::getEndTime, now).select(PmnActivityInstance::getId));
List<PmnActivityInstance> starts = pmnActivityInstanceService.list(Wrappers.<PmnActivityInstance>lambdaQuery().eq(PmnActivityInstance::getStatus, 1).le(PmnActivityInstance::getBeginTime, now).ge(PmnActivityInstance::getEndTime, now).eq(PmnActivityInstance::getCategoryCode, "promotion").select(PmnActivityInstance::getId));
if(starts.size() > 0) {
starts.stream().forEach(item -> item.setStatus(2L));
Set<Long> startInstances = starts.stream().map(PmnActivityInstance::getId).collect(Collectors.toSet());
@ -374,7 +374,7 @@ public class PmnActivityInstanceServiceImpl extends ServiceImpl<PmnActivityInsta
@Override
public void scanInvalidAndSer() {
Date now = new Date();
List<PmnActivityInstance> ends = pmnActivityInstanceService.list(Wrappers.<PmnActivityInstance>lambdaQuery().ne(PmnActivityInstance::getStatus, 3).ne(PmnActivityInstance::getStatus, 4).le(PmnActivityInstance::getEndTime, now).select(PmnActivityInstance::getId));
List<PmnActivityInstance> ends = pmnActivityInstanceService.list(Wrappers.<PmnActivityInstance>lambdaQuery().ne(PmnActivityInstance::getStatus, 3).ne(PmnActivityInstance::getStatus, 4).le(PmnActivityInstance::getEndTime, now).eq(PmnActivityInstance::getCategoryCode, "promotion").select(PmnActivityInstance::getId));
if(ends.size() > 0) {
ends.stream().forEach(item -> item.setStatus(3L));
Set<Long> endInstances = ends.stream().map(PmnActivityInstance::getId).collect(Collectors.toSet());

Loading…
Cancel
Save