package com.ruoyi.demo.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaIgnore; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.demo.entity.MyPage; import com.ruoyi.demo.entity.bo.OrderAddBo; import com.ruoyi.demo.entity.bo.PlanBo; import com.ruoyi.demo.entity.vo.OrderVo; import com.ruoyi.demo.service.OrderService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; /** * 订单管理 */ @RestController @RequestMapping("/order") public class OrderController { @Autowired OrderService orderService; /** * 获取sign——用于测试 * @param bo 请求体 * @return */ // @SaCheckPermission("szzs:order:test") @SaIgnore @PostMapping("/getSign") public R getSign(@RequestBody OrderAddBo bo){ String sign = orderService.getSign(bo); if (sign.equals("error")) return R.fail("无效的appkey"); return R.ok(sign); } /** * 添加订单 * @param bo 请求体 * @return */ @SaIgnore @PostMapping() public R addOrder(@RequestBody @Validated(value = {AddGroup.class}) OrderAddBo bo){ int i = orderService.addOrder(bo); if (i == 1) return R.ok("添加成功"); if (i == -1) return R.fail("无效的appkey"); if (i == -3) return R.fail("校验sign出错"); return R.fail("添加失败"); } /** * 查询订单列表 * @param bo 请求体 * @return */ @SaCheckPermission("szzs:order:list") @PostMapping("/list") public R orderList(@RequestBody PlanBo bo){ if (bo.getStartTime() != null && bo.getEndTime() != null && bo.getStartTime().compareTo(bo.getEndTime()) > 0) return R.fail("起始时间不能大于结束时间"); return R.ok(orderService.getOrderList(bo)); } /** * 查询订单列表 * * @param bo 请求体 * @return */ @Log(title = "订单列表", businessType = BusinessType.EXPORT) @SaCheckPermission("szzs:order:export") @PostMapping("/export") public void export(@RequestBody PlanBo bo, HttpServletResponse response) { if (bo.getStartTime() != null && bo.getEndTime() != null && bo.getStartTime().compareTo(bo.getEndTime()) > 0) throw new ServiceException("起始时间不能大于结束时间"); MyPage orderList = orderService.getOrderList(bo); ExcelUtil.exportExcel(orderList.getRecords(), "订单列表", OrderVo.class, response); } }