public void HandleEvent(OrderShipedEventData eventData) { AsyncHelper.RunSync(async() => { string openid = WechatUserManager.GetOpenid(new UserIdentifier(eventData.Order.TenantId, eventData.Order.UserId)); if (String.IsNullOrEmpty(openid)) { return; } OrderShipedTemplateMessageData data = new OrderShipedTemplateMessageData() { first = new TemplateDataItem(eventData.Order.Title), keyword1 = new TemplateDataItem(eventData.Order.Number), keyword4 = new TemplateDataItem(eventData.Order.CreationTime.ToString()), remark = new TemplateDataItem(L("ThankYouForYourPatronage")) }; if (eventData.ExpressInfo != null) { ExpressCompany expressCompany = ExpressCompanyRepository.Get(eventData.ExpressInfo.ExpressCompanyId); data.keyword2 = new TemplateDataItem(expressCompany.Name); data.keyword3 = new TemplateDataItem(eventData.ExpressInfo.TrackingNumber); } else { data.keyword2 = new TemplateDataItem(L("Null")); data.keyword3 = new TemplateDataItem(L("Null")); } await TemplateMessageManager.SendTemplateMessageOfOrderShipedAsync(eventData.Order.TenantId, openid, OrderHelper.GetOrderDetailUrl(eventData.Order.Id), data); }); }
public async Task <SendTemplateMessageResult> SendTemplateMessageOfOrderShipedAsync(int tenantId, string openId, string url, OrderShipedTemplateMessageData data) { string accessToken = await WechatCommonManager.GetAccessTokenAsync(tenantId); string templateId = await SettingManager.GetSettingValueForTenantAsync(WechatSettings.TemplateMessage.OrderShiped, tenantId); SendTemplateMessageResult sendResult = await SendTemplateMessageAsync(accessToken, openId, templateId, url, data); return(sendResult); }