package com.yeshi.fanli.util.factory.goods;
|
|
import java.math.BigDecimal;
|
import java.util.Date;
|
|
import com.yeshi.fanli.entity.jd.JDOrderItem;
|
import com.yeshi.fanli.entity.order.CommonOrder;
|
import com.yeshi.fanli.entity.pdd.PDDOrder;
|
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
|
import com.yeshi.fanli.util.Constant;
|
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
|
import com.yeshi.fanli.util.StringUtil;
|
import com.yeshi.fanli.util.TimeUtil;
|
|
public class CommonOrderFactory {
|
|
public static CommonOrder create(PDDOrder order) {
|
CommonOrder commonOrder = new CommonOrder();
|
commonOrder.setCount(order.getGoodsQuantity());
|
commonOrder.setCreateTime(new Date());
|
if (order.getOrderStatus() == 3) {// 审核通过
|
commonOrder.seteIncome(
|
MoneyBigDecimalUtil.div(new BigDecimal(order.getPromotionAmount()), new BigDecimal(100)));
|
commonOrder.setSettlement(
|
MoneyBigDecimalUtil.div(new BigDecimal(order.getOrderAmount()), new BigDecimal(100)));// 结算金额
|
commonOrder.setSettleTime(new Date(order.getOrderVerifyTime() * 1000));
|
} else if (order.getOrderStatus() == 2) {// 确认收货归为审核通过
|
commonOrder.seteIncome(
|
MoneyBigDecimalUtil.div(new BigDecimal(order.getPromotionAmount()), new BigDecimal(100)));
|
commonOrder.setSettlement(
|
MoneyBigDecimalUtil.div(new BigDecimal(order.getOrderAmount()), new BigDecimal(100)));// 结算金额
|
commonOrder.setSettleTime(new Date(order.getOrderReceiveTime() * 1000));
|
} else {
|
commonOrder.seteIncome(new BigDecimal(0));
|
commonOrder.setSettlement(new BigDecimal(0));
|
}
|
|
commonOrder
|
.setEstimate(MoneyBigDecimalUtil.div(new BigDecimal(order.getPromotionAmount()), new BigDecimal(100)));
|
commonOrder.setOrderNo(order.getOrderSn());
|
commonOrder.setPayment(MoneyBigDecimalUtil.div(new BigDecimal(order.getOrderAmount()), new BigDecimal(100)));
|
commonOrder.setSourcePosition(order.getpId());
|
commonOrder.setSourceType(Constant.SOURCE_TYPE_PDD);
|
int state = 0;
|
|
if (-1 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_SX;
|
} else if (0 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_FK;
|
} else if (1 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_FK;
|
} else if (2 == order.getOrderStatus()) {// 确认收货
|
state = CommonOrder.STATE_JS;
|
} else if (3 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_FK;
|
} else if (4 == order.getOrderStatus()) {
|
if (order.getOrderReceiveTime() == null || order.getOrderReceiveTime() == 0)
|
state = CommonOrder.STATE_SX;
|
else
|
state = CommonOrder.STATE_WQ;
|
} else if (5 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_JS;
|
} else if (8 == order.getOrderStatus()) {
|
state = CommonOrder.STATE_SX;
|
}
|
commonOrder.setOrderBy(1);
|
commonOrder.setState(state);
|
commonOrder.setThirdCreateTime(new Date(order.getOrderCreateTime() * 1000));
|
commonOrder.setUpdateTime(new Date());
|
commonOrder.setTradeId(order.getOrderId());
|
return commonOrder;
|
}
|
|
public static CommonOrder create(JDOrderItem order) {
|
if (order.getOrder() == null)
|
return null;
|
CommonOrder commonOrder = new CommonOrder();
|
commonOrder.setCount(Integer.parseInt(order.getSkuNum() + ""));
|
commonOrder.setCreateTime(new Date());
|
if (order.getValidCode() == 17) {
|
commonOrder.seteIncome(order.getActualFee());
|
commonOrder.setSettlement(order.getActualCosPrice());
|
commonOrder.setSettleTime(new Date(order.getOrder().getFinishTime()));
|
} else {
|
commonOrder.seteIncome(order.getActualFee());
|
commonOrder.setSettlement(order.getActualCosPrice());
|
}
|
commonOrder.setOrderNo(order.getOrderId() + "");
|
commonOrder.setPayment(order.getEstimateCosPrice());
|
commonOrder.setSourcePosition(order.getPositionId() + "");
|
commonOrder.setSourceType(Constant.SOURCE_TYPE_JD);
|
int state = 0;
|
if (order.getValidCode() < 16) {
|
state = CommonOrder.STATE_SX;
|
String stateDesc = null;
|
if (order.getValidCode() == 4)
|
stateDesc = "京东帮主订单";
|
else if (order.getValidCode() == 5)
|
stateDesc = "账号异常";
|
else if (order.getValidCode() == 6)
|
stateDesc = "赠品类目";
|
else if (order.getValidCode() == 7)
|
stateDesc = "校园订单";
|
else if (order.getValidCode() == 8)
|
stateDesc = "企业订单";
|
else if (order.getValidCode() == 9)
|
stateDesc = "团购订单";
|
else if (order.getValidCode() == 10)
|
stateDesc = "专用发票";
|
else if (order.getValidCode() == 11)
|
stateDesc = "乡村推广员";
|
else if (order.getValidCode() == 13)
|
stateDesc = "违规订单";
|
commonOrder.setStateDesc(stateDesc);
|
} else if (order.getValidCode() == 16) {
|
state = CommonOrder.STATE_FK;
|
} else if (order.getValidCode() == 17) {
|
state = CommonOrder.STATE_JS;
|
}
|
commonOrder.setOrderBy(order.getOrderBy());
|
commonOrder.setState(state);
|
commonOrder.setThirdCreateTime(new Date(order.getOrder().getOrderTime()));
|
commonOrder.setUpdateTime(new Date());
|
commonOrder.setTradeId(order.getTradeId());
|
commonOrder.setEstimate(order.getEstimateFee());
|
return commonOrder;
|
}
|
|
public static CommonOrder create(TaoBaoOrder taoBaoOrder) {
|
CommonOrder commonOrder = new CommonOrder();
|
commonOrder.setCount(taoBaoOrder.getCount());
|
commonOrder.setCreateTime(new Date());
|
if (taoBaoOrder.geteIncome() != null && taoBaoOrder.getSubsidy() != null)
|
commonOrder.seteIncome(taoBaoOrder.geteIncome().add(taoBaoOrder.getSubsidy()));
|
else
|
commonOrder.seteIncome(taoBaoOrder.geteIncome());
|
commonOrder.setEstimate(taoBaoOrder.getEstimate());
|
commonOrder.setOrderNo(taoBaoOrder.getOrderId());
|
commonOrder.setPayment(taoBaoOrder.getPayment());
|
commonOrder.setSettlement(taoBaoOrder.getSettlement());
|
if (!StringUtil.isNullOrEmpty(taoBaoOrder.getSettlementTime()))
|
commonOrder.setSettleTime(
|
new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getSettlementTime(), "yyyy-MM-dd HH:mm:ss")));
|
commonOrder.setSourcePosition(String.format("mm_%s_%s_%s", "124933865", taoBaoOrder.getSourceMediaId(),
|
taoBaoOrder.getAdPositionId()));
|
commonOrder.setSourceType(Constant.SOURCE_TYPE_TAOBAO);
|
int state = 0;
|
if ("订单付款".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
|
state = CommonOrder.STATE_FK;
|
} else if ("订单成功".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
|
state = CommonOrder.STATE_FK;
|
} else if ("订单失效".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
|
state = CommonOrder.STATE_SX;
|
} else if ("订单结算".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
|
state = CommonOrder.STATE_JS;
|
}
|
commonOrder.setOrderBy(taoBaoOrder.getOrderBy());
|
commonOrder.setState(state);
|
commonOrder.setThirdCreateTime(
|
new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getCreateTime(), "yyyy-MM-dd HH:mm:ss")));
|
commonOrder.setUpdateTime(new Date());
|
commonOrder.setTradeId(taoBaoOrder.getTradeId());
|
|
return commonOrder;
|
}
|
}
|