From 5a9e4c13d08d3b1cb7da8f50f1097b33bb113b23 Mon Sep 17 00:00:00 2001 From: 喻健 <喻健@Admin> Date: 星期一, 10 十二月 2018 17:52:03 +0800 Subject: [PATCH] 选品库商品优化 --- fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoServiceImpl.java | 63 +++++++++++++++++++++++-------- 1 files changed, 47 insertions(+), 16 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoServiceImpl.java index 4e482e4..d191a72 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoServiceImpl.java @@ -10,7 +10,6 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import org.apache.ibatis.annotations.Param; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.SQLQuery; @@ -59,7 +58,6 @@ import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.order.OrderItemServcie; import com.yeshi.fanli.service.inter.order.OrderService; -import com.yeshi.fanli.service.inter.push.PushService; import com.yeshi.fanli.service.inter.user.AccountDetailsService; import com.yeshi.fanli.service.inter.user.AccountMessageService; import com.yeshi.fanli.service.inter.user.MoneyRecordService; @@ -870,8 +868,8 @@ @Transactional public void updateHongBao(HongBao hongBao, TaoBaoOrder taoBaoOrder) { - BigDecimal rate = new BigDecimal(hongBaoManageMapper.selectByKey("hongbao_goods_proportion").getValue()) - .divide(new BigDecimal(100)); + BigDecimal proportion = hongBaoManageService.getFanLiRate(); + BigDecimal rate = proportion.divide(new BigDecimal(100)); // 鏇存柊绾㈠寘椤� HongBao updateHongBao = new HongBao(); updateHongBao.setId(hongBao.getId()); @@ -910,7 +908,7 @@ }); } } else if ("璁㈠崟缁撶畻".equals(taoBaoOrder.getOrderState())) {// 鏇存柊棰勪及鑾峰彇鏃堕棿 - BigDecimal money = MoneyBigDecimalUtil.mul(taoBaoOrder.getEstimate(), rate); + BigDecimal money = MoneyBigDecimalUtil.mul(taoBaoOrder.geteIncome(), rate); // 璁剧疆棰勮棰嗗彇鏃堕棿 long settlementTime = TimeUtil.convertDateToTemp2(taoBaoOrder.getSettlementTime().trim()); // 棰勮棰嗗彇鏃堕棿 @@ -940,7 +938,8 @@ hongBaoMapper.updateByPrimaryKeySelective(updateChildHongBao); }); - BigDecimal estimate = taoBaoOrder.getEstimate(); + BigDecimal estimate = taoBaoOrder.geteIncome(); + updateHongBao.setPayMoney(taoBaoOrder.getSettlement()); updateHongBao.setMoney(MoneyBigDecimalUtil.mul(estimate, rate)); } @@ -980,14 +979,22 @@ public void addHongBao(Order order, TaoBaoOrder taoBaoOrder, Long orderItemId) { OrderItem orderItem = orderItemMapper.selectByPrimaryKey(orderItemId); // 璁㈠崟杩斿埄姣斾緥 - BigDecimal baseRate = new BigDecimal(hongBaoManageMapper.selectByKey("hongbao_goods_proportion").getValue()) - .divide(new BigDecimal(100)); + BigDecimal proportion = hongBaoManageService.getFanLiRate(); + BigDecimal baseRate = proportion.divide(new BigDecimal(100)); // 鍒涘缓绾㈠寘 JSONObject data = new JSONObject(); - HongBao hongBao = HongBaoFactory.createHongBao(MoneyBigDecimalUtil.mul(baseRate, taoBaoOrder.getEstimate()), - data.toString(), order.getId(), null, order.getUserInfo(), 1, taoBaoOrder.getPayment(), - taoBaoOrder.getAuctionId()); + HongBao hongBao = null; + if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) + // 璁㈠崟缁撶畻搴旇鍙栫粨绠楅噾棰濅笌棰勪及鏀跺叆 + hongBao = HongBaoFactory.createHongBao(MoneyBigDecimalUtil.mul(baseRate, taoBaoOrder.geteIncome()), + data.toString(), order.getId(), null, order.getUserInfo(), 1, taoBaoOrder.getSettlement(), + taoBaoOrder.getAuctionId()); + else + hongBao = HongBaoFactory.createHongBao(MoneyBigDecimalUtil.mul(baseRate, taoBaoOrder.getEstimate()), + data.toString(), order.getId(), null, order.getUserInfo(), 1, taoBaoOrder.getPayment(), + taoBaoOrder.getAuctionId()); + hongBao.setOrderId(taoBaoOrder.getOrderId()); hongBao.setOrderItemId(orderItem.getId()); hongBao.setPreGettime(0L); @@ -1001,6 +1008,10 @@ if (boss != null) { hongBao.setHasChild(true); } + + // 濡傛灉澶辨晥灏卞垽瀹氬凡缁忓け鏁� + if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) + hongBao.setState(HongBao.STATE_SHIXIAO); hongBaoMapper.insertSelective(hongBao); // 閫氱煡鐢ㄦ埛璁㈠崟琚粺璁� @@ -1024,7 +1035,19 @@ else rate = new BigDecimal(hbm.getValue()).divide(new BigDecimal(100)); if (rate.compareTo(new BigDecimal(0)) > 0) { - HongBao hongBao2 = HongBaoFactory.createHongBao( + HongBao hongBao2 = null; + if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) { + // 璁㈠崟缁撶畻搴旇鍙栫粨绠楅噾棰濅笌棰勪及鏀跺叆 + hongBao2 = HongBaoFactory.createHongBao( + MoneyBigDecimalUtil.mul(rate, MoneyBigDecimalUtil.mul(taoBaoOrder.geteIncome(), baseRate)), + null, hongBao, boss, Constant.ONESALE); + } else { + hongBao2 = HongBaoFactory.createHongBao( + MoneyBigDecimalUtil.mul(rate, MoneyBigDecimalUtil.mul(taoBaoOrder.getEstimate(), baseRate)), + null, hongBao, boss, Constant.ONESALE); + } + + HongBaoFactory.createHongBao( MoneyBigDecimalUtil.mul(rate, MoneyBigDecimalUtil.mul(taoBaoOrder.getEstimate(), baseRate)), null, hongBao, boss, Constant.ONESALE); // 璁剧疆璁㈠崟鍙� @@ -1050,10 +1073,18 @@ else rate = new BigDecimal(hbm.getValue()).divide(new BigDecimal(100)); if (rate.compareTo(new BigDecimal(0)) > 0) { - - HongBao hongBao3 = HongBaoFactory.createHongBao( - MoneyBigDecimalUtil.mul(rate, MoneyBigDecimalUtil.mul(taoBaoOrder.getEstimate(), baseRate)), - null, hongBao, boss2, Constant.TWOSALE); + // 璁㈠崟缁撶畻搴旇鍙栫粨绠楅噾棰濅笌棰勪及鏀跺叆 + HongBao hongBao3 = null; + if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) + hongBao3 = HongBaoFactory.createHongBao( + MoneyBigDecimalUtil.mul(rate, + MoneyBigDecimalUtil.mul(taoBaoOrder.geteIncome(), baseRate)), + null, hongBao, boss2, Constant.TWOSALE); + else + hongBao3 = HongBaoFactory.createHongBao( + MoneyBigDecimalUtil.mul(rate, + MoneyBigDecimalUtil.mul(taoBaoOrder.getEstimate(), baseRate)), + null, hongBao, boss2, Constant.TWOSALE); // 璁剧疆杩斿埄璁㈠崟鍙� hongBao3.setOrderId(taoBaoOrder.getOrderId()); hongBaoMapper.insertSelective(hongBao3); -- Gitblit v1.8.0