diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dishes/vo/DishesRespVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dishes/vo/DishesRespVO.java index 87d08d60..98960e15 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dishes/vo/DishesRespVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dishes/vo/DishesRespVO.java @@ -1,6 +1,5 @@ package cn.iocoder.yudao.module.system.controller.admin.dishes.vo; -import cn.iocoder.yudao.module.system.controller.admin.dishesraw.vo.DishesRawSaveReqVO; import cn.iocoder.yudao.module.system.dal.dataobject.dishesnutrition.DishesNutritionDO; import cn.iocoder.yudao.module.system.dal.dataobject.dishesraw.DishesRawDO; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; @@ -73,4 +72,7 @@ public class DishesRespVO { private List dishesNutritionList; @Schema(description = "菜品原材料", example = "1") private List dishesRawList; + + @Schema(description = "菜品kcal") + private String kcal; } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/dishes/DishesAppController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/dishes/DishesAppController.java index f037053f..a50e767d 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/dishes/DishesAppController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/dishes/DishesAppController.java @@ -1,31 +1,26 @@ package cn.iocoder.yudao.module.system.controller.app.dishes; import cn.iocoder.yudao.framework.common.pojo.CommonResult; -import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesPageReqVO; import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesRespVO; -import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesSaveReqVO; import cn.iocoder.yudao.module.system.dal.dataobject.dishes.DishesDO; import cn.iocoder.yudao.module.system.service.dishes.DishesService; +import cn.iocoder.yudao.module.system.service.dishesnutrition.DishesNutritionService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; -import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; -import java.io.IOException; -import java.util.List; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; @Tag(name = "管理后台 - 菜品管理") @@ -36,6 +31,8 @@ public class DishesAppController { @Resource private DishesService dishesService; + @Resource + private DishesNutritionService dishesNutritionService; // @PostMapping("/create") // @Operation(summary = "创建菜品管理") @@ -75,7 +72,9 @@ public class DishesAppController { // @PreAuthorize("@ss.hasPermission('t:dishes:query')") public CommonResult> getDishesPage(@Valid DishesPageReqVO pageReqVO) { PageResult pageResult = dishesService.getDishesPage(pageReqVO); - return success(BeanUtils.toBean(pageResult, DishesRespVO.class)); + PageResult bean = BeanUtils.toBean(pageResult, DishesRespVO.class); + bean.getList().forEach(f-> f.setKcal(dishesNutritionService.getDishesNutritionKcal(f.getId()))); + return success(bean); } // @GetMapping("/export-excel") diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/dishes/DishesDO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/dishes/DishesDO.java index 905c464b..407c9513 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/dishes/DishesDO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/dishes/DishesDO.java @@ -1,15 +1,12 @@ package cn.iocoder.yudao.module.system.dal.dataobject.dishes; -import lombok.*; -import java.util.*; -import java.math.BigDecimal; -import java.math.BigDecimal; -import java.math.BigDecimal; -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.annotation.*; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; + +import java.math.BigDecimal; /** * 菜品管理 DO diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionService.java index cae9cea4..4a3dccd7 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionService.java @@ -62,4 +62,5 @@ public interface DishesNutritionService { * @return */ ListgetDishesNutritionList(DishesNutritionPageReqVO pageReqV); + String getDishesNutritionKcal(Long dishesId); } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionServiceImpl.java index 3000d729..1c3be0f0 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dishesnutrition/DishesNutritionServiceImpl.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.system.service.dishesnutrition; +import cn.hutool.core.util.NumberUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; @@ -106,7 +107,15 @@ public class DishesNutritionServiceImpl implements DishesNutritionService { } - + @Override + public String getDishesNutritionKcal(Long dishesId) { + DishesNutritionDO dis = dishesNutritionMapper.selectOne(new LambdaQueryWrapperX() + .likeIfPresent(DishesNutritionDO::getNutritionName, "能量") + .eqIfPresent(DishesNutritionDO::getDishesId,dishesId) + .last("LIMIT 1")); + String nutritionNumber = dis.getNutritionNumber(); + return NumberUtil.div(nutritionNumber, "4.184", 0).toString(); + } /** * @Description: 计算营养百分比 * 计算100克的占比