package com.ruoyi.production.controller; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.production.dto.ProductionSettlementDetailsDto; import com.ruoyi.production.dto.ProductionSettlementDto; import com.ruoyi.production.dto.ProductionSettlementTotalDto; import com.ruoyi.production.dto.SettlementImportDto; import com.ruoyi.production.service.IProductionSettlementBatchesService; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; /** *

* 生产成本核算批次主表 前端控制器 *

* * @author deslrey * @since 2026-03-30 */ @RestController @RequestMapping("/productionSettlementBatches") @ApiModel(value = "ProductionSettlementBatchesController类", description = "生产成本核算批次主表 前端控制器") public class ProductionSettlementBatchesController { @Autowired private IProductionSettlementBatchesService productionSettlementBatchesService; @PostMapping("/import") @ApiOperation("导入生产成本核算表") public AjaxResult importProductionSettlement(@RequestParam("file") MultipartFile file, ProductionSettlementDto dto) { productionSettlementBatchesService.importProductionSettlement(file, dto); return AjaxResult.success(); } @GetMapping("/downloadTemplate") @ApiOperation("生产成本核算导入模板") public void export(HttpServletResponse response) { ExcelUtil excelUtil = new ExcelUtil<>(SettlementImportDto.class); excelUtil.importTemplateExcel(response, "生产成本核算导入模板"); } @GetMapping("/getSettlement") @ApiOperation("获取生产成本核算数据") public AjaxResult getSettlement(ProductionSettlementDto dto) { Map> map = productionSettlementBatchesService.getSettlement(dto); return AjaxResult.success(map); } @GetMapping("/getProductTypes") @ApiOperation("获取对应月份导入的产品类别") public AjaxResult getProductTypes(ProductionSettlementDto dto) { List list = productionSettlementBatchesService.getProductTypes(dto); return AjaxResult.success(list); } @GetMapping("/getSubjectNames") @ApiOperation("获取对应月份导入的科目类别") public AjaxResult getSubjectNames(ProductionSettlementDto dto) { List list = productionSettlementBatchesService.getSubjectNames(dto); return AjaxResult.success(list); } @GetMapping("/getTotalCosts") @ApiOperation("获取成本合计数据") public AjaxResult getTotalCosts(ProductionSettlementDto dto) { ProductionSettlementTotalDto totalCosts = productionSettlementBatchesService.getTotalCosts(dto); return AjaxResult.success(totalCosts); } }