winter 1 год назад
Родитель
Сommit
7b2a93ada3
2 измененных файлов: 17 добавлений и 3 удалений
  1. +2
    -1
      mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java
  2. +15
    -2
      mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java

+ 2
- 1
mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java Просмотреть файл

@@ -140,7 +140,7 @@ public class WxEnergyHelper {
return formula;
}
public void testCalcute(String formula) {
public void testCalcute(String formula,String shopPulicRax) {
if (StringUtils.isBlank(formula)) {
return ;
}
@@ -153,6 +153,7 @@ public class WxEnergyHelper {
formula = formula.replaceAll(relpaceFloorArea, "1");
}
}
formula = formula.replaceAll("#shopPublicRax#", shopPulicRax);
FormulaParser.evaluate(formula);
}


+ 15
- 2
mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java Просмотреть файл

@@ -551,14 +551,23 @@ public class WxEnergyServiceImpl implements WxEnergyService {
return retList;
}
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
@Override
public void createFeesShop(WxEnergyFeesShop record) {
//新增关联
final IdWorker idWorker = IdWorker.get();
Date date = new Date();
WxEnergyFees fees = this.getFeesById(record.getFeesId(),record.getTenantId());
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
sq.setIds(record.getShopIds());
Map<Long, WxShop> shopMap = wxShopService.findShopMap(sq);
for (int i = 0 ; i < record.getShopIds().size(); i ++) {
Long shopId = record.getShopIds().get(i);
WxShop shop = shopMap.get(shopId);
if (StringUtils.isBlank(shop.getPulicRate())) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺未设置公摊系数");
}
WxEnergyFeesShop msf = new WxEnergyFeesShop();
msf.updateTenantInfo(record);
msf.setId(idWorker.nextId());
@@ -580,7 +589,7 @@ public class WxEnergyServiceImpl implements WxEnergyService {
msf.setFormulaListStr(JSON.toJSONString(record.getFormulaList()));
}
msf.setFormula(record.getFormula());
wxEnergyHelper.testCalcute(record.getFormula());
wxEnergyHelper.testCalcute(record.getFormula(),shop.getPulicRate());
wxEnergyFeesShopMapper.insert(msf);
}
}
@@ -617,7 +626,11 @@ public class WxEnergyServiceImpl implements WxEnergyService {
if (null != record.getFormulaList() && record.getFormulaList().size() > 0 ) {
record.setFormulaListStr(JSON.toJSONString(record.getFormulaList()));
}
wxEnergyHelper.testCalcute(record.getFormula());
WxShop shop = wxShopService.getById(record.getShopId());
if (StringUtils.isBlank(shop.getPulicRate())) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺未设置公摊系数");
}
wxEnergyHelper.testCalcute(record.getFormula(),shop.getPulicRate());
wxEnergyFeesShopMapper.updateById(record);
}


Загрузка…
Отмена
Сохранить