diff --git a/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApi.java b/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApi.java new file mode 100644 index 00000000..b501a23c --- /dev/null +++ b/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApi.java @@ -0,0 +1,17 @@ +package cn.iocoder.yudao.module.member.api.diningplates; + +import cn.iocoder.yudao.module.member.api.diningplates.dto.DiningPlatesRespDTO; + +/** + * @Author:qjq + * @Date:2024/4/10 下午2:36 + */ +public interface DiningplatesApi { + /** + * @Description: 根据餐盘查询 + * @Author: qjq + * @Date: 2024/4/10 下午2:41 + * @return + */ + DiningPlatesRespDTO getQueryByDiningPlatesNum(String diningPlatesNum); +} diff --git a/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/dto/DiningPlatesRespDTO.java b/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/dto/DiningPlatesRespDTO.java new file mode 100644 index 00000000..d36247da --- /dev/null +++ b/yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/dto/DiningPlatesRespDTO.java @@ -0,0 +1,37 @@ +package cn.iocoder.yudao.module.member.api.diningplates.dto; + +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @Author:qjq + * @Date:2024/4/10 下午2:38 + */ +@Data +public class DiningPlatesRespDTO { + public final static String USE = "1"; + public final static String FREE = "0"; + public final static String PAY = "1"; + public final static String TO_PAY = "0"; + /** + * 餐盘编号 + */ + private String diningPlatesNum; + /** + * 用户id + */ + private Long userId; + /** + * 状态:0-空闲,1-正在使用 + */ + private String status; + /** + * 状态:付费标志(0-无付费,1-正在付费) + */ + private String payFlag; + /** + * 绑定时间 + */ + private LocalDateTime bindingTime; +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApiImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApiImpl.java new file mode 100644 index 00000000..5909abe0 --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/api/diningplates/DiningplatesApiImpl.java @@ -0,0 +1,34 @@ +package cn.iocoder.yudao.module.member.api.diningplates; + +import cn.hutool.core.bean.BeanUtil; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.module.member.api.diningplates.dto.DiningPlatesRespDTO; +import cn.iocoder.yudao.module.member.dal.dataobject.diningplates.DiningPlatesDO; +import cn.iocoder.yudao.module.member.dal.mysql.diningplates.DiningPlatesMapper; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * @Author:qjq + * @Date:2024/4/10 下午2:42 + */ +@Service +public class DiningplatesApiImpl implements DiningplatesApi{ + @Resource + private DiningPlatesMapper diningPlatesMapper; + /** + * @param diningPlatesNum + * @return + * @Description: 根据餐盘查询 + * @Author: qjq + * @Date: 2024/4/10 下午2:41 + */ + @Override + public DiningPlatesRespDTO getQueryByDiningPlatesNum(String diningPlatesNum) { + DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(new LambdaQueryWrapperX() + .eq(DiningPlatesDO::getDiningPlatesNum, diningPlatesNum) + ); + return BeanUtil.toBean(diningPlatesDO, DiningPlatesRespDTO.class); + } +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java index 6059c456..3f7d1bc6 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java @@ -2,15 +2,7 @@ package cn.iocoder.yudao.module.member.controller.app.user; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.security.core.annotations.PreAuthenticated; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppBindCardVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserInfoRespVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserResetPasswordReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateMobileByWeixinReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateMobileReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdatePasswordReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppNutritionDayVo; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppWeekVO; +import cn.iocoder.yudao.module.member.controller.app.user.vo.*; import cn.iocoder.yudao.module.member.convert.user.MemberUserConvert; import cn.iocoder.yudao.module.member.dal.dataobject.level.MemberLevelDO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; @@ -18,17 +10,13 @@ import cn.iocoder.yudao.module.member.dal.dataobject.userexpand.UserExpandDO; import cn.iocoder.yudao.module.member.service.level.MemberLevelService; import cn.iocoder.yudao.module.member.service.user.MemberUserService; import cn.iocoder.yudao.module.member.service.userexpand.UserExpandService; +import cn.iocoder.yudao.module.system.api.dishesnutrition.dto.DishesNutritionRespDTO; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; @@ -136,12 +124,20 @@ public class AppMemberUserController { @RequestParam(value = "orderId",required = false)Long orderId){ return success(userService.getUserHeat(userId,startDate,endDate,orderId)); } + @GetMapping("/heat/dishes") + @Operation(summary = "获得会员热量分析") + public CommonResult> getUserHeat(@RequestParam(value = "dishesId",required = false)Long dishesId){ + return success( userService.getHeatDishes(dishesId)); + } @PutMapping("/bindFace") @Operation(summary = "绑脸") public CommonResult bindFace(Long userId,Long faceId){ return success(userService.bindFace(userId,faceId)); } - + @GetMapping("/dishes") + public CommonResult> getDishesList(@RequestParam("platesNum") String platesNum){ + return success(userService.getDishesList(platesNum)); + } } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserService.java index 9f7cd1bc..2eb6ad8f 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserService.java @@ -13,6 +13,7 @@ import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdate import cn.iocoder.yudao.module.member.controller.app.user.vo.AppNutritionDayVo; import cn.iocoder.yudao.module.member.controller.app.user.vo.AppWeekVO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; +import cn.iocoder.yudao.module.system.api.dishesnutrition.dto.DishesNutritionRespDTO; import javax.validation.Valid; import java.time.LocalDateTime; @@ -214,10 +215,16 @@ public interface MemberUserService { AppWeekVO NutritionWeek(String start, String end); List getUserHeat(Long userId, LocalDateTime startDate,LocalDateTime endDate, Long orderId); - + List getHeatDishes(Long dishesId); /** * 用户绑定人脸 */ Boolean bindFace(Long userId,Long faceId); - + /** + * @Description: + * @Author: qjq + * @Date: 2024/4/10 下午2:30 + * @return + */ + Map getDishesList(String platesNum); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java index aa9334ba..d6890f63 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java @@ -16,25 +16,21 @@ import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserPageReqVO; import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserUpdateReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserResetPasswordReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateMobileByWeixinReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateMobileReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdatePasswordReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdateReqVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppNutritionDayVo; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppNutritionWeekVO; -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppWeekVO; +import cn.iocoder.yudao.module.member.controller.app.user.vo.*; import cn.iocoder.yudao.module.member.convert.auth.AuthConvert; import cn.iocoder.yudao.module.member.convert.user.MemberUserConvert; +import cn.iocoder.yudao.module.member.dal.dataobject.diningplates.DiningPlatesDO; import cn.iocoder.yudao.module.member.dal.dataobject.order.DishOrderDO; import cn.iocoder.yudao.module.member.dal.dataobject.orderdetail.OrderDetailDO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import cn.iocoder.yudao.module.member.dal.mysql.card.CardMapper; +import cn.iocoder.yudao.module.member.dal.mysql.diningplates.DiningPlatesMapper; import cn.iocoder.yudao.module.member.dal.mysql.order.DishOrderMapper; import cn.iocoder.yudao.module.member.dal.mysql.orderdetail.OrderDetailMapper; import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; import cn.iocoder.yudao.module.member.enums.TimePeriodEnum; import cn.iocoder.yudao.module.member.mq.producer.user.MemberUserProducer; +import cn.iocoder.yudao.module.member.service.card.CardService; import cn.iocoder.yudao.module.member.service.order.OrderService; import cn.iocoder.yudao.module.member.service.orderdetail.OrderDetailService; import cn.iocoder.yudao.module.member.service.userexpand.UserExpandService; @@ -58,15 +54,11 @@ import org.springframework.transaction.support.TransactionSynchronizationManager import javax.annotation.Resource; import javax.validation.Valid; import java.math.BigDecimal; +import java.math.RoundingMode; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.time.temporal.WeekFields; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -88,10 +80,12 @@ public class MemberUserServiceImpl implements MemberUserService { private OrderDetailMapper orderDetailMapper; @Resource private DishesNutritionApi dishesNutritionApil; - + @Resource + private DiningPlatesMapper diningPlatesMapper; @Resource private MemberUserMapper memberUserMapper; - + @Resource + private CardService cardService; @Resource private SmsCodeApi smsCodeApi; @@ -488,6 +482,13 @@ public class MemberUserServiceImpl implements MemberUserService { return appWeekVO; } + @Override + public List getHeatDishes(Long dishesId) { + List dishesList = dishesNutritionApil.getDishesList(dishesId); + this.computePercentage(dishesList); + return dishesList; + } + @Override public List getUserHeat(Long userId, LocalDateTime startDate,LocalDateTime endDate,Long orderId) { if(ObjectUtil.isNotEmpty(orderId)){ @@ -541,8 +542,16 @@ public class MemberUserServiceImpl implements MemberUserService { .map(x -> new BigDecimal(x.getNutritionNumber())) // 使用reduce聚合函数,实现累加器 .reduce(BigDecimal.ZERO, BigDecimal::add); + + //获取菜品总量总和 + BigDecimal reduce = value.stream() + .map(x -> new BigDecimal(x.getDishesNumber())) + .reduce(BigDecimal.ZERO, BigDecimal::add); + //计算营养乘数 菜品总量/100g=营养乘数 + BigDecimal divide = reduce.divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_UP); + BigDecimal bigDecimal = sum1.multiply(divide).setScale(0, RoundingMode.HALF_UP); dto.setNutritionName(entry.getKey()); - dto.setNutritionNumber(sum1.toString()); + dto.setNutritionNumber(bigDecimal.toString()); list.add(dto); } this.computePercentage(list); @@ -594,4 +603,27 @@ public class MemberUserServiceImpl implements MemberUserService { memberUserDO.setFaceId(faceId); return memberUserMapper.updateById(memberUserDO)>0; } + + + /** + * @param platesNum + * @return + * @Description: + * @Author: qjq + * @Date: 2024/4/10 下午2:30 + */ + @Override + public Map getDishesList(String platesNum) { + DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(new LambdaQueryWrapperX() + .eq(DiningPlatesDO::getDiningPlatesNum,platesNum)); + //获取用户id + Long userId = diningPlatesDO.getUserId(); + //获取用户名称 + MemberUserDO memberUserDO = memberUserMapper.selectById(userId); + BigDecimal moneyByUserId = cardService.getMoneyByUserId(userId); + Map map = new HashMap<>(); + map.put("name",memberUserDO.getName()); + map.put("money", String.valueOf(moneyByUserId)); + return map; + } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java index fe7865dd..76fe759e 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/DevuceController.java @@ -75,7 +75,7 @@ public class DevuceController { } @GetMapping("/list") @Operation(summary = "获得绑定的菜品") - public CommonResult getDevuceList(@RequestParam("sn")String sn) { + public CommonResult getDevuceList(@RequestParam("sn")String sn){ DishesDO devuceList = devuceService.getDevuceList(sn); return success(BeanUtils.toBean(devuceList, DishesRespVO.class)); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/vo/DevuceSaveReqVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/vo/DevuceSaveReqVO.java index bd38cdab..1c910800 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/vo/DevuceSaveReqVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/app/devuce/vo/DevuceSaveReqVO.java @@ -3,8 +3,8 @@ package cn.iocoder.yudao.module.system.controller.app.devuce.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; +import java.math.BigDecimal; @Schema(description = "管理后台 - 设备新增/修改 Request VO") @Data @@ -13,8 +13,7 @@ public class DevuceSaveReqVO { @Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11545") private Long id; - @Schema(description = "设备SN码", requiredMode = Schema.RequiredMode.REQUIRED) - @NotEmpty(message = "设备SN码不能为空") + private String deviceSn; @Schema(description = "菜品id", example = "17970") @@ -25,4 +24,13 @@ public class DevuceSaveReqVO { @NotNull(message = "是否绑定不能为空") private Boolean bind; + @Schema(description = "菜品总重量") + private BigDecimal totalWeight; + + @Schema(description = "变化重量") + private BigDecimal diff; + + @Schema(description = "剩余重量") + private BigDecimal remWeight; + } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/devuce/DevuceDO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/devuce/DevuceDO.java index c0b4ae99..0b209e08 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/devuce/DevuceDO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/devuce/DevuceDO.java @@ -1,11 +1,12 @@ package cn.iocoder.yudao.module.system.dal.dataobject.devuce; -import lombok.*; -import java.util.*; -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 @@ -41,5 +42,17 @@ public class DevuceDO extends BaseDO { * 是否绑定 */ private Boolean bind; + /** + * 菜品总重量 + */ + private BigDecimal totalWeight; + /** + * 菜品变化重量 + */ + private BigDecimal diff; + /** + * 菜品剩余重量 + */ + private BigDecimal remWeight; } \ 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/devuce/DevuceService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java index 0a4e6916..13bba514 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceService.java @@ -54,7 +54,14 @@ public interface DevuceService { * @return 设备分页 */ PageResult getDevucePage(DevucePageReqVO pageReqVO); + /** + * @Description: 设备绑定菜品,或计算菜品重量与剩余重量 + * @Author: qjq + * @Date: 2024/4/10 下午1:40 + * @return + */ DishesDO getDevuceList(String sn); + List getDishesList(Long carteenId,Long dishecType); /** * @Description: 获取菜品分类 @@ -63,4 +70,7 @@ public interface DevuceService { * @return */ List getDishesTypeList(Long carteenId); + + + } \ 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/devuce/DevuceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java index f789c08b..1440bfd0 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/devuce/DevuceServiceImpl.java @@ -1,8 +1,8 @@ package cn.iocoder.yudao.module.system.service.devuce; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjUtil; 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; import cn.iocoder.yudao.module.system.controller.app.devuce.vo.DevucePageReqVO; import cn.iocoder.yudao.module.system.controller.app.devuce.vo.DevuceSaveReqVO; @@ -18,6 +18,7 @@ import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.stream.Collectors; @@ -38,10 +39,12 @@ public class DevuceServiceImpl implements DevuceService { private DishesMapper dishesMapper; @Resource private DishesTypeMapper dishesTypeMapper; + @Resource + private HttpServletRequest httpServletRequest; @Override public Long createDevuce(DevuceSaveReqVO createReqVO) { // 插入 - DevuceDO devuce = BeanUtils.toBean(createReqVO, DevuceDO.class); + DevuceDO devuce = BeanUtil.toBean(createReqVO, DevuceDO.class); devuceMapper.insert(devuce); // 返回 return devuce.getId(); @@ -51,6 +54,37 @@ public class DevuceServiceImpl implements DevuceService { @Override public void updateDevuce(DevuceSaveReqVO updateReqVO) { // 校验存在 + /*if (ObjUtil.isNotEmpty(updateReqVO.getRemWeight()) + || ObjUtil.isNotEmpty(updateReqVO.getTotalWeight()) + || ObjUtil.isNotEmpty(updateReqVO.getDiff())) { + //进行计算总量数据 + if (ObjUtil.isEmpty(updateReqVO.getDiff())) { + //第一次绑定 + updateReqVO.setRemWeight(updateReqVO.getTotalWeight()); + bind(updateReqVO); + return updateReqVO; + } else { + BigDecimal remWeight = updateReqVO.getRemWeight(); + BigDecimal diff = updateReqVO.getDiff(); + //下一次剩余的重量 + BigDecimal subtract = remWeight.subtract(diff); + updateReqVO.setRemWeight(subtract); + bind(updateReqVO); + return updateReqVO; + } + }else{ + bind(updateReqVO); + return null; + }*/ + try { + String header = httpServletRequest.getHeader("Authorization"); + updateReqVO.setDeviceSn(header); + bind(updateReqVO); + } catch (Exception e) { + throw exception(2000_10_001,"无法获取设备编码"); + } + } + public void bind(DevuceSaveReqVO updateReqVO){ if (devuceMapper.selectOne(new LambdaQueryWrapperX() .eqIfPresent(DevuceDO::getDeviceSn,updateReqVO.getDeviceSn())) == null) { createDevuce(updateReqVO); @@ -64,7 +98,6 @@ public class DevuceServiceImpl implements DevuceService { createDevuce(updateReqVO); } } - @Override public void deleteDevuce(Long id) { // 校验存在 @@ -134,4 +167,6 @@ public class DevuceServiceImpl implements DevuceService { public List getDishesTypeList(Long carteenId) { return dishesTypeMapper.selectList(new LambdaQueryWrapperX().eq(DishesTypeDO::getCarteenId,carteenId)); } + + } \ No newline at end of file