package com.ylx.order.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ylx.common.core.domain.R; import com.ylx.order.domain.dto.OrderDateQueryDTO; import com.ylx.order.domain.dto.OrderDeleteDTO; import com.ylx.order.domain.dto.OrderSubmitDTO; import com.ylx.order.domain.vo.OrderDateQueryVo; import com.ylx.order.service.TOrderService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.validation.Valid; import java.util.List; @RestController @RequestMapping("/order") @Api(tags = {"订单模块"}) @Slf4j public class OrderController { @Resource private TOrderService orderService; @PreAuthorize("@customerAuth.isCustomer()") @ApiOperation("客户端用户提交订单") @PostMapping("/submit") public R submitOrder(@Validated @RequestBody OrderSubmitDTO dto) { this.orderService.submitOrder(dto); return R.ok(); } @PreAuthorize("@customerAuth.isCustomer()") @ApiOperation("根据日期范围等条件查询订单") @PostMapping("/queryByDate") public R> queryOrderByDate(@Valid @RequestBody OrderDateQueryDTO dto) { Page page = orderService.queryOrderList(dto); return R.ok(page); } @PreAuthorize("@customerAuth.isCustomer()") @ApiOperation("逻辑删除订单(移入回收站)") @PostMapping("/delete") public R deleteOrder(@Valid @RequestBody OrderDeleteDTO dto) { orderService.logicDeleteOrder(dto.getId()); return R.ok("删除成功"); } }