feat(wms): 新增退火报表导出功能
- 在IWmsMaterialCoilService中添加queryAnnealExportList方法 - 在WmsMaterialCoilController中新增exportAnneal接口用于导出退火报表 - 在WmsMaterialCoilMapper中添加selectAnnealExportListByCoilIds查询方法 - 在WmsMaterialCoilMapper.xml中实现退火报表SQL查询,关联钢卷、退火计划、炉子等信息 - 在WmsMaterialCoilServiceImpl中实现退火报表数据查询逻辑 - 创建WmsMaterialCoilAnnealExportVo实体类用于退火报表数据导出 - 优化材质异常查询SQL逻辑,改进热轧卷板相关查询条件
This commit is contained in:
@@ -132,6 +132,17 @@ public class WmsMaterialCoilController extends BaseController {
|
||||
ExcelUtil.exportExcel(list, "发货报表", WmsMaterialCoilDeliveryExportVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出退火报表(按 coilIds,联查退火计划/目标炉/逻辑库区)
|
||||
* 前端仍使用 POST 传参(建议在 body 中传 coilIds,避免 URL 限制)
|
||||
*/
|
||||
@Log(title = "钢卷物料表-退火报表", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/exportAnneal")
|
||||
public void exportAnneal(WmsMaterialCoilBo bo, HttpServletResponse response) {
|
||||
List<WmsMaterialCoilAnnealExportVo> list = iWmsMaterialCoilService.queryAnnealExportList(bo);
|
||||
ExcelUtil.exportExcel(list, "退火报表", WmsMaterialCoilAnnealExportVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询钢卷物料表列表(POST请求,支持大量coilIds查询)
|
||||
* 功能与GET /list相同,但使用POST请求体传递参数,避免URL长度限制
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.klp.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class WmsMaterialCoilAnnealExportVo extends WmsMaterialCoilExportVo {
|
||||
|
||||
private Long coilId;
|
||||
|
||||
@ExcelProperty(value = "计划号")
|
||||
private String planNo;
|
||||
|
||||
@ExcelProperty(value = "计划开始时间")
|
||||
private Date planStartTime;
|
||||
|
||||
@ExcelProperty(value = "实际开始时间")
|
||||
private Date actualStartTime;
|
||||
|
||||
@ExcelProperty(value = "结束时间")
|
||||
private Date endTime;
|
||||
|
||||
@ExcelProperty(value = "目标炉子ID")
|
||||
private Long targetFurnaceId;
|
||||
|
||||
@ExcelProperty(value = "目标炉子名称")
|
||||
private String targetFurnaceName;
|
||||
|
||||
@ExcelProperty(value = "计划状态")
|
||||
private Integer status;
|
||||
|
||||
@ExcelProperty(value = "计划备注")
|
||||
private String remark;
|
||||
|
||||
private Long logicWarehouseId;
|
||||
|
||||
@ExcelProperty(value = "目标逻辑库区")
|
||||
private String logicWarehouseName;
|
||||
|
||||
@ExcelProperty(value = "炉火层级")
|
||||
private Integer furnaceLevel;
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.klp.domain.WmsMaterialCoil;
|
||||
import com.klp.domain.vo.WmsMaterialCoilAnnealExportVo;
|
||||
import com.klp.domain.vo.WmsMaterialCoilDeliveryExportVo;
|
||||
import com.klp.domain.vo.WmsMaterialCoilVo;
|
||||
import com.klp.common.core.mapper.BaseMapperPlus;
|
||||
@@ -89,6 +90,14 @@ public interface WmsMaterialCoilMapper extends BaseMapperPlus<WmsMaterialCoilMap
|
||||
*/
|
||||
List<WmsMaterialCoilDeliveryExportVo> selectDeliveryExportListByCoilIds(@Param("coilIds") java.util.Collection<Long> coilIds);
|
||||
|
||||
/**
|
||||
* 退火报表导出:按钢卷ID列表联查(钢卷 + 退火计划 + 退火计划钢卷关系)
|
||||
*
|
||||
* @param coilIds 钢卷ID集合
|
||||
* @return 退火报表导出数据
|
||||
*/
|
||||
List<WmsMaterialCoilAnnealExportVo> selectAnnealExportListByCoilIds(@Param("coilIds") java.util.Collection<Long> coilIds);
|
||||
|
||||
List<CoilTrimRawVo> selectCoilTrimStatistics();
|
||||
|
||||
List<CategoryWidthRawVo> selectCategoryWidthStatistics();
|
||||
|
||||
@@ -296,5 +296,13 @@ public interface IWmsMaterialCoilService {
|
||||
* @return 修复结果
|
||||
*/
|
||||
Boolean fixMaterialMismatchCoils(Long coilId);
|
||||
|
||||
/**
|
||||
* 退火报表导出数据列表(按 coilIds)
|
||||
*
|
||||
* @param bo 查询条件(前端通过 POST 传 coilIds)
|
||||
* @return 退火报表导出数据列表
|
||||
*/
|
||||
List<WmsMaterialCoilAnnealExportVo> queryAnnealExportList(WmsMaterialCoilBo bo);
|
||||
}
|
||||
|
||||
|
||||
@@ -2809,6 +2809,18 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
|
||||
return wmsMaterialCoilDeliveryExportVos;
|
||||
}
|
||||
|
||||
/**
|
||||
* 退火报表导出:按 coilIds 查询钢卷 + 退火计划联查数据
|
||||
*/
|
||||
@Override
|
||||
public List<WmsMaterialCoilAnnealExportVo> queryAnnealExportList(WmsMaterialCoilBo bo) {
|
||||
List<Long> coilIds = parseCsvLongs(bo == null ? null : bo.getCoilIds());
|
||||
if (coilIds.isEmpty()) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return baseMapper.selectAnnealExportListByCoilIds(coilIds);
|
||||
}
|
||||
|
||||
private List<Long> parseCsvLongs(String csv) {
|
||||
if (StringUtils.isBlank(csv)) {
|
||||
return Collections.emptyList();
|
||||
|
||||
Reference in New Issue
Block a user