定时器,欢迎语

dev
zhenghuang 5 years ago
parent b49a20f3c8
commit 1a83ef48f5

@ -39,6 +39,7 @@ public class GenerateQRCodeListener {
private PoiStoreStaffDOMapper poiStoreStaffDOMapper; private PoiStoreStaffDOMapper poiStoreStaffDOMapper;
@Autowired @Autowired
private PoiStoreDOMapper poiStoreDOMapper; private PoiStoreDOMapper poiStoreDOMapper;
@Async @Async
@EventListener @EventListener
//后台创建活动实例并绑定店铺之后,给店铺批量生成二维码 //后台创建活动实例并绑定店铺之后,给店铺批量生成二维码
@ -56,7 +57,7 @@ public class GenerateQRCodeListener {
pmnActivityStoreRelation.setInstanceId(instance.getId()); pmnActivityStoreRelation.setInstanceId(instance.getId());
pmnActivityStoreRelation.setCreateTime(new Date()); pmnActivityStoreRelation.setCreateTime(new Date());
int status = 1; int status = 1;
if(instance.getStatus() > 2) { if (instance.getStatus() > 2) {
status = 2; status = 2;
} }
pmnActivityStoreRelation.setStatus(status); pmnActivityStoreRelation.setStatus(status);
@ -67,31 +68,31 @@ public class GenerateQRCodeListener {
} }
if (storeIds.size() > 0) { if (storeIds.size() > 0) {
pmnActivityStoreRelationService.remove(Wrappers.<PmnActivityStoreRelation>lambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, instance.getId()).notIn(PmnActivityStoreRelation::getStoreId, storeIds)); pmnActivityStoreRelationService.remove(Wrappers.<PmnActivityStoreRelation>lambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, instance.getId()).notIn(PmnActivityStoreRelation::getStoreId, storeIds));
} List<PmnPromotionSrc> storeSrcs = pmnPromotionSrcService.list(Wrappers.<PmnPromotionSrc>lambdaQuery().eq(PmnPromotionSrc::getInstanceId, instance.getId()).notIn(PmnPromotionSrc::getPromoterId, storeIds).eq(PmnPromotionSrc::getType, 2).select(PmnPromotionSrc::getPromoterId));
List<PmnPromotionSrc> storeSrcs = pmnPromotionSrcService.list(Wrappers.<PmnPromotionSrc>lambdaQuery().eq(PmnPromotionSrc::getInstanceId, instance.getId()).notIn(PmnPromotionSrc::getPromoterId, storeIds).eq(PmnPromotionSrc::getType, 2).select(PmnPromotionSrc::getPromoterId)); Set<Long> removeStoreSrcs = storeSrcs.stream().map(PmnPromotionSrc::getPromoterId).collect(Collectors.toSet());
Set<Long> removeStoreSrcs = storeSrcs.stream().map(PmnPromotionSrc::getPromoterId).collect(Collectors.toSet()); List<PoiStoreStaffDTO> removeSellers = poiStoreStaffDOMapper.selectSellersByShopIds(new ArrayList<>(removeStoreSrcs));
List<PoiStoreStaffDTO> removeSellers = poiStoreStaffDOMapper.selectSellersByShopIds(new ArrayList<>(removeStoreSrcs)); Set<Long> removeSellerIds = removeSellers.stream().map(PoiStoreStaffDTO::getUserId).collect(Collectors.toSet());
Set<Long> removeSellerIds = removeSellers.stream().map(PoiStoreStaffDTO::getUserId).collect(Collectors.toSet()); List<Long> removeSrcs = new ArrayList<>();
List<Long> removeSrcs = new ArrayList<>(); removeSrcs.addAll(new ArrayList<>(removeStoreSrcs));
removeSrcs.addAll(new ArrayList<>(removeStoreSrcs)); removeSrcs.addAll(new ArrayList<>(removeSellerIds));
removeSrcs.addAll(new ArrayList<>(removeSellerIds)); if (removeSrcs.size() > 0) {
if(removeSrcs.size() > 0) { pmnPromotionSrcService.remove(Wrappers.<PmnPromotionSrc>lambdaQuery().in(PmnPromotionSrc::getPromoterId, removeSrcs).eq(PmnPromotionSrc::getInstanceId, instance.getId()));
pmnPromotionSrcService.remove(Wrappers.<PmnPromotionSrc>lambdaQuery().in(PmnPromotionSrc::getPromoterId, removeSrcs).eq(PmnPromotionSrc::getInstanceId, instance.getId()));
}
log.info("removeSrcs: {}", removeSrcs);
log.info("storeIds: {}", storeIds);
List<PoiStoreStaff> staffs = poiStoreStaffDOMapper.selectList(Wrappers.<PoiStoreStaff>lambdaQuery().in(PoiStoreStaff::getStoreId, storeIds).eq(PoiStoreStaff::getType, 1).eq(PoiStoreStaff::getStatus, 1));
log.info("staffs: {}", staffs);
List<PoiStoreStaff> fails = new LinkedList<>();
staffs.stream().collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(staff -> staff.getStoreId()))), ArrayList::new)).forEach(item -> {
PmnPromotionSrc save = pmnPromotionSrcService.createCode(item, instance.getId());
if (save == null) {
fails.add(item);
} }
}); log.info("removeSrcs: {}", removeSrcs);
log.info("生成失败数据: {}", fails); log.info("storeIds: {}", storeIds);
}catch (Exception e) { List<PoiStoreStaff> staffs = poiStoreStaffDOMapper.selectList(Wrappers.<PoiStoreStaff>lambdaQuery().in(PoiStoreStaff::getStoreId, storeIds).eq(PoiStoreStaff::getType, 1).eq(PoiStoreStaff::getStatus, 1));
log.info("staffs: {}", staffs);
List<PoiStoreStaff> fails = new LinkedList<>();
staffs.stream().collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(staff -> staff.getStoreId()))), ArrayList::new)).forEach(item -> {
PmnPromotionSrc save = pmnPromotionSrcService.createCode(item, instance.getId());
if (save == null) {
fails.add(item);
}
});
log.info("生成失败数据: {}", fails);
}
} catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
log.error("生成失败: {}", e); log.error("生成失败: {}", e);
} }

Loading…
Cancel
Save