|
@@ -8,6 +8,7 @@ import com.iamberry.wechat.core.entity.eo.ItemGift;
|
|
|
import com.iamberry.wechat.core.entity.order.NumberBacklogDto;
|
|
|
import com.iamberry.wechat.face.eo.GiftPoolService;
|
|
|
import com.iamberry.wechat.face.ism.IntegralLogService;
|
|
|
+import com.iamberry.wechat.face.member.MemberService;
|
|
|
import com.iamberry.wechat.service.mapper.*;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -22,6 +23,7 @@ import com.iamberry.wechat.core.entity.order.Order;
|
|
|
import com.iamberry.wechat.core.entity.order.OrderItem;
|
|
|
import com.iamberry.wechat.core.entity.order.OrderRebackMoney;
|
|
|
import com.iamberry.wechat.service.order.dao.AdminOrderDao;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
@Repository
|
|
|
public class AdminOrderDaoImpl implements AdminOrderDao {
|
|
@@ -41,6 +43,8 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
|
|
|
private GiftPoolService giftPoolService;
|
|
|
@Autowired
|
|
|
private IntegralLogService integralLogService;
|
|
|
+ @Autowired
|
|
|
+ private MemberService memberService;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -261,6 +265,7 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional
|
|
|
public Integer cancelOrder(String salesOrderid) {
|
|
|
Integer flag = 0;
|
|
|
ShopSalesOrderDto ssod = cartMapper.getOpenIdAndStatus(salesOrderid);
|
|
@@ -268,6 +273,9 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
|
|
|
order.setSalesOrderid(salesOrderid);
|
|
|
order.setSalesStatus(0);
|
|
|
flag = cartMapper.updateOrderByOrder(order);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("修改订单失败");
|
|
|
+ }
|
|
|
|
|
|
|
|
|
List<OrderItem> orderItemList = adminOrderMapper.getShopOrderItemByOrderId(salesOrderid);
|
|
@@ -283,12 +291,21 @@ public class AdminOrderDaoImpl implements AdminOrderDao {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ if(ssod.getSalesVipPreferential() == 1){
|
|
|
+ Member member = new Member();
|
|
|
+ member.setUserOpenid(ssod.getSalesOpenid());
|
|
|
+ member.setUserVipPreferential(1);
|
|
|
+ flag = memberService.nowUpdateUserByOpenId(member);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("修改用户失败买一赠一失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
- try {
|
|
|
- flag = integralLogService.cancelSurplusIntegral(salesOrderid);
|
|
|
- }catch (Exception e){
|
|
|
- e.printStackTrace();
|
|
|
- logger.info("取消订单,积分退回失败,订单id:"+ salesOrderid);
|
|
|
+ flag = integralLogService.cancelSurplusIntegral(salesOrderid);
|
|
|
+ if(flag < 1){
|
|
|
+ throw new RuntimeException("恢复积分失败");
|
|
|
}
|
|
|
return flag;
|
|
|
}
|