|  | @@ -1,7 +1,11 @@
 | 
	
		
			
				|  |  |  package com.yonge.cooleshow.biz.dal.service.impl;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.metadata.IPage;
 | 
	
		
			
				|  |  | +import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 | 
	
		
			
				|  |  | +import com.yonge.cooleshow.biz.dal.dao.ActivityPlanDao;
 | 
	
		
			
				|  |  | +import com.yonge.cooleshow.biz.dal.entity.ActivityPlan;
 | 
	
		
			
				|  |  | +import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  |  import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  |  import org.slf4j.Logger;
 | 
	
		
			
				|  |  |  import org.slf4j.LoggerFactory;
 | 
	
	
		
			
				|  | @@ -10,7 +14,9 @@ import com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dto.search.ActivityRewardSearch;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dao.ActivityRewardDao;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.service.ActivityRewardService;
 | 
	
		
			
				|  |  | +import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import javax.annotation.Resource;
 | 
	
		
			
				|  |  |  import java.util.List;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -18,17 +24,58 @@ import java.util.List;
 | 
	
		
			
				|  |  |  public class ActivityRewardServiceImpl extends ServiceImpl<ActivityRewardDao, ActivityReward> implements ActivityRewardService {
 | 
	
		
			
				|  |  |      private final static Logger log = LoggerFactory.getLogger(ActivityRewardServiceImpl.class);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Resource
 | 
	
		
			
				|  |  | +    private ActivityPlanDao activityPlanDao;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  	@Override
 | 
	
		
			
				|  |  |      public ActivityRewardVo detail(Long id) {
 | 
	
		
			
				|  |  |          return baseMapper.detail(id);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public ActivityRewardVo detailByActivityId(Long id) {
 | 
	
		
			
				|  |  | +        return baseMapper.detailByActivityId(id);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public IPage<ActivityRewardVo> selectPage(IPage<ActivityRewardVo> page, ActivityRewardSearch query){
 | 
	
		
			
				|  |  |          return page.setRecords(baseMapper.selectPage(page, query));
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | +    @Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  | +    public Boolean submit(ActivityReward activityReward) {
 | 
	
		
			
				|  |  | +        if(null == activityReward.getActivityId()){
 | 
	
		
			
				|  |  | +            return createActivityReward(activityReward);
 | 
	
		
			
				|  |  | +        }else{
 | 
	
		
			
				|  |  | +            return updateActivityReward(activityReward);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    private Boolean createActivityReward(ActivityReward activityReward) {
 | 
	
		
			
				|  |  | +        baseMapper.delete(Wrappers.<ActivityReward>lambdaQuery()
 | 
	
		
			
				|  |  | +                .eq(ActivityReward::getActivityId, activityReward.getActivityId())
 | 
	
		
			
				|  |  | +        );
 | 
	
		
			
				|  |  | +        baseMapper.insert(activityReward);
 | 
	
		
			
				|  |  | +        //更改活动状态
 | 
	
		
			
				|  |  | +        ActivityPlan activityPlan = new ActivityPlan();
 | 
	
		
			
				|  |  | +        activityPlan.setId(activityReward.getActivityId());
 | 
	
		
			
				|  |  | +        activityPlan.setDraftFlag(0);
 | 
	
		
			
				|  |  | +        activityPlanDao.updateById(activityPlan);
 | 
	
		
			
				|  |  | +        return true;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    private Boolean updateActivityReward(ActivityReward activityReward) {
 | 
	
		
			
				|  |  | +        baseMapper.updateById(activityReward);
 | 
	
		
			
				|  |  | +        //更改活动状态
 | 
	
		
			
				|  |  | +        ActivityPlan activityPlan = new ActivityPlan();
 | 
	
		
			
				|  |  | +        activityPlan.setId(activityReward.getActivityId());
 | 
	
		
			
				|  |  | +        activityPlan.setDraftFlag(0);
 | 
	
		
			
				|  |  | +        activityPlanDao.updateById(activityPlan);
 | 
	
		
			
				|  |  | +        return true;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  |      public List<ActivityReward> getActivityReward(Long activityPlanId) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          return this.lambdaQuery()
 |