batch下订单

This commit is contained in:
2025-02-25 16:57:35 +08:00
parent 95747a2a71
commit e199e0e57b
10 changed files with 158 additions and 31 deletions

View File

@ -1,7 +1,66 @@
package com.ycwl.basic.biz;
import com.ycwl.basic.model.pc.price.entity.PriceConfigEntity;
import com.ycwl.basic.model.pc.price.resp.GoodsListRespVO;
import com.ycwl.basic.model.pc.scenic.entity.ScenicConfigEntity;
import com.ycwl.basic.model.pc.template.resp.TemplateRespVO;
import com.ycwl.basic.repository.PriceRepository;
import com.ycwl.basic.repository.ScenicRepository;
import com.ycwl.basic.repository.TemplateRepository;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
@Component
public class PriceBiz {
@Autowired
private TemplateRepository templateRepository;
@Autowired
private ScenicRepository scenicRepository;
@Autowired
private PriceRepository priceRepository;
public List<GoodsListRespVO> listGoodsByScenic(Long scenicId) {
List<GoodsListRespVO> goodsList = new ArrayList<>();
// 景区视频
List<TemplateRespVO> templateList = templateRepository.getTemplateListByScenicId(scenicId);
templateList.stream().map(template -> {
GoodsListRespVO goods = new GoodsListRespVO();
goods.setGoodsId(template.getId());
goods.setGoodsName(template.getName());
return goods;
}).forEach(goodsList::add);
ScenicConfigEntity scenicConfig = scenicRepository.getScenicConfig(scenicId);
if (scenicConfig != null) {
if (!Integer.valueOf(1).equals(scenicConfig.getDisableSourceVideo())) {
goodsList.add(new GoodsListRespVO(1L, "原片集"));
}
if (!Integer.valueOf(1).equals(scenicConfig.getDisableSourceImage())) {
goodsList.add(new GoodsListRespVO(2L, "照片集"));
}
}
return goodsList;
}
public List<GoodsListRespVO> queryGoodsList(Integer configId) {
PriceConfigEntity priceConfig = priceRepository.getPriceConfig(configId);
if (priceConfig == null) {
return Collections.emptyList();
}
String[] goodsIds = priceConfig.getGoodsIds().split(",");
List<GoodsListRespVO> goodsList = listGoodsByScenic(priceConfig.getScenicId());
return goodsList.stream().filter(goods -> {
for (String goodsId : goodsIds) {
if (StringUtils.equals(goods.getGoodsId().toString(), goodsId)) {
return true;
}
}
return false;
}).collect(Collectors.toList());
}
}