优化
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