feat(qc): 添加质检检验任务所属单位字段

- 在QcInspectionTask实体类中新增belongCompany字段
- 在QcInspectionTaskBo业务对象中新增belongCompany字段
- 在QcInspectionTaskVo视图对象中新增belongCompany字段并配置Excel导出
- 在MyBatis映射文件中添加belongCompany字段映射
- 在查询条件中添加所属单位模糊匹配功能
This commit is contained in:
2026-05-18 14:22:05 +08:00
parent a947987e82
commit f5c1aecd56
5 changed files with 22 additions and 5 deletions

View File

@@ -34,6 +34,10 @@ public class QcInspectionTask extends BaseEntity {
* 任务类型(内控/产品检验)
*/
private String taskType;
/**
* 所属单位
*/
private String belongCompany;
/**
* 来源类型(生产/采购/库存)
*/

View File

@@ -34,6 +34,11 @@ public class QcInspectionTaskBo extends BaseEntity {
*/
private String taskType;
/**
* 所属单位
*/
private String belongCompany;
/**
* 来源类型(生产/采购/库存)
*/

View File

@@ -43,6 +43,12 @@ public class QcInspectionTaskVo {
@ExcelDictFormat(readConverterExp = "内=控/产品检验")
private String taskType;
/**
* 所属单位
*/
@ExcelProperty(value = "所属单位")
private String belongCompany;
/**
* 来源类型(生产/采购/库存)
*/

View File

@@ -61,7 +61,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
public TableDataInfo<QcInspectionTaskVo> queryPageList(QcInspectionTaskBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<QcInspectionTask> lqw = buildQueryWrapper(bo);
Page<QcInspectionTaskVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
// 批量查询钢卷信息避免N+1查询问题
if (result.getRecords() != null && !result.getRecords().isEmpty()) {
// 收集所有需要查询的coilIds
@@ -71,7 +71,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
allCoilIdsList.add(task.getCoilIds());
}
}
// 如果有需要查询的钢卷ID
if (!allCoilIdsList.isEmpty()) {
// 将所有coilIds合并成一个大的ID列表
@@ -79,7 +79,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
WmsMaterialCoilBo wmsMaterialCoilBo = new WmsMaterialCoilBo();
wmsMaterialCoilBo.setCoilIds(allCoilIds);
List<WmsMaterialCoilVo> allCoils = wmsMaterialCoilService.queryList(wmsMaterialCoilBo);
// 为每个任务设置对应的钢卷列表
for (QcInspectionTaskVo task : result.getRecords()) {
if (StringUtils.isNotBlank(task.getCoilIds())) {
@@ -95,7 +95,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
}
}
}
// 从所有钢卷中筛选出属于当前任务的钢卷
List<WmsMaterialCoilVo> taskCoils = allCoils.stream()
.filter(coil -> taskCoilIds.contains(coil.getCoilId()))
@@ -105,7 +105,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
}
}
}
return TableDataInfo.build(result);
}
@@ -123,6 +123,7 @@ public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
LambdaQueryWrapper<QcInspectionTask> lqw = Wrappers.lambdaQuery();
lqw.eq(StringUtils.isNotBlank(bo.getTaskCode()), QcInspectionTask::getTaskCode, bo.getTaskCode());
lqw.eq(StringUtils.isNotBlank(bo.getTaskType()), QcInspectionTask::getTaskType, bo.getTaskType());
lqw.like(StringUtils.isNotBlank(bo.getBelongCompany()), QcInspectionTask::getBelongCompany, bo.getBelongCompany());
lqw.eq(StringUtils.isNotBlank(bo.getSourceType()), QcInspectionTask::getSourceType, bo.getSourceType());
lqw.eq(bo.getSourceId() != null, QcInspectionTask::getSourceId, bo.getSourceId());
lqw.eq(bo.getSchemeId() != null, QcInspectionTask::getSchemeId, bo.getSchemeId());

View File

@@ -8,6 +8,7 @@
<result property="taskId" column="task_id"/>
<result property="taskCode" column="task_code"/>
<result property="taskType" column="task_type"/>
<result property="belongCompany" column="belong_company"/>
<result property="sourceType" column="source_type"/>
<result property="sourceId" column="source_id"/>
<result property="schemeId" column="scheme_id"/>