|  | @@ -5,6 +5,9 @@ import com.kmall.admin.dao.mk.MkActivitiesDao;
 | 
	
		
			
				|  |  |  import com.kmall.admin.entity.mk.MkActivitiesAssociationEntity;
 | 
	
		
			
				|  |  |  import com.kmall.admin.entity.mk.MkActivitiesEntity;
 | 
	
		
			
				|  |  |  import com.kmall.admin.fromcomm.entity.SysUserEntity;
 | 
	
		
			
				|  |  | +import com.kmall.admin.haikong.constant.Constants;
 | 
	
		
			
				|  |  | +import com.kmall.admin.service.MkActivitiesPromotionService;
 | 
	
		
			
				|  |  | +import com.kmall.admin.service.mk.MkActivitiesScoreService;
 | 
	
		
			
				|  |  |  import com.kmall.admin.service.mk.MkActivitiesService;
 | 
	
		
			
				|  |  |  import com.kmall.admin.utils.ShiroUtils;
 | 
	
		
			
				|  |  |  import com.kmall.common.utils.BeanUtils;
 | 
	
	
		
			
				|  | @@ -14,9 +17,8 @@ import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import java.text.ParseException;
 | 
	
		
			
				|  |  |  import java.text.SimpleDateFormat;
 | 
	
		
			
				|  |  | -import java.util.Date;
 | 
	
		
			
				|  |  | -import java.util.List;
 | 
	
		
			
				|  |  | -import java.util.Map;
 | 
	
		
			
				|  |  | +import java.util.*;
 | 
	
		
			
				|  |  | +import java.util.stream.Collectors;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /**
 | 
	
		
			
				|  |  |   * 营销活动表Service实现类
 | 
	
	
		
			
				|  | @@ -32,6 +34,12 @@ public class MkActivitiesServiceImpl implements MkActivitiesService {
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private MkActivitiesAssociationDao mkActivitiesAssociationDao;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private MkActivitiesScoreService mkActivitiesScoreService;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private MkActivitiesPromotionService mkActivitiesPromotionService;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public MkActivitiesEntity queryObject(Long mkaId) {
 | 
	
		
			
				|  |  |          return mkActivitiesDao.queryObject(mkaId);
 | 
	
	
		
			
				|  | @@ -90,15 +98,32 @@ public class MkActivitiesServiceImpl implements MkActivitiesService {
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | +    @Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |      public int delete(Long mkaId) {
 | 
	
		
			
				|  |  | +        MkActivitiesEntity mkActivitiesEntity = queryObject(mkaId);
 | 
	
		
			
				|  |  | +        deleteByTopic(mkActivitiesEntity);
 | 
	
		
			
				|  |  | +        mkActivitiesAssociationDao.deleteByMkaId(mkActivitiesEntity.getMkaId());
 | 
	
		
			
				|  |  |          return mkActivitiesDao.delete(mkaId);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    private void deleteByTopic(MkActivitiesEntity mkActivitiesEntity) {
 | 
	
		
			
				|  |  | +        int mkaId = mkActivitiesEntity.getMkaId().intValue();
 | 
	
		
			
				|  |  | +        if (Constants.ActivityTopicEnum.JFDK.getTopicCode().equals(mkActivitiesEntity.getMkaTopic())) {
 | 
	
		
			
				|  |  | +            mkActivitiesScoreService.deleteBatchByMkaId(mkaId);
 | 
	
		
			
				|  |  | +        } else if (Constants.ActivityTopicEnum.LSCX.getTopicCode().equals(mkActivitiesEntity.getMkaTopic())) {
 | 
	
		
			
				|  |  | +            mkActivitiesPromotionService.deleteBatchByMkaId(mkaId);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    @Transactional
 | 
	
		
			
				|  |  | +    @Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |      public int deleteBatch(Long[]mkaIds) {
 | 
	
		
			
				|  |  |          mkActivitiesDao.deleteBatch(mkaIds);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        List<Integer> integerList = Arrays.stream(mkaIds).map(Long::intValue).collect(Collectors.toList());
 | 
	
		
			
				|  |  | +        List<MkActivitiesEntity> mkActivitiesEntities = queryListByMkaIdList(integerList);
 | 
	
		
			
				|  |  | +        for (MkActivitiesEntity mkActivitiesEntity : mkActivitiesEntities) {
 | 
	
		
			
				|  |  | +            deleteByTopic(mkActivitiesEntity);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |          mkActivitiesAssociationDao.deleteBatch(mkaIds);
 | 
	
		
			
				|  |  |          return 1;
 | 
	
		
			
				|  |  |      }
 | 
	
	
		
			
				|  | @@ -132,4 +157,9 @@ public class MkActivitiesServiceImpl implements MkActivitiesService {
 | 
	
		
			
				|  |  |      public List<MkActivitiesEntity> queryByTopic(String storeId, String currentTime, String topic) {
 | 
	
		
			
				|  |  |          return mkActivitiesDao.queryByTopic(storeId,currentTime,topic);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public List<MkActivitiesEntity> queryListByMkaIdList(List<Integer> mkaIdList) {
 | 
	
		
			
				|  |  | +        return mkActivitiesDao.queryListByMkaIdList(mkaIdList);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  }
 |