| | |
| | | if (StringUtils.isNotBlank(pageWrap.getModel().getMemberName())) { |
| | | queryWrapper.like(DriverInfo::getName, pageWrap.getModel().getMemberName()); |
| | | } |
| | | for (PageWrap.SortData sortData : pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | |
| | | queryWrapper.orderByDesc(WithdrawalOrders::getId); |
| | | return PageData.from(withdrawalOrdersMapper.selectJoinPage(page, WithdrawalOrders.class, queryWrapper)); |
| | | } |
| | | |
| | |
| | | queryWrapper.select("IFNULL(SUM(amount), 0) as amount"); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | queryWrapper.lambda().eq(WithdrawalOrders::getDeleted, Constants.ZERO); |
| | | queryWrapper.lambda().in(WithdrawalOrders::getStatus, Arrays.asList(Constants.ZERO, Constants.ONE)); |
| | | queryWrapper.lambda().eq(WithdrawalOrders::getStatus, Constants.ONE); |
| | | if (pageWrap.getModel().getMemberType() != null) { |
| | | queryWrapper.lambda().eq(WithdrawalOrders::getMemberType, pageWrap.getModel().getMemberType()); |
| | | } |
| | | if (pageWrap.getModel().getOutBillNo() != null) { |
| | | queryWrapper.lambda().like(WithdrawalOrders::getOutBillNo, pageWrap.getModel().getOutBillNo()); |
| | | } |
| | |
| | | } |
| | | } else if (Constants.equalsInteger(order.getMemberType(), Constants.TWO)) { |
| | | ShopInfo shop = shopInfoMapper.selectOne(new QueryWrapper<ShopInfo>().lambda() |
| | | .eq(ShopInfo::getRegionMemberId, order.getMemberId()) |
| | | .eq(ShopInfo::getId, order.getMemberId()) |
| | | .eq(ShopInfo::getDeleted, Constants.ZERO) |
| | | .last("limit 1")); |
| | | if (shop != null) { |
| | |
| | | } |
| | | } else if (Constants.equalsInteger(order.getMemberType(), Constants.TWO)) { |
| | | ShopInfo shop = shopInfoMapper.selectOne(new QueryWrapper<ShopInfo>().lambda() |
| | | .eq(ShopInfo::getRegionMemberId, order.getMemberId()) |
| | | .eq(ShopInfo::getId, order.getMemberId()) |
| | | .eq(ShopInfo::getDeleted, Constants.ZERO) |
| | | .last("limit 1")); |
| | | if (shop != null) { |
| | |
| | | } else if (Constants.equalsInteger(order.getMemberType(), Constants.TWO)) { |
| | | // 门店:通过 memberId 查 ShopInfo,退回 balance |
| | | ShopInfo shop = shopInfoMapper.selectOne(new QueryWrapper<ShopInfo>().lambda() |
| | | .eq(ShopInfo::getRegionMemberId, order.getMemberId()) |
| | | .eq(ShopInfo::getId, order.getMemberId()) |
| | | .eq(ShopInfo::getDeleted, Constants.ZERO) |
| | | .last("limit 1")); |
| | | if (shop != null) { |
| | |
| | | order.setType(Constants.ZERO); |
| | | order.setOutBillNo(billNo); |
| | | order.setAliAccount(dto.getAliAccount()); |
| | | order.setAliName(driver.getAliName()); |
| | | order.setAliName(dto.getAliName()); |
| | | order.setDeleted(Constants.ZERO); |
| | | order.setCreateTime(now); |
| | | order.setUpdateTime(now); |
| | | order.setCreateUser(memberId); |
| | | withdrawalOrdersMapper.insert(order); |
| | | // 支付宝账户或姓名有变化时更新司机信息 |
| | | boolean aliChanged = !dto.getAliAccount().equals(driver.getAliAccount()) |
| | | || (dto.getAliName() != null && !dto.getAliName().equals(driver.getAliName())); |
| | | if (aliChanged) { |
| | | DriverInfo update = new DriverInfo(); |
| | | update.setId(driver.getId()); |
| | | update.setAliAccount(dto.getAliAccount()); |
| | | update.setAliName(dto.getAliName()); |
| | | driverInfoMapper.updateById(update); |
| | | } |
| | | // 创建支出 Revenue 记录 |
| | | Revenue revenue = new Revenue(); |
| | | revenue.setMemberId(memberId); |
| | |
| | | .eq(ShopInfo::getId, shopId)); |
| | | // 创建提现记录 |
| | | WithdrawalOrders order = new WithdrawalOrders(); |
| | | order.setMemberId(shop.getRegionMemberId()); |
| | | order.setMemberId(shop.getId()); |
| | | order.setMemberType(Constants.TWO); |
| | | order.setAmount(amountFen); |
| | | order.setStatus(Constants.ZERO); |
| | | order.setType(Constants.ZERO); |
| | | order.setOutBillNo(billNo); |
| | | order.setAliAccount(dto.getAliAccount()); |
| | | order.setAliName(shop.getAliName()); |
| | | order.setAliName(dto.getAliName()); |
| | | order.setDeleted(Constants.ZERO); |
| | | order.setCreateTime(now); |
| | | order.setUpdateTime(now); |
| | | order.setCreateUser(shop.getRegionMemberId()); |
| | | withdrawalOrdersMapper.insert(order); |
| | | // 支付宝账户或姓名有变化时更新门店信息 |
| | | boolean aliChanged = !dto.getAliAccount().equals(shop.getAliAccount()) |
| | | || (dto.getAliName() != null && !dto.getAliName().equals(shop.getAliName())); |
| | | if (aliChanged) { |
| | | ShopInfo update = new ShopInfo(); |
| | | update.setId(shopId); |
| | | update.setAliAccount(dto.getAliAccount()); |
| | | update.setAliName(dto.getAliName()); |
| | | shopInfoMapper.updateById(update); |
| | | } |
| | | // 创建支出 Revenue 记录 |
| | | Revenue revenue = new Revenue(); |
| | | revenue.setMemberId(shop.getRegionMemberId()); |
| | | revenue.setMemberId(shop.getId()); |
| | | revenue.setMemberType(Constants.TWO); |
| | | revenue.setType(Constants.ONE); // 1=提现支出 |
| | | revenue.setOptType(-Constants.ONE); // -1=支出 |