食堂:消费机菜单

This commit is contained in:
jjLv 2025-03-14 11:13:18 +08:00
parent 53b52e7ba2
commit 89d5369c4f
6 changed files with 151 additions and 35 deletions

View File

@ -0,0 +1,109 @@
package com.bonus.canteen.core.device.android.common.controller;
import com.bonus.canteen.core.device.android.common.service.DeviceMenuService;
import com.bonus.canteen.core.menu.vo.AndroidRecipeTypeDetailVO;
import com.bonus.canteen.core.menu.vo.IssueRecipeCompressVO;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.houqin.utils.HeaderFetchUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
@Api(
tags = {"设备基础接口(菜品)"}
)
@RequestMapping({"/api/v4/device/common/menu/"})
public class DeviceMenuController {
private static final Logger log = LoggerFactory.getLogger(DeviceMenuController.class);
@Autowired
private DeviceMenuService deviceMenuService;
@PostMapping({"/bind-info-config"})
@ApiOperation("获取菜谱菜品信息根据sn")
public IssueRecipeCompressVO queryBySn(@RequestHeader Map<String, String> headers) {
String machineSn = HeaderFetchUtil.getMachineSn(headers);
return this.deviceMenuService.queryBySn(machineSn);
}
// @PostMapping({"/bind-recipeid-info-config"})
// @ApiOperation("获取菜谱菜品信息根据菜谱Id")
// public IssueRecipeCompressVO queryByRecipeId(@RequestHeader Map<String, String> headers, @RequestBody Long content) {
// return this.deviceMenuService.queryByRecipeId(content);
// }
@PostMapping({"/all/menu-type-list"})
@ApiOperation("获取所有菜品类别")
public AjaxResult getAllMenuDishesTypeList() {
return AjaxResult.success(this.deviceMenuService.getAllMenuDishesTypeList());
}
// @PostMapping({"/order-evaluate-add"})
// @ApiOperation("新增订单菜品评价")
// public AjaxResult addAndroidOrderEvaluateSelfTerminal(@RequestBody MenuEvaluateSelfAddDTO content) {
// this.deviceMenuService.addAndroidOrderEvaluateSelfTerminal(content);
// return AjaxResult.success();
// }
//
// @PostMapping({"/dishes-evaluate-page"})
// @ApiOperation("获取指定菜品评价信息")
// public Page<AndroidDishesEvaluateVO> getAndroidDishesEvaluatePage(@RequestBody AndroidDishesEvaluateDTO content) {
// return this.deviceMenuService.getAndroidDishesEvaluatePage(content);
// }
@PostMapping({"/all/dishes-list"})
@ApiOperation("获取全部菜品")
public AjaxResult getProductionMachineRecipe() {
List<AndroidRecipeTypeDetailVO> androidRecipeTypeDetailVOList = this.deviceMenuService.getProductionMachineRecipe();
return AjaxResult.success(androidRecipeTypeDetailVOList);
}
//
// @PostMapping({"/all/dishes-list/page"})
// @ApiOperation("分页获取全部菜品")
// public AjaxResult getAllDishesByPage(@RequestBody PageDTO content) {
// PageVO<AndroidRecipeTypeDetailVO> androidRecipeTypeDetailVOList = this.deviceMenuService.getAllDishesByPage(content);
// return AjaxResult.success(androidRecipeTypeDetailVOList);
// }
// @PostMapping({"/recipe-detail"})
// @ApiOperation("获取菜谱详情")
// public List<AndroidRecipeDetailV2VO> getAndroidRecipeDetail(@RequestHeader Map<String, String> headers, @RequestBody @Valid AndroidRecipeDetailV2DTO content) {
// return this.deviceMenuService.getAndroidRecipeDetail(headers, content);
// }
//
// @PostMapping({"/get/recipe/detail/by/id"})
// @ApiOperation("设备获取指定菜谱的详情(手持机)")
// public AjaxResult androidGetRecipeDishes(@RequestHeader Map<String, String> headers, @RequestBody @Valid AndroidGetRecipeDishesDTO content) {
// List<AndroidGetRecipeDishesVO> resultList = this.deviceMenuService.androidGetRecipeDishes(headers, content);
// return AjaxResult.success(resultList);
// }
//
// @PostMapping({"/dishes/add"})
// @ApiOperation("设备添加菜品")
// public AjaxResult deviceAddDishes(@RequestHeader Map<String, String> headers, @RequestBody @Valid DeviceAddDishesDto content) {
// return AjaxResult.success(this.deviceMenuService.deviceAddDishes(content));
// }
//
// @PostMapping({"/dishes/add/to-recipe"})
// @ApiOperation("设备添加菜品到菜谱")
// public LeResponse<?> deviceAddDishesToRecipe(@RequestHeader Map<String, String> headers, @RequestBody @Valid LeRequest<AndroidAddRecipeDishesDTO> request) {
// String machineSn = HeaderFetchUtil.getMachineSn(headers);
// this.deviceMenuService.deviceAddDishesToRecipe(machineSn, (AndroidAddRecipeDishesDTO)request.getContent());
// return LeResponse.succ();
// }
//
// @PostMapping({"/recipe/get"})
// @ApiOperation("设备查询所有菜谱")
// public LeResponse<List<MenuRecipe>> deviceSearchRecipe(@RequestHeader Map<String, String> headers, @RequestBody @Valid LeRequest<DeviceSearchRecipeDto> request) {
// return LeResponse.succ(this.deviceMenuService.deviceSearchRecipe((DeviceSearchRecipeDto)request.getContent()));
// }
}

View File

@ -1,18 +1,24 @@
package com.bonus.canteen.core.device.android.common.service;
import cn.hutool.core.bean.BeanUtil;
import com.bonus.canteen.core.common.redis.RedisUtil;
import com.bonus.canteen.core.common.utils.JavaxValidateUtils;
import com.bonus.canteen.core.common.utils.TenantContextHolder;
import com.bonus.canteen.core.device.android.common.dto.MenuSendByDTO;
import com.bonus.canteen.core.device.android.common.dto.MenuSendDTO;
import com.bonus.canteen.core.device.android.constant.DeviceMqMessage;
import com.bonus.canteen.core.device.api.DeviceApi;
import com.bonus.canteen.core.device.manage.dto.DeviceSearchDTO;
import com.bonus.canteen.core.device.manage.model.DeviceInfo;
import com.bonus.canteen.core.device.manage.service.DeviceInfoService;
import com.bonus.canteen.core.device.mq.MacMessage;
import com.bonus.canteen.core.menu.api.MenuDishesApi;
import com.bonus.canteen.core.menu.api.MenuRecipeApi;
import com.bonus.canteen.core.menu.dto.IssueRecipeV2DTO;
import com.bonus.canteen.core.menu.entity.MenuDishesType;
import com.bonus.canteen.core.menu.vo.AndroidRecipeTypeDetailVO;
import com.bonus.canteen.core.menu.vo.IssueRecipeCompressVO;
import com.bonus.canteen.core.menu.vo.MenuDishesTypeAllVO;
import com.bonus.common.houqin.constant.LeConstants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -33,12 +39,12 @@ public class DeviceMenuService {
@Autowired
@Lazy
private DeviceInfoService deviceInfoService;
// @Autowired
// @Lazy
// private DeviceApi deviceApi;
// @Autowired
// @Lazy
// private MenuDishesApi menuDishesApi;
@Autowired
@Lazy
private DeviceApi deviceApi;
@Autowired
@Lazy
private MenuDishesApi menuDishesApi;
// @Autowired
// @Lazy
// private AndroidMenuService androidMenuService;
@ -71,20 +77,20 @@ public class DeviceMenuService {
});
}
//
// public IssueRecipeCompressVO queryBySn(String machineSn) {
// Long recipeId = this.deviceApi.getFirstRecipeIdBySn(machineSn);
// return recipeId == null ? new IssueRecipeCompressVO() : this.queryByRecipeId(recipeId);
// }
public IssueRecipeCompressVO queryBySn(String machineSn) {
Long recipeId = this.deviceApi.getFirstRecipeIdBySn(machineSn);
return recipeId == null ? new IssueRecipeCompressVO() : this.queryByRecipeId(recipeId);
}
//
// public IssueRecipeCompressVO queryByRecipeId(Long recipeId) {
// IssueRecipeV2DTO issueRecipeV2DTO = new IssueRecipeV2DTO(recipeId, LocalDate.now(), LocalDate.now().plusDays(6L));
// return this.menuRecipeApi.issueRecipeV2Compress(issueRecipeV2DTO);
// }
public IssueRecipeCompressVO queryByRecipeId(Long recipeId) {
IssueRecipeV2DTO issueRecipeV2DTO = new IssueRecipeV2DTO(recipeId, LocalDate.now(), LocalDate.now().plusDays(6L));
return this.menuRecipeApi.issueRecipeV2Compress(issueRecipeV2DTO);
}
//
// public List<MenuDishesTypeAllVO> getAllMenuDishesTypeList() {
// List<MenuDishesType> allMenuDishesType = this.menuDishesApi.getAllMenuDishesType();
// return BeanUtil.copyToList(allMenuDishesType, MenuDishesTypeAllVO.class);
// }
public List<MenuDishesTypeAllVO> getAllMenuDishesTypeList() {
List<MenuDishesType> allMenuDishesType = this.menuDishesApi.getAllMenuDishesType();
return BeanUtil.copyToList(allMenuDishesType, MenuDishesTypeAllVO.class);
}
//
// public void addAndroidOrderEvaluateSelfTerminal(MenuEvaluateSelfAddDTO menuEvaluateSelfAddDTO) {
// this.androidMenuService.addAndroidOrderEvaluateSelfTerminal(menuEvaluateSelfAddDTO);
@ -94,9 +100,9 @@ public class DeviceMenuService {
// return this.androidMenuService.getAndroidDishesEvaluatePage(content);
// }
//
// public List<AndroidRecipeTypeDetailVO> getProductionMachineRecipe() {
// return this.menuRecipeApi.getProductionMachineRecipe();
// }
public List<AndroidRecipeTypeDetailVO> getProductionMachineRecipe() {
return this.menuRecipeApi.getProductionMachineRecipe();
}
//
// public List<AndroidRecipeDetailV2VO> getAndroidRecipeDetail(Map<String, String> headers, AndroidRecipeDetailV2DTO content) {
// return this.androidMenuService.getAndroidRecipeDetail(headers, content);

View File

@ -9,11 +9,9 @@ import com.bonus.canteen.core.common.utils.TreeNodeUtil;
import com.bonus.canteen.core.customer.utils.DelFlagEnum;
import com.bonus.canteen.core.menu.dto.IssueRecipeV2DTO;
import com.bonus.canteen.core.menu.dto.MenuRecipeChangeSurplusNum;
import com.bonus.canteen.core.menu.entity.MenuDishes;
import com.bonus.canteen.core.menu.entity.MenuDishesStepDetail;
import com.bonus.canteen.core.menu.entity.MenuMaterialCategory;
import com.bonus.canteen.core.menu.entity.MenuRecipe;
import com.bonus.canteen.core.menu.entity.*;
import com.bonus.canteen.core.menu.mapper.MenuDishesMapper;
import com.bonus.canteen.core.menu.mapper.MenuDishesTypeMapper;
import com.bonus.canteen.core.menu.mapper.MenuMaterialCategoryMapper;
import com.bonus.canteen.core.menu.mapper.MenuRecipeMapper;
import com.bonus.canteen.core.menu.model.MenuDishesTypeModel;
@ -54,9 +52,9 @@ public class MenuDishesApi {
// @Autowired
// @Lazy
// private MenuCustomDictMapper menuCustomDictMapper;
// @Autowired
// @Lazy
// private MenuDishesTypeMapper menuDishesTypeMapper;
@Autowired
@Lazy
private MenuDishesTypeMapper menuDishesTypeMapper;
// @Autowired
// @Lazy
// private MenuMaterialMapper menuMaterialMapper;
@ -119,9 +117,9 @@ public class MenuDishesApi {
// return (MenuDishesType)this.menuDishesTypeMapper.selectOne((Wrapper)Wrappers.lambdaQuery(MenuDishesType.class).eq(MenuDishesType::getTypeId, typeId));
// }
//
// public List<MenuDishesType> getAllMenuDishesType() {
// return this.menuDishesTypeMapper.selectList((Wrapper)Wrappers.lambdaQuery(MenuDishesType.class).eq(MenuDishesType::getDelFlag, LeConstants.COMMON_NO));
// }
public List<MenuDishesType> getAllMenuDishesType() {
return this.menuDishesTypeMapper.selectList(Wrappers.lambdaQuery(MenuDishesType.class).eq(MenuDishesType::getDelFlag, LeConstants.COMMON_NO));
}
//
// public void updateCustLimitIdUse(Integer customId, Integer ifCustLimitIdUse) {
// }

View File

@ -14,6 +14,7 @@ import com.bonus.canteen.core.menu.mapper.MenuRecipeMapper;
import com.bonus.canteen.core.menu.service.MenuRecipeBindSortService;
import com.bonus.canteen.core.menu.service.MenuRecipeDishesService;
import com.bonus.canteen.core.menu.service.MenuRecipeService;
import com.bonus.canteen.core.menu.vo.AndroidRecipeTypeDetailVO;
import com.bonus.canteen.core.menu.vo.CheckDishesVo;
import com.bonus.canteen.core.menu.vo.IssueRecipeCompressVO;
import com.bonus.common.houqin.constant.DelFlagEnum;
@ -153,10 +154,10 @@ public class MenuRecipeApi {
MenuRecipeSortEnum sortEnum = this.getMenuRecipeSortEnum(deviceType);
return (List)(sortEnum != null && !ObjectUtil.isEmpty(deviceBindDTOS) ? this.menuAppRecipeMapper.getBindByTypeAndStalls(deviceBindDTOS, sortEnum.getBindType()) : new ArrayList());
}
//
// public List<AndroidRecipeTypeDetailVO> getProductionMachineRecipe() {
// return this.menuRecipeService.getProductionMachineRecipe();
// }
public List<AndroidRecipeTypeDetailVO> getProductionMachineRecipe() {
return this.menuRecipeService.getProductionMachineRecipe();
}
//
// public List<MenuSelfRecipeListVO> getAndroidRecipeListSelfTerminal(MenuSelfRecipeListDTO content) {
// return this.androidMenuService.getAndroidRecipeListSelfTerminal(content);

View File

@ -2293,6 +2293,7 @@ public class MenuRecipeServiceImpl extends ServiceImpl<MenuRecipeMapper, MenuRec
}
}
@Override
public List<AndroidRecipeTypeDetailVO> getProductionMachineRecipe() {
return this.menuDishesMapper.selectAllDishesByType();
}

View File

@ -81,4 +81,5 @@ public class IssueRecipeCompressVO implements Serializable {
public void setMealList(final List<IssueRecipeMealCompressVO> mealList) {
this.mealList = mealList;
}
}