diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java index 4eed5ec1a..bfb943510 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderGroupServiceImpl.java @@ -160,7 +160,25 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { @Override public PageInfo> queryOrderGroup(WxOrder wxOrder, Integer pageIndex, Integer pageSize) { - return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderGroupMapper.queryOrderGroup(wxOrder)); + PageHelper.startPage(pageIndex, pageSize); + List> result = wxOrderGroupMapper.queryOrderGroup(wxOrder); + //更新状态 + updateOrderGroupStatus(result); + PageHelper.startPage(pageIndex, pageSize); + result = wxOrderGroupMapper.queryOrderGroup(wxOrder); + PageInfo> pageInfo = new PageInfo<>(result); + return pageInfo; + } + + private void updateOrderGroupStatus(List> result) { + for (Map group : result) { + WxOrderGroup wxOrderGroup = new WxOrderGroup(); + wxOrderGroup.setId((Long) group.get("orderGroupId")); + wxOrderGroup.setTenantId(group.get("tenantId").toString()); + wxOrderGroup.setCouponId((Long) group.get("couponId")); + wxOrderGroup.setOrderId((Long) group.get("orderId")); + updateGroupStatus(wxOrderGroup); + } } @Override @@ -204,6 +222,11 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { @Override public ResultData queryOrderGroupStatus(WxOrderGroup wxOrderGroup) { + updateGroupStatus(wxOrderGroup); + return toOrderGroup(wxOrderGroup); + } + + public void updateGroupStatus(WxOrderGroup wxOrderGroup) { Long id = wxOrderGroup.getId(); WxOrderGroup group = wxOrderGroupMapper.selectByPrimaryKey(id); WxCoupon wxCoupon = wxCouponMapper.selectByPrimaryKey(wxOrderGroup.getCouponId()); @@ -218,7 +241,6 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { group.setStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_OVERTIME.getCode()); returnMoney(group); } - return toOrderGroup(wxOrderGroup); } public void returnMoney(WxOrderGroup group) { diff --git a/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml index d83acd120..db4be0f5c 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml @@ -69,8 +69,7 @@ select o.id orderId,o.order_status orderStatus,o.order_group_id orderGroupId,c.title,c.sub_title subTitle, c.sale_price salePrice,c.cover_img coverImg,g.remain_people remainPeople,c.id couponId,g.expired_date - expiredDate,g.status, - g.user_id firstUser,u.nick_name nickName,u.avatar_url avatarUrl + expiredDate,g.status,g.user_id firstUser,u.nick_name nickName,u.avatar_url avatarUrl,o.tenant_id tenantId from wx_order o left join wx_coupon c on o.product_id=c.id left join wx_order_group g on o.order_group_id=g.id