BudgetDataService.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package cn.com.lzt.budget.data.service;
  2. import cn.com.lzt.budget.control.entity.BudgetControlDetailEntity;
  3. import cn.com.lzt.budget.data.dto.BudgetDimMatchDto;
  4. import cn.com.lzt.goodscategory.entity.TBGoodsCategoryEntity;
  5. import cn.com.lzt.goodsinfo.entity.TBGoodsInfoEntity;
  6. import org.springframework.data.util.Pair;
  7. import java.math.BigDecimal;
  8. import java.util.List;
  9. import java.util.Map;
  10. public interface BudgetDataService {
  11. /**
  12. * @param year 年份
  13. * @param categoryCodeList 一级分类id
  14. * @param entityId 预算主体id
  15. * @return
  16. */
  17. public List<TBGoodsInfoEntity> getUsedGoodsInfoByYear(int year,List<String> categoryCodeList,String entityId);
  18. public void dimMatch(BudgetDimMatchDto dto);
  19. //获得子分类
  20. public List<TBGoodsCategoryEntity> getGoodsCategoryByParent(String parentCode);
  21. public Double[] getOneGoodsRefYearUsed(Integer year,String goodsId,String entityId);
  22. /**
  23. * 获得预算值
  24. * @param periodDetailId
  25. * @param entityId
  26. * @param measureId
  27. * @param includeTax
  28. * @return
  29. */
  30. public BigDecimal getExpectValue(String periodDetailId,String entityId,String measureId,Integer includeTax);
  31. //获得指标年预期数
  32. public BigDecimal getYearExpectValue(String periodDetailId,String entityId,String measureId,Integer includeTax);
  33. /**
  34. * 根据控制方案获得预算金额
  35. * @param controlDetailEntity 控制方案
  36. * @param periodDetailId
  37. * @param entityId
  38. * @param measureId
  39. * @param includeTax
  40. * @param show 是否展示。true不计算柔性部分
  41. * @return
  42. */
  43. public BigDecimal getExpectValueByControl(BudgetControlDetailEntity controlDetailEntity, String periodDetailId, String entityId, String measureId, Integer includeTax,boolean show);
  44. /**
  45. * 获得执行数
  46. * @param periodDetailId
  47. * @param entityId
  48. * @param measureId
  49. * @param includeTax
  50. * @return 如果没找到对应值 返回null
  51. */
  52. public BigDecimal getActualValue(String periodDetailId, String entityId, String measureId, Integer includeTax);
  53. //获得指标年度执行数
  54. public BigDecimal getYearActualValue(String periodDetailId, String entityId, String measureId, Integer includeTax);
  55. //根据控制方案获得执行数
  56. public BigDecimal getActualValueByControl(BudgetControlDetailEntity controlDetailEntity, String periodDetailId, String entityId, String measureId, Integer includeTax);
  57. /**
  58. * 通过yearMonth yyyy-MM 查找periodDetailId
  59. * @param yearMonth
  60. * @return
  61. */
  62. public String findPeriodDetail(String yearMonth);
  63. /**
  64. * 查找指标id
  65. * @param busType
  66. * @param configItem
  67. * @return
  68. */
  69. public String findMeasure(String busType, String configItem);
  70. public String findEntityByDepartId(String departId);
  71. /**
  72. * 获得 编制数和执行数
  73. * @param busValue 业务占用金额
  74. * @param yearMonth 月份
  75. * @param entityId 预算主体
  76. * @param measureId 指标id
  77. * @param includeTax
  78. * @return first 编制数 second执行数
  79. */
  80. public Pair<BigDecimal,BigDecimal> getExpectActualValue(BudgetControlDetailEntity controlDetailEntity,BigDecimal busValue, String yearMonth, String entityId, String measureId, Integer includeTax);
  81. /**
  82. * 获得业务占用金额
  83. * @param busType 业务类型
  84. * @param updateId 单据id
  85. * @param yearMonth 月份
  86. * @param departId 部门id
  87. * @param measureId 指标
  88. * @return
  89. */
  90. public BigDecimal getBusNotPayMoney(BudgetControlDetailEntity controlDetailEntity,String busType, String updateId, String yearMonth, String departId, String measureId);
  91. public Map<String,Object> getExpectActualValueByBus(String busType, String updateId, String yearMonth, String departId, String measureId, Integer includeTax);
  92. }