소스 검색

导出添加Id判断

ljx 4 년 전
부모
커밋
eaef6a0ec1

+ 2 - 1
src/main/java/com/imed/costaccount/service/AllocationService.java

@@ -57,9 +57,10 @@ public interface AllocationService extends IService<Allocation> {
      * @param sheet 报表
      * @param year 年
      * @param month 月
+     * @param shareLevelId
      * @return
      */
-    ExcelWriter getShareReportTemplate(ExcelWriter writer, Integer levelSort, Sheet sheet, Integer year, Integer month);
+    ExcelWriter getShareReportTemplate(ExcelWriter writer, Integer levelSort, Sheet sheet, Integer year, Integer month, Long shareLevelId);
 
     /**
      * 分摊后报表输出

+ 6 - 5
src/main/java/com/imed/costaccount/service/impl/AllocationServiceImpl.java

@@ -401,12 +401,13 @@ public class AllocationServiceImpl extends ServiceImpl<AllocationMapper, Allocat
      * @param sheet     报表
      * @param year      年
      * @param month     月
+     * @param shareLevelId
      * @return
      */
     @Override
-    public ExcelWriter getShareReportTemplate(ExcelWriter writer, Integer levelSort, Sheet sheet, Integer year, Integer month) {
+    public ExcelWriter getShareReportTemplate(ExcelWriter writer, Integer levelSort, Sheet sheet, Integer year, Integer month, Long shareLevelId) {
         // 获取数据
-        List<AllocationReportVO> allocationReportVOList = getAllocationReportVOS(levelSort, year, month);
+        List<AllocationReportVO> allocationReportVOList = getAllocationReportVOS(levelSort, year, month,shareLevelId);
         // 设置导出
         Map<String, List<AllocationReportVO>> responsibilityMap = allocationReportVOList.stream().collect(Collectors.groupingBy(AllocationReportVO::getResponsibilityCode));
         Map<String, List<AllocationReportVO>> targetResponsibilityMap = allocationReportVOList.stream().collect(Collectors.groupingBy(AllocationReportVO::getTargetResponsibilityCode));
@@ -605,16 +606,16 @@ public class AllocationServiceImpl extends ServiceImpl<AllocationMapper, Allocat
      * @param month
      * @return
      */
-    private List<AllocationReportVO> getAllocationReportVOS(Integer levelSort, Integer year, Integer month) {
+    private List<AllocationReportVO> getAllocationReportVOS(Integer levelSort, Integer year, Integer month,Long shareLevelId) {
         Long hospId = UserContext.getHospId();
         if (Objects.isNull(levelSort) || Objects.isNull(year) || Objects.isNull(month)) {
             throw new CostException(500, "参数异常");
         }
         // 处理第几次分摊计算值
         List<Allocation> allocationList = baseMapper.selectList(new QueryWrapper<Allocation>().lambda()
-                .eq(Allocation::getHospId, hospId).eq(Allocation::getLevelSort, levelSort).eq(Allocation::getDateYear, year)
+                .eq(Allocation::getHospId, hospId).eq(Allocation::getLevelSort, levelSort).eq(Allocation::getShareLevelId,shareLevelId).eq(Allocation::getDateYear, year)
                 .eq(Allocation::getDateMonth, month));
-
+        // 找会计科室的时候使用的
         List<Allocation> allocations = baseMapper.selectList(new QueryWrapper<Allocation>().lambda()
                 .eq(Allocation::getHospId, hospId).eq(Allocation::getDateYear, year)
                 .eq(Allocation::getDateMonth, month));

+ 2 - 2
src/main/java/com/imed/costaccount/web/ExcelController.java

@@ -400,7 +400,7 @@ public class ExcelController extends AbstractController{
 //    }
     @ApiOperation("分摊报表输出2.0")
     @GetMapping("/getShareReportTemplate")
-    public void getTemplate(HttpServletResponse response,Integer levelSort,String token,Integer year,Integer month) throws IOException {
+    public void getTemplate(HttpServletResponse response,Integer levelSort,String token,Integer year,Integer month,Long shareLevelId) throws IOException {
         int userId = jwtUtil.getUserId(token);
         User user = userService.getById(userId);
         if (Objects.isNull(user)){
@@ -413,7 +413,7 @@ public class ExcelController extends AbstractController{
         ExcelWriter writer = new ExcelWriter(url);
         Sheet sheet = writer.getSheet();
         // 第几次分摊
-        writer= allocationServicel.getShareReportTemplate(writer,levelSort,sheet,year,month);
+        writer= allocationServicel.getShareReportTemplate(writer,levelSort,sheet,year,month,shareLevelId);
         response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
         response.setHeader("Content-Disposition", "attachment;filename=" + uuid + ".xls");
         ServletOutputStream out = null;