jiangping
2025-02-28 69283b5a4559509187516355602e32e4bdac9d5d
server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java
@@ -10,16 +10,21 @@
import com.doumee.core.utils.DateUtil;
import com.doumee.dao.business.model.Goodsorder;
import com.doumee.dao.business.model.WxBillDetail;
import com.doumee.dao.business.vo.DiscountGoodsorderExportVO;
import com.doumee.dao.business.vo.GoodsorderExportVO;
import com.doumee.dao.business.vo.GoodsorderTotalDataVO;
import com.doumee.dao.business.web.request.GoodsorderBackDTO;
import com.doumee.dao.business.web.request.GoodsorderCanBanlanceDTO;
import com.doumee.dao.business.web.response.GoodsorderDetailDTO;
import com.doumee.dao.business.web.response.GoodsorderDetailVO;
import com.doumee.service.business.GoodsorderService;
import com.doumee.service.business.GoodsorderService;
import com.doumee.service.business.RefundService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.checkerframework.checker.units.qual.C;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -27,6 +32,7 @@
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
 * @author 江蹄蹄
@@ -40,6 +46,8 @@
    @Autowired
    private GoodsorderService goodsorderService;
    @Autowired
    private RefundService refundService;
    @PreventRepeat
@@ -85,10 +93,13 @@
    public ApiResponse<PageData<Goodsorder>> findPage (@RequestBody PageWrap<Goodsorder> pageWrap) {
        return ApiResponse.success(goodsorderService.findPage(pageWrap));
    }
    @ApiOperation("线上交易汇总数据接口")
    @PostMapping("/getTotalData")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse<GoodsorderTotalDataVO> getTotalData (@RequestBody Goodsorder pageWrap) {
        pageWrap.setEndDate(pageWrap.getEndDate() != null ? pageWrap.getEndDate():pageWrap.getStartDate());
        return ApiResponse.success(goodsorderService.getTotalData(pageWrap));
    }
@@ -97,19 +108,38 @@
    @RequiresPermissions("business:goodsorder:exportExcel")
    public void exportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(Goodsorder.class).exportWithFirstAndEnd(goodsorderService.findPage(pageWrap).getRecords(), "订单列表_"+System.currentTimeMillis(),"订单列表_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response);
    }
    @ApiOperation("套餐卡订单列表-导出Excel")
    @PostMapping("/discountExportExcel")
    @RequiresPermissions("business:goodsorder:exportExcel")
    public void discountExportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) {
        List<Goodsorder> goodsorders = goodsorderService.findPage(pageWrap).getRecords();
        List<DiscountGoodsorderExportVO> discountGoodsorderExportVOList = new ArrayList<>();
        for (Goodsorder goodsorder:goodsorders) {
            DiscountGoodsorderExportVO discountGoodsorderExportVO = new DiscountGoodsorderExportVO();
            BeanUtils.copyProperties(goodsorder,discountGoodsorderExportVO);
            discountGoodsorderExportVO.setPayMoney(discountGoodsorderExportVO.getMoney());
            discountGoodsorderExportVO.setOrigin(Constants.ZERO);
            discountGoodsorderExportVOList.add(discountGoodsorderExportVO);
        }
        ExcelExporter.build(DiscountGoodsorderExportVO.class).exportWithFirstAndEnd(discountGoodsorderExportVOList, "订单列表_"+System.currentTimeMillis(),"订单列表_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response);
    }
    @ApiOperation("收款明细(微信对账明细)_分页查询")
    @PostMapping("/pageAccountDetail")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse<PageData<GoodsorderExportVO>> findPageAccountDetail(@RequestBody PageWrap<Goodsorder> pageWrap) {
        return ApiResponse.success(goodsorderService.findAccountDetailPage(pageWrap));
            return ApiResponse.success(goodsorderService.findAccountDetailPage(pageWrap));
    }
    @ApiOperation("收款明细(微信对账明细)_导出Excel")
    @PostMapping("/exportAccountDetailExcel")
    @RequiresPermissions("business:goodsorder:exportExcel")
    public void exportAccountDetailExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(GoodsorderExportVO.class).exportWithFirstAndEnd(goodsorderService.findExportAccountDetailPage(pageWrap.getModel()), "账单收款明细_"+System.currentTimeMillis(),"账单收款明细_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response);
            ExcelExporter.build(GoodsorderExportVO.class).exportWithFirstAndEnd(goodsorderService.findExportAccountDetailPage(pageWrap.getModel()), "账单收款明细_"+System.currentTimeMillis(),"账单收款明细_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response);
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
@@ -118,6 +148,12 @@
        return ApiResponse.success(goodsorderService.getGoodsorderDetailDTO(id));
    }
    @ApiOperation("订单详情-套餐卡")
    @GetMapping("/discountOrderDetail")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse<GoodsorderDetailVO> discountOrderDetail(@RequestParam String id) {
        return ApiResponse.success(goodsorderService.getGoodsorderDetailForDisCount(id));
    }
    /**
     * 强制结算订单
@@ -127,8 +163,8 @@
    @ApiOperation("强制结算订单")
    @PostMapping("/closerGoodsorder")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse closerGoodsorder(@RequestParam String id){
        goodsorderService.forceCloseGoodsorder(id);
    public ApiResponse closerGoodsorder(@RequestBody Goodsorder goodsorder){
        goodsorderService.forceCloseGoodsorder(goodsorder.getId());
        return ApiResponse.success(null);
    }
@@ -137,12 +173,15 @@
    @PostMapping("/backGoodsorder")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse backGoodsorder(@RequestBody GoodsorderBackDTO goodsorderBackDTO){
        goodsorderService.backGoodsorder(goodsorderBackDTO.getOrderId(),goodsorderBackDTO.getMoney(),goodsorderBackDTO.getReason());
        if(Objects.nonNull(goodsorderBackDTO) && Objects.isNull(goodsorderBackDTO.getBackType())){
            goodsorderBackDTO.setBackType(Constants.ONE);
        }
        goodsorderService.backGoodsorder(goodsorderBackDTO);
        return ApiResponse.success(null);
    }
    @ApiOperation("获取可退款信息")
    @PostMapping("/getGoodsorderCanBanlanceDTO")
    @GetMapping("/getGoodsorderCanBanlanceDTO")
    @RequiresPermissions("business:goodsorder:query")
    public ApiResponse<GoodsorderCanBanlanceDTO> getGoodsorderCanBanlanceDTO(@RequestParam String orderId){
        return ApiResponse.success(goodsorderService.getGoodsorderCanBanlanceDTO(orderId));