优化
This commit is contained in:
		| @ -124,7 +124,7 @@ public class CardServiceImpl implements CardService { | ||||
|     public BigDecimal getMoneyByUserId(Long userId) { | ||||
|         CardDO lastCardDO = cardMapper.selectOne(Wrappers.<CardDO>lambdaQuery().eq(CardDO::getUserId, userId) | ||||
|                 .orderByDesc(CardDO::getCreateTime).last("limit 1")); | ||||
|         if (lastCardDO.getMoney() == null) { | ||||
|         if (lastCardDO == null || lastCardDO.getMoney() == null) { | ||||
|             return BigDecimal.ZERO; | ||||
|         } | ||||
|         return lastCardDO.getMoney(); | ||||
|  | ||||
| @ -135,15 +135,11 @@ public class DiningPlatesServiceImpl implements DiningPlatesService { | ||||
|         DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(Wrappers.<DiningPlatesDO>lambdaQuery() | ||||
|                 .eq(DiningPlatesDO::getDiningPlatesNum, diningPlatesNum) | ||||
|                 .last("limit 1")); | ||||
|         if (diningPlatesDO.getUserId() != null) { | ||||
|             throw new ServiceException(20001, "餐盘已被绑定"); | ||||
|         } | ||||
|         checkDiningPlates(diningPlatesDO); | ||||
|         MemberUserDO memberUserDO = memberUserMapper.selectOne(Wrappers.<MemberUserDO>lambdaQuery() | ||||
|                 .eq(MemberUserDO::getCardId, cardId) | ||||
|                 .last("limit 1")); | ||||
|         if (StrUtil.isBlank(memberUserDO.getCardId())) { | ||||
|             throw new ServiceException(20002, "请先绑定餐卡"); | ||||
|         } | ||||
|         checkMemberUser(memberUserDO); | ||||
|         diningPlatesDO.setUserId(memberUserDO.getId()); | ||||
|         diningPlatesDO.setStatus(DiningPlatesDO.USE); | ||||
|         diningPlatesDO.setBindingTime(LocalDateTime.now()); | ||||
| @ -165,23 +161,20 @@ public class DiningPlatesServiceImpl implements DiningPlatesService { | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Transactional(rollbackFor = Exception.class) | ||||
|     public AppUserInfoCardVO bindByFace(String diningPlatesNum, Long faceId) { | ||||
|         DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(Wrappers.<DiningPlatesDO>lambdaQuery() | ||||
|                 .eq(DiningPlatesDO::getDiningPlatesNum, diningPlatesNum) | ||||
|                 .last("limit 1")); | ||||
|         if (diningPlatesDO.getUserId() != null) { | ||||
|             throw new ServiceException(20001, "餐盘已被绑定"); | ||||
|         } | ||||
|         checkDiningPlates(diningPlatesDO); | ||||
|         MemberUserDO memberUserDO = memberUserMapper.selectOne(Wrappers.<MemberUserDO>lambdaQuery() | ||||
|                 .eq(MemberUserDO::getFaceId, faceId) | ||||
|                 .last("limit 1")); | ||||
|         if (StrUtil.isBlank(memberUserDO.getCardId())) { | ||||
|             throw new ServiceException(20002, "请先绑定餐卡"); | ||||
|         } | ||||
|         checkMemberUser(memberUserDO); | ||||
|         diningPlatesDO.setUserId(memberUserDO.getId()); | ||||
|         diningPlatesDO.setStatus(DiningPlatesDO.USE); | ||||
|         diningPlatesDO.setBindingTime(LocalDateTime.now()); | ||||
|         int i = diningPlatesMapper.updateById(diningPlatesDO); | ||||
|         diningPlatesMapper.updateById(diningPlatesDO); | ||||
|  | ||||
|         //创建初始订单 | ||||
|         DishOrderDO dishOrderDO = new DishOrderDO(); | ||||
| @ -222,4 +215,23 @@ public class DiningPlatesServiceImpl implements DiningPlatesService { | ||||
|         data.setMoney(cardService.getMoneyByUserId(memberUserDO.getId())); | ||||
|         return data; | ||||
|     } | ||||
|  | ||||
|  | ||||
|     public void checkDiningPlates(DiningPlatesDO diningPlatesDO) { | ||||
|         if(diningPlatesDO == null) { | ||||
|             throw new ServiceException(20000, "餐盘不存在"); | ||||
|         } | ||||
|         if (diningPlatesDO.getUserId() != null) { | ||||
|             throw new ServiceException(20001, "餐盘已被绑定"); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     public void checkMemberUser(MemberUserDO memberUserDO) { | ||||
|         if(memberUserDO == null){ | ||||
|             throw new ServiceException(20005, "该人脸未绑定用户"); | ||||
|         } | ||||
|         if (StrUtil.isBlank(memberUserDO.getCardId())) { | ||||
|             throw new ServiceException(20002, "请先绑定餐卡"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -68,7 +68,7 @@ public class OrderDetailServiceImpl implements OrderDetailService { | ||||
|         //判定餐盘是否绑定 | ||||
|         Boolean b = diningPlatesService.checkBind(createReqVO.getDiningPlatesNum()); | ||||
|         if(!b){ | ||||
|             throw new ServiceException(20001,"餐盘未绑定"); | ||||
|             throw new ServiceException(20003,"餐盘未绑定"); | ||||
|         } | ||||
|         //餐盘号去获取订单 | ||||
|         DishOrderDO dishOrderDO = dishOrderMapper.selectOne(Wrappers.<DishOrderDO>lambdaQuery().eq(DishOrderDO::getDiningPlatesNum, createReqVO.getDiningPlatesNum()) | ||||
| @ -76,7 +76,7 @@ public class OrderDetailServiceImpl implements OrderDetailService { | ||||
|                 .orderByDesc(DishOrderDO::getCreateTime) | ||||
|                 .last("limit 1")); | ||||
|         if(dishOrderDO==null){ | ||||
|             throw new ServiceException(20002,"该餐盘订单已完成,请重新绑定餐盘"); | ||||
|             throw new ServiceException(20004,"该餐盘订单已完成,请重新绑定餐盘"); | ||||
|         } | ||||
|  | ||||
|         DishesRespDto dish = dishesApi.getDish(createReqVO.getDishesId()); | ||||
|  | ||||
| @ -6,17 +6,28 @@ import cn.hutool.core.collection.CollectionUtil; | ||||
| import cn.hutool.core.collection.ListUtil; | ||||
| import cn.hutool.core.lang.Assert; | ||||
| import cn.hutool.core.map.MapUtil; | ||||
| import cn.hutool.core.util.*; | ||||
| import cn.hutool.core.util.IdUtil; | ||||
| import cn.hutool.core.util.NumberUtil; | ||||
| import cn.hutool.core.util.ObjectUtil; | ||||
| import cn.hutool.core.util.RandomUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||||
| import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | ||||
| import cn.iocoder.yudao.framework.common.exception.ServerException; | ||||
| import cn.iocoder.yudao.framework.common.exception.ServiceException; | ||||
| 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.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.*; | ||||
| 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.convert.auth.AuthConvert; | ||||
| import cn.iocoder.yudao.module.member.convert.user.MemberUserConvert; | ||||
| import cn.iocoder.yudao.module.member.dal.dataobject.diningplates.DiningPlatesDO; | ||||
| @ -58,7 +69,12 @@ import java.math.RoundingMode; | ||||
| import java.time.LocalDateTime; | ||||
| import java.time.format.DateTimeFormatter; | ||||
| import java.time.temporal.WeekFields; | ||||
| import java.util.*; | ||||
| 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.stream.Collectors; | ||||
|  | ||||
| import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | ||||
| @ -378,7 +394,7 @@ public class MemberUserServiceImpl implements MemberUserService { | ||||
|     public Boolean bindCard(String cardId) { | ||||
|         List<MemberUserDO> memberUserDOS = memberUserMapper.selectList(Wrappers.<MemberUserDO>lambdaQuery().eq(MemberUserDO::getCardId, cardId)); | ||||
|         if(memberUserDOS.size()>0){ | ||||
|             throw new ServerException(600,"卡号已绑定"); | ||||
|             throw new ServiceException(600,"卡号已绑定"); | ||||
|         } | ||||
|         MemberUserDO memberUserDO = memberUserMapper.selectById(SecurityFrameworkUtils.getLoginUserId()); | ||||
|         memberUserDO.setCardId(cardId); | ||||
| @ -595,7 +611,7 @@ public class MemberUserServiceImpl implements MemberUserService { | ||||
|  | ||||
|         MemberUserDO memberUserDO = memberUserMapper.selectById(userId); | ||||
|         if(memberUserDO == null){ | ||||
|             throw new ServerException(20003,"用户不存在"); | ||||
|             throw new ServiceException(601,"用户不存在"); | ||||
|         } | ||||
|         if(memberUserDO.getFaceId()!=null){ | ||||
|             memberUserMapper.deleteFace(memberUserDO.getFaceId()); | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 zengtao01
					zengtao01