admin
2020-05-06 24a8d17e007545f7426c48352109aa1a9c6587ee
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/CommonOrderFactory.java
@@ -6,8 +6,11 @@
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 {
@@ -15,7 +18,7 @@
      CommonOrder commonOrder = new CommonOrder();
      commonOrder.setCount(order.getGoodsQuantity());
      commonOrder.setCreateTime(new Date());
      if (order.getOrderStatus() == 3) {
      if (order.getOrderStatus() == 3) {// 审核通过
         commonOrder.seteIncome(
               MoneyBigDecimalUtil.div(new BigDecimal(order.getPromotionAmount()), new BigDecimal(100)));
         commonOrder.setSettlement(
@@ -31,6 +34,7 @@
         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());
@@ -45,7 +49,7 @@
         state = CommonOrder.STATE_FK;
      } else if (1 == order.getOrderStatus()) {
         state = CommonOrder.STATE_FK;
      } else if (2 == order.getOrderStatus()) {
      } else if (2 == order.getOrderStatus()) {// 确认收货
         state = CommonOrder.STATE_JS;
      } else if (3 == order.getOrderStatus()) {
         state = CommonOrder.STATE_FK;
@@ -88,6 +92,26 @@
      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) {
@@ -102,4 +126,42 @@
      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());
      commonOrder.setChildSourceType(taoBaoOrder.getOrderType());
      return commonOrder;
   }
}