| | |
| | | String keywords = goodQuery.getKeywords(); |
| | | // 初始化条件构造器 |
| | | QueryWrapper<TGoods> wrapper = new QueryWrapper<>(); |
| | | wrapper = keywords != null && "".equals(keywords.trim()) ? wrapper.like("name", keywords) : wrapper; |
| | | wrapper = keywords != null && !"".equals(keywords.trim()) ? wrapper.like("name", keywords) : wrapper; |
| | | |
| | | // 类型匹配 todo |
| | | if (goodQuery.getType() != null && goodQuery.getType().size() > 0) { |
| | | if (goodQuery.getType() != null && !goodQuery.getType().isEmpty()) { |
| | | for (String s : goodQuery.getType()) { |
| | | wrapper.or().apply("FIND_IN_SET('" + s + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数 |
| | | // 将每个类型 ID 应用于 FIND_IN_SET 函数 |
| | | wrapper.or().apply("FIND_IN_SET('" + s + "', typeIds)"); |
| | | } |
| | | } |
| | | wrapper.eq("isDelete", 0); |
| | |
| | | String[] split = byId.getTypeIds().split(","); |
| | | for (String s : split) { |
| | | TGoodsType byId1 = goodsTypeService.getById(s); |
| | | if (byId1!=null){ |
| | | if (byId1 != null) { |
| | | stringBuilder.append(byId1.getName()).append("|"); |
| | | } |
| | | } |
| | |
| | | // 商品分类详情 |
| | | List<TGoodsType> goodsTypes = goodsTypeService.lambdaQuery().in(TGoodsType::getId, Arrays.asList(goods.getTypeIds().split(","))).list(); |
| | | // 已兑换人数 |
| | | int number = goods.getBasicCount() + orderService.getGoodBuyNumber(goods.getId()); |
| | | int number = 0; |
| | | if (null != goods.getBasicCount()) { |
| | | number += goods.getBasicCount(); |
| | | } |
| | | number += orderService.getGoodBuyNumber(goods.getId()); |
| | | return R.ok(new GoodDetailVO(goods, goodsTypes, number)); |
| | | } |
| | | |
| | |
| | | Random random = new Random(); |
| | | StringBuilder randomPart = new StringBuilder(); |
| | | for (int i = 0; i < 3; i++) { |
| | | randomPart.append((char) (random.nextInt(26) + 'A')); // 大写字母 |
| | | // 大写字母 |
| | | randomPart.append((char) (random.nextInt(26) + 'A')); |
| | | } |
| | | // 组合订单编号 |
| | | String orderNumber = formattedDateTime + randomPart.toString(); |
| | | String orderNumber = formattedDateTime + randomPart; |
| | | goodDetailVO.setOrderNumber(orderNumber); |
| | | return R.ok(goodDetailVO); |
| | | } |