using _29WxOrderWpf.BaseWindows; using AllBase.Helper; using AllBase.Model.DBModel; using NaiBa.Util.Extension; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using Work._29Tools.BLL; using Work._29Tools.Forms.ShopForms; namespace _29WxOrderWpf.Ctrls.OrderCtrls { /// /// OrderListRowHeaderCtrl.xaml 的交互逻辑 /// public partial class OrderListRowHeaderCtrl : UserControl { public OrderListRowHeaderCtrl() { InitializeComponent(); this.DataContextChanged += OrderListRowHeaderCtrl_DataContextChanged; txtOrderId.AddHandler(TextBox.MouseUpEvent, new MouseButtonEventHandler(txtOrderId_MouseLeftButtonUp), true); txtShopName.AddHandler(TextBox.MouseUpEvent, new MouseButtonEventHandler(txtShopName_MouseLeftButtonUp), true); } private void txtShopName_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (this.DataContext is oms_wei_order_info order) { var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == order.shop_id.ParseToString()); if (shop != null) { WXShopLoginForm shopLoginForm = new WXShopLoginForm(shop); ShopBLL.CheckShopLogin(shop); if (shop.LoginStatus == "登录成功") { // 在线直接进店 shopLoginForm.openType = EnumOpenType.manage; shopLoginForm.WindowState = System.Windows.Forms.FormWindowState.Maximized; shopLoginForm.InitUrl = "https://store.weixin.qq.com/shop/home"; shopLoginForm.Show(); } else { // 掉线登录 shopLoginForm.openType = EnumOpenType.login; shopLoginForm.ShowDialog(); if (shop.LoginStatus == "登录成功") { var is29SupplierRst = WxOrderSupplierBLL.GetWxSupplierList(shop); if (!is29SupplierRst.Contains("\"code\":0")) is29SupplierRst = WxOrderSupplierBLL.GetWxSupplierList(shop); if (is29SupplierRst.Contains("\"code\":0") && is29SupplierRst.Contains("\"name\":\"29供货商\"")) { shop.Is29Supplier = true; } else { ShopBLL.CheckShopLogin(shop); shop.Is29Supplier = false; } foreach (var ord in GlobalConfig.lstFilterOrder.Where(o => o.shop_id.ParseToString() == shop.ErpShopId).ToList()) { // 更新代发管理情况 foreach (var orderItem in ord.orderItems) Dispatcher.Invoke(new Action(() => { orderItem.UpdateOrderItemBuyButton(); })); } } } } } } private void txtOrderId_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (this.DataContext is oms_wei_order_info order) { var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == order.shop_id.ParseToString()); if (shop != null) { WXShopLoginForm shopLoginForm = new WXShopLoginForm(shop); shopLoginForm.openType = EnumOpenType.manage; shopLoginForm.WindowState = System.Windows.Forms.FormWindowState.Maximized; { shopLoginForm.InitUrl = "https://store.weixin.qq.com/shop/order/detail?orderid=" + order.order_id; } shopLoginForm.Show(); } } } private void OrderListRowHeaderCtrl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { if (this.DataContext is oms_wei_order_info order) { if (order.orderItems.Count > 5) { txtCount.Text = "该订单共计 " + order.orderItems.Count + " 件商品"; } } } private void Path_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { //var orderId = ((sender as Border)?.Tag).ParseToString(); if (this.DataContext is oms_wei_order_info order) { try { //Clipboard.SetText(order.order_id); // 复制成功,但会报错,改为SetDataObject Clipboard.SetDataObject(order.order_id); BaseMsgWindow.ShowAnimateMessage("复制成功"); } catch (Exception ex) { BaseMsgWindow.ShowError("复制失败 " + ex.Message); } } } private void pathShop_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { if (this.DataContext is oms_wei_order_info order) { var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ErpShopId == order.shop_id.ParseToString()); if (shop != null) { try { Clipboard.SetDataObject(shop.ShopAccount); BaseMsgWindow.ShowAnimateMessage("复制成功"); } catch (Exception ex) { BaseMsgWindow.ShowError("复制失败 " + ex.Message); } } } } } }