dev_0531
parent
c7024ae7b6
commit
eb129e5354
@ -1,20 +1,54 @@
|
||||
package com.kiisoo.ic.activity.listener;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.kiisoo.ic.activity.entity.PmnActivityInstance;
|
||||
import com.kiisoo.ic.activity.entity.PmnActivityStoreRelation;
|
||||
import com.kiisoo.ic.activity.event.ActivityInstanceCreatedEvent;
|
||||
import com.kiisoo.ic.activity.service.IPmnActivityStoreRelationService;
|
||||
import com.kiisoo.ic.activity.service.IPmnPromotionSrcService;
|
||||
import com.kiisoo.ic.store.entity.PoiStore;
|
||||
import com.kiisoo.ic.store.entity.PoiStoreStaff;
|
||||
import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper;
|
||||
import com.kiisoo.ic.store.service.PoiStoreService;
|
||||
import com.kiisoo.ic.store.service.PoiStoreStaffService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.event.EventListener;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Component
|
||||
@Slf4j
|
||||
public class GenerateQRCodeListener {
|
||||
|
||||
@Autowired
|
||||
private IPmnPromotionSrcService pmnPromotionSrcService;
|
||||
@Autowired
|
||||
private PoiStoreService poiStoreService;
|
||||
@Autowired
|
||||
private IPmnActivityStoreRelationService pmnActivityStoreRelationService;
|
||||
@Autowired
|
||||
private PoiStoreStaffDOMapper poiStoreStaffDOMapper;
|
||||
@Async
|
||||
@EventListener
|
||||
//后台创建活动实例并绑定店铺之后,给店铺批量生成二维码
|
||||
public void GenerateQRCode(ActivityInstanceCreatedEvent event) {
|
||||
// TODO 备用
|
||||
// TODO 后台创建活动实例并绑定店铺之后,给店铺和导购批量生成二维码
|
||||
// TODO 也可以等后台或者用户查接口的时候,被动生成
|
||||
log.info("生成店铺码: {}", event.instance());
|
||||
PmnActivityInstance instance = event.instance();
|
||||
List<PmnActivityStoreRelation> relationList = pmnActivityStoreRelationService.list(Wrappers.<PmnActivityStoreRelation>lambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, instance.getId()).select(PmnActivityStoreRelation::getStoreId).eq(PmnActivityStoreRelation::getStatus, 1));
|
||||
List<Long> storeIds = relationList.stream().map(PmnActivityStoreRelation::getStoreId).collect(Collectors.toList());
|
||||
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().forEach(item -> {
|
||||
boolean save = pmnPromotionSrcService.createCode(item, instance.getId());
|
||||
if(!save) {
|
||||
fails.add(item);
|
||||
}
|
||||
});
|
||||
log.info("生成失败数据: {}", fails);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue