Esempio n. 1
0
 /// <summary>
 /// 获取苏宁订单售后状态状态
 /// </summary>
 /// <param name="refund"></param>
 /// <param name="orderId"></param>
 /// <param name="orderItemId"></param>
 public static void GetSNRefundInfo(SubmitOrderRefundDTO refund, Guid orderId, Guid orderItemId)
 {
     try
     {
         var snOrderRefundAfterSales = SNOrderRefundAfterSales.ObjectSet().Where(_ => _.OrderRefundAfterSalesId == refund.Id).FirstOrDefault();
         if (snOrderRefundAfterSales != null)
         {
             refund.SnOrderRefundInfo = new SNOrderRefundDto
             {
                 ServiceId           = snOrderRefundAfterSales.AfsServiceId,
                 Cancel              = snOrderRefundAfterSales.Cancel,
                 CustomerContactName = snOrderRefundAfterSales.CustomerContactName,
                 CustomerTel         = snOrderRefundAfterSales.CustomerTel,
                 PickwareAddress     = snOrderRefundAfterSales.PickwareAddress,
                 PickwareType        = snOrderRefundAfterSales.PickwareType
             };
         }
         //判断是否是苏宁订单  防止售后表没数据,造成退款详情页异常
         SNOrderItemDTO snModel = new SNOrderItemDTO
         {
             OrderId     = orderId,
             OrderItemId = orderItemId
         };
         var snOrderItemList = new SNAfterSaleFacade().GetSNOrderItemList(snModel).ToList();
         if (snOrderItemList.Count() > 0)
         {
             refund.IsSNOrder = true;
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(@"SNOrderAfterSalesHelper.GetSNRefundInfo 【苏宁-售后】获取苏宁订单售后状态状态  失败 ", ex);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// 根据订单Id  获取苏宁所有商品  判断是否是厂送
        /// </summary>
        /// <param name="orderId">订单Id</param>
        /// <returns>判断是否为null即可</returns>
        public static List <SNFactoryDeliveryReturnListDTO> SNJudgeIsFactoryDeliveryByOrderId(Guid orderId)
        {
            List <SNFactoryDeliveryReturnListDTO> retDto = new List <SNFactoryDeliveryReturnListDTO>();

            //获取主订单
            ISV.Facade.CommodityOrderFacade commodityOrderFacade = new ISV.Facade.CommodityOrderFacade();
            var orders = commodityOrderFacade.GetCommodityOrder(new List <Guid>()
            {
                orderId
            }).FirstOrDefault();

            if (orders != null)
            {
                List <SNApplyRejectedSkusDTO> skuDto = new List <SNApplyRejectedSkusDTO>();
                //获取苏宁子订单
                SNAfterSaleFacade     an       = new SNAfterSaleFacade();
                List <SNOrderItemDTO> listItem = an.GetSNOrderItemList(new SNOrderItemDTO()
                {
                    OrderId = orderId
                });
                listItem.ForEach(p =>
                {
                    skuDto.Add(new SNApplyRejectedSkusDTO()
                    {
                        SkuId = p.CustomSkuId
                    });
                });
                //如果存在子订单
                if (skuDto.Any())
                {
                    retDto = SNJudgeIsFactoryDelivery(orders.Province, orders.City, skuDto);
                }
            }
            return(retDto);
        }