refactor(crm): 统一配卷查询接口并增加筛选功能

- 将所有配卷查询接口统一为POST + Body BO方式
- 为配卷查询添加钢卷号、材料类型、质量状态、发货状态筛选条件
- 在合同详情页面为生产成果和发货配卷添加筛选表单
- 在订单页面为发货配卷添加筛选功能
- 在销售员页面为生产成果和计划发货添加筛选功能
- 更新异议管理页面的配卷查询参数结构
- 增加订单ID参数用于合同ID相关查询的兼容性处理
This commit is contained in:
2026-07-09 19:01:36 +08:00
parent 2d44ebaaed
commit 002ac3f3ab
17 changed files with 561 additions and 160 deletions

View File

@@ -26,6 +26,7 @@ import com.klp.domain.vo.WmsDeliveryWaybillDetailVo;
import com.klp.domain.bo.WmsDeliveryWaybillDetailBo;
import com.klp.service.IWmsDeliveryWaybillDetailService;
import com.klp.domain.bo.WmsMaterialCoilBo;
import com.klp.domain.bo.PrincipalCoilQueryBo;
import com.klp.service.IWmsMaterialCoilService;
import com.klp.common.core.page.TableDataInfo;
@@ -188,34 +189,34 @@ public class WmsDeliveryWaybillDetailController extends BaseController {
/**
* 根据负责人(principal)查询已发货绑定的钢卷列表(分页)
* 根据负责人(principal)查询已发货绑定的钢卷列表(分页),支持钢卷信息筛选
*/
@GetMapping("/coilListByPrincipal")
public TableDataInfo<WmsMaterialCoilVo> coilListByPrincipal(
@RequestParam(required = false) String principal,
PageQuery pageQuery) {
List<Long> boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(principal);
@PostMapping("/coilListByPrincipal")
public TableDataInfo<WmsMaterialCoilVo> coilListByPrincipal(@RequestBody PrincipalCoilQueryBo bo) {
List<Long> boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(bo.getPrincipal());
if (boundCoilIds == null || boundCoilIds.isEmpty()) {
return new TableDataInfo<>();
}
WmsMaterialCoilBo wmsMaterialCoilBo = new WmsMaterialCoilBo();
wmsMaterialCoilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
return iWmsMaterialCoilService.queryPageList(wmsMaterialCoilBo, pageQuery);
WmsMaterialCoilBo coilBo = bo.getCoilBo() != null ? bo.getCoilBo() : new WmsMaterialCoilBo();
coilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
PageQuery pageQuery = new PageQuery();
pageQuery.setPageNum(bo.getPageNum());
pageQuery.setPageSize(bo.getPageSize());
return iWmsMaterialCoilService.queryPageList(coilBo, pageQuery);
}
/**
* 根据负责人(principal)统计已发货绑定钢卷的汇总数据(数量、毛重、净重)
* 根据负责人(principal)统计已发货绑定钢卷的汇总数据,支持钢卷信息筛选
*/
@GetMapping("/coilListByPrincipal/statistics")
public R<java.util.Map<String, java.math.BigDecimal>> getCoilListByPrincipalStatistics(
@RequestParam(required = false) String principal) {
List<Long> boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(principal);
@PostMapping("/coilListByPrincipal/statistics")
public R<java.util.Map<String, java.math.BigDecimal>> getCoilListByPrincipalStatistics(@RequestBody PrincipalCoilQueryBo bo) {
List<Long> boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(bo.getPrincipal());
if (boundCoilIds == null || boundCoilIds.isEmpty()) {
return R.ok();
}
WmsMaterialCoilBo wmsMaterialCoilBo = new WmsMaterialCoilBo();
wmsMaterialCoilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
return R.ok(iWmsMaterialCoilService.getStatistics(wmsMaterialCoilBo));
WmsMaterialCoilBo coilBo = bo.getCoilBo() != null ? bo.getCoilBo() : new WmsMaterialCoilBo();
coilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
return R.ok(iWmsMaterialCoilService.getStatistics(coilBo));
}
}

View File

@@ -0,0 +1,28 @@
package com.klp.domain.bo;
import lombok.Data;
import java.io.Serializable;
/**
* 负责人钢卷查询请求对象
*
* @author klp
* @date 2026-07-09
*/
@Data
public class PrincipalCoilQueryBo implements Serializable {
private static final long serialVersionUID = 1L;
/** 负责人 */
private String principal;
/** 分页页码 */
private Integer pageNum;
/** 分页大小 */
private Integer pageSize;
/** 钢卷筛选条件 */
private WmsMaterialCoilBo coilBo;
}