public void GennerateOrder()
        {
            AddOrderInfoView view = new AddOrderInfoView()
            {
                LanguageId    = 1,
                MerchantViews = new List <AddOrderInfoView.MerchantView>()
                {
                    new AddOrderInfoView.MerchantView()
                    {
                        MerchantID = "1",
                        Remark     = "我来买东西咯",
                    }
                },
                ReceiverAddressId = 12,
                UserId            = 1,
                PayType           = (int)OrderEnums.PayType.ThirdPay,
                PayChannel        = (int)OrderEnums.PayChannel.PayPal,
                PaidType          = (int)OrderEnums.PaidType.Mall,
                OrderSource       = (int)OrderEnums.OrderSource.Web
            };

            var result = _OrderService.GenerateNormalOrder(view);

            Assert.IsTrue(result.IsValid);
        }
Example #2
0
        /// <summary>
        /// 订单处理
        /// </summary>
        /// <param name="paymentOrderId">支付单号</param>
        private static void OrderHandler(long paymentOrderId)
        {
            ResultModel result = null;

            try
            {
                AddOrderInfoView addOrderInfoView =
                    MemCacheFactory.GetCurrentMemCache().GetCache <AddOrderInfoView>("ZF" + paymentOrderId);
                if (addOrderInfoView == null)
                {
                    _logger.Error(typeof(OrderMQ), string.Format("未找到支付编号【{0}】的订单信息", paymentOrderId));
                    return;
                }

                switch ((OrderEnums.PurchaseType)addOrderInfoView.PurchaseType)
                {
                case OrderEnums.PurchaseType.Normal:
                default:
                    result = _orderService.GenerateNormalOrder(addOrderInfoView);
                    break;

                case OrderEnums.PurchaseType.Outright:
                    result = _orderService.GenerateOutrightOrder(addOrderInfoView);
                    break;
                }

                //订单处理成功
                if (result.IsValid && result.Status == (int)OrderEnums.GenerateOrderFailType.Success)
                {
                    _logger.Error(typeof(OrderMQ), string.Format("支付编号【{0}】的订单已经成功处理", paymentOrderId));
                }
                else
                {
                    _logger.Error(typeof(OrderMQ),
                                  string.Format("支付编号【{0}】的订单失败:{1}", paymentOrderId,
                                                EnumDescription.GetFieldText((OrderEnums.GenerateOrderFailType)result.Status)));
                }
            }
            catch (Exception ex)
            {
                result = new ResultModel()
                {
                    Status = (int)OrderEnums.GenerateOrderFailType.Fail,
                };
                _logger.Error(typeof(OrderMQ), string.Format("支付编号【{0}】的订单处理异常:{1}", paymentOrderId, ex.Message));
            }
            finally
            {
                bool flag = MemCacheFactory.GetCurrentMemCache().AddCache("DDJG" + paymentOrderId, result, 24 * 60);
                MemCacheFactory.GetCurrentMemCache().ClearCache("ZF" + paymentOrderId);
            }
        }