BudgetDimFunctionServiceI.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package cn.com.lzt.budget.dimfunction.service;
  2. import cn.com.lzt.budget.costbreakdown.entity.BudgetCostBreakdownEntity;
  3. import cn.com.lzt.budget.data.dto.BudgetCalc;
  4. import cn.com.lzt.budget.data.dto.BudgetRedisCellData;
  5. import cn.com.lzt.budget.dimfunction.entity.BudgetDimFunctionEntity;
  6. import cn.com.lzt.budget.inst.entity.BudgetInstEntity;
  7. import cn.com.lzt.budget.instmeasure.entity.BudgetInstMeasureEntity;
  8. import org.jeecgframework.core.common.service.CommonService;
  9. import java.io.Serializable;
  10. import java.math.BigDecimal;
  11. import java.util.List;
  12. import java.util.Set;
  13. public interface BudgetDimFunctionServiceI extends CommonService{
  14. public void delete(BudgetDimFunctionEntity entity) throws Exception;
  15. public Serializable save(BudgetDimFunctionEntity entity) throws Exception;
  16. public void saveOrUpdate(BudgetDimFunctionEntity entity) throws Exception;
  17. /**
  18. * 维度公式计算,只计算一层
  19. * @param functionId 公式id
  20. * @param measureId 指标id
  21. * @param entityId 预算实体id
  22. * @param periodDetailId 时间维度
  23. * @param deep 是否计算依赖
  24. * @param update 是否保存值
  25. * @param isActual
  26. * @return
  27. */
  28. public BigDecimal calc(String functionId, String measureId, String entityId, String periodDetailId, boolean deep, boolean update, boolean isActual);
  29. public void batchCalc(List<BudgetCalc> calcList);
  30. /**
  31. *后台计算维度公式
  32. * @param isActual true实例表 false
  33. */
  34. public void backCalc(boolean isActual);
  35. String copy(String functionId);
  36. public void createConsistencyCache();
  37. /**
  38. * 一致性操作
  39. * @param instEntity
  40. * @param operate add remove
  41. */
  42. public void consistency(BudgetInstEntity instEntity, String operate);
  43. /**
  44. * 一致性操作
  45. * @param costBreakdownEntity
  46. * @param operate add remove
  47. */
  48. public void consistency(BudgetCostBreakdownEntity costBreakdownEntity,String operate);
  49. public Set<BudgetRedisCellData> effect(List<String> list);
  50. public Set<BudgetInstMeasureEntity> getNeedCalcCell(String entityId,String periodDetailId,String measureId,Integer includeTax,Integer expect);
  51. void removeCache();
  52. }