From 0b4c9f2a37a825a84725cb66ecf04060831ac5d0 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 25 三月 2026 09:59:49 +0800
Subject: [PATCH] fix: 报工详情返回工序详细信息、产品详细信息
---
src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemParamDto.java | 9 ++++
src/main/java/com/ruoyi/production/dto/ProductionRecordDto.java | 3 +
src/main/java/com/ruoyi/production/service/impl/ProductionRecordServiceImpl.java | 15 +++++++
src/main/resources/mapper/production/ProductBomMapper.xml | 16 ++++++++
src/main/java/com/ruoyi/production/service/impl/ProductBomServiceImpl.java | 8 ++++
src/main/java/com/ruoyi/production/pojo/ProductionProductRouteItemParam.java | 2
src/main/resources/mapper/production/ProductionProductMainMapper.xml | 1
src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemDto.java | 9 ++++
src/main/java/com/ruoyi/production/mapper/ProductBomMapper.java | 2 +
src/main/java/com/ruoyi/production/service/ProductBomService.java | 3 +
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java | 3 +
11 files changed, 69 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
index 0ee4fe9..f2a71f5 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -73,4 +73,7 @@
@ApiModelProperty(value = "浜у嚭鏂归噺")
@Excel(name = "浜у嚭鏂归噺")
private BigDecimal totalQuantity;
+
+ @ApiModelProperty("寮哄害")
+ private String strength;
}
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemDto.java
index aa3927e..5f9b274 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemDto.java
@@ -20,6 +20,15 @@
@EqualsAndHashCode(callSuper = false)
public class ProductionProductRouteItemDto extends ProductionProductRouteItem {
+ @ApiModelProperty("宸ュ簭鍚嶇О")
+ private String processName;
+
+ @ApiModelProperty("宸ュ簭缂栧彿")
+ private String processNo;
+
+ @ApiModelProperty("寮哄害")
+ private String strength;
+
@ApiModelProperty("宸ュ簭缁戝畾鐨勫弬鏁颁俊鎭�")
private List<ProductionProductRouteItemParamDto> productionProductRouteItemParamDtoList;
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemParamDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemParamDto.java
index d7a7478..accedd1 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemParamDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductRouteItemParamDto.java
@@ -21,4 +21,13 @@
@ApiModelProperty("浜у搧鍚嶇О")
private String productName;
+ @ApiModelProperty("瑙勬牸鍨嬪彿")
+ private String model;
+
+ @ApiModelProperty("鐗╂枡缂栫爜")
+ private String materialCode;
+
+ @ApiModelProperty("寮哄害")
+ private String strength;
+
}
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionRecordDto.java b/src/main/java/com/ruoyi/production/dto/ProductionRecordDto.java
index f0381b5..526b207 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionRecordDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionRecordDto.java
@@ -66,6 +66,9 @@
@ApiModelProperty("浜у嚭鏁伴噺")
private BigDecimal quantity;
+ @ApiModelProperty("寮哄害")
+ private String strength;
+
@ApiModelProperty("宸ヨ壓璺嚎缁戝畾鐨勫伐搴�")
private List<ProductionProductRouteItemDto> productionProductRouteItemDtoList;
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductBomMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductBomMapper.java
index 44ac0c9..e5ce518 100644
--- a/src/main/java/com/ruoyi/production/mapper/ProductBomMapper.java
+++ b/src/main/java/com/ruoyi/production/mapper/ProductBomMapper.java
@@ -23,4 +23,6 @@
IPage<ProductBomDto> listPage(Page<ProductBom> page, @Param("c") ProductBomDto productBomDto);
ProductBomDto getById(@Param("bomId") Long bomId);
+
+ String selectStrengthById(@Param("bomId") Long bomId);
}
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductionProductRouteItemParam.java b/src/main/java/com/ruoyi/production/pojo/ProductionProductRouteItemParam.java
index 7d9d12b..2de5259 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProductionProductRouteItemParam.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProductionProductRouteItemParam.java
@@ -71,7 +71,7 @@
private BigDecimal productValue;
@ApiModelProperty(value = "BOM ID")
- private BigDecimal bomId;
+ private Long bomId;
@ApiModelProperty(value = "鍗曚綅")
private String unit;
diff --git a/src/main/java/com/ruoyi/production/service/ProductBomService.java b/src/main/java/com/ruoyi/production/service/ProductBomService.java
index af6979c..788d87d 100644
--- a/src/main/java/com/ruoyi/production/service/ProductBomService.java
+++ b/src/main/java/com/ruoyi/production/service/ProductBomService.java
@@ -27,4 +27,7 @@
AjaxResult uploadBom(MultipartFile file, Long dictCode);
void exportBom(HttpServletResponse response, Integer bomId);
+
+
+ String strengthById(Long bomId);
}
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductBomServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductBomServiceImpl.java
index c16401e..1878211 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductBomServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductBomServiceImpl.java
@@ -253,6 +253,14 @@
util.exportExcel(response, exportList, "BOM缁撴瀯瀵煎嚭");
}
+ @Override
+ public String strengthById(Long bomId) {
+ if (bomId == null) {
+ return null;
+ }
+ return baseMapper.selectStrengthById(bomId);
+ }
+
private void populateMap(List<ProductStructureDto> nodes, Map<Long, ProductStructureDto> map) {
if (nodes == null || nodes.isEmpty()) {
return;
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionRecordServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionRecordServiceImpl.java
index 0a0d5ff..3dc9f0a 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionRecordServiceImpl.java
@@ -93,6 +93,9 @@
private ProductMaterialService productMaterialService;
@Autowired
+ private ProductBomService productBomService;
+
+ @Autowired
private TempFileMapper tempFileMapper;
@Override
@@ -470,6 +473,7 @@
throw new ServiceException("鏌ヨ澶辫触,鏈煡璇㈠埌鐢熶骇璁㈠崟淇℃伅");
}
dto.setNpsNo(productOrder.getNpsNo());
+ dto.setStrength(productOrder.getStrength());
/// 浜у搧淇℃伅
ProductMaterialSkuDto productMaterialSkuDto = productMaterialService.selectProductByProductMainId(productOrder.getId());
@@ -507,6 +511,11 @@
ProductionProductRouteItemDto routeItemDto = new ProductionProductRouteItemDto();
BeanUtils.copyProperties(routeItem, routeItemDto);
+ // 宸ュ簭鍚嶇О/缂栧彿
+ ProductProcess productProcess = productProcessService.getById(routeItem.getProcessId());
+ routeItemDto.setProcessName(productProcess.getName());
+ routeItemDto.setProcessNo(productProcess.getNo());
+
// 鏌ヨ宸ュ簭鍙傛暟
List<ProductionProductRouteItemParam> paramList = productionProductRouteItemParamService.list(
new LambdaQueryWrapper<ProductionProductRouteItemParam>()
@@ -519,6 +528,10 @@
ProductMaterialSkuDto materialSkuDto = productMaterialService.selectProductByModelId(paramDto.getProductId());
productMaterialService.selectProductByModelId(paramDto.getProductId());
paramDto.setParamName(materialSkuDto.getProductName());
+ paramDto.setModel(materialSkuDto.getModel());
+ paramDto.setMaterialCode(materialSkuDto.getMaterialCode());
+ String strength = productBomService.strengthById(paramDto.getBomId());
+ paramDto.setStrength(strength);
}
return paramDto;
}).collect(Collectors.toList());
@@ -652,7 +665,7 @@
.eq(ProductionProductRouteItemParam::getProductionProductRouteItemId, routeItemId));
List<ProductionProductRouteItemParamDto> paramDtoList = routeItemDto.getProductionProductRouteItemParamDtoList();
- if (paramDtoList != null && !paramDtoList.isEmpty()) {
+ if (paramDtoList != null && !paramDtoList.isEmpty()) {
for (ProductionProductRouteItemParamDto paramDto : paramDtoList) {
ProductionProductRouteItemParam paramEntity = new ProductionProductRouteItemParam();
BeanUtils.copyProperties(paramDto, paramEntity, "id");
diff --git a/src/main/resources/mapper/production/ProductBomMapper.xml b/src/main/resources/mapper/production/ProductBomMapper.xml
index e3532c5..b99aefa 100644
--- a/src/main/resources/mapper/production/ProductBomMapper.xml
+++ b/src/main/resources/mapper/production/ProductBomMapper.xml
@@ -44,4 +44,20 @@
where pb.id = #{id}
</select>
+ <select id="selectStrengthById" resultType="java.lang.String" parameterType="java.lang.Long">
+ select sdd.dict_label
+ from product_bom pb
+ left join sys_dict_data sdd on pb.dict_code = sdd.dict_code
+ <where>
+ <choose>
+ <when test="bomId != null">
+ pb.id = #{bomId}
+ </when>
+ <otherwise>
+ 1 = 0
+ </otherwise>
+ </choose>
+ </where>
+ </select>
+
</mapper>
diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
index d9cd9e4..22d46a8 100644
--- a/src/main/resources/mapper/production/ProductionProductMainMapper.xml
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -19,6 +19,7 @@
select ppm.*,
ppm.post_name as postName,
po.nps_no as npsNo,
+ po.strength as strength,
pms.material_code as materialCode,
pm.product_name as productName,
pms.model as productModelName,
--
Gitblit v1.9.3