From 4339f41cc990d8304670abfaa7ad9fca645fec42 Mon Sep 17 00:00:00 2001 From: luozukai Date: Fri, 16 Aug 2019 13:34:51 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=90=88=E5=90=8C][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E8=81=94=E8=90=A5=E8=B7=B3=E7=82=B9=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/WxMerchantTradeDailyMapper.java | 2 ++ .../service/impl/WxBillRentServiceImpl.java | 31 ++++++++++++------- .../impl/WxRentContractServiceImpl.java | 8 ++++- .../mapper/WxMerchantTradeDailyMapper.xml | 21 +++++++++++++ 4 files changed, 50 insertions(+), 12 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java index 2dde4eb8f..11b63c48d 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java @@ -14,4 +14,6 @@ public interface WxMerchantTradeDailyMapper extends CommonMapper findVoList(WxMerchantTradeDaily wxMerchantTradeDaily); List findTotalListOfMonth(WxMerchantTradeDaily wxMerchantTradeDaily); + + String findSumMoney(WxMerchantTradeDaily wxMerchantTradeDaily); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java index 11818964c..2faf2b87d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java @@ -11,10 +11,7 @@ import com.iformall.common.ResultData; import com.iformall.domain.po.*; import com.iformall.enums.*; import com.iformall.exception.MallinkException; -import com.iformall.mapper.WxBillActionMapper; -import com.iformall.mapper.WxBillDepositMapper; -import com.iformall.mapper.WxBillRentMapper; -import com.iformall.mapper.WxRentContractMapper; +import com.iformall.mapper.*; import com.iformall.service.ExcelService; import com.iformall.service.WxBillActionService; import com.iformall.service.WxBillRentService; @@ -63,6 +60,9 @@ public class WxBillRentServiceImpl implements WxBillRentService { @Autowired WxRentContractMapper wxRentContractMapper; + @Autowired + WxMerchantTradeDailyMapper wxMerchantTradeDailyMapper; + @Override public PageInfo listAsPage(WxBillRent record, Integer pageIndex, Integer pageSize) { PageHelper.startPage(pageIndex, pageSize); @@ -249,6 +249,13 @@ public class WxBillRentServiceImpl implements WxBillRentService { Map result = new HashMap<>(3); result.put("rent", rent); result.put("deposit", deposit); + + //解单金额 + WxBillRent billRent = wxBillRentMapper.selectByPrimaryKey(id); + WxMerchantTradeDaily merchantTradeDaily = new WxMerchantTradeDaily(); + merchantTradeDaily.setMerchantId(billRent.getMerchantId()); + String money = wxMerchantTradeDailyMapper.findSumMoney(merchantTradeDaily); + result.put("solutionBillMoney", StringUtils.isBlank(money)?0:money); return result; } @@ -313,9 +320,8 @@ public class WxBillRentServiceImpl implements WxBillRentService { return 0; } - - @Transactional(rollbackFor = {Exception.class}) @Override + @Transactional(rollbackFor = {Exception.class}) public ResultData updateRevenue(WxBillRent record, MallUserInfo user) { WxBillRent wxBillRent = wxBillRentMapper.selectByPrimaryKey(record.getId()); WxRentContract wxRentContract = wxRentContractMapper.selectByPrimaryKey(wxBillRent.getRentContractId()); @@ -361,12 +367,15 @@ public class WxBillRentServiceImpl implements WxBillRentService { wxBillRent.setRevenue(record.getRevenue()); //wxBillRent.setReceivePay(oldPrice.equals(newPrice) ? oldPrice : newPrice); wxBillRent.setUpdatetime(new Date()); - try { - wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); - } catch (Exception e) { - logger.error("修改营业额失败,e:" + e.getMessage()); - throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "修改营业额失败"); + + //如果在跳点区间中,修改扣点率 + wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); + if(StringUtils.isNotBlank(wxRentContract.getBusDiscountRatio())){ + wxRentContract.setPayRatio(ratio); + wxRentContract.setUpdatetime(new Date()); + wxRentContractMapper.updateByPrimaryKeySelective(wxRentContract); } + if (!oldPrice.equals(newPrice)) { //日志 WxBillAction wxBillAction = new WxBillAction(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 6d34a8e12..fcb2af203 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -254,7 +254,10 @@ public class WxRentContractServiceImpl implements WxRentContractService { * @param record */ public void getPayRatio(WxRentContract record){ - if(record.getPayRatio() != null){ + if(record.getPayRatio() != null && record.getPayRatio().intValue() >0){ + return; + } + if(StringUtils.isBlank(record.getBusDiscountRatio())){ return; } BigDecimal revenue = new BigDecimal(record.getRevenue()).divide(new BigDecimal(1000000)).setScale(4, RoundingMode.HALF_EVEN); @@ -525,6 +528,9 @@ public class WxRentContractServiceImpl implements WxRentContractService { if (wxRentContract == null) { return new ResultData(ErrorCode.RENT_CONTRACT_IS_NOT_FOUND); } + wxRentContract.setBusDiscountTime(record.getBusDiscountTime()); + wxRentContract.setBusDiscountRatio(record.getBusDiscountRatio()); + int dayType = wxRentContract.getAdjustPeriod().equals(EnumRentContractAdjustPeriod.ADJUST_PERIOD_DAY.getCode()) ? Calendar.DAY_OF_MONTH : Calendar.MONTH; Calendar instance = Calendar.getInstance(); diff --git a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml index 8b575598e..7f1e667ed 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml @@ -146,6 +146,27 @@ order by ${sortColumns} + +