protected void Button1_Click(object sender, EventArgs e) { if (hact.Value == "edit") { SaleAccountType account = SaleAccountType.findById(cvt.ToInt(hid.Value)); account.PlatformCode = ddlPlatform.Text; account.UserName = txtUserName.Value.Trim(); account.AccountManager = txtManager.Value.Trim(); account.ApiToken = txtAPIToKen.Value.Trim(); account.Description = txtDesc.Value.Trim(); account.ManagerPhone = txtTel.Value.Trim(); account.AccountStatus = ckStatus.Checked ? "停用" : "正常"; account.update(); } else { SaleAccountType account = new SaleAccountType(); account.PlatformCode = ddlPlatform.SelectedValue; account.UserName = txtUserName.Value.Trim(); account.ApiToken = txtAPIToKen.Value.Trim(); account.AccountStatus = ckStatus.Checked ? "停用" : "正常"; account.AccountManager = txtManager.Value.Trim(); account.Description = txtDesc.Value.Trim(); account.ManagerPhone = txtTel.Value.Trim(); account.insert(); } }
public void UploadEmailByAPI(SaleAccountType account) { ApiContext context = AppSettingHelper.GetGenericApiContext("US"); context.ApiCredential.eBayToken = account.ApiToken; List<EmailRepliedType> result = EmailRepliedType.find("IsToEbay = 0 AND SaleAccount = '"+account.UserName+"'").list(); AddMemberMessageRTQCall addMsgApicall = new AddMemberMessageRTQCall(context); ReviseMyMessagesCall revMsgApicall = new ReviseMyMessagesCall(context); foreach (EmailRepliedType er in result) { MemberMessageType mm = new MemberMessageType(); mm.MessageID = er.MessageID; mm.Body = er.Body; mm.Subject = er.Subject; mm.SenderID = er.BuyerAccount; mm.SenderEmail = er.BuyerEmail; mm.ParentMessageID = er.MessageID; addMsgApicall.AddMemberMessageRTQ(er.ItemID, mm); revMsgApicall.ReviseMyMessages(true, false, new StringCollection(new string[] { mm.MessageID })); er.IsToEbay = true; er.ToEbayOn = DateTime.Now; er.RepliedSpaceHour = (er.ToEbayOn - er.ReceiveOn).TotalHours; er.update(); } }
public void GetEmailByAPI(SaleAccountType account, DateTime beginDate, DateTime endDate) { ApiContext context = AppSettingHelper.GetGenericApiContext("US"); context.ApiCredential.eBayToken = account.ApiToken; GetMemberMessagesCall apicall = new GetMemberMessagesCall(context); apicall.DetailLevelList.Add(DetailLevelCodeType.ReturnAll); TimeFilter fltr = new TimeFilter(); fltr.TimeFrom = beginDate; fltr.TimeTo = endDate; MemberMessageExchangeTypeCollection messages; int i = 1; do { apicall.Pagination = new eBay.Service.Core.Soap.PaginationType(); apicall.Pagination.PageNumber = i; apicall.Pagination.EntriesPerPage = 100; messages = apicall.GetMemberMessages(fltr, MessageTypeCodeType.All, MessageStatusTypeCodeType.Unanswered); for (int k = 0; k < messages.Count; k++) { MemberMessageExchangeType mmet = messages[k]; EmailType email = OMS.Core.DoMain.EmailType.find("MessageID=:t1").set("t1", mmet.Question.MessageID).first(); if (email == null) { email = new Core.DoMain.EmailType(); } else { continue; } email.Body = mmet.Question.Body; email.CreateOn = mmet.CreationDate; email.MessageID = mmet.Question.MessageID; email.MessageStatus = mmet.MessageStatus.ToString(); email.MessageType = mmet.Question.MessageType.ToString(); email.SaleAccount = mmet.Question.RecipientID[0]; email.BuyerEmail = mmet.Question.SenderEmail; email.BuyerAccount = mmet.Question.SenderID; email.Subject = mmet.Question.Subject; if (mmet.Item != null) { email.ItemPriceCurrency = mmet.Item.SellingStatus.CurrentPrice.currencyID.ToString(); email.ItemPrice = mmet.Item.SellingStatus.CurrentPrice.Value; email.ItemID = mmet.Item.ItemID; email.ItemTitle = mmet.Item.Title; email.ItemURL = mmet.Item.ListingDetails.ViewItemURL; } else { email.ItemTitle = ""; email.ItemID = ""; } int sortNumber = 0; if (HasOrderByTime(email.SaleAccount, email.BuyerAccount, 24))//判断24小时前后是否有订单 { sortNumber = 50; } else if (OrderGoodsHasColor(email.ItemTitle))//判断涉及产品是否有颜色 { sortNumber = 40; } else { } email.LastReplier = GetLastReplier(email.SaleAccount, email.BuyerAccount);//获取上次回复人 email.SortNumber = sortNumber; email.insert(); } i++; } while (messages != null && messages.Count == 100); }