zhanghua
2025-04-14 1cad14bca191807e18705c3a5526eda8151be439
ycl-platform/src/main/java/com/ycl/service/store/impl/StoreInfoServiceImpl.java
@@ -2,21 +2,27 @@
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.entity.store.StoreInfo;
import com.ycl.entity.store.StoreScore;
import com.ycl.enums.common.ResultCode;
import com.ycl.exception.ApiException;
import com.ycl.mapper.store.StoreInfoMapper;
import com.ycl.mapper.store.StoreScoreMapper;
import com.ycl.mapper.video.VideoPointMapper;
import com.ycl.service.store.StoreInfoService;
import com.ycl.utils.ExcelUtils;
import com.ycl.vo.store.StoreInfoExcelVo;
import com.ycl.vo.store.StoreInfoVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@@ -32,14 +38,24 @@
@Slf4j
public class StoreInfoServiceImpl extends ServiceImpl<StoreInfoMapper, StoreInfo> implements StoreInfoService {
    @Resource
    StoreInfoMapper storeInfoMapper;
    @Resource
    VideoPointMapper videoPointMapper;
    @Resource
    StoreScoreMapper storeScoreMapper;
    @Override
    public Page<StoreInfo> list(String keyword, Integer pageSize, Integer pageNum) {
        Page<StoreInfo> page = new Page<>(pageSize, pageNum);
        LambdaQueryWrapper<StoreInfo> wrapper = new LambdaQueryWrapper<>();
        if (StrUtil.isNotEmpty(keyword)) {
            wrapper.like(StoreInfo::getStoreName, keyword);
        }
        return page(page, wrapper);
    public Page<StoreInfoVO> list(String keyword, Integer pageSize, Integer pageNum,String status) {
        Page<StoreInfo> storeInfoPage = new Page<>();
        storeInfoPage.setSize(pageSize);
        storeInfoPage.setCurrent(pageNum);
        Page<StoreInfoVO> page = storeInfoMapper.selectStorePage(storeInfoPage, keyword,status);
        page.getRecords().forEach(x -> x.setVideoPoint(videoPointMapper.selectById(x.getVideoId())));
        return page;
    }
    @Override
@@ -58,14 +74,24 @@
            List<StoreInfo> infos = new ArrayList<>();
            for (StoreInfoExcelVo data : datas) {
                StoreInfo info = new StoreInfo();
                BeanUtils.copyProperties(data,info);
                BeanUtils.copyProperties(data, info);
                infos.add(info);
            }
            BeanUtils.copyProperties(datas,infos);
            BeanUtils.copyProperties(datas, infos);
            saveBatch(infos);
            return true;
        } catch (Exception e) {
            throw new ApiException(ResultCode.FAILED);
        }
    }
    @Override
    public Page<StoreScore> getScoreList(Long storeId, Integer pageSize, Integer pageNum) {
        Page<StoreScore> storeScorePage = new Page<>();
        storeScorePage.setSize(pageSize);
        storeScorePage.setCurrent(pageNum);
        LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<StoreScore>().eq(StoreScore::getStoreId, storeId);
        Page<StoreScore> page = storeScoreMapper.selectPage(storeScorePage, queryWrapper);
        return page;
    }
}