Authored by chenjian

门店订单再次购买按钮处理

@@ -161,7 +161,7 @@ public abstract class AbsOrderDetailService extends AbsOrderViewService implemen @@ -161,7 +161,7 @@ public abstract class AbsOrderDetailService extends AbsOrderViewService implemen
161 orderDetailInfo.setOrderCode(orderCode = buyerOrder.getOrderCode()); 161 orderDetailInfo.setOrderCode(orderCode = buyerOrder.getOrderCode());
162 orderDetailInfo.setSubmitOrderTimeStr(DateUtil.formatDate(buyerOrder.getCreateTime(), DateUtil.yyyy_MM_dd_HH_mm_SS)); 162 orderDetailInfo.setSubmitOrderTimeStr(DateUtil.formatDate(buyerOrder.getCreateTime(), DateUtil.yyyy_MM_dd_HH_mm_SS));
163 List<ButtonShowBo> buttonShowList = orderStatus.getDetailButtons(tabType); 163 List<ButtonShowBo> buttonShowList = orderStatus.getDetailButtons(tabType);
164 - orderDetailInfo.setButtons(formatButtons(buyerOrder, buttonShowList==null? Lists.newArrayList() : new ArrayList<>(buttonShowList))); 164 + orderDetailInfo.setButtons(formatButtons(buyerOrder, buttonShowList==null? Lists.newArrayList() : new ArrayList<>(buttonShowList), 2));
165 165
166 // 买家 买家订单号 需要处理立即支付 166 // 买家 买家订单号 需要处理立即支付
167 // 卖家 卖家订单号 不存在立即支付的按钮 167 // 卖家 卖家订单号 不存在立即支付的按钮
@@ -159,7 +159,7 @@ public abstract class AbsOrderListService extends AbsOrderViewService implements @@ -159,7 +159,7 @@ public abstract class AbsOrderListService extends AbsOrderViewService implements
159 // 按钮显示 159 // 按钮显示
160 List<ButtonShowBo> buttonShowBos = orderStatus.getListButtons(tabType); 160 List<ButtonShowBo> buttonShowBos = orderStatus.getListButtons(tabType);
161 161
162 - orderListInfo.setButtons(formatButtons(buyerOrder, buttonShowBos == null ? new ArrayList<>() : new ArrayList<>(buttonShowBos))); 162 + orderListInfo.setButtons(formatButtons(buyerOrder, buttonShowBos == null ? new ArrayList<>() : new ArrayList<>(buttonShowBos), 1));
163 163
164 // 当剩余时间小于0 164 // 当剩余时间小于0
165 if (!CollectionUtils.isEmpty(orderListInfo.getButtons())){ 165 if (!CollectionUtils.isEmpty(orderListInfo.getButtons())){
@@ -33,12 +33,19 @@ public abstract class AbsOrderViewService { @@ -33,12 +33,19 @@ public abstract class AbsOrderViewService {
33 33
34 abstract Logger getLogger(); 34 abstract Logger getLogger();
35 35
36 - List<ButtonShowBo> formatButtons(BuyerOrder buyerOrder, List<ButtonShowBo> buttons){ 36 + /**
  37 + *
  38 + * @param buyerOrder
  39 + * @param buttons
  40 + * @param actType 1:订单列表; 2:订单详情
  41 + * @return
  42 + */
  43 + List<ButtonShowBo> formatButtons(BuyerOrder buyerOrder, List<ButtonShowBo> buttons, int actType){
37 if (CollectionUtils.isEmpty(buttons)){ 44 if (CollectionUtils.isEmpty(buttons)){
38 return buttons; 45 return buttons;
39 } 46 }
40 47
41 - disableBuyAgainIfOffline(buyerOrder, buttons); 48 + disableBuyAgainIfOffline(buyerOrder, buttons, actType);
42 49
43 //TODO optimized first query out status of order need BuyerPenaltyCalResult 50 //TODO optimized first query out status of order need BuyerPenaltyCalResult
44 int orderStatusCode = buyerOrder.getStatus(); 51 int orderStatusCode = buyerOrder.getStatus();
@@ -73,12 +80,14 @@ public abstract class AbsOrderViewService { @@ -73,12 +80,14 @@ public abstract class AbsOrderViewService {
73 * 门店订单,不需要“再次购买”,替换为“查看详情” 80 * 门店订单,不需要“再次购买”,替换为“查看详情”
74 * @param buyerOrder 81 * @param buyerOrder
75 * @param buttons 82 * @param buttons
  83 + * @param actType 1:订单列表; 2:订单详情
76 */ 84 */
77 - private void disableBuyAgainIfOffline(final BuyerOrder buyerOrder, final List<ButtonShowBo> buttons) { 85 + private void disableBuyAgainIfOffline(final BuyerOrder buyerOrder, final List<ButtonShowBo> buttons, int actType) {
78 if(BuyerOrderUtils.isOffline(buyerOrder.getAttributes()) 86 if(BuyerOrderUtils.isOffline(buyerOrder.getAttributes())
79 && buttons != null && buttons.contains(ButtonShow.BUY_AGAIN.getBo())) { 87 && buttons != null && buttons.contains(ButtonShow.BUY_AGAIN.getBo())) {
80 buttons.remove(ButtonShow.BUY_AGAIN.getBo()); 88 buttons.remove(ButtonShow.BUY_AGAIN.getBo());
81 - if(!buttons.contains(ButtonShow.SHOW_DETAIL.getBo())) { 89 + //订单列表“再次购买”替换为“查看详情”,订单详情“再次购买”直接去掉
  90 + if(actType == 1 && !buttons.contains(ButtonShow.SHOW_DETAIL.getBo())) {
82 buttons.add(ButtonShow.SHOW_DETAIL.getBo()); 91 buttons.add(ButtonShow.SHOW_DETAIL.getBo());
83 } 92 }
84 } 93 }