public IEnumerable <Event> Update(Event evn) { return(evn switch { OrderPaid x => Update(x), _ => new[] { evn } });
//public SingleOntimePayResponse SingleOntimePay(string Name, string BarkNumber, int Amount, string REQ_SN) //{ // SingleOntimePayRquest request = new SingleOntimePayRquest(); // request.INFO.REQ_SN = REQ_SN; // request.TRANS.BUSINESS_CODE = "09900"; // request.TRANS.SUBMIT_TIME = DateTime.Now.ToString("yyyyMMddHHmmss"); // request.TRANS.ACCOUNT_NO = BarkNumber; // request.TRANS.ACCOUNT_NAME = Name; // request.TRANS.ACCOUNT_PROP = "0"; // request.TRANS.AMOUNT = Amount; // request.TRANS.ACCOUNT_KIND = "01"; // var response = tltExec.Exec(request); // return response as SingleOntimePayResponse; //} public SingleOntimePayResponse SingleOntimePay(OrderPaid orderPaid, PingAnOrderPaidRecharge pingAnOrderPaidRecharge) { SingleOntimePayRquest request = new SingleOntimePayRquest(this.tltExec); request.INFO.REQ_SN = pingAnOrderPaidRecharge.SerialNumber; request.TRANS.BUSINESS_CODE = "09900"; request.TRANS.SUBMIT_TIME = DateTime.Now.ToString("yyyyMMddHHmmss"); request.TRANS.ACCOUNT_NO = orderPaid.Member.AccountPingAn.BankCardNumber; //银行卡号(平安二类户卡号) request.TRANS.ACCOUNT_NAME = orderPaid.MemberName; request.TRANS.ACCOUNT_PROP = "0"; request.TRANS.AMOUNT = decimal.ToInt32(orderPaid.TransactionAmount * 100); request.TRANS.FIRST_ACCTNO = orderPaid.Member?.AccountPingAn.OutCardNo; //转入银行卡号(代付出金卡) request.TRANS.FIRST_ACCTNAME = orderPaid.Member?.AccountPingAn.CnName; request.TRANS.ACCOUNT_ATTRB = "2"; //-------------------------------------------------------------------- request.TRANS.BANK_CODE = pingAnOrderPaidRecharge?.BankCode; request.TRANS.BANK_NAME = pingAnOrderPaidRecharge?.BankName; request.TRANS.ACCOUNT_TYPE = pingAnOrderPaidRecharge?.AccountType; request.TRANS.PROVINCE = pingAnOrderPaidRecharge?.Province; request.TRANS.CITY = pingAnOrderPaidRecharge?.City; request.TRANS.ACCOUNT_PROP = pingAnOrderPaidRecharge?.AccountProp ?? "0"; request.TRANS.UNION_BANK = pingAnOrderPaidRecharge?.UnionBank; var response = tltExec.Exec(request); return(response as SingleOntimePayResponse); }
public void after_orderPaid_then_orderCompleted() { // given var d = new FakeDispatcher(); var m = new Runner(d); var o = new Order { OrderId = Guid.NewGuid() }; // when var inputEvent = new OrderPaid { Order = o }; m.Handle(inputEvent); // then Assert.Equal(2, d.Messages.Count); Assert.IsType <PrintOrder>(d.Messages[0]); Assert.IsType <OrderCompleted>(d.Messages[1]); var x0 = d.Messages[0] as PrintOrder; var x1 = d.Messages[1] as OrderCompleted; Assert.Equal(o.OrderId, x0.Order.OrderId); Assert.Equal(inputEvent.CorrelationId, x0.CorrelationId); Assert.Equal(inputEvent.MessageId, x0.ParentId); Assert.True(x1.Success); Assert.False(x1.Retried); Assert.Equal(o.OrderId, x1.Order.OrderId); Assert.Equal(inputEvent.CorrelationId, x1.CorrelationId); Assert.Equal(inputEvent.MessageId, x1.ParentId); }
public ActionResult OrderPaid() { decimal dec = 76; var entity = new OrderPaid(); entity.MerchantID = 1; entity.OrderNumber = "20181107163253195868"; // entity.HouseTypeShowID = 24; entity.EquipmentSNNo = "600047000103"; entity.EmployeeID = 7; entity.TransactionAmount = dec; //entity.SerialNumber = " 111863250000001641"; entity.MemberID = 2; entity.Status = 1; // entity.PaymentStatus = 0; //entity.PaymentType = 2; //entity.BankCardNumber = "123456789987654"; entity.Remark = "a昂达三季度噶三季度撒"; iOrderPaidService.Save(entity); iOrderPaidService.Commit(); return(View()); }
public bool Consume(OrderPaid message) { TopicPubSub.Instance.Publish(Topics.CompletedOrders, new OrderCompleted { Order = message.Order }); return(true); }
public async Task Handle(OrderPlaced message, IMessageHandlerContext context) { this.log.Info($"Collected payment for order {message.OrderId} from customer {message.CustomerId}"); var orderPaid = new OrderPaid { OrderId = message.OrderId }; await context.Publish(orderPaid); }
public void Pay(string orderId) { _orderStatuses[orderId] = "Waiting to pay"; Task.Run(() => { Thread.Sleep(2000); OrderPaid?.Invoke(this, new EventArgs()); }); }
public void Handle(OrderPaid order) { var message = new CookFood { Order = order.Order }; message.ReplyTo(order); _publisher.Publish(message); }
public void InsertOrUpdate(OrderPaid orderpaid) { if (orderpaid.Id == default(System.Guid)) { // New entity orderpaid.Id = Guid.NewGuid(); context.OrderPaids.Add(orderpaid); } else { // Existing entity context.Entry(orderpaid).State = EntityState.Modified; } }
private void HandleInternal(OrderPaid message) { this.Finished.Invoke(this, new MidgetEventArgs() { CorrelationId = message.CorrelationId }); this.publisher.Publish(new PrintOrder(message) { Order = message.Order }); }
public ActionResult Create(OrderPaid orderpaid) { if (ModelState.IsValid) { orderpaidRepository.InsertOrUpdate(orderpaid); orderpaidRepository.Save(); return RedirectToAction("Index"); } else { ViewBag.PossibleWaiters = waiterRepository.All; ViewBag.PossibleRestaurants = restaurantRepository.All; return View(); } }
/// <summary> /// 解止付接口 /// </summary> /// <returns></returns> public UnFreezeMarginsOrderResponse UnFreezeMarginsOrder(OrderPaid orderPaid) { UnFreezeMarginsOrderRequest request = new UnFreezeMarginsOrderRequest(); request.channel = channel; request.bankOrderNo = orderPaid.PingAnOrderPaid.BankOrderNo; request.cardNumber = orderPaid.Member.IDNumber; request.transCode = "004"; var response = pingAnExec.Exec(request); return(response as UnFreezeMarginsOrderResponse); }
public void Handle(OrderPaid m) { _dispatcher.Publish(new PrintOrder(m) { Order = m.Order }); _dispatcher.Publish(new OrderCompleted(m) { Order = m.Order, Success = true, Retried = _calledback }); }
private void HandlePayForOrder(PayForOrder cmd) { var order = this.QueryOrder(cmd.OrderId); var orderPaid = new OrderPaid { Order = order }; // like Forward Context.ActorSelection("akka://ec/user/inventory").Tell(orderPaid, this.Sender); Context.System.EventStream.Publish(orderPaid); }
public void Handle(OrderPaid message) { if (message == null) { return; } _publisher.Publish(new CookFood() { CorrelationId = message.CorrelationId, CausationId = message.EventId, Order = message.Order }); }
/// <summary> /// 查询订单接口 /// </summary> /// <returns></returns> public QueryMarginsOrderDetailResponse QueryMarginsOrderDetail(OrderPaid orderPaid) { QueryMarginsOrderDetailRequest request = new QueryMarginsOrderDetailRequest(); request.channel = channel; request.bankOrderNo = orderPaid.PingAnOrderPaid.BankOrderNo; request.cardNumber = orderPaid.Member.IDNumber; request.accountType = ""; //1一类户2二类户 request.transCode = "002"; var response = pingAnExec.Exec(request); return(response as QueryMarginsOrderDetailResponse); }
private void OnOrderPaid(OrderPaid evt) { this.DecreaseStock(evt.Order.Products); Console.WriteLine($"Products '{string.Join(",", evt.Order.Products.Select(x => x.Id))}' stock decreased."); Console.WriteLine(); var deliveryProducts = new DeliveryProducts { Products = evt.Order.Products }; this.logisticsActor.Forward(deliveryProducts); //this.logisticsActor.Tell(deliveryProducts, this.Sender); }
public ActionResult Edit(OrderPaid orderpaid) { if (ModelState.IsValid) { orderpaidRepository.InsertOrUpdate(orderpaid); orderpaidRepository.Save(); return(RedirectToAction("Index")); } else { ViewBag.PossibleWaiters = waiterRepository.All; ViewBag.PossibleRestaurants = restaurantRepository.All; return(View()); } }
public void Handle(OrderPaid message) { if (message == null) { return; } _publisher.Publish(new SpikeOrder() { CorrelationId = message.CorrelationId, CausationId = message.EventId, Order = message.Order }); _publisher.UnSubscribe(message.CorrelationId); }
public void Handle(OrderPaid m) { _dispatcher.Publish(new CookFood(m) { Order = m.Order }); _dispatcher.Publish(new Callback(m) { Seconds = 2, Payload = new CookFoodCalledBack(m) { Attempt = 1, Order = m.Order } }); }
public void Handle(OrderPaid message) { var cookOrder = new CookOrder(message.Order, DateTime.Now.AddSeconds(1000)) { MessageId = Guid.NewGuid(), CorrelationId = message.CorrelationId, CausationId = message.MessageId }; _bus.Publish(new RemindmeCommand <CookOrder>(2, cookOrder) { MessageId = Guid.NewGuid(), CorrelationId = message.CorrelationId, CausationId = message.MessageId }); _bus.Publish(cookOrder); }
public void Handle(TakePayment message) { var order = message.Order; Console.WriteLine("Processing Payment..."); order = order.SetPaid(true); var @event = new OrderPaid { Order = order }; @event.CorrelationId = message.CorrelationId; @event.CausationId = message.Id; _publisher.Publish(@event); }
public void Handle(OrderPaid message) { if (_expectedNextCausationId == message.CausationId) { var orderCompleted = new OrderCompleted(message.Order) { MessageId = Guid.NewGuid(), CorrelationId = message.CorrelationId, CausationId = message.MessageId }; _expectedNextCausationId = orderCompleted.MessageId; _bus.Publish(orderCompleted); } else { Console.WriteLine("Received Evil Message: Order Paid {0}", message.Order.Id); } }
/// <summary> /// 预下单接口 /// </summary> /// <returns></returns> public PreparedFreezeOrderResponse PreparedFreezeOrder(OrderPaid orderPaid, PingAnOrderPaid pingAnOrderPaid) { PreparedFreezeOrderRequest request = new PreparedFreezeOrderRequest(); request.channel = pingAnOrderPaid.Channel; request.userName = orderPaid.MemberName; request.cardNumber = orderPaid.MemberIDNumber; request.mobile = orderPaid.MemberMobile; request.businessName = pingAnOrderPaid.BusinessName; request.orderValidDay = pingAnOrderPaid.OrderValidDay; request.freezeAmt = Convert.ToDouble(orderPaid.TransactionAmount); request.freezeTimeLimit = pingAnOrderPaid.FreezeTimeLimit; request.freezeProduct = pingAnOrderPaid.FreezeProduct; request.autoFreeze = pingAnOrderPaid.AutoFreeze; request.transCode = pingAnOrderPaid.TransCode; var response = pingAnExec.Exec(request); return(response as PreparedFreezeOrderResponse); }
private async Task HandleAsync(OrderPaid mjp) { Log.Information("Order: " + mjp.OrderId); Order order = new Order { OrderId = mjp.OrderId.ToString(), CustomerId = mjp.CustomerId, OrderDate = mjp.OrderDate, PaymentType = mjp.PaymentType }; Log.Information("Register Order: {Id}, {CustomerId}, {OrderDate}}", order.OrderId, order.CustomerId, order.OrderDate); string customerId = order.CustomerId; Customer customer = await _repo.GetCustomerAsync(customerId); StringBuilder body = new StringBuilder(); body.AppendLine($"Dear {customer.Name},\n"); body.AppendLine($"The following order has been placed:\n"); body.AppendLine($"- {order.OrderDate.ToString("dd-MM-yyyy")} : " + $"Order has been placed with order number {order.OrderId}"); body.AppendLine($"\nWe will notify you when your order has been sent.\n"); body.AppendLine($"Greetings,\n"); body.AppendLine($"The Ball crew"); Log.Information("Sent notification to: {CustomerName}", customer.Name); // send notification await _emailNotifier.SendEmailAsync( customer.EmailAddress, "*****@*****.**", "Order has been placed", body.ToString()); await _repo.RegisterOrderAsync(order); }
public void When(OrderPaid paid) { }
private void OnOrderPaid(OrderPaid evt) { Console.WriteLine($"Order '{evt.Order.Id}' paid."); Console.WriteLine(); }
public void Handle(OrderPaid message) { Console.WriteLine(message.CorrelationId); Console.WriteLine(message.GetType()); Console.WriteLine(message.Order); }
public void Handle(OrderPaid message) { _orderStatuses[message.Order.Id] = OrderStatus.Paid; }
public void Handle(OrderPaid message) { Data.OrderIsPaid = true; DeliverOrder(); }