Ver Fonte

声部更换调整

zouxuan há 3 anos atrás
pai
commit
ec8cb99985

+ 5 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRepairServiceImpl.java

@@ -211,9 +211,9 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
         StudentPaymentOrder studentPaymentOrder = sysCouponCodeService.use(studentGoodsSell.getCouponIdList(),amount,studentGoodsSell.getType() != 1);
         amount = studentPaymentOrder.getActualAmount();
         // 判断金额是否正确
-        if (studentGoodsSell.getTotalAmount().compareTo(amount) != 0) {
-            throw new BizException("非法请求");
-        }
+//        if (studentGoodsSell.getTotalAmount().compareTo(amount) != 0) {
+//            throw new BizException("非法请求");
+//        }
         studentGoodsSell.setCouponMarketAmount(studentPaymentOrder.getCouponRemitFee());
         studentGoodsSell.setOrganId(student.getOrganId());
         studentGoodsSell.setTotalAmount(amount);
@@ -464,12 +464,11 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
             }
         }
         List<Integer> couponIdList = repairInfo.getCouponIdList();
-        BigDecimal totalAmount = amount;
-        StudentPaymentOrder studentPaymentOrder = sysCouponCodeService.use(couponIdList,amount,repairInfo.getType() != 1);
-        amount = totalAmount.subtract(repairInfo.getExemptionAmount());
+        amount = amount.subtract(repairInfo.getExemptionAmount());
         if (amount.compareTo(BigDecimal.ZERO) < 0) {
             throw new BizException("特权减免金额不能大于总金额");
         }
+        StudentPaymentOrder studentPaymentOrder = sysCouponCodeService.use(couponIdList,amount,repairInfo.getType() != 1);
 
         if(couponIdList != null && couponIdList.size() > 0){
             repairInfo.setCouponIds(StringUtils.join(couponIdList,","));

+ 10 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectChangeServiceImpl.java

@@ -602,11 +602,11 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
             subjectChange.setSellTime(nowDate);
 
             //乐器辅件价差大于0时,有销售金额
-            if (subjectChange.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.GROUP) && studentPaymentOrder.getActualAmount().compareTo(BigDecimal.ZERO) > 0) {
-                BigDecimal sellAmount = studentPaymentOrder.getActualAmount().multiply(subjectChange.getGoodsMargin())
-                        .divide(studentPaymentOrder.getExpectAmount(), 2, BigDecimal.ROUND_HALF_UP);
-                subjectChange.setSellAmount(sellAmount);
-            }
+//            if (subjectChange.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.GROUP) && studentPaymentOrder.getActualAmount().compareTo(BigDecimal.ZERO) > 0) {
+//                BigDecimal sellAmount = studentPaymentOrder.getActualAmount().multiply(subjectChange.getGoodsMargin())
+//                        .divide(studentPaymentOrder.getExpectAmount(), 2, BigDecimal.ROUND_HALF_UP);
+//                subjectChange.setSellAmount(sellAmount);
+//            }
 
             if (this.update(subjectChange) <= 0) {
                 throw new BizException("维修单更新失败");
@@ -627,11 +627,13 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
                 //添加新订单
                 List<SellOrder> sellOrders = this.addSellOrder(studentPaymentOrder.getId(), subjectChange.getMusicGroupId(), goodsIdList, studentPaymentOrder.getExpectAmount(), studentPaymentOrder.getBalancePaymentAmount(), subjectChange.getKitGroupPurchaseType());
                 if(sellOrders != null && sellOrders.size() > 0){
+                    SubjectChange change = subjectChangeDao.get(subjectChange.getId());
                     BigDecimal instrumentAmount = sellOrders.stream().filter(e -> e.getType() == SellTypeEnum.INSTRUMENT).map(e -> e.getExpectAmount()).reduce(BigDecimal.ZERO, BigDecimal::add);
                     BigDecimal accessoriesAmount = sellOrders.stream().filter(e -> e.getType() == SellTypeEnum.ACCESSORIES).map(e -> e.getExpectAmount()).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    subjectChange.setChangeMusicalPrice(instrumentAmount);
-                    subjectChange.setChangeAccessoriesPrice(accessoriesAmount);
-                    subjectChangeDao.update(subjectChange);
+                    change.setChangeMusicalPrice(instrumentAmount);
+                    change.setChangeAccessoriesPrice(accessoriesAmount);
+                    change.setSellAmount(instrumentAmount.add(accessoriesAmount));
+                    subjectChangeDao.update(change);
                 }
             }