|
@@ -179,7 +179,19 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
|
|
|
BigDecimal goodsMargin = subjectChange.getChangeMusicalPrice().add(subjectChange.getChangeAccessoriesPrice())
|
|
|
.subtract(subjectChange.getOriginalMusicalPrice()).subtract(subjectChange.getOriginalAccessoriesPrice());
|
|
|
subjectChange.setGoodsMargin(goodsMargin);
|
|
|
- subjectChange.setCostMargin(subjectChange.getChangeCost().subtract(subjectChange.getOriginalCost()));
|
|
|
+ String goodsIds = "";
|
|
|
+ if (subjectChange.getChangeMusical() != null) {
|
|
|
+ goodsIds += subjectChange.getMusicGroupId() + "";
|
|
|
+ }
|
|
|
+ if (subjectChange.getChangeMusical() != null) {
|
|
|
+ goodsIds += StringUtils.isNotBlank(goodsIds) ? "," + subjectChange.getChangeAccessories() : subjectChange.getChangeAccessories();
|
|
|
+ }
|
|
|
+ BigDecimal goodsPrice = BigDecimal.ZERO;
|
|
|
+ List<Goods> goodies = goodsDao.findGoodsByIds(goodsIds);
|
|
|
+ for (Goods goods : goodies) {
|
|
|
+ goodsPrice = goodsPrice.add(goods.getDiscountPrice());
|
|
|
+ }
|
|
|
+ subjectChange.setChangeCost(goodsPrice);
|
|
|
subjectChange.setCostMargin(subjectChange.getChangeCost().subtract(subjectChange.getOriginalCost()));
|
|
|
//差价 <= 0
|
|
|
BigDecimal amountMargin = subjectChange.getGoodsMargin().add(subjectChange.getCourseMargin());
|
|
@@ -194,6 +206,7 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
|
|
|
}
|
|
|
subjectChange.setCreateTime(nowDate);
|
|
|
subjectChange.setUpdateTime(nowDate);
|
|
|
+ subjectChange.setVersion(0);
|
|
|
subjectChangeDao.insert(subjectChange);
|
|
|
return subjectChange;
|
|
|
}
|