From 4351e71d782741143a98f86f6648acd16689165f Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 27 May 2022 19:48:02 +0800 Subject: [PATCH] Merge branch 'developer' into hive2.0 --- zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java | 93 ++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 89 insertions(+), 4 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java index c2b6098..10237fb 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java +++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java @@ -1,14 +1,24 @@ package com.matrix.system.app.action; import com.matrix.core.constance.MatrixConstance; +import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.AjaxResult; +import com.matrix.core.pojo.PaginationVO; import com.matrix.core.tools.WebUtil; import com.matrix.system.app.dto.CreateOderItemDto; import com.matrix.system.app.dto.CreateOrderDto; +import com.matrix.system.app.dto.OrderListDto; import com.matrix.system.app.dto.ShoppingGoodsListDto; +import com.matrix.system.app.vo.OrderDetailVo; +import com.matrix.system.app.vo.ShoppingGoodsDetailVo; import com.matrix.system.app.vo.ShoppingGoodsListVo; import com.matrix.system.common.bean.SysUsers; +import com.matrix.system.common.tools.DataAuthUtil; +import com.matrix.system.hive.action.util.QueryUtil; import com.matrix.system.hive.bean.ShoppingGoodsCategory; +import com.matrix.system.hive.bean.SysOrder; +import com.matrix.system.hive.bean.SysShopInfo; +import com.matrix.system.hive.dao.SysShopInfoDao; import com.matrix.system.hive.plugin.util.CollectionUtils; import com.matrix.system.hive.pojo.ShoppingCarItem; import com.matrix.system.hive.pojo.ShoppingCarItemsVo; @@ -44,6 +54,9 @@ @Autowired private SysOrderService sysOrderService; + @Autowired + private SysShopInfoDao shopInfoDao; + @ApiOperation(value = "获取商品类型列表", notes = "获取商品类型列表") @ApiResponses({ @ApiResponse(code = 200, message = "ok", response = ShoppingGoodsCategory.class) @@ -52,9 +65,17 @@ public AjaxResult findShoppingGoodsType() { SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + SysShopInfo zbShop = shopInfoDao.selectZbShop(user.getCompanyId()); ShoppingGoodsCategory category = new ShoppingGoodsCategory(); - category.setShopId(user.getShopId()); - return AjaxResult.buildSuccessInstance(shoppingGoodsCategoryService.findByModel(category)); + category.setShopId(zbShop.getId()); + List<ShoppingGoodsCategory> list = new ArrayList<>(); + List<ShoppingGoodsCategory> byModel = shoppingGoodsCategoryService.findByModel(category); + ShoppingGoodsCategory type = new ShoppingGoodsCategory(); + type.setName("全部"); + type.setParentId(0L); + list.add(type); + list.addAll(byModel); + return AjaxResult.buildSuccessInstance(list); } @ApiOperation(value = "获取商品列表", notes = "获取商品列表") @@ -63,9 +84,27 @@ }) @PostMapping(value = "/findShoppingGoods") public AjaxResult findShoppingGoods(@RequestBody @Validated ShoppingGoodsListDto shoppingGoodsListDto) { - + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + if (!DataAuthUtil.hasAllShopAuth()) { + shoppingGoodsListDto.setShopId(user.getShopId()); + } + QueryUtil.setQueryLimitCom(shoppingGoodsListDto); return AjaxResult.buildSuccessInstance(shoppingGoodsService.findShoppingGoodsListForApi(shoppingGoodsListDto), shoppingGoodsService.findShoppingGoodsListTotalForApi(shoppingGoodsListDto)); } + + + @ApiOperation(value = "获取商品详情", notes = "获取商品详情") + @ApiResponses({ + @ApiResponse(code = 200, message = "ok", response = ShoppingGoodsDetailVo.class) + }) + @GetMapping(value = "/findGoodsDetailById/{goodsId}") + public AjaxResult findGoodsDetailById(@PathVariable("goodsId") Long goodsId) { + ShoppingGoodsDetailVo goodsDetail = shoppingGoodsService.findApiShoppingGoodsDetailById(goodsId); + AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功"); + ajaxResult.putInMap("goods", goodsDetail); + return ajaxResult; + } + @ApiOperation(value = "创建订单", notes = "创建订单") @PostMapping(value = "/createOrder") @@ -87,6 +126,7 @@ carItem.setShoppingGoods(shoppingGoodsService.findById(item.getGoodsId())); list.add(carItem); } + car.setCarItems(list); } int i = sysOrderService.createOrder(WebUtil.getSession(), car); if (i > 0) { @@ -96,4 +136,49 @@ return AjaxResult.buildFailInstance("下单失败"); } -} + @ApiOperation(value = "获取订单列表", notes = "获取订单列表") + @ApiResponses({ + @ApiResponse(code = 200, message = "ok", response = OrderDetailVo.class) + }) + @PostMapping(value = "/findOrderList") + public AjaxResult findOrderList(@RequestBody @Validated OrderListDto orderListDto) { + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + int offset = (orderListDto.getPageNum() - 1) * orderListDto.getPageSize(); + int limit = orderListDto.getPageSize(); + PaginationVO pageVo = new PaginationVO(); + pageVo.setOffset(offset); + pageVo.setLimit(limit); + + if (!DataAuthUtil.hasAllShopAuth()) { + orderListDto.setShopId(user.getShopId()); + } + QueryUtil.setQueryLimitCom(orderListDto); + return AjaxResult.buildSuccessInstance(sysOrderService.findApiOrderListInPage(orderListDto, pageVo), sysOrderService.findApiOrderListTotal(orderListDto)); + } + + @ApiOperation(value = "获取订单详情", notes = "获取订单详情") + @ApiResponses({ + @ApiResponse(code = 200, message = "ok", response = OrderDetailVo.class) + }) + @GetMapping(value = "/findOrderDetail/{orderId}") + public AjaxResult findOrderDetail(@PathVariable("orderId") Long orderId) { + OrderDetailVo orderDetail = sysOrderService.findApiOrderDetailByOrderId(orderId); + AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功"); + ajaxResult.putInMap("orderDetail", orderDetail); + return ajaxResult; + } + + @ApiOperation(value = "取消订单", notes = "取消订单") + @GetMapping(value = "/cancelOrder/{orderId}") + public AjaxResult cancelOrder(@PathVariable("orderId") Long orderId) { + SysOrder order = sysOrderService.findById(orderId); + if (order == null) { + throw new GlobleException("订单不存在"); + } + sysOrderService.cancelOrder(orderId); + + return AjaxResult.buildSuccessInstance("取消成功"); + + } + +} \ No newline at end of file -- Gitblit v1.9.1