Пример #1
0
        async Task <Result <OrderConfirmed> > Run(SetupData data)
        {
            var order = new Order
            {
                Id                 = 1,
                ItemId             = 1,
                LendingUnitId      = 2,
                RequestingMemberId = 1,
                RequestingUnitId   = 3,
                Status             = data.StartingStatus
            };

            var unitId = data.MemberSide == OrderSide.Lending ? order.LendingUnitId : order.RequestingUnitId;
            var member = new Member(2, unitId, data.MemberPermissions);
            var item   = new Item
            {
                Id    = 1,
                Price = 100
            };
            var orderingService = new Mock <IOrderingService>();

            orderingService.Setup(a => a.GetOrder(1)).ReturnsAsync(order);
            orderingService.Setup(a => a.GetMemberById(2)).ReturnsAsync(member);
            orderingService.Setup(a => a.UpdateOrder(It.IsAny <Order>()))
            .ReturnsAsync(new BaseGatewayResponse(true));
            orderingService.Setup(a => a.GetItem(1)).ReturnsAsync(item);
            orderingService.Setup(a => a.TransterMoney(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>()))
            .ReturnsAsync(new BaseGatewayResponse(true));
            var handler = new ConfirmHandler(orderingService.Object);

            var request = new ConfirmOrderRequest(1, 2);

            return(await handler.Handle(request));
        }
Пример #2
0
 public void ConfirmOrder([FromBody] ConfirmOrderRequest request)
 {
     Bus.Send(new ConfirmOrder
     {
         OrderId = request.OrderId,
     });
 }
        public async Task <IActionResult> ConfirmOrder([FromBody] ConfirmOrderRequest request)
        {
            var(version, order) = await _aggregateService.GetAggregate <Order>(request.OrderId.ToString());

            order.Confirm();
            await _aggregateService.SaveAggregate(order, version);

            return(Ok(order));
        }
Пример #4
0
 public void ConfirmOrder([FromBody] ConfirmOrderRequest request)
 {
     Bus.Send(new SetBillingAddress
     {
         CustomerId = request.CustomerId,
         OrderId    = request.OrderId,
         Name       = request.Name,
         Street     = request.Street,
         ZipCode    = request.ZipCode,
         City       = request.City
     });
 }
Пример #5
0
 public void ConfirmOrder([FromBody] ConfirmOrderRequest request)
 {
     Bus.Send(new CheckInventory
     {
         OrderId = request.OrderId,
         Items   = request.Items.Select(x => new CheckInventory.OrderedItem()
         {
             ArticleId = x.ArticleId,
             Count     = x.Count
         }).ToArray()
     });
 }
Пример #6
0
    public void DoConfirmOrderRequest(string orderId, int platformId, int result, byte[] data)
    {
        PacketBase msg = new PacketBase()
        {
            packetType = PacketType.ConfirmOrderRequest
        };
        ConfirmOrderRequest request = new ConfirmOrderRequest();

        request.orderId    = orderId;
        request.platformId = platformId;
        request.result     = result;
        request.data       = data;

        msg.data = NetSerilizer.Serialize(request);
        SocketNetTools.SendMsg(msg);
    }
Пример #7
0
 public Task <BaseResponse> ConfirmOrder(ConfirmOrderRequest request, int UserID)
 {
     throw new NotImplementedException();
 }
Пример #8
0
        public FinishOrderResponse Finish(string orderid, string memberid, string provideid)
        {
            FinishOrderInfo info = new FinishOrderInfo()
            {
                memberId = memberid, orderId = orderid, providerId = provideid
            };
            string mid = memberid;

            if (string.IsNullOrWhiteSpace(mid))
            {
                mid = DefaultMemberId;
            }
            info.memberId = mid;
            var password = GetPassword(mid);
            var datetime = DateTime.Now;
            var request  = new ConfirmOrderRequest
            {
                dataMap = info,
                sign    = BuildSign(info, datetime, password),
                reqTime = datetime.ToString(DateTimeFormat)
            };
            var jSetting = new JsonSerializerSettings();

            jSetting.NullValueHandling = NullValueHandling.Ignore;
            var content = JsonConvert.SerializeObject(request, jSetting);

            _log.Debug("Post data:" + content);
            var config = new CommonConfig(null);

            var req = (HttpWebRequest)WebRequest.Create(config.JavaOrder_Uri + "finishedCall");

            req.Method      = "POST";
            req.ContentType = "Application/Json";
            req.Credentials = CredentialCache.DefaultCredentials;
            req.Timeout     = 300000;
            // 如果服务器返回错误,他还会继续再去请求,不会使用之前的错误数据,做返回数据
            //req.ServicePoint.Expect100Continue = false;
            WriteRequestData(req, content);
            var response = req.GetResponse();

            if (response == null)
            {
                throw new Exception("请求失败!");
            }
            var stream = response.GetResponseStream();

            if (stream == null)
            {
                throw new Exception("请求Stream为空!");
            }
            var sr     = new StreamReader(stream, Encoding.UTF8);
            var retXml = sr.ReadToEnd();

            sr.Close();
            _log.Debug(retXml);
            var obj = JsonConvert.DeserializeObject <FinishOrderResponse>(retXml);

            if (obj.respCode != "0")
            {
                throw new ApplicationException(obj.respMsg);
            }
            return(obj);
        }
Пример #9
0
        public NegotiatedContentResult <ConfirmOrderResponse> PostConfirmOrder([FromBody] ConfirmOrderRequest request)
        {
            ConfirmOrderResponse resp = _ordersServices.ConfirmOrder(request);

            return(Content(HttpStatusCode.OK, resp));
        }