gongchunyi
16 小时以前 da7562b91f817ec5e28e748ad6e7b41d7b6d9424
src/main/java/com/ruoyi/production/service/impl/ProductionAccountServiceImpl.java
@@ -3,17 +3,23 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.production.bean.dto.ProductionAccountDto;
import com.ruoyi.production.bean.dto.ProductionProductMainDto;
import com.ruoyi.production.bean.vo.ProductionAccountExportVo;
import com.ruoyi.production.bean.vo.ProductionAccountVo;
import com.ruoyi.production.mapper.ProductionAccountMapper;
import com.ruoyi.production.mapper.ProductionProductMainMapper;
import com.ruoyi.production.pojo.ProductionAccount;
import com.ruoyi.production.service.ProductionAccountService;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
@Service
@RequiredArgsConstructor
@@ -35,6 +41,22 @@
        return productionProductMainMapper.listProductionDetails(normalizeDateQuery(dto), page);
    }
    @Override
    public void exportDetails(HttpServletResponse response, ProductionAccountDto dto) {
        ProductionAccountDto query = normalizeDateQuery(dto);
        IPage<ProductionProductMainDto> page = productionProductMainMapper.listProductionDetails(query, new Page<>(1, -1));
        List<ProductionAccountExportVo> exportList = new ArrayList<>();
        if (page != null && page.getRecords() != null) {
            for (ProductionProductMainDto item : page.getRecords()) {
                ProductionAccountExportVo vo = new ProductionAccountExportVo();
                BeanUtils.copyProperties(item, vo);
                exportList.add(vo);
            }
        }
        ExcelUtil<ProductionAccountExportVo> util = new ExcelUtil<>(ProductionAccountExportVo.class);
        util.exportExcel(response, exportList, "生产核算");
    }
    private ProductionAccountDto normalizeDateQuery(ProductionAccountDto dto) {
        // 规范日期查询范围,补齐缺失的开始或结束时间
        if (dto == null) {