Example #1
0
        public ChenYiCtripOrderChannel(ShopType shop)
        {
            if (shop == ShopType.ShengLv || shop == ShopType.RenNiXing)
            {
                orderRepository = new ShengLvOrderRepository();
            }
            else
            {
                orderRepository = new ThirdOrderRepository();
            }

            Shop = shop;
            chenYiOrderRepository = new ChenYiOrderRepository();
            noticeLogWriter       = new LogWriter("Ctrip/Notice/");
            orderLogWriter        = new LogWriter("Ctrip/Order/");
        }
Example #2
0
        public string OrderStatusDDS(string taobaoOrderId)
        {
            string result          = string.Empty;
            var    OrderStatusJson = new OrderStatusJson();

            try
            {
                ThirdOrderRepository orderChannel = new ThirdOrderRepository();
                result = orderChannel.GetOrderStatusDDS(taobaoOrderId);
                return(result);
            }
            catch (Exception ex)
            {
                return(result);
            }
        }
Example #3
0
        public ActionResult getOrderStatusDDS(string taobaoOrderId)
        {
            string result          = string.Empty;
            var    OrderStatusJson = new OrderStatusJson();

            try
            {
                ThirdOrderRepository orderChannel = new ThirdOrderRepository();
                result = orderChannel.GetOrderStatusDDS(taobaoOrderId);
                OrderStatusJson.OrderStatus = result;
                return(this.Jsonp(OrderStatusJson));
            }
            catch (Exception ex)
            {
                return(this.Jsonp(OrderStatusJson));
            }
        }
Example #4
0
        /// <summary>
        /// 构造函数
        /// </summary>
        public CtripTmallOrderChannel(ShopType shopType)
        {
            Shop = shopType;
            chenYiCtripOrderChannel = new ChenYiCtripOrderChannel(shopType);
            syncOrderLogWriter      = new LogWriter("SynOrder");
            if (Shop == ShopType.ShengLv || Shop == ShopType.RenNiXing)
            {
                sqlSugarClient  = SqlSugarContext.ResellbaseInstance;
                orderRepository = new ShengLvOrderRepository();
            }
            else
            {
                orderRepository = new ThirdOrderRepository();
                sqlSugarClient  = SqlSugarContext.BigTreeInstance;
            }

            ctripRepository = new CtripRepository();
        }
Example #5
0
        /// <summary>
        /// 下单
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ServiceResult CreateOrder(long id)
        {
            var result = new ServiceResult();

            var cOrder = SqlSugarContext.TravelskyInstance.Queryable <dingdan_info>().Where(u => (u.PriceOrderWay == 66 || u.PriceOrderWay == 16 || u.PriceOrderWay == 86) && u.fax == id.ToString()).First();

            if (cOrder != null && !string.IsNullOrEmpty(cOrder.ElongOrderID))
            {
                return(result.SetError("已下单到携程,请勿重新下单"));
            }

            if (cOrder.pingtai == "ay" || cOrder.pingtai == "rnx")
            {
                orderRepository = new ShengLvOrderRepository();
            }
            else
            {
                orderRepository = new ThirdOrderRepository();
            }

            var            order       = orderRepository.GetOrderByTaoBaoOrderId(id);
            SqlSugarClient sugarClient = null;

            string faildOrderKey = string.Empty;

            if (order.shopType == 7 || order.shopType == 9)
            {
                sugarClient = SqlSugarContext.ResellbaseInstance;
            }
            else
            {
                sugarClient = SqlSugarContext.BigTreeInstance;
            }

            if ((!string.IsNullOrEmpty(cOrder.beizhu) && cOrder.beizhu.Contains("订单申请取消")) || order.Refuse == 2 || order.remark.Contains("淘宝申请退款") || order.remark.Contains("淘宝执行订单取消"))
            {
                return(result.SetError("分销已取消,取消下单"));
            }

            var zOrder = new XZorder
            {
                comeDate       = order.checkInDate,
                contactName    = order.contactName,
                contactPhone   = "18022416577",
                guestNames     = order.guestName.Split(',').ToList(),
                guestNum       = order.guestName.Split(',').Count(),
                hotelCode      = order.hotelID,
                lateArriveTime = order.lastArriveTime,
                leaveDate      = order.checkOutDate,
                orderNo        = order.sourceOrderID,
                //price = Convert.ToDecimal(order.totalPrice),//指导价
                salePrice        = Convert.ToDecimal(order.alipayPay),  //卖价
                totalPrice       = Convert.ToDecimal(order.totalPrice), //底价
                ratePlanCategory = "501",
                ratePlanCode     = order.ratePlanID,
                roomNum          = order.roomNum,
                specialRequest   = order.comment,
            };

            var createResult = new ServiceResult();

            if (cOrder.PriceOrderWay == 86)
            {
                createResult = CreatePromotionOrder(zOrder);
            }
            else
            {
                createResult = CreateNormalOrder((int)cOrder.PriceOrderWay, zOrder);
            }


            if (cOrder != null)
            {
                cOrder.caozuo = string.Format("{0}system 操作下单到携程 [{1}]\n", cOrder.caozuo, DateTime.Now.ToString());
            }

            if (createResult.IsSucess)
            {
                string ctripOrderId = createResult.Data.ToString();
                cOrder.ElongOrderID = ctripOrderId;
                string message = string.Format("下单成功,订单号:({0})", ctripOrderId);
                cOrder.state = 3;

                if (string.IsNullOrEmpty(cOrder.beizhu))
                {
                    cOrder.beizhu = string.Format("【系统】:{0} [{1}]<br/>", message, DateTime.Now.ToString());
                }
                else
                {
                    cOrder.beizhu = string.Format("{2}【系统】:{0} [{1}]<br/>", message, DateTime.Now.ToString(), cOrder.beizhu);
                }

                var rows = SqlSugarContext.TravelskyInstance.Updateable(cOrder).ExecuteCommand();
                if (rows > 0)
                {
                    var payResult = PayOrder(id);  //下单后支付
                }

                order.remark = string.Format("{0}【携程】:{1} [{2}]<br/>", order.remark, message, DateTime.Now.ToString());
                rows         = sugarClient.Updateable(order).UpdateColumns(u => u.remark).ExecuteCommand();

                return(result.SetSucess(message));
            }
            else
            {
                cOrder.state  = 1;
                cOrder.beizhu = string.Format("{0}【系统】:下单失败,{1}  [{2}]<br/>", cOrder.beizhu, createResult.Message, DateTime.Now.ToString());

                var rows = SqlSugarContext.TravelskyInstance.Updateable(cOrder).ExecuteCommand();

                return(result.SetError(createResult.Message));
            }
        }