update 商城店铺矿机列表,新增本用户是否在购物车字段

This commit is contained in:
yyb
2026-01-28 09:53:49 +08:00
parent 5d336dfb0f
commit b6aca44ae2
2 changed files with 26 additions and 0 deletions

View File

@@ -98,4 +98,7 @@ public class MachineInfoDto {
@ApiModelProperty(value = "店铺售价集合") @ApiModelProperty(value = "店铺售价集合")
private List<MachinePayTypeDto> priceList; private List<MachinePayTypeDto> priceList;
@ApiModelProperty(value = "是否在购物车中")
private Boolean inCart;
} }

View File

@@ -61,6 +61,9 @@ public class LeaseMachineServiceImpl extends ServiceImpl<LeaseMachineMapper, Lea
@Resource @Resource
private LeaseOrderItemMapper leaseOrderItemMapper; private LeaseOrderItemMapper leaseOrderItemMapper;
@Resource
private LeaseShoppingCartInfoMapper leaseShoppingCartInfoMapper;
public LeaseShop getShopById() { public LeaseShop getShopById() {
return leaseShopMapper.selectOne(new LambdaQueryWrapper<LeaseShop>().eq(LeaseShop::getUserEmail, SecurityUtils.getUsername()) return leaseShopMapper.selectOne(new LambdaQueryWrapper<LeaseShop>().eq(LeaseShop::getUserEmail, SecurityUtils.getUsername())
.eq(LeaseShop::getDel, false)); .eq(LeaseShop::getDel, false));
@@ -101,6 +104,26 @@ public class LeaseMachineServiceImpl extends ServiceImpl<LeaseMachineMapper, Lea
PageInfo<MachineInfoDto> pageInfo = new PageInfo<>(machineInfoDtoList); PageInfo<MachineInfoDto> pageInfo = new PageInfo<>(machineInfoDtoList);
//获取gpu和asic对应币种算力和月收益信息 //获取gpu和asic对应币种算力和月收益信息
PageResult<MachineInfoDto> success = setGpuAndAsicInfo(PageResult.successColumns(machineInfoDtoList),shopMachineVo); PageResult<MachineInfoDto> success = setGpuAndAsicInfo(PageResult.successColumns(machineInfoDtoList),shopMachineVo);
//查询用户购物车中的矿机
String userId = SecurityUtils.getUsername();
if (StringUtils.isNotEmpty(userId)) {
List<LeaseShoppingCartInfo> cartItems = leaseShoppingCartInfoMapper.selectList(
new LambdaQueryWrapper<LeaseShoppingCartInfo>()
.eq(LeaseShoppingCartInfo::getUserId, userId)
.eq(LeaseShoppingCartInfo::getVersion, 1) // 新版本购物车
);
// 收集购物车中的矿机ID
Set<Long> cartMachineIds = cartItems.stream()
.map(LeaseShoppingCartInfo::getProductMachineId)
.collect(Collectors.toSet());
// 设置购物车标识
for (MachineInfoDto machine : success.getRows()) {
machine.setInCart(cartMachineIds.contains(machine.getId()));
}
}
success.setTotal(pageInfo.getTotal()); success.setTotal(pageInfo.getTotal());
success.setTotalPage(pageInfo.getPages()); success.setTotalPage(pageInfo.getPages());
PageHelper.clearPage(); PageHelper.clearPage();