Authored by chenchao

fix bug:

did not clean cache of seller order detail when buyer submit order
@@ -30,6 +30,7 @@ import com.yohoufo.order.model.response.*; @@ -30,6 +30,7 @@ import com.yohoufo.order.model.response.*;
30 import com.yohoufo.order.service.ISubmitOrderService; 30 import com.yohoufo.order.service.ISubmitOrderService;
31 import com.yohoufo.order.service.IShoppingService; 31 import com.yohoufo.order.service.IShoppingService;
32 import com.yohoufo.order.service.cache.CacheCleaner; 32 import com.yohoufo.order.service.cache.CacheCleaner;
  33 +import com.yohoufo.order.service.cache.CacheKeyBuilder;
33 import com.yohoufo.order.service.proxy.CouponProxyService; 34 import com.yohoufo.order.service.proxy.CouponProxyService;
34 import com.yohoufo.order.service.proxy.InBoxFacade; 35 import com.yohoufo.order.service.proxy.InBoxFacade;
35 import com.yohoufo.order.service.proxy.UserProxyService; 36 import com.yohoufo.order.service.proxy.UserProxyService;
@@ -43,6 +44,7 @@ import org.slf4j.Logger; @@ -43,6 +44,7 @@ import org.slf4j.Logger;
43 import org.slf4j.LoggerFactory; 44 import org.slf4j.LoggerFactory;
44 import org.springframework.beans.factory.annotation.Autowired; 45 import org.springframework.beans.factory.annotation.Autowired;
45 import java.math.BigDecimal; 46 import java.math.BigDecimal;
  47 +import java.util.Arrays;
46 import java.util.List; 48 import java.util.List;
47 import org.springframework.stereotype.Service; 49 import org.springframework.stereotype.Service;
48 50
@@ -292,13 +294,21 @@ public class ShoppingServiceImpl implements IShoppingService { @@ -292,13 +294,21 @@ public class ShoppingServiceImpl implements IShoppingService {
292 //clean cache 294 //clean cache
293 //TODO merge clean key 295 //TODO merge clean key
294 cacheCleaner.cleanList(uid, TabType.BUY.getValue()); 296 cacheCleaner.cleanList(uid, TabType.BUY.getValue());
  297 + SellerOrderGoods psog = submitResult.getSellerOrderGoods();
295 Integer sellerUid = submitResult.getSellerOrder().getUid(); 298 Integer sellerUid = submitResult.getSellerOrder().getUid();
296 - cacheCleaner.cleanList(sellerUid, TabType.SELL.getValue()); 299 + Long sellerOrderCode = submitResult.getSellerOrder().getOrderCode();
  300 + //clean seller cache
  301 + cacheCleaner.delete(Arrays.asList(CacheKeyBuilder.orderListKey(sellerUid, TabType.SELL.getValue()),
  302 + CacheKeyBuilder.sellerOrderDetailKey(psog),
  303 + CacheKeyBuilder.orderDetailKey(sellerUid, TabType.SELL.getValue(), sellerOrderCode)
  304 + ));
297 NotPaidNoticeEvent notPaidNoticeEvent = NotPaidNoticeEvent.builder().actorType(TabType.BUY) 305 NotPaidNoticeEvent notPaidNoticeEvent = NotPaidNoticeEvent.builder().actorType(TabType.BUY)
298 .uid(shoppingRequest.getUid()).orderCode(orderCode).build(); 306 .uid(shoppingRequest.getUid()).orderCode(orderCode).build();
299 EventBusPublisher.publishEvent(notPaidNoticeEvent); 307 EventBusPublisher.publishEvent(notPaidNoticeEvent);
300 // 308 //
301 inBoxFacade.sellerSkupCreateOrderByBuyer(sellerUid, skup.getProductName()); 309 inBoxFacade.sellerSkupCreateOrderByBuyer(sellerUid, skup.getProductName());
  310 + }else{
  311 + logger.warn("buyer submit order ");
302 } 312 }
303 // 返回结果 313 // 返回结果
304 return OrderSubmitResponse.builder().orderCode(orderCode).productId(skup.getProductId()) 314 return OrderSubmitResponse.builder().orderCode(orderCode).productId(skup.getProductId())