package com.ydd.app; import com.fasterxml.jackson.core.type.TypeReference; import com.ydd.common.enums.DeliveryTypeEnums; import com.ydd.common.utils.StringUtils; import com.ydd.ecloud.core.utils.JsonMapper; import com.ydd.module.dto.OrderTipDto; import com.ydd.module.dto.SfShopDto; import com.ydd.third.common.vo.vo.order.OrderTipsVo; import org.apache.commons.collections4.CollectionUtils; import java.math.BigDecimal; import java.util.List; /** * Project:lb-server * Class:OrderTipUtils * Description:TODO * Time:2021/3/9 19:28 * * @author zoe */ public class OrderTipUtils { public static OrderTipsVo createOrderVo(OrderTipDto order, Integer type) { OrderTipsVo orderTipsVo = new OrderTipsVo(); if (DeliveryTypeEnums.DADA.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.DADA.getName()); /** * 订单编号 * 达达 * 达达:order_id 必传,第三方订单编号 */ orderTipsVo.setOrderNo(order.getOrderSn()); /** * 小费金额 * 达达 * 达达:tips 必传,小费金额(单位:元) */ orderTipsVo.setTips(order.getTips()); /** * 订单城市区号 * 达达 * 达达:city_code 必传,订单城市区号 */ orderTipsVo.setCityCode(order.getCityCode() == null ? "0512" : order.getCityCode()); orderTipsVo.setIsDirectDelivery(0); orderTipsVo.setMerchantId(order.getSourceId()); }else if (DeliveryTypeEnums.DADA_YZ.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.DADA_YZ.getName()); /** * 订单编号 * 达达 * 达达:order_id 必传,第三方订单编号 */ orderTipsVo.setOrderNo(order.getOrderSn()); /** * 小费金额 * 达达 * 达达:tips 必传,小费金额(单位:元) */ orderTipsVo.setTips(order.getTips()); /** * 订单城市区号 * 达达 * 达达:city_code 必传,订单城市区号 */ orderTipsVo.setCityCode(order.getCityCode() == null ? "0512" : order.getCityCode()); orderTipsVo.setIsDirectDelivery(1); orderTipsVo.setMerchantId(order.getSourceId()); } else if (DeliveryTypeEnums.SHAN_SONG.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.SHAN_SONG.getName()); /** * 订单id * 闪送:issOrderNo 必传,闪送订单编号 */ orderTipsVo.setOrderNo(order.getOutTradeNo()); /** * 小费金额 * 闪送 * 闪送:additionAmount 必传,小费金额,单位:元 */ orderTipsVo.setTips(order.getTips()); orderTipsVo.setIsShansongSH(false); if(order.getIsMine()==1){ orderTipsVo.setIsShansongSH(true); orderTipsVo.setAccessToken(order.getToken()); } } else if (DeliveryTypeEnums.SHUN_FENG.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.SHUN_FENG.getName()); if (StringUtils.isNotBlank(order.getThirdShopId())) { orderTipsVo.setShopId(order.getThirdShopId()); orderTipsVo.setShopType(1); } else { //匹配出顺丰shop_id List list = JsonMapper.nonEmptyMapper().fromJson(order.getShopId(), new TypeReference>() { }); if (CollectionUtils.isNotEmpty(list)) { for (SfShopDto dto : list) { if (dto.getCity().equals(order.getCityName())) { /** * 店铺ID * 顺丰: * shop_id 必传 */ orderTipsVo.setShopId(dto.getShopId()); orderTipsVo.setShopType(1); break; } } } else { //不设置商家店铺,默认走全国统一个人快递业务 orderTipsVo.setShopId("3258674679761"); orderTipsVo.setShopType(1); } } /** * 订单编号 * 顺丰 */ orderTipsVo.setOrderNo(order.getOrderSn()); /** * 订单ID类型 * 顺丰 * 顺丰:order_type 必传,查询订单ID类型 1、顺丰订单号 2、商家订单号1、顺丰订单号 2、商家订单号 */ orderTipsVo.setOrderType(2); /** * 小费金额 * 顺丰 * 顺丰:gratuity_fee 必传, 订单小费 */ orderTipsVo.setTips(order.getTips()); } else if (DeliveryTypeEnums.DWD.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.DWD.getName()); /** * 订单编号 * 顺丰 */ orderTipsVo.setOrderNo(order.getOrderSn()); /** * 总小费 */ orderTipsVo.setTips(order.getTips().multiply(new BigDecimal(100))); }else if (DeliveryTypeEnums.UUPT.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.UUPT.getName()); /** * 订单编号 */ orderTipsVo.setOrderNo(order.getOutTradeNo()); orderTipsVo.setOriginId(order.getOrderSn()); /** * 总小费 */ orderTipsVo.setTips(order.getTips()); orderTipsVo.setUuptOpenId(order.getUuptOpenId()); }else if (DeliveryTypeEnums.KUAI_FU.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.KUAI_FU.getName()); /** * 订单编号 */ orderTipsVo.setOrderNo(order.getOutTradeNo()); orderTipsVo.setOriginId(order.getOrderSn()); /** * 总小费 */ orderTipsVo.setTips(order.getTips()); orderTipsVo.setAccessToken(order.getKfAccessToken()); orderTipsVo.setIsMine(order.getIsMine()); }else if (DeliveryTypeEnums.MEI_TUAN_ZB.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.MEI_TUAN_ZB.getName()); /** * 订单编号 */ orderTipsVo.setOrderNo(order.getZbOrderSn()); orderTipsVo.setAccessToken(order.getZbToken()); /** * 总小费 */ orderTipsVo.setTips(order.getTips()); }else if (DeliveryTypeEnums.HUO_LA_LA.getType().equals(type)){ orderTipsVo.setLbClient(DeliveryTypeEnums.HUO_LA_LA.getName()); orderTipsVo.setOrderNo(order.getOutTradeNo()); orderTipsVo.setTips(order.getTips().multiply(new BigDecimal(100))); orderTipsVo.setAccessToken(order.getToken()); }else if (DeliveryTypeEnums.MEI_TUAN.getType().equals(type)){ orderTipsVo.setLbClient(DeliveryTypeEnums.MEI_TUAN.getName()); orderTipsVo.setOrderNo(order.getMtOrderSn()); orderTipsVo.setTips(order.getTips()); orderTipsVo.setDeliveryId(order.getOrderId()); }else if (DeliveryTypeEnums.FENG_NIAO.getType().equals(type)){ orderTipsVo.setLbClient(DeliveryTypeEnums.FENG_NIAO.getName()); orderTipsVo.setTips(order.getTips().multiply(new BigDecimal(100))); orderTipsVo.setOrderNo(order.getOrderSn());// 外部订单号 /** * 蜂鸟V3, * 商户ID */ orderTipsVo.setMerchantId(order.getMerchantId());//"3742995"); //"3640883"); /** * 闪送,蜂鸟V3 * 商户Token */ orderTipsVo.setAccessToken(order.getToken()); }else if (DeliveryTypeEnums.MEI_TUAN_SG_ZB.getType().equals(type)) { orderTipsVo.setLbClient(DeliveryTypeEnums.MEI_TUAN_SG_ZB.getName()); /** * 订单编号 */ orderTipsVo.setOrderNo(order.getZbOrderSn()); orderTipsVo.setAccessToken(order.getZbToken()); /** * 总小费 */ orderTipsVo.setTips(order.getTips()); }else if (DeliveryTypeEnums.FENG_NIAO_PT.getType().equals(type)){ orderTipsVo.setLbClient(DeliveryTypeEnums.FENG_NIAO_PT.getName()); orderTipsVo.setTips(order.getTips().multiply(new BigDecimal(100))); orderTipsVo.setOrderNo(order.getOrderSn());// 外部订单号 /** * 蜂鸟V3, * 商户ID */ orderTipsVo.setMerchantId(order.getMerchantId());//"3742995"); //"3640883"); /** * 闪送,蜂鸟V3 * 商户Token */ orderTipsVo.setAccessToken(order.getToken()); } return orderTipsVo; } }