|
|
package com.yohoufo.order.service.support;
|
|
|
|
|
|
import com.yohobuy.ufo.model.order.bo.TimeoutBo;
|
|
|
import com.yohobuy.ufo.model.order.common.OrderStatus;
|
|
|
import com.yohobuy.ufo.model.order.common.TabType;
|
|
|
import com.yohoufo.dal.order.model.BuyerOrder;
|
...
|
...
|
@@ -37,7 +38,7 @@ public class OrderStatusDetailItemFactory { |
|
|
int createTime = buyerOrder.getCreateTime();
|
|
|
switch (orderStatus) {
|
|
|
case WAITING_PAY_DEPOSIT:
|
|
|
detailItem = new WaitingPayDepositItem(createTime, tabType);
|
|
|
detailItem = new WaitingPayDepositItem(createTime);
|
|
|
break;
|
|
|
case BIDING:
|
|
|
BidOrderMetaBo bidOrderMetaBo = buyerOrderMetaMapperSupport.selectByMetaKey(buyerOrder.getUid(), buyerOrder.getOrderCode(), MetaKey.BID_KEY, BidOrderMetaBo.class);
|
...
|
...
|
@@ -90,27 +91,40 @@ public class OrderStatusDetailItemFactory { |
|
|
public final static String CANCEL_TIMEOUT_BEFORE_PAY_SELLER_DESC = "买家付款超时,系统取消订单,您已获得买家定金赔偿";
|
|
|
|
|
|
protected int createTime;
|
|
|
//操作限制 单位秒
|
|
|
private int timeOutLimit;
|
|
|
protected TabType tabType;
|
|
|
|
|
|
public AbstractOrderDetailItem() {
|
|
|
this(0, TabType.BUY);
|
|
|
this(0, 0, TabType.BUY);
|
|
|
}
|
|
|
|
|
|
public AbstractOrderDetailItem(TabType tabType) {
|
|
|
this(0, tabType);
|
|
|
this(0, 0, tabType);
|
|
|
}
|
|
|
|
|
|
public AbstractOrderDetailItem(int createTime, TabType tabType) {
|
|
|
this.createTime = createTime;
|
|
|
this.tabType = tabType;
|
|
|
public AbstractOrderDetailItem(int createTime, int timeOutLimit) {
|
|
|
this(createTime, timeOutLimit, TabType.BUY);
|
|
|
}
|
|
|
|
|
|
public int getLeftTime() {
|
|
|
return 0;
|
|
|
public AbstractOrderDetailItem(int createTime, int timeOutLimit, TabType tabType) {
|
|
|
this.createTime = createTime;
|
|
|
this.timeOutLimit = timeOutLimit;
|
|
|
this.tabType = tabType;
|
|
|
}
|
|
|
|
|
|
protected int calLeftTime(int timeout) {
|
|
|
return TimeUtils.calLeftTime(timeout, this.createTime);
|
|
|
@Override
|
|
|
public TimeoutBo getTimeoutBo() {
|
|
|
TimeoutBo timeoutBo = new TimeoutBo();
|
|
|
timeoutBo.setLeftTime(0);
|
|
|
if (timeOutLimit > 0 && createTime > 0) {
|
|
|
timeoutBo.setTimelimit(timeOutLimit);
|
|
|
int leftTime = TimeUtils.calLeftTime(timeOutLimit, this.createTime);
|
|
|
if (leftTime > 0) {
|
|
|
timeoutBo.setLeftTime(leftTime);
|
|
|
}
|
|
|
}
|
|
|
return timeoutBo;
|
|
|
}
|
|
|
}
|
|
|
|
...
|
...
|
@@ -119,19 +133,14 @@ public class OrderStatusDetailItemFactory { |
|
|
* 待付定金
|
|
|
*/
|
|
|
private class WaitingPayDepositItem extends AbstractOrderDetailItem {
|
|
|
public WaitingPayDepositItem(int createTime, TabType tabType) {
|
|
|
super(createTime, tabType);
|
|
|
public WaitingPayDepositItem(int createTime) {
|
|
|
super(createTime, DelayTime.BUYER_ORDER_WAITING_PAY_DEPOSIT * 60);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public String getDetailDesc() {
|
|
|
return String.format(WAITING_PAY_DEPOSIT_DESC, DelayTime.BUYER_ORDER_WAITING_PAY_DEPOSIT);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getLeftTime() {
|
|
|
return calLeftTime(DelayTime.BUYER_ORDER_WAITING_PAY_DEPOSIT);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
...
|
...
|
@@ -157,7 +166,7 @@ public class OrderStatusDetailItemFactory { |
|
|
*/
|
|
|
private class WaitingPayItem extends AbstractOrderDetailItem {
|
|
|
public WaitingPayItem(int createTime, TabType tabType) {
|
|
|
super(createTime, tabType);
|
|
|
super(createTime, DelayTime.BUYER_BID_ORDER_WAITING_PAY * 60, tabType);
|
|
|
}
|
|
|
|
|
|
@Override
|
...
|
...
|
@@ -171,11 +180,6 @@ public class OrderStatusDetailItemFactory { |
|
|
return EMPTY_DESC;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getLeftTime() {
|
|
|
return calLeftTime(DelayTime.BUYER_BID_ORDER_WAITING_PAY);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
private class CancelBeforePayItem extends AbstractOrderDetailItem {
|
...
|
...
|
|