diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmReportController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmReportController.java index a96d6c0d..604c8d58 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmReportController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmReportController.java @@ -3,6 +3,7 @@ package com.bonus.material.basic.controller; import cn.hutool.core.convert.Convert; import com.alibaba.nacos.common.utils.CollectionUtils; import com.bonus.common.biz.config.ListPagingUtil; +import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.utils.ServletUtils; import com.bonus.common.core.utils.poi.ExcelUtil; import com.bonus.common.core.web.controller.BaseController; @@ -737,4 +738,38 @@ public class BmReportController extends BaseController { int idx = url.lastIndexOf('.'); return (idx > 0 && idx < url.length() - 1) ? url.substring(idx) : ""; } + + /** + * 资产占有月度报表查询 + * @param bean + * @return + */ + @ApiOperation(value = "资产占有月度报表查询") + @GetMapping("/getAssetReportList") + public AjaxResult getAssetReportList(AssetReportInfo bean) { + startPage(); + List pageList = bmReportService.getAssetReportList(bean); + return AjaxResult.success(getDataTable(pageList)); + } + + /** + * 导出资产占有月度报表 + * @param response + * @param bean + */ + @ApiOperation("导出资产占有月度报表") + @PostMapping("/exportAssetReportList") + public void exportAssetReportList(HttpServletResponse response, AssetReportInfo bean) + { + String fileName = "资产占有月度报表"; + List list = bmReportService.getAssetReportList(bean); + // 根据list集合数,去填充序号 + for (int i = 0; i < list.size(); i++) { + list.get(i).setSeq(i + 1); + } + ExcelUtil util = new ExcelUtil<>(AssetReportInfo.class); + // 获取当前年月日时分秒导出时间,用括号拼接在后面 + String title = "资产占有月度报表" + "(" + "导出时间:" + DateUtils.getTime() + ")"; + util.exportExcel(response, list, fileName, title); + } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/report/AssetReportInfo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/report/AssetReportInfo.java new file mode 100644 index 00000000..3eaa4363 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/report/AssetReportInfo.java @@ -0,0 +1,38 @@ +package com.bonus.material.basic.domain.report; + +import com.bonus.common.core.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.apache.poi.ss.usermodel.HorizontalAlignment; + +import java.math.BigDecimal; + +/** + * 资产占用月度报表info + * @Author ma_sh + * @create 2025/11/19 9:36 + */ +@Data +public class AssetReportInfo { + + private Long id; + + @ApiModelProperty(value = "序号") + @Excel(name = "序号", cellType = Excel.ColumnType.NUMERIC, width = 5,sort = 0) + private Integer seq; + + @ApiModelProperty(value = "工程id") + private String proId; + + @ApiModelProperty(value = "工程名称") + @Excel(name = "工程名称") + private String projectName; + + @ApiModelProperty(value = "投入费用") + @Excel(name = "投入费用(万元)", cellType = Excel.ColumnType.NUMERIC, align = HorizontalAlignment.RIGHT) + private BigDecimal inputCost; + + @ApiModelProperty(value = "在用费用") + @Excel(name = "在用费用(万元)", cellType = Excel.ColumnType.NUMERIC, align = HorizontalAlignment.RIGHT) + private BigDecimal useCost; +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmReportMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmReportMapper.java index 1b927c87..2c591e8b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmReportMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmReportMapper.java @@ -136,4 +136,11 @@ public interface BmReportMapper { * @return */ List selectPublishList(LeaseOutInfo bean); + + /** + * 资产占有月度报表查询 + * @param bean + * @return + */ + List getAssetReportList(AssetReportInfo bean); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmReportService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmReportService.java index eb02ff41..e6903fae 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmReportService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmReportService.java @@ -123,4 +123,11 @@ public interface BmReportService { * @return */ List getReportList(ReportQuery bean); + + /** + * 资产占有月度报表查询 + * @param bean + * @return + */ + List getAssetReportList(AssetReportInfo bean); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmReportServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmReportServiceImpl.java index 8792a8df..26f683f2 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmReportServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmReportServiceImpl.java @@ -412,4 +412,14 @@ public class BmReportServiceImpl implements BmReportService { } return true; } + + /** + * 资产占有月度报表查询 + * @param bean + * @return + */ + @Override + public List getAssetReportList(AssetReportInfo bean) { + return bmReportMapper.getAssetReportList(bean); + } } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmReportMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmReportMapper.xml index 17c9fe61..6099373a 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmReportMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmReportMapper.xml @@ -758,4 +758,59 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY sd.dept_id,df.id,bp.pro_id,sai.type_id,LEFT(sai.start_time,10),sai.ma_id + +