mitao
2025-01-17 afa0dbb4f54e7244835dd67ec33c3e545f122f71
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderController.java
@@ -2,26 +2,27 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.order.domain.dto.MerOrderPageDto;
import com.ruoyi.order.domain.dto.MgtMemberOrderPageDto;
import com.ruoyi.order.domain.dto.MgtMemberOrderTotalDto;
import com.ruoyi.order.domain.vo.MerOrderPageVo;
import com.ruoyi.order.domain.vo.MgtMemberOrderPageVo;
import com.ruoyi.order.domain.vo.MgtMemberOrderTotalVo;
import com.ruoyi.order.domain.dto.MgtShopAllOrderPageDto;
import com.ruoyi.order.domain.dto.MgtShopOrderPageDto;
import com.ruoyi.order.domain.vo.*;
import com.ruoyi.order.service.order.OrderService;
import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.math.BigInteger;
import java.util.List;
import static org.reflections.Reflections.log;
import java.util.stream.Collectors;
/**
 * @author jqs34
@@ -59,4 +60,136 @@
        return R.ok(page.setRecords(mgtMemberOrderPageVoList));
    }
    @RequestMapping(value = "/exportPageMgtMemberOrder", method = RequestMethod.POST)
    @ApiOperation(value = "导出获取用户订单列表")
    public void exportPageMgtMemberOrder(MgtMemberOrderPageDto mgtMemberOrderPageDto, HttpServletResponse response) {
        Long userId = SecurityUtils.getUserId();
        mgtMemberOrderPageDto.setUserId(userId);
        Page<MgtMemberOrderPageVo> page = new Page<>();
        if(mgtMemberOrderPageDto.getPageSize() > 5000){
            page.setSize(5000);
            page.setCurrent(1);
        }else{
            page.setSize(mgtMemberOrderPageDto.getPageSize());
            page.setCurrent(mgtMemberOrderPageDto.getPageNum());
        }
        List<MgtMemberOrderPageVo> mgtMemberOrderPageVoList = orderService.pageMgtMemberOrder(page,mgtMemberOrderPageDto);
        if(!mgtMemberOrderPageVoList.isEmpty()){
            List<MgtOrderGoodsPageVo> mgtOrderGoodsVoList;
            String goodsString;
            for(MgtMemberOrderPageVo entity : mgtMemberOrderPageVoList){
                mgtOrderGoodsVoList = entity.getMgtOrderGoodsVoList();
                goodsString = mgtOrderGoodsVoList.stream()
                        .map(goods -> goods.getGoodsName() + "*" + goods.getBuyNum())
                        .collect(Collectors.joining(";"));
                entity.setGoodsInfo(goodsString);
            }
        }
        ExcelUtil<MgtMemberOrderPageVo> util = new ExcelUtil<MgtMemberOrderPageVo>(MgtMemberOrderPageVo.class);
        util.exportExcel(response, mgtMemberOrderPageVoList, "用户订单列表");
    }
    @RequestMapping(value = "/getMgtOrderTotal", method = RequestMethod.POST)
    @ApiOperation(value = "获取订单统计")
    public R<MgtOrderTotal> getMgtOrderTotal(@RequestBody MgtShopOrderPageDto mgtShopOrderPageDto) {
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        MgtOrderTotal mgtOrderTotal = orderService.getMgtOrderTotal(mgtShopOrderPageDto);
        return R.ok(mgtOrderTotal);
    }
    @RequestMapping(value = "/pageMgtActivityOrder", method = RequestMethod.POST)
    @ApiOperation(value = "平台获取秒杀订单列表")
    public R<Page<MgtActivityOrderPageVo>> pageMgtActivityOrder(@RequestBody MgtShopOrderPageDto mgtShopOrderPageDto) {
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        Page<MgtActivityOrderPageVo> page = new Page<>();
        page.setSize(mgtShopOrderPageDto.getPageSize());
        page.setCurrent(mgtShopOrderPageDto.getPageNum());
        List<MgtActivityOrderPageVo> mgtActivityOrderPageVos = orderService.pageMgtActivityOrder(page,mgtShopOrderPageDto);
        return R.ok(page.setRecords(mgtActivityOrderPageVos));
    }
    @RequestMapping(value = "/exportPageMgtActivityOrder", method = RequestMethod.POST)
    @ApiOperation(value = "导出秒杀订单列表")
    public void exportPageMgtActivityOrder( MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) {
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        Page<MgtActivityOrderPageVo> page = new Page<>();
        page.setSize(Integer.MAX_VALUE);
        page.setCurrent(1);
        List<MgtActivityOrderPageVo> mgtActivityOrderPageVos = orderService.pageMgtActivityOrder(page,mgtShopOrderPageDto);
        ExcelUtil<MgtActivityOrderPageVo> util = new ExcelUtil<MgtActivityOrderPageVo>(MgtActivityOrderPageVo.class);
        util.exportExcel(response, mgtActivityOrderPageVos, "秒杀订单列表", "秒杀订单列表");
    }
    @RequestMapping(value = "/pageMgtShopOrder", method = RequestMethod.POST)
    @ApiOperation(value = "平台获取门店订单列表")
    public R<Page<MgtShopOrderPageVo>> pageMgtShopOrder(@RequestBody MgtShopOrderPageDto mgtShopOrderPageDto) {
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        Page<MgtShopOrderPageVo> page = new Page<>();
        page.setSize(mgtShopOrderPageDto.getPageSize());
        page.setCurrent(mgtShopOrderPageDto.getPageNum());
        List<MgtShopOrderPageVo> shopOrderPageVoList = orderService.pageMgtShopOrder(page,mgtShopOrderPageDto);
        return R.ok(page.setRecords(shopOrderPageVoList));
    }
    @RequestMapping(value = "/exportPageMgtShopOrder", method = RequestMethod.POST)
    @ApiOperation(value = "导出门店订单列表")
    public void exportPageMgtShopOrder( MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) {
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        Page<MgtShopOrderPageVo> page = new Page<>();
        page.setSize(Integer.MAX_VALUE);
        page.setCurrent(1);
        List<MgtShopOrderPageVo> shopOrderPageVoList = orderService.pageMgtShopOrder(page,mgtShopOrderPageDto);
        ExcelUtil<MgtShopOrderPageVo> util = new ExcelUtil<MgtShopOrderPageVo>(MgtShopOrderPageVo.class);
        util.exportExcel(response, shopOrderPageVoList, "门店订单列表", "门店订单列表");
    }
    @RequestMapping(value = "/getMgtOrderDetail", method = RequestMethod.POST)
    @ApiOperation(value = "获取订单详情")
    public R<MgtOrderDetailVo> getMgtOrderDetail(@RequestBody MgtBaseGetDto mgtBaseGetDto) {
        Long userId = SecurityUtils.getUserId();
        mgtBaseGetDto.setUserId(userId);
        MgtOrderDetailVo mgtOrderDetail = orderService.getMgtOrderDetail(mgtBaseGetDto.getId());
        return R.ok(mgtOrderDetail);
    }
    @RequestMapping(value = "/getMgtShopAllOrderTotal", method = RequestMethod.POST)
    @ApiOperation(value = "获取商户订单统计")
    public R<MgtShopAllOrderTotal> getMgtShopAllOrderTotal(@RequestBody MgtShopAllOrderPageDto mgtShopAllOrderPageDto) {
        Long userId = SecurityUtils.getUserId();
        mgtShopAllOrderPageDto.setUserId(userId);
        MgtShopAllOrderTotal shopAllOrderTotal = orderService.getMgtShopAllOrderTotal(mgtShopAllOrderPageDto);
        return R.ok(shopAllOrderTotal);
    }
    @RequestMapping(value = "/pageMgtShopAllOrder", method = RequestMethod.POST)
    @ApiOperation(value = "平台获取商户订单记录")
    public R<Page<MgtShopAllOrderPageVo>> pageMgtShopAllOrder(@RequestBody MgtShopAllOrderPageDto mgtShopAllOrderPageDto) {
        Long userId = SecurityUtils.getUserId();
        mgtShopAllOrderPageDto.setUserId(userId);
        Page<MgtShopAllOrderPageVo> page = new Page<>();
        page.setSize(mgtShopAllOrderPageDto.getPageSize());
        page.setCurrent(mgtShopAllOrderPageDto.getPageNum());
        List<MgtShopAllOrderPageVo> shopAllOrderPageVoList = orderService.pageMgtShopAllOrder(page,mgtShopAllOrderPageDto);
        return R.ok(page.setRecords(shopAllOrderPageVoList));
    }
    @RequestMapping(value = "/exportPageMgtShopAllOrder", method = RequestMethod.POST)
    @ApiOperation(value = "导出平台获取商户订单记录")
    public void pageMgtShopAllOrder(MgtShopAllOrderPageDto mgtShopAllOrderPageDto, HttpServletResponse response) {
        Long userId = SecurityUtils.getUserId();
        mgtShopAllOrderPageDto.setUserId(userId);
        Page<MgtShopAllOrderPageVo> page = new Page<>();
        page.setSize(mgtShopAllOrderPageDto.getPageSize());
        page.setCurrent(mgtShopAllOrderPageDto.getPageNum());
        List<MgtShopAllOrderPageVo> shopAllOrderPageVoList = orderService.pageMgtShopAllOrder(page,mgtShopAllOrderPageDto);
        ExcelUtil<MgtShopAllOrderPageVo> util = new ExcelUtil<MgtShopAllOrderPageVo>(MgtShopAllOrderPageVo.class);
        util.exportExcel(response, shopAllOrderPageVoList, "商户订单记录");
    }
}