gqx 2 jaren geleden
bovenliggende
commit
5f2dd2de38

+ 108 - 4
jeecg-mall-api/src/main/java/org/jeecg/modules/bus/controller/HotelController.java

@@ -41,7 +41,9 @@ import org.jeecg.modules.mall.service.*;
 import org.jeecg.modules.order.entity.CesOrderComment;
 import org.jeecg.modules.order.service.impl.CesOrderCommentServiceImpl;
 import org.jeecg.modules.pos.entity.PosTable;
+import org.jeecg.modules.pos.entity.PosType;
 import org.jeecg.modules.pos.service.IPosTableService;
+import org.jeecg.modules.pos.service.IPosTypeService;
 import org.jeecg.modules.rooms.DTO.CanUseRequestParamDto;
 import org.jeecg.modules.rooms.Vo.CanUseResultVo;
 import org.jeecg.modules.rooms.entity.*;
@@ -126,6 +128,8 @@ public class HotelController extends WebConfig {
     private IMallPosTableOrderGoodsDetailService mallPosTableOrderGoodsDetailService;
     @Resource
     private IPosTableService posTableService;
+    @Resource
+    private IPosTypeService posTypeService;
     /**
      * 酒店列表查询
      *
@@ -918,12 +922,12 @@ public class HotelController extends WebConfig {
     }
 
     /**
-     * 通过id查询酒店外卖订单列表
+     * 通过id查询酒店外卖订单详情
      *
      * @param id
      * @return
      */
-    @ApiOperation(value = "通过id查询酒店外卖订单列表", notes = "通过id查询酒店外卖订单列表")
+    @ApiOperation(value = "通过id查询酒店外卖订单详情", notes = "通过id查询酒店外卖订单详情")
     @GetMapping(value = "/hotel-goods-order-info")
     @ApiVersion(group = ApiVersionConstant.FAP_MALLAPI101)
     @ApiLogin
@@ -1110,9 +1114,109 @@ public class HotelController extends WebConfig {
     @GetMapping(value = "/pos-table-info")
     @ApiVersion(group = ApiVersionConstant.FAP_MALLAPI101)
     @ApiLogin
-    public Result<PosTable> getPosTableInfo(@RequestParam(name = "id") String id)
-    {
+    public Result<PosTable> getPosTableInfo(@RequestParam(name = "id") String id) {
         PosTable posTable = posTableService.getById(id);
+        if (posTable != null) {
+            PosType posType = posTypeService.getById(posTable.getPosTypeId());
+            if (posType != null) {
+                posTable.setTypeName(posType.getName());
+            }
+        }
         return Result.ok(posTable);
     }
+
+
+    /**
+     * pos桌台扫码点餐订单列表
+     * @param mallPosTableOrderGoods
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    @ApiOperation(value = "pos桌台扫码点餐订单列表", notes = "pos桌台扫码点餐订单列表")
+    @GetMapping(value = "/pos-table-goods-order-list")
+    @ApiVersion(group = ApiVersionConstant.FAP_MALLAPI101)
+    @ApiLogin
+    public Result<IPage<MallPosTableOrderGoods>> getPosTableGoodsOrderPageList(MallPosTableOrderGoods mallPosTableOrderGoods,
+                                                                    @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                                    @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                                    HttpServletRequest req) {
+        String tenantId = TenantContextHolder.getTenantId();
+        String userId = ThirdSessionHolder.getUserId();
+        LambdaQueryWrapper<MallPosTableOrderGoods> queryWrapper = QueryGenerator.initQueryWrapper(mallPosTableOrderGoods, req.getParameterMap()).lambda();
+        queryWrapper.eq(MallPosTableOrderGoods::getTenantId, tenantId);
+        queryWrapper.eq(MallPosTableOrderGoods::getMallUserId, userId);
+        Page<MallPosTableOrderGoods> page = new Page<MallPosTableOrderGoods>(pageNo, pageSize);
+        IPage<MallPosTableOrderGoods> pageList = mallPosTableOrderGoodsService.page(page, queryWrapper);
+        pageList.getRecords().forEach(t -> {
+            if (t.getStatus().equals(1)) {
+                t.setStatusName("待接单");
+            } else if (t.getStatus().equals(2)) {
+                t.setStatusName("已接单");
+            } else if (t.getStatus().equals(3)) {
+                t.setStatusName("已完成");
+            } else if (t.getStatus().equals(4)) {
+                t.setStatusName("已拒绝");
+            } else if (t.getStatus().equals(5)) {
+                t.setStatusName("已取消");
+            }
+            LambdaQueryWrapper<MallPosTableOrderGoodsDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+            lambdaQueryWrapper.eq(MallPosTableOrderGoodsDetail::getOrderCode, t.getCode());
+            List<MallPosTableOrderGoodsDetail> list=mallPosTableOrderGoodsDetailService.list(lambdaQueryWrapper);
+            if(ObjectUtils.isNotEmpty(list)){
+                list.forEach(i->{
+                    i.setGoodsInfo(cesGoodsService.getById(i.getGoodsId()));
+                });
+            }
+            t.setDetailList(list);
+
+            PosTable posTable=posTableService.getById(t.getPosTableId());
+            if(posTable!=null) {
+                t.setTableNo(posTable.getName());
+            }
+        });
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 通过id查询pos桌台扫码点餐订单详情
+     *
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "通过id查询pos桌台扫码点餐订单详情", notes = "通过id查询pos桌台扫码点餐订单详情")
+    @GetMapping(value = "/pos-table-goods-order-info")
+    @ApiVersion(group = ApiVersionConstant.FAP_MALLAPI101)
+    @ApiLogin
+    public Result<MallPosTableOrderGoods> getPosTableGoodsOrderInfo(@RequestParam(name = "id", required = true) String id) {
+        MallPosTableOrderGoods mallPosTableOrderGoods = mallPosTableOrderGoodsService.getById(id);
+        if (mallPosTableOrderGoods.getStatus().equals(1)) {
+            mallPosTableOrderGoods.setStatusName("待接单");
+        } else if (mallPosTableOrderGoods.getStatus().equals(2)) {
+            mallPosTableOrderGoods.setStatusName("已接单");
+        } else if (mallPosTableOrderGoods.getStatus().equals(3)) {
+            mallPosTableOrderGoods.setStatusName("已完成");
+        } else if (mallPosTableOrderGoods.getStatus().equals(4)) {
+            mallPosTableOrderGoods.setStatusName("已拒绝");
+        } else if (mallPosTableOrderGoods.getStatus().equals(5)) {
+            mallPosTableOrderGoods.setStatusName("已取消");
+        }
+        LambdaQueryWrapper<MallPosTableOrderGoodsDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(MallPosTableOrderGoodsDetail::getOrderCode, mallPosTableOrderGoods.getCode());
+        List<MallPosTableOrderGoodsDetail> list=mallPosTableOrderGoodsDetailService.list(lambdaQueryWrapper);
+        if(ObjectUtils.isNotEmpty(list)){
+            list.forEach(i->{
+                i.setGoodsInfo(cesGoodsService.getById(i.getGoodsId()));
+            });
+        }
+        mallPosTableOrderGoods.setDetailList(list);
+
+        PosTable posTable=posTableService.getById(mallPosTableOrderGoods.getPosTableId());
+        if(posTable!=null) {
+            mallPosTableOrderGoods.setTableNo(posTable.getName());
+        }
+        return Result.OK(mallPosTableOrderGoods);
+    }
+
 }

+ 41 - 11
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mall/controller/MallPosTableOrderGoodsController.java

@@ -11,12 +11,14 @@ import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import org.apache.commons.lang3.ObjectUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.business.entity.BusHotel;
+import org.jeecg.modules.mall.entity.MallOrderGoods;
 import org.jeecg.modules.mall.entity.MallOrderGoodsDetail;
 import org.jeecg.modules.mall.entity.MallPosTableOrderGoods;
 import org.jeecg.modules.mall.entity.MallPosTableOrderGoodsDetail;
@@ -86,8 +88,30 @@ private CesGoodsServiceImpl cesGoodsService;
 	public Result<IPage<MallPosTableOrderGoods>> queryPageList(MallPosTableOrderGoods mallPosTableOrderGoods,
 								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
 								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+															   @RequestParam(name="keyword",required = false) String keyword,
+															   @RequestParam(name="startTime",required = false) String startTime,
+															   @RequestParam(name="endTime",required = false) String endTime,
 								   HttpServletRequest req) {
-		QueryWrapper<MallPosTableOrderGoods> queryWrapper = QueryGenerator.initQueryWrapper(mallPosTableOrderGoods, req.getParameterMap());
+		LambdaQueryWrapper<MallPosTableOrderGoods> queryWrapper = QueryGenerator.initQueryWrapper(mallPosTableOrderGoods, req.getParameterMap()).lambda();
+		if (ObjectUtils.isNotEmpty(startTime)) {
+			queryWrapper.ge(MallPosTableOrderGoods::getCreateTime, DateUtil.parseDate(startTime));
+		}
+		if (ObjectUtils.isNotEmpty(endTime)) {
+			queryWrapper.le(MallPosTableOrderGoods::getCreateTime, DateUtil.parseDate(endTime));
+		}
+		if (ObjectUtils.isNotEmpty(keyword)) {
+			LambdaQueryWrapper<PosTable> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+			lambdaQueryWrapper.eq(PosTable::getName, keyword);
+			List<PosTable> posTables = posTableService.list(lambdaQueryWrapper);
+			queryWrapper.and(t -> {
+				t.or().like(MallPosTableOrderGoods::getCode, "%" + keyword + "%");
+				if (posTables != null) {
+					posTables.forEach(p -> {
+						t.or().eq(MallPosTableOrderGoods::getPosTableId, p.getId());
+					});
+				}
+			});
+		}
 		Page<MallPosTableOrderGoods> page = new Page<MallPosTableOrderGoods>(pageNo, pageSize);
 		IPage<MallPosTableOrderGoods> pageList = mallPosTableOrderGoodsService.page(page, queryWrapper);
 		pageList.getRecords().forEach(t -> {
@@ -99,16 +123,22 @@ private CesGoodsServiceImpl cesGoodsService;
 					t.setRegionName(posRegion.getName());
 				}
 			}
-			if (t.getStatus().equals(1)) {
-				t.setStatusName("待接单");
-			} else if (t.getStatus().equals(2)) {
-				t.setStatusName("已接单");
-			} else if (t.getStatus().equals(3)) {
-				t.setStatusName("已完成");
-			} else if (t.getStatus().equals(4)) {
-				t.setStatusName("已拒绝");
-			} else if (t.getStatus().equals(5)) {
-				t.setStatusName("已取消");
+			switch (t.getStatus()) {
+				case 1:
+					t.setStatusName("待接单");
+					break;
+				case 2:
+					t.setStatusName("已接单");
+					break;
+				case 3:
+					t.setStatusName("已完成");
+					break;
+				case 4:
+					t.setStatusName("已拒绝");
+					break;
+				case 5:
+					t.setStatusName("已取消");
+					break;
 			}
 			LambdaQueryWrapper<MallPosTableOrderGoodsDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 			lambdaQueryWrapper.eq(MallPosTableOrderGoodsDetail::getOrderCode, t.getCode());