| | |
| | | private GoodsorderMapper goodsorderMapper; |
| | | |
| | | @Autowired |
| | | private GoodsorderDetailMapper goodsorderDetailMapper; |
| | | |
| | | @Autowired |
| | | private NoticeService noticeService; |
| | | |
| | | @Autowired |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = {Exception.class, BusinessException.class}) |
| | | public Integer dealIntegral(DealIntegralRequest dealIntegralRequest,Member member) { |
| | | // 积分取整:获取向下取整,消耗向上取整 |
| | | if(dealIntegralRequest.getIntegralNum() != null){ |
| | | if(Constants.equalsInteger(dealIntegralRequest.getDealType(),Constants.ZERO)){ |
| | | dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_DOWN)); |
| | | }else{ |
| | | dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_UP)); |
| | | } |
| | | } |
| | | if(member == null){ |
| | | member = memberMapper.selectById(dealIntegralRequest.getMemberId()); |
| | | } |
| | |
| | | integral.setIsdeleted(Constants.ZERO); |
| | | integral.setTitle(dealIntegralRequest.getIntegralObjType().getName()); |
| | | String info = dealIntegralRequest.getIntegralObjType().getNoteinfo(); |
| | | info = info.replace("${param}",dealIntegralRequest.getIntegralNum().intValue()+""); |
| | | info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toBigInteger().toString()); |
| | | if(StringUtils.isNotBlank(dealIntegralRequest.getParam1())){ |
| | | info = info .replace("${param1}",dealIntegralRequest.getParam1()); |
| | | } |
| | |
| | | |
| | | //站内信 |
| | | noticeService.saveMemberIntegralNotice( |
| | | dealIntegralRequest.getIntegralObjType(),Constants.ONE,member.getId(),dealIntegralRequest.getIntegralNum(), |
| | | dealIntegralRequest.getIntegralObjType(),Constants.ZERO,member.getId(),dealIntegralRequest.getIntegralNum(), |
| | | integral.getId(), info |
| | | ); |
| | | return integral.getId(); |
| | |
| | | |
| | | @Override |
| | | public Integer dealShopIntegral(DealIntegralRequest dealIntegralRequest,Shop shop) { |
| | | // 积分取整:获取向下取整,消耗向上取整 |
| | | if(dealIntegralRequest.getIntegralNum() != null){ |
| | | if(Constants.equalsInteger(dealIntegralRequest.getDealType(),Constants.ZERO)){ |
| | | dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_DOWN)); |
| | | }else{ |
| | | dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_UP)); |
| | | } |
| | | } |
| | | if(shop ==null){ |
| | | shop = shopMapper.selectById(dealIntegralRequest.getMemberId()); |
| | | } |
| | |
| | | integral.setIsdeleted(Constants.ZERO); |
| | | integral.setTitle( dealIntegralRequest.getIntegralObjType()!=null?dealIntegralRequest.getIntegralObjType().getName():""); |
| | | String info = dealIntegralRequest.getIntegralObjType().getNoteinfo(); |
| | | info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toString()); |
| | | info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toBigInteger().toString()); |
| | | if(StringUtils.isNotBlank(dealIntegralRequest.getParam1())){ |
| | | info = info .replace("${param1}",dealIntegralRequest.getParam1()); |
| | | } |
| | |
| | | shopMapper.update(null,new UpdateWrapper<Shop>().lambda() |
| | | .eq(Shop::getId,shop.getId()) |
| | | .set(Shop::getEditDate,new Date()) |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ZERO),"total_integral = ifnull(total_integral,0)+" + dealIntegralRequest.getIntegralNum())//累计增加 |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ZERO),"integral = ifnull(integral,0)+" + dealIntegralRequest.getIntegralNum()) |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ONE),"integral = ifnull(integral,0)-" + dealIntegralRequest.getIntegralNum())); |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ZERO),"TOTAL_AMOUNT = ifnull(TOTAL_AMOUNT,0)+" + dealIntegralRequest.getIntegralNum())//累计增加 |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ZERO),"AMOUNT = ifnull(AMOUNT,0)+" + dealIntegralRequest.getIntegralNum()) |
| | | .setSql(dealIntegralRequest.getDealType().equals(Constants.ONE),"AMOUNT = ifnull(AMOUNT,0)-" + dealIntegralRequest.getIntegralNum())); |
| | | return integral.getId(); |
| | | } |
| | | |
| | |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | ); |
| | | integralDataResponse.setWaitPayAmount( |
| | | goodsorderMapper.selectList(new QueryWrapper<Goodsorder>().lambda() |
| | | goodsorderDetailMapper.selectJoinList(GoodsorderDetail.class,new MPJLambdaWrapper<GoodsorderDetail>() |
| | | .selectAll(GoodsorderDetail.class) |
| | | .leftJoin(Goodsorder.class,Goodsorder::getId,GoodsorderDetail::getOrderId) |
| | | .eq(Goodsorder::getDistributionShopId,model.getMemberId()) |
| | | .in(Goodsorder::getStatus,Constants.OrderStatus.WAIT_PAY.getKey(), |
| | | Constants.OrderStatus.PAY_DONE.getKey(), |
| | | Constants.OrderStatus.WAIT_RECEIVE.getKey()) |
| | | ).stream().map(Goodsorder::getShopSettlement) |
| | | ).stream().map(GoodsorderDetail::getShopSettlement) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | ); |
| | | } |