会员订单

This commit is contained in:
张松
2025-11-25 09:42:50 +08:00
parent efed3ada4a
commit 5012035cc8
3 changed files with 28 additions and 17 deletions

View File

@@ -1,11 +1,9 @@
package com.czg.controller.admin;
import com.czg.account.dto.PageDTO;
import com.czg.exception.CzgException;
import com.czg.market.dto.MemberConfigDTO;
import com.czg.market.dto.MemberLevelDTO;
import com.czg.market.entity.MemberLevelConfig;
import com.czg.market.entity.MemberOrder;
import com.czg.market.service.MemberLevelConfigService;
import com.czg.market.service.MemberOrderService;
import com.czg.market.service.TbMemberConfigService;
@@ -14,9 +12,7 @@ import com.czg.market.vo.MemberLevelVO;
import com.czg.resp.CzgResult;
import com.czg.sa.StpKit;
import com.czg.utils.AssertUtil;
import com.czg.utils.PageUtil;
import com.czg.validator.group.UpdateGroup;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
import jakarta.annotation.Resource;
import jakarta.validation.groups.Default;
@@ -24,6 +20,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Map;
/**
* 会员配置管理
@@ -48,8 +45,8 @@ public class MemberController {
* @return 订单信息
*/
@GetMapping("/order")
public CzgResult<Page<MemberOrder>> memberOrderPage(@RequestParam(required = false) String startTime,
@RequestParam(required = false) String endTime, @RequestParam(required = false) String key) {
public CzgResult<Map<String, Object>> memberOrderPage(@RequestParam(required = false) String startTime,
@RequestParam(required = false) String endTime, @RequestParam(required = false) String key) {
return CzgResult.success(memberOrderService.pageInfo(startTime, endTime, key));
}
/**

View File

@@ -1,10 +1,11 @@
package com.czg.market.service;
import com.czg.market.dto.MemberOrderDTO;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.czg.market.entity.MemberOrder;
import java.util.Map;
/**
* 会员充值订单 服务层。
*
@@ -15,5 +16,5 @@ public interface MemberOrderService extends IService<MemberOrder> {
MemberOrder createMemberOrder(MemberOrderDTO orderDTO);
Page<MemberOrder> pageInfo(String startTime, String endTime, String key);
Map<String, Object> pageInfo(String startTime, String endTime, String key);
}

View File

@@ -1,5 +1,6 @@
package com.czg.service.market.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
@@ -17,8 +18,6 @@ import com.czg.market.service.TbMemberConfigService;
import com.czg.market.vo.MemberConfigVO;
import com.czg.exception.CzgException;
import com.czg.market.dto.MemberOrderDTO;
import com.czg.order.entity.OrderInfo;
import com.czg.order.entity.OrderPayment;
import com.czg.order.service.OrderInfoService;
import com.czg.order.service.OrderPaymentService;
import com.czg.sa.StpKit;
@@ -26,19 +25,16 @@ import com.czg.service.market.enums.OrderStatusEnums;
import com.czg.service.market.mapper.MemberOrderMapper;
import com.czg.utils.AssertUtil;
import com.czg.utils.PageUtil;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryCondition;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.spring.service.impl.ServiceImpl;
import com.czg.market.entity.MemberOrder;
import com.czg.market.service.MemberOrderService;
import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Map;
/**
* 会员充值订单 服务层实现。
@@ -64,11 +60,11 @@ public class MemberOrderServiceImpl extends ServiceImpl<MemberOrderMapper, Membe
private OrderPaymentService paymentService;
@Override
public Page<MemberOrder> pageInfo(String startTime, String endTime, String key) {
public Map<String, Object> pageInfo(String startTime, String endTime, String key) {
LocalDateTime start = StrUtil.isBlank(startTime) ? null : DateUtil.parseLocalDateTime(startTime);
LocalDateTime end = StrUtil.isBlank(endTime) ? null : DateUtil.parseLocalDateTime(endTime);
return page(PageUtil.buildPage(), QueryWrapper.create()
Map<String, Object> map = BeanUtil.beanToMap(page(PageUtil.buildPage(), QueryWrapper.create()
.leftJoin(UserInfoTableDef.USER_INFO).on(UserInfoTableDef.USER_INFO.ID.eq(MemberOrderTableDef.MEMBER_ORDER.USER_ID))
.leftJoin(ShopUserTableDef.SHOP_USER).on(ShopUserTableDef.SHOP_USER.MAIN_SHOP_ID.eq(MemberOrderTableDef.MEMBER_ORDER.SHOP_ID)
.and(ShopUserTableDef.SHOP_USER.USER_ID.eq(MemberOrderTableDef.MEMBER_ORDER.USER_ID)))
@@ -85,7 +81,24 @@ public class MemberOrderServiceImpl extends ServiceImpl<MemberOrderMapper, Membe
})
.eq(MemberOrder::getShopId, StpKit.USER.getMainShopId())
.orderBy(MemberOrder::getCreateTime, true)
);
));
map.put("totalAmount", getOneAsOpt(QueryWrapper.create()
.leftJoin(UserInfoTableDef.USER_INFO).on(UserInfoTableDef.USER_INFO.ID.eq(MemberOrderTableDef.MEMBER_ORDER.USER_ID))
.leftJoin(ShopUserTableDef.SHOP_USER).on(ShopUserTableDef.SHOP_USER.MAIN_SHOP_ID.eq(MemberOrderTableDef.MEMBER_ORDER.SHOP_ID)
.and(ShopUserTableDef.SHOP_USER.USER_ID.eq(MemberOrderTableDef.MEMBER_ORDER.USER_ID)))
.le(MemberOrder::getCreateTime, end)
.ge(MemberOrder::getCreateTime, start)
.and(a -> {
a.or(r -> {
r.like(ShopUser::getId, key);
});
a.or(r -> {
r.like(UserInfo::getNickName, key);
});
})
.eq(MemberOrder::getShopId, StpKit.USER.getMainShopId()), BigDecimal.class).orElse(BigDecimal.ZERO));
return map;
}
@Override