Ver código fonte

教材入库时折扣也可以修改

大数据与最优化研究所 7 meses atrás
pai
commit
cd874eac1c

+ 4 - 4
src/main/java/com/xjrsoft/module/textbook/service/impl/TextbookSubscriptionServiceImpl.java

@@ -537,7 +537,7 @@ public class TextbookSubscriptionServiceImpl extends MPJBaseServiceImpl<Textbook
                 .collect(Collectors.groupingBy(
                         TextbookWarehouseRecord::getDataItemId, // 第一层分组:按征订项 ID 分组
                         Collectors.toMap(
-                                p -> p.getPrice().toString() + "-" + p.getDiscount().toString(), // 第二层映射:按入库定价作为键
+                                p -> p.getPrice().stripTrailingZeros().toPlainString() + "-" + String.format("%.2f", p.getDiscount()), // 第二层映射:按入库定价作为键
                                 wr -> wr,                      // 值为 TextbookStudentClaim 对象本身
                                 (existing, replacement) -> existing   // 如果有重复键,保留现有的值
                         )
@@ -594,7 +594,7 @@ public class TextbookSubscriptionServiceImpl extends MPJBaseServiceImpl<Textbook
                 }
 
                 if(MapUtils.isNotEmpty(oldTextbookWarehouseRecordByPrice)){
-                    oldTextbookWarehouseRecord = oldTextbookWarehouseRecordByPrice.get(dto.getPrice().toString() + dto.getDiscount().toString());
+                    oldTextbookWarehouseRecord = oldTextbookWarehouseRecordByPrice.get(dto.getPrice().stripTrailingZeros().toPlainString() + String.format("%.2f", dto.getDiscount()));
                 }
             }
 
@@ -708,7 +708,7 @@ public class TextbookSubscriptionServiceImpl extends MPJBaseServiceImpl<Textbook
                 .collect(Collectors.groupingBy(
                         TextbookWarehouseRecord::getDataItemId, // 第一层分组:按征订项 ID 分组
                         Collectors.toMap(
-                                p -> p.getPrice().toString() + "-" + p.getDiscount().toString(), // 第二层映射:按入库定价作为键
+                                p -> p.getPrice().stripTrailingZeros().toPlainString() + "-" + String.format("%.2f", p.getDiscount()), // 第二层映射:按入库定价作为键
                                 wr -> wr,                      // 值为 TextbookStudentClaim 对象本身
                                 (existing, replacement) -> existing   // 如果有重复键,保留现有的值
                         )
@@ -779,7 +779,7 @@ public class TextbookSubscriptionServiceImpl extends MPJBaseServiceImpl<Textbook
 
             oldTextbookWarehouseRecordByPrice = textbookWarehouseRecordByItemIdByPriceMap.get(Long.parseLong(vo.getTextbookSubscriptionItemId()));
             if(MapUtils.isNotEmpty(oldTextbookWarehouseRecordByPrice)){
-                oldTextbookWarehouseRecord = oldTextbookWarehouseRecordByPrice.get(vo.getPrice().toString() + vo.getDiscount().toString());
+                oldTextbookWarehouseRecord = oldTextbookWarehouseRecordByPrice.get(vo.getPrice().stripTrailingZeros().toPlainString() + String.format("%.2f", vo.getDiscount()));
             }
 
             updateItem = new TextbookSubscriptionItem();