zxl
1 天以前 7433322e94209c63bd6257dd4bf3b24be0452325
framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityRefPrizeServiceImpl.java
@@ -1,10 +1,15 @@
package cn.lili.modules.lmk.service.impl;
import cn.lili.common.utils.StringUtils;
import cn.lili.modules.lmk.domain.vo.ActivityRefPrizeInfoVO;
import cn.lili.utils.COSUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import cn.lili.modules.lmk.domain.entity.ActivityRefPrize;
import cn.lili.modules.lmk.mapper.ActivityRefPrizeMapper;
import cn.lili.modules.lmk.service.ActivityRefPrizeService;
import cn.lili.base.Result;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.lili.modules.lmk.domain.form.ActivityRefPrizeForm;
import cn.lili.modules.lmk.domain.vo.ActivityRefPrizeVO;
@@ -13,8 +18,10 @@
import lombok.RequiredArgsConstructor;
import cn.lili.utils.PageUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@@ -26,9 +33,53 @@
 */
@Service
@RequiredArgsConstructor
@Transactional
public class ActivityRefPrizeServiceImpl extends ServiceImpl<ActivityRefPrizeMapper, ActivityRefPrize> implements ActivityRefPrizeService {
    private final ActivityRefPrizeMapper activityRefPrizeMapper;
    private final COSUtil cosUtil;
    @Override
    public Result getActivityRefPrizeByActivityId(String prizeActivityId){
        //以及奖品对应信息
        List<ActivityRefPrizeInfoVO> activityRefPrizeByActivityIds = activityRefPrizeMapper.getActivityRefPrizeByActivityId(prizeActivityId);
        for (ActivityRefPrizeInfoVO activityRefPrizeInfoVO : activityRefPrizeByActivityIds){
            if (StringUtils.isNotBlank(activityRefPrizeInfoVO.getPrizeCover())){
                activityRefPrizeInfoVO.setPrizeCoverUrl(cosUtil.getPreviewUrl(activityRefPrizeInfoVO.getPrizeCover()));
            }
        }
        return Result.ok().data(activityRefPrizeByActivityIds);
    }
    @Override
    public Result getPrizeByIdAndPrizeActivityId(String prizeId){
        List<ActivityRefPrize> activityRefPrizeList = new LambdaQueryChainWrapper<>(baseMapper)
                .eq(ActivityRefPrize::getPrizeId,prizeId)
                .eq(ActivityRefPrize::getDeleteFlag,Boolean.FALSE)
                .list();
        return Result.ok().data(activityRefPrizeList);
    }
    @Override
    public Result addList(String prizeActivityId,List<ActivityRefPrizeForm> list){
        //先删除再重新添加
        baseMapper.delete(new LambdaQueryWrapper<ActivityRefPrize>().eq(ActivityRefPrize::getPrizeActivityId,prizeActivityId));
        List<ActivityRefPrize> activityRefPrizeList = new ArrayList<>();
        if (!list.isEmpty()){
            for (ActivityRefPrizeForm activityRefPrizeForm : list){
                ActivityRefPrize activityRefPrize = ActivityRefPrizeForm.getEntityByForm(activityRefPrizeForm,null);
                //初始化锁的版本
                activityRefPrize.setPrizeActivityId(prizeActivityId);
                activityRefPrize.setRemainNum(activityRefPrizeForm.getPrizeNum());
                activityRefPrize.setVersion(0);
                activityRefPrizeList.add(activityRefPrize);
            }
            this.saveBatch(activityRefPrizeList);
        }
        return Result.ok("成功");
    }
    /**
     * 添加