1
This commit is contained in:
1 parent
72e23fbdbe
commit
687906f16c
6 files changed
+105
-6
No files matched your search
+16
@@ -124,4 +124,20 @@ public class BoxesInfoEntity extends Model<BoxesInfoEntity> {
|
||||
|
||||
@Schema(description="部门id")
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 获取餐桌类型
|
||||
* @return 餐桌类型
|
||||
*/
|
||||
public Integer getTableType() {
|
||||
return tableType;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置餐桌类型
|
||||
* @param tableType 餐桌类型
|
||||
*/
|
||||
public void setTableType(Integer tableType) {
|
||||
this.tableType = tableType;
|
||||
}
|
||||
}
|
||||
+14
@@ -185,4 +185,18 @@ public class CanteenOnlineSpuEntity extends Model<CanteenOnlineSpuEntity> {
|
||||
|
||||
@Schema(description="关联每日菜谱id")
|
||||
private Long linkSpuId;
|
||||
|
||||
/**
|
||||
* 菜品类型 1-常驻菜品 2-每日菜品
|
||||
*/
|
||||
@Schema(description="菜品类型 1-常驻菜品 2-每日菜品")
|
||||
@TableField(exist = false)
|
||||
private Integer dishType;
|
||||
|
||||
/**
|
||||
* 菜品类型名称
|
||||
*/
|
||||
@Schema(description="菜品类型名称")
|
||||
@TableField(exist = false)
|
||||
private String dishTypeName;
|
||||
}
|
||||
+6
@@ -54,6 +54,12 @@ public class AppBoxesInfoVO {
|
||||
*/
|
||||
private Integer tableType;
|
||||
|
||||
/**
|
||||
* 餐桌类型名称
|
||||
*/
|
||||
@Schema(description="餐桌类型名称")
|
||||
private String tableTypeName;
|
||||
|
||||
/**
|
||||
* 商户id
|
||||
*/
|
||||
|
||||
+34
-3
@@ -164,14 +164,45 @@ public class BoxesInfoController {
|
||||
wrapper.eq(StrUtil.isNotBlank(boxesInfo.getName()), BoxesInfoEntity::getName, boxesInfo.getName());
|
||||
wrapper.eq(ObjectUtil.isNotEmpty(boxesInfo.getStatus()), BoxesInfoEntity::getStatus, boxesInfo.getStatus());
|
||||
wrapper.eq(ObjectUtil.isNotEmpty(boxesInfo.getTableType()), BoxesInfoEntity::getTableType, boxesInfo.getTableType());
|
||||
Page pageResult = boxesInfo.selectPage(page, wrapper);
|
||||
|
||||
// 使用service的分页方法
|
||||
Page<BoxesInfoEntity> pageResult = boxesInfoService.page(page, wrapper);
|
||||
List<AppBoxesInfoVO> appInfoRespVOS = new ArrayList<>();
|
||||
|
||||
pageResult.getRecords().forEach(x -> {
|
||||
AppBoxesInfoVO appBoxesInfoVO = com.bsd.pjcloud.common.core.util.BeanUtils.toBean(x, AppBoxesInfoVO.class);
|
||||
// 转换餐桌类型
|
||||
Integer tableType = x.getTableType();
|
||||
if (tableType != null) {
|
||||
switch (tableType) {
|
||||
case 1:
|
||||
appBoxesInfoVO.setTableTypeName("小桌(2-4人)");
|
||||
break;
|
||||
case 2:
|
||||
appBoxesInfoVO.setTableTypeName("中桌(4-6人)");
|
||||
break;
|
||||
case 3:
|
||||
appBoxesInfoVO.setTableTypeName("大桌(6-8人)");
|
||||
break;
|
||||
case 4:
|
||||
appBoxesInfoVO.setTableTypeName("包间(8人以上)");
|
||||
break;
|
||||
default:
|
||||
appBoxesInfoVO.setTableTypeName("未知类型");
|
||||
break;
|
||||
}
|
||||
}
|
||||
appInfoRespVOS.add(appBoxesInfoVO);
|
||||
});
|
||||
pageResult.setRecords(appInfoRespVOS);
|
||||
return R.ok(pageResult);
|
||||
|
||||
// 创建新的Page对象,避免类型转换问题
|
||||
Page<AppBoxesInfoVO> resultPage = new Page<>();
|
||||
resultPage.setCurrent(pageResult.getCurrent());
|
||||
resultPage.setSize(pageResult.getSize());
|
||||
resultPage.setTotal(pageResult.getTotal());
|
||||
resultPage.setRecords(appInfoRespVOS);
|
||||
|
||||
return R.ok(resultPage);
|
||||
}
|
||||
|
||||
@PostMapping("/createBooking")
|
||||
|
||||
+17
-2
@@ -50,15 +50,30 @@ public class CanteenOnlineSpuController {
|
||||
*
|
||||
* @param page 分页对象
|
||||
* @param canteenOnlineSpu 在线点餐spu
|
||||
* @param dishType 菜品类型筛选:1-常驻菜品(linkSpuId为空),2-每日菜品(linkSpuId不为空)
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "分页查询", description = "分页查询")
|
||||
@Operation(summary = "分页查询", description = "分页查询,支持按菜品类型筛选:1-常驻菜品,2-每日菜品")
|
||||
@GetMapping("/page")
|
||||
@PreAuthorize("@pms.hasPermission('canteen_canteenOnlineSpu_view')")
|
||||
public R getCanteenOnlineSpuPage(@ParameterObject Page page, @ParameterObject CanteenOnlineSpuEntity canteenOnlineSpu) {
|
||||
public R getCanteenOnlineSpuPage(@ParameterObject Page page,
|
||||
@ParameterObject CanteenOnlineSpuEntity canteenOnlineSpu,
|
||||
@RequestParam(value = "dishType", required = false) Integer dishType) {
|
||||
LambdaQueryWrapper<CanteenOnlineSpuEntity> wrapper = Wrappers.lambdaQuery();
|
||||
wrapper.like(StrUtil.isNotBlank(canteenOnlineSpu.getName()), CanteenOnlineSpuEntity::getName, canteenOnlineSpu.getName());
|
||||
wrapper.eq(Objects.nonNull(canteenOnlineSpu.getCategoryId()), CanteenOnlineSpuEntity::getCategoryId, canteenOnlineSpu.getCategoryId());
|
||||
|
||||
// 根据菜品类型筛选
|
||||
if (Objects.nonNull(dishType)) {
|
||||
if (dishType == 1) {
|
||||
// 1-常驻菜品:linkSpuId为空
|
||||
wrapper.isNull(CanteenOnlineSpuEntity::getLinkSpuId);
|
||||
} else if (dishType == 2) {
|
||||
// 2-每日菜品:linkSpuId不为空
|
||||
wrapper.isNotNull(CanteenOnlineSpuEntity::getLinkSpuId);
|
||||
}
|
||||
}
|
||||
|
||||
return R.ok(canteenOnlineSpuService.pageScope(page, wrapper));
|
||||
}
|
||||
|
||||
|
||||
+18
-1
@@ -32,6 +32,7 @@ import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.Objects;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
|
||||
/**
|
||||
* 在线点餐spu
|
||||
@@ -167,6 +168,22 @@ public class CanteenOnlineSpuServiceImpl extends ServiceImpl<CanteenOnlineSpuMap
|
||||
|
||||
@Override
|
||||
public Object pageScope(Page page, LambdaQueryWrapper<CanteenOnlineSpuEntity> wrapper) {
|
||||
return baseMapper.selectPageByScope(page, wrapper, DataScope.of());
|
||||
Page pageData = baseMapper.selectPageByScope(page, wrapper, DataScope.of());
|
||||
List<CanteenOnlineSpuEntity> records = pageData.getRecords();
|
||||
|
||||
if (CollUtil.isNotEmpty(records)) {
|
||||
// 为每条记录添加菜品类型标识
|
||||
records.forEach(record -> {
|
||||
if (record.getLinkSpuId() == null) {
|
||||
record.setDishTypeName("常驻菜品");
|
||||
record.setDishType(1);
|
||||
} else {
|
||||
record.setDishTypeName("每日菜品");
|
||||
record.setDishType(2);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return pageData;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user