From dc4d7386937447cc1e9ecfb3cd65966cc5d21aa1 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期四, 03 四月 2025 22:33:53 +0800 Subject: [PATCH] 1.可靠性计划完善 2.复核记录完善 --- basic-server/src/main/java/com/ruoyi/basic/pojo/ProductPartLog.java | 3 basic-server/src/main/java/com/ruoyi/basic/controller/ProductPartController.java | 4 basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductPartServiceImpl.java | 96 +++++++++++++++++++----- inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java | 5 + inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java | 4 + inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml | 33 ++++++++ basic-server/src/main/java/com/ruoyi/basic/dto/ProductPartDto.java | 2 inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java | 3 inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java | 6 + basic-server/src/main/java/com/ruoyi/basic/service/ProductPartService.java | 2 inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java | 16 +++ inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java | 15 +++ 12 files changed, 157 insertions(+), 32 deletions(-) diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/ProductPartController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/ProductPartController.java index 520142a..0591244 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/controller/ProductPartController.java +++ b/basic-server/src/main/java/com/ruoyi/basic/controller/ProductPartController.java @@ -60,8 +60,8 @@ @ApiOperation(value = "浜у搧闆朵欢鏃ュ織鏌ヨ") @GetMapping("/productPartLogList") - public Result productPartLogList(Page page,Integer id){ - return Result.success(productPartService.productPartLogList(page,id)); + public Result productPartLogList(Page page,Integer id,String type){ + return Result.success(productPartService.productPartLogList(page,id,type)); } } diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/ProductPartDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/ProductPartDto.java index b739b6c..3a0d592 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/dto/ProductPartDto.java +++ b/basic-server/src/main/java/com/ruoyi/basic/dto/ProductPartDto.java @@ -8,4 +8,6 @@ private Integer id; private Integer productId; + private String type; + } diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/ProductPartLog.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/ProductPartLog.java index fce57c5..dc8c4d8 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/pojo/ProductPartLog.java +++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/ProductPartLog.java @@ -53,5 +53,8 @@ @ApiModelProperty("鏄惁宸插鏍�") private String review; + + @ApiModelProperty("鏄惁宸插鏍�") + private String type; } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/ProductPartService.java b/basic-server/src/main/java/com/ruoyi/basic/service/ProductPartService.java index 98c578e..704813d 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/ProductPartService.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/ProductPartService.java @@ -22,5 +22,5 @@ int productPartReviewById(ProductPartDto productPartDto); - IPage<ProductPartLog> productPartLogList(Page page, Integer id); + IPage<ProductPartLog> productPartLogList(Page page, Integer id,String Type); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductPartServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductPartServiceImpl.java index 64f659a..9162805 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductPartServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductPartServiceImpl.java @@ -82,36 +82,92 @@ @Override public int productPartReviewById(ProductPartDto productPartDto) { - int userId = SecurityUtils.getUserId().intValue(); String username = SecurityUtils.getUsername(); - ProductPart productPart = productPartMapper.selectById(productPartDto.getId()); - this.isPartNoExist(productPart.getPartNo(), productPart.getProductId(), productPart.getId()); - if (productPart.getProductId() == null) { - throw new BaseException("缂哄皯浜у搧瀵硅薄id"); + + // 瀹氫箟閫氱敤鐨勪骇鍝侀儴鍒嗗璞� + Object productPart = null; + if ("瀵硅薄".equals(productPartDto.getType())) { + productPart = structureTestObjectPartMapper.selectById(productPartDto.getId()); + if (productPart != null && ((StructureTestObjectPart) productPart).getTestObjectId() == null) { + throw new BaseException("缂哄皯浜у搧瀵硅薄id"); + } + } else { + productPart = productPartMapper.selectById(productPartDto.getId()); + if (productPart != null && ((ProductPart) productPart).getProductId() == null) { + throw new BaseException("缂哄皯浜у搧瀵硅薄id"); + } } - productPart.setReview("宸插鏍�"); - int num = productPartMapper.updateById(productPart); + + if (productPart == null) { + return 0; + } + + // 璁剧疆瀹℃牳鐘舵�� + if (productPart instanceof StructureTestObjectPart) { + ((StructureTestObjectPart) productPart).setReview("宸插鏍�"); + } else { + ((ProductPart) productPart).setReview("宸插鏍�"); + } + + // 鏇存柊浜у搧閮ㄥ垎淇℃伅 + int num = 0; + if (productPart instanceof StructureTestObjectPart) { + num = structureTestObjectPartMapper.updateById((StructureTestObjectPart) productPart); + } else { + num = productPartMapper.updateById((ProductPart) productPart); + } + + // 濡傛灉鏇存柊鎴愬姛锛屽垱寤烘垨鏇存柊鏃ュ織 if (num > 0) { - ProductPartLog productPartLog = new ProductPartLog(); - productPartLog.setProductPartId(productPart.getId()); - productPartLog.setOperName(username); - productPartLog.setOperId(userId); - productPartLog.setOperTime(LocalDateTime.now()); - productPartLog.setColor(productPart.getColor()); - productPartLog.setColorCode(productPart.getColorCode()); - productPartLog.setPartNo(productPart.getPartNo()); - productPartLog.setInspectionItem(productPart.getInspectionItem()); - productPartLog.setReview(productPart.getReview()); - productPartLogMapper.insert(productPartLog); + createOrUpdateProductPartLog(productPart, username, userId, productPartDto.getType(), productPartDto); } + return num; } + private void createOrUpdateProductPartLog(Object productPart, String username, int userId, String type, ProductPartDto productPartDto) { + ProductPartLog productPartLog = new ProductPartLog(); + if (productPart instanceof StructureTestObjectPart) { + StructureTestObjectPart part = (StructureTestObjectPart) productPart; + productPartLog.setProductPartId(part.getId()); + productPartLog.setColor(part.getColor()); + productPartLog.setColorCode(part.getColorCode()); + productPartLog.setPartNo(part.getPartNo()); + productPartLog.setInspectionItem(part.getInspectionItem()); + productPartLog.setReview(part.getReview()); + } else { + ProductPart part = (ProductPart) productPart; + productPartLog.setProductPartId(part.getId()); + productPartLog.setColor(part.getColor()); + productPartLog.setColorCode(part.getColorCode()); + productPartLog.setPartNo(part.getPartNo()); + productPartLog.setInspectionItem(part.getInspectionItem()); + productPartLog.setReview(part.getReview()); + } + productPartLog.setOperName(username); + productPartLog.setOperId(userId); + productPartLog.setOperTime(LocalDateTime.now()); + productPartLog.setType(type); + + // 妫�鏌ユ槸鍚﹀瓨鍦ㄧ浉鍚� ProductPartId 鐨勬棩蹇楄褰� + ProductPartLog existingLog = productPartLogMapper.selectOne(new LambdaQueryWrapper<ProductPartLog>().eq(ProductPartLog::getProductPartId, productPartDto.getId())); + if (existingLog != null) { + // 濡傛灉瀛樺湪锛屾洿鏂拌褰� + productPartLog.setId(existingLog.getId()); // 璁剧疆鏇存柊璁板綍鐨� ID + productPartLogMapper.updateById(productPartLog); + } else { + // 濡傛灉涓嶅瓨鍦紝鎻掑叆鏂拌褰� + productPartLogMapper.insert(productPartLog); + } + } + + @Override - public IPage<ProductPartLog> productPartLogList(Page page, Integer id) { + public IPage<ProductPartLog> productPartLogList(Page page, Integer id, String type) { return productPartLogMapper.selectPage(page, Wrappers.<ProductPartLog>lambdaQuery() - .eq(ProductPartLog::getProductPartId, id)); + .eq(ProductPartLog::getProductPartId, id) + .eq(ProductPartLog::getType, type)); } // 鍒ゆ柇闆朵欢鍙锋槸鍚﹀瓨鍦� diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java index 9040c9f..e11e902 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java @@ -24,8 +24,8 @@ @ApiOperation("鏌ヨ鍙潬鎬ц鍒掓垚鍝佹楠岄」") @GetMapping("/selectProductItem") - public Result selectProductItem() { - return Result.success(reliabilityPlanProductItemService.selectProductItem()); + public Result selectProductItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return Result.success(reliabilityPlanProductItemService.selectProductItem(reliabilityPlanProductItemDto)); } @ApiOperation(value = "娣诲姞鍙潬鎬ц鍒掓垚鍝佹楠岄」") @@ -40,12 +40,24 @@ return Result.success(reliabilityPlanProductItemService.itemList(reliabilityPlanProductItemDto)); } + @ApiOperation(value = "鏌ヨ鍘熻緟鏉愪骇鍝佹楠岄」") + @GetMapping("/materialItem") + public Result materialItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return Result.success(reliabilityPlanProductItemService.materialItem(reliabilityPlanProductItemDto)); + } + @ApiOperation(value = "鏌ヨ浜у搧妫�楠岄」") @GetMapping("/codeList") public Result codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { return Result.success(reliabilityPlanProductItemService.codeList(reliabilityPlanProductItemDto)); } + @ApiOperation(value = "鏌ヨ鍘熻緟鏉愪骇鍝佹楠岄」") + @GetMapping("/materialCodeList") + public Result materialCodeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return Result.success(reliabilityPlanProductItemService.materialCodeList(reliabilityPlanProductItemDto)); + } + @ApiOperation(value = "鍒犻櫎") @DeleteMapping("/deleteItem") public Result deleteItem(Integer id) { diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java index 974d3d7..5a1cf60 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java @@ -20,4 +20,8 @@ List<Map<String, Object>> itemList(@Param("planId") Integer rePlanId); List<Map<String, Object>> codeList(@Param("planId") Integer rePlanId); + + List<Map<String, Object>> materialItem(@Param("planId") Integer rePlanId); + + List<Map<String, Object>> materialCodeList(@Param("planId") Integer rePlanId); } diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java index a3aed6b..eee1277 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java @@ -35,9 +35,6 @@ @ApiModelProperty("鍘熻緟鏂欏悕绉癐D") private Integer materialId; - @ApiModelProperty("鏄惁閫氳繃") - private String isPass; - @ApiModelProperty("瀹℃牳浜篿d") private Integer reviewerId; diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java index 8384aa8..cc1e61f 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java @@ -42,4 +42,9 @@ @ApiModelProperty("鍏宠仈鍙潬鎬ц鍒掍骇鍝乮d") private Integer planId; + /** + * 鎴愬搧/鍘熻緟鏉� + */ + @ApiModelProperty("绫诲瀷") + private String type; } diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java index 4e61f44..5f58b49 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java @@ -17,11 +17,15 @@ */ public interface ReliabilityPlanProductItemService extends IService<ReliabilityPlanProductItem> { - List<ReliabilityPlanProductItem> selectProductItem(); + List<ReliabilityPlanProductItem> selectProductItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); int addOrUpdateItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); List<Map<String, Object>> itemList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); List<Map<String, Object>> codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); + + List<Map<String, Object>> materialItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); + + List<Map<String, Object>> materialCodeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto); } diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java index 0992206..632d656 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java @@ -27,8 +27,9 @@ private ReliabilityPlanProductItemMapper reliabilityPlanProductItemMapper; @Override - public List<ReliabilityPlanProductItem> selectProductItem() { - return reliabilityPlanProductItemMapper.selectList(new LambdaQueryWrapper<>()); + public List<ReliabilityPlanProductItem> selectProductItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return reliabilityPlanProductItemMapper.selectList(new LambdaQueryWrapper<ReliabilityPlanProductItem>().eq(ReliabilityPlanProductItem::getPlanId,reliabilityPlanProductItemDto.getRePlanId()) + .eq(ReliabilityPlanProductItem::getType,reliabilityPlanProductItemDto.getType())); } @Override @@ -50,4 +51,14 @@ public List<Map<String, Object>> codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { return reliabilityPlanProductItemMapper.codeList(reliabilityPlanProductItemDto.getRePlanId()); } + + @Override + public List<Map<String, Object>> materialItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return reliabilityPlanProductItemMapper.materialItem(reliabilityPlanProductItemDto.getRePlanId()); + } + + @Override + public List<Map<String, Object>> materialCodeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { + return reliabilityPlanProductItemMapper.materialCodeList(reliabilityPlanProductItemDto.getRePlanId()); + } } diff --git a/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml b/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml index b0eaee6..3714c6e 100644 --- a/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml +++ b/inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml @@ -56,5 +56,36 @@ LEFT JOIN standard_method sm ON sm.id = spl.standard_method_list_id WHERE rp.id = #{planId} </select> - + <select id="materialItem" resultType="java.util.Map"> + SELECT + sp.inspection_item AS inspectionItem + FROM + structure_item_parameter sp + CROSS JOIN JSON_TABLE (sp.sample, '$[*][*]' COLUMNS (VALUE VARCHAR (255) PATH '$')) AS jt + JOIN reliability_plan_material rp ON rp.material_name = jt. + VALUE + AND rp.id = #{planId} + GROUP BY + sp.id, + sp.inspection_item + UNION ALL + SELECT + inspection_item AS inspectionItem + FROM + structure_item_parameter + WHERE + sample IS NULL + OR sample = '' + OR sample = '[]' + ORDER BY + inspectionItem ASC; + </select> + <select id="materialCodeList" resultType="java.util.Map"> + SELECT DISTINCT sm.`code` as standard, sm.id + FROM (SELECT material_name + FROM reliability_plan_material + WHERE id = #{planId}) rm + JOIN standard_product_list spl ON spl.sample = rm.material_name AND spl.sample IS NOT NULL + JOIN standard_method sm ON sm.id = spl.standard_method_list_id; + </select> </mapper> -- Gitblit v1.9.3