| | |
| | | @RequestParam(value = "taskId", required = false) Long taskId) { |
| | | // 未指定物料/工单/任务时,按检测种类返回全部启用的质检方案(不限制产品物料关联) |
| | | if (itemId == null && workOrderId == null && taskId == null && qcType != null) { |
| | | List<MesQcTemplateItemOptionRespVO> options = templateService.getEnabledTemplateListByType(qcType) |
| | | .stream().map(template -> new MesQcTemplateItemOptionRespVO() |
| | | .setTemplateId(template.getId()).setTemplateCode(template.getCode()) |
| | | .setTemplateName(template.getName())) |
| | | .collect(Collectors.toList()); |
| | | return success(options); |
| | | return success(buildEnabledTemplateOptions(qcType)); |
| | | } |
| | | List<MesQcTemplateItemDO> list = templateItemService.getTemplateItemList( |
| | | itemId, qcType, workOrderId, taskId); |
| | | if (CollUtil.isEmpty(list)) { |
| | | // 该物料未绑定方案时,回退为该检测种类下的全部启用方案,供用户手动选择; |
| | | // 否则无绑定的物料(如万通出货检验的绝大多数产品)下拉框永远为空,单据无法编制 |
| | | if (qcType != null && (itemId != null || workOrderId != null || taskId != null)) { |
| | | return success(buildEnabledTemplateOptions(qcType)); |
| | | } |
| | | return success(Collections.emptyList()); |
| | | } |
| | | Map<Long, MesQcTemplateDO> templateMap = templateService.getTemplateMap( |
| | |
| | | return success(result); |
| | | } |
| | | |
| | | /** |
| | | * 构建「该检测种类下全部启用方案」的选项列表 |
| | | */ |
| | | private List<MesQcTemplateItemOptionRespVO> buildEnabledTemplateOptions(Integer qcType) { |
| | | return templateService.getEnabledTemplateListByType(qcType).stream() |
| | | .map(template -> new MesQcTemplateItemOptionRespVO() |
| | | .setTemplateId(template.getId()).setTemplateCode(template.getCode()) |
| | | .setTemplateName(template.getName())) |
| | | .collect(Collectors.toList()); |
| | | } |
| | | |
| | | // ==================== 拼接 VO ==================== |
| | | |
| | | private List<MesQcTemplateItemRespVO> buildItemRespVOList(List<MesQcTemplateItemDO> list) { |