过滤 已参团的
This commit is contained in:
@@ -57,11 +57,11 @@ public class UGbOrderController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 拼团订单详情
|
* 拼团商品详情
|
||||||
*/
|
*/
|
||||||
@GetMapping("/ware/detail")
|
@GetMapping("/ware/detail")
|
||||||
public CzgResult<GbWareVO> getWareDetail(@RequestParam Long shopId, @RequestParam Long wareId) {
|
public CzgResult<GbWareVO> getWareDetail(@RequestParam Long shopId, @RequestParam Long wareId) {
|
||||||
return CzgResult.success(orderService.getWareDetail(shopId, wareId));
|
return CzgResult.success(orderService.getWareDetail(shopId, wareId, StpKit.USER.getLoginIdAsLong()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ public class GbWare implements Serializable {
|
|||||||
private BigDecimal groupPrice;
|
private BigDecimal groupPrice;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 拼团库存
|
* 拼团累计数
|
||||||
*/
|
*/
|
||||||
private Integer groupedNum;
|
private Integer groupedNum;
|
||||||
|
|
||||||
|
|||||||
@@ -25,4 +25,7 @@ public interface GbWareService extends IService<GbWare> {
|
|||||||
|
|
||||||
//删除 下架状态可删除
|
//删除 下架状态可删除
|
||||||
boolean deleteGbWare(Long id);
|
boolean deleteGbWare(Long id);
|
||||||
|
|
||||||
|
// 累计拼团数+1
|
||||||
|
void upGbWareGroupedNum(Long id);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ public interface GbOrderService extends IService<GbOrder> {
|
|||||||
GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId);
|
GbOrderDetailVO getGoodsRecordDetail(Long shopId, Long detailId);
|
||||||
|
|
||||||
//商品详情
|
//商品详情
|
||||||
GbWareVO getWareDetail(Long shopId, Long wareId);
|
GbWareVO getWareDetail(Long shopId, Long wareId, Long userId);
|
||||||
|
|
||||||
//成团/参团 支付
|
//成团/参团 支付
|
||||||
CzgResult<Map<String, Object>> groupJoin(GroupJoinDTO param);
|
CzgResult<Map<String, Object>> groupJoin(GroupJoinDTO param);
|
||||||
|
|||||||
@@ -78,6 +78,16 @@ public class GbWareServiceImpl extends ServiceImpl<GbWareMapper, GbWare> impleme
|
|||||||
return remove(query().eq(GbWare::getId, id).eq(GbWare::getShopId, StpKit.USER.getShopId()));
|
return remove(query().eq(GbWare::getId, id).eq(GbWare::getShopId, StpKit.USER.getShopId()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void upGbWareGroupedNum(Long id) {
|
||||||
|
GbWare ware = getById(id);
|
||||||
|
if (ware != null) {
|
||||||
|
GbWare upWare = new GbWare();
|
||||||
|
upWare.setGroupedNum(ware.getGroupedNum() == null ? 1 : ware.getGroupedNum() + 1);
|
||||||
|
update(upWare, query().eq(GbWare::getId, id));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void checkStatus(Long id) {
|
private void checkStatus(Long id) {
|
||||||
GbWare ware = getById(id);
|
GbWare ware = getById(id);
|
||||||
AssertUtil.isNotEqual(ware.getOnlineStatus(), 0, "操作失败,请下架后,重试");
|
AssertUtil.isNotEqual(ware.getOnlineStatus(), 0, "操作失败,请下架后,重试");
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -108,7 +109,7 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public GbWareVO getWareDetail(Long shopId, Long wareId) {
|
public GbWareVO getWareDetail(Long shopId, Long wareId, Long userId) {
|
||||||
GbWareVO ware = wareService.getOneAs(query().eq(GbWare::getId, wareId), GbWareVO.class);
|
GbWareVO ware = wareService.getOneAs(query().eq(GbWare::getId, wareId), GbWareVO.class);
|
||||||
AssertUtil.isNull(ware, "商品不存在");
|
AssertUtil.isNull(ware, "商品不存在");
|
||||||
if (ware.getIsDel() || ware.getOnlineStatus() == 0) {
|
if (ware.getIsDel() || ware.getOnlineStatus() == 0) {
|
||||||
@@ -119,18 +120,32 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
|
|||||||
ware.setShopName(shopInfo.getShopName());
|
ware.setShopName(shopInfo.getShopName());
|
||||||
ware.setShopAddress(shopInfo.getAddress());
|
ware.setShopAddress(shopInfo.getAddress());
|
||||||
}
|
}
|
||||||
|
List<GbWareOrderVO> orderIngResult = new ArrayList<>();
|
||||||
List<GbWareOrderVO> orderIng = listAs(query().eq(GbOrder::getId, wareId)
|
List<GbWareOrderVO> orderIng = listAs(query().eq(GbOrder::getId, wareId)
|
||||||
.eq(GbOrder::getShopId, shopId)
|
.eq(GbOrder::getShopId, shopId)
|
||||||
.eq(GbOrder::getStatus, "ing")
|
.eq(GbOrder::getStatus, "ing")
|
||||||
|
.orderBy(GbOrder::getGroupEndTime).desc()
|
||||||
, GbWareOrderVO.class);
|
, GbWareOrderVO.class);
|
||||||
orderIng.forEach(ing -> {
|
for (GbWareOrderVO ing : orderIng) {
|
||||||
|
QueryWrapper queryWrapper1 = query();
|
||||||
|
queryWrapper1.eq(GbOrderDetail::getIsDel, 0)
|
||||||
|
.and(q -> {
|
||||||
|
q.eq(GbOrderDetail::getStatus, "待成团").or(GbOrderDetail::getStatus).eq("退款中");
|
||||||
|
});
|
||||||
|
queryWrapper1.eq(GbOrderDetail::getGroupOrderNo, ing.getGroupOrderNo());
|
||||||
|
queryWrapper1.eq(GbOrderDetail::getUserId, userId);
|
||||||
|
boolean exists = detailService.exists(queryWrapper1);
|
||||||
|
if (exists) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
QueryWrapper queryWrapper = QueryWrapper.create();
|
QueryWrapper queryWrapper = QueryWrapper.create();
|
||||||
queryWrapper.eq(GbOrderDetail::getIsDel, 0)
|
queryWrapper.eq(GbOrderDetail::getIsDel, 0)
|
||||||
.and(q -> {
|
.and(q -> {
|
||||||
q.eq(GbOrderDetail::getStatus, "待成团").or(GbOrderDetail::getStatus).eq("退款中");
|
q.eq(GbOrderDetail::getStatus, "待成团").or(GbOrderDetail::getStatus).eq("退款中");
|
||||||
})
|
});
|
||||||
.orderBy(GbOrderDetail::getPayTime);
|
|
||||||
queryWrapper.eq(GbOrderDetail::getGroupOrderNo, ing.getGroupOrderNo());
|
queryWrapper.eq(GbOrderDetail::getGroupOrderNo, ing.getGroupOrderNo());
|
||||||
|
queryWrapper.orderBy(GbOrderDetail::getPayTime).asc();
|
||||||
GbOrderDetail detail = detailService.getOne(queryWrapper);
|
GbOrderDetail detail = detailService.getOne(queryWrapper);
|
||||||
if (detail != null) {
|
if (detail != null) {
|
||||||
ShopUser userInfo = shopUserService.getUserInfo(detail.getShopId(), detail.getUserId());
|
ShopUser userInfo = shopUserService.getUserInfo(detail.getShopId(), detail.getUserId());
|
||||||
@@ -139,8 +154,9 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
|
|||||||
ing.setNickName(userInfo.getNickName());
|
ing.setNickName(userInfo.getNickName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
orderIngResult.add(ing);
|
||||||
ware.setGbOrderList(orderIng);
|
}
|
||||||
|
ware.setGbOrderList(orderIngResult);
|
||||||
return ware;
|
return ware;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -270,6 +286,7 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
|
|||||||
order.setGroupEndTime(LocalDateTime.now());
|
order.setGroupEndTime(LocalDateTime.now());
|
||||||
GbOrderDetail upRecord = new GbOrderDetail();
|
GbOrderDetail upRecord = new GbOrderDetail();
|
||||||
upRecord.setStatus("待核销");
|
upRecord.setStatus("待核销");
|
||||||
|
wareService.upGbWareGroupedNum(order.getWareId());
|
||||||
detailService.update(upRecord, query()
|
detailService.update(upRecord, query()
|
||||||
.eq(GbOrderDetail::getGroupOrderNo, order.getGroupOrderNo())
|
.eq(GbOrderDetail::getGroupOrderNo, order.getGroupOrderNo())
|
||||||
.eq(GbOrderDetail::getShopId, order.getShopId())
|
.eq(GbOrderDetail::getShopId, order.getShopId())
|
||||||
|
|||||||
Reference in New Issue
Block a user