private void label_settle_MouseUp(object sender, MouseButtonEventArgs e) { //label_settle.Background = new ImageBrush(new BitmapImage( // new Uri("res\\button\\settle-hover.png", System.UriKind.Relative))); IntPtr bitmap = global::Tracking.Properties.Resources.settle_hover.GetHbitmap(); ImageSource source = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap( bitmap, IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()); label_settle.Background = new ImageBrush(source); //修改逻辑表项 foreach (TreeModel t in arrivedCheckedList) { //写入数据库 DBO.newRecord(t.Name, t.dst, t.dst, RES.SETTLED); //修改逻辑表,从勾选状态进入已结算状态 //arrivedCheckedList.Remove(t); settledList.Add(t); } //修改UI表结构 List <TreeModel> bills = new List <TreeModel>(); foreach (ZsmTreeView[] trees in treeList) { ZsmTreeView tree = trees[2]; for (int i = 1; i < tree.ItemsSourceData.Count(); i++) { IList <TreeModel> childrenList = tree.ItemsSourceData.ElementAt <TreeModel>(i).Children; foreach (TreeModel t in arrivedCheckedList) { if (childrenList.Contains(t)) { childrenList.Remove(t); tree.ItemsSourceData.ElementAt <TreeModel>(0).Children.Add(t); } } } tree.tvZsmTree.BeginInit(); tree.tvZsmTree.EndInit(); } //取消所有勾选 //修改UI表项 foreach (ZsmTreeView[] trees in treeList) { trees[2].menuUnSelectAll_Click(null, null); } arrivedCheckedList.RemoveRange(0, arrivedCheckedList.Count()); }
private void submit_MouseUp(object sender, MouseButtonEventArgs e) { submit.Background = new ImageBrush(new BitmapImage(new Uri("res\\button\\post-hover.png", System.UriKind.Relative))); Dictionary <string, object> dic = new Dictionary <string, object>(); dic.Add("sendername", sendername.Text); dic.Add("senderaddr", senderaddr.Text); dic.Add("senderphone", senderphone.Text); dic.Add("receivername", receivername.Text); dic.Add("receiveraddr", receiveraddr.Text); dic.Add("receiverphone", receiverphone.Text); dic.Add("sendsite", sendsite.SelectedIndex); dic.Add("receivesite", receivesite.SelectedIndex); dic.Add("price", "100"); dic.Add("type", type.SelectedIndex); string id = DBO.newGoods(dic); DBO.newRecord(id, (int)dic["sendsite"], (int)dic["receivesite"], 0); MessageBox.Show("请记住运单编号:" + id, "发货成功"); }
private void OnTimerEvent(Object source, ElapsedEventArgs e) { this.Enabled = false; if (runningList.Count() <= 0) { return; } foreach (Distance d in nodes) { d.calcMinDistance(); } List <TreeModel> toRemove = new List <TreeModel>(); foreach (TreeModel t in runningList) { if (t.trackRoute == null) { t.trackRoute = nodes[t.src].getNextNode(t.dst); } t.trackRoute.distance -= 100; if (t.trackRoute.distance <= 0) { this.Enabled = false; //到达目的地 if (t.trackRoute.next == t.dst) { NextNode n = t.trackRoute; //写入数据库 DBO.newRecord(t.Name, t.trackRoute.current, t.trackRoute.next, RES.SENDING); DBO.newRecord(t.Name, t.trackRoute.next, t.trackRoute.next, RES.ARRIVED); //修改UI表项 ZsmTreeView currentTree = treeList[n.current][1]; ZsmTreeView nextTree = treeList[n.next][2]; foreach (TreeModel dateNode in currentTree.ItemsSourceData) { if (dateNode.Children.Contains(t)) { dateNode.Children.Remove(t); IList <TreeModel> nextSource = nextTree.ItemsSourceData; int dateIndex = nextSource.Count(); while (dateIndex-- > 0) { TreeModel date2 = nextSource.ElementAt <TreeModel>(dateIndex); if (dateNode.Name.Equals(date2.Name)) { break; } } if (dateIndex == -1) { TreeModel newDate = new TreeModel(dateNode.Name); newDate.type = TreeModel.DATE; newDate.Children = new List <TreeModel>(); newDate.Children.Add(t); nextSource.Add(newDate); } else { nextSource.ElementAt <TreeModel>(dateIndex).Children.Add(t); } } } toRemove.Add(t); if (t.IsChecked) { context.moveToArrivedCheckedList(t); } } //到达下一站 else { NextNode n = nodes[t.trackRoute.next].getNextNode(t.dst); //写入数据库 DBO.newRecord(t.Name, t.trackRoute.current, t.trackRoute.next, RES.SENDING); //修改UI表项 ZsmTreeView currentTree = treeList[n.current][1]; ZsmTreeView nextTree = treeList[n.next][1]; foreach (TreeModel dateNode in treeList[t.trackRoute.current][1].ItemsSourceData) { if (dateNode.Children.Contains(t)) { dateNode.Children.Remove(t); IList <TreeModel> nextSource = treeList[t.trackRoute.next][1].ItemsSourceData; int dateIndex = nextSource.Count(); while (dateIndex-- > 0) { TreeModel date2 = nextSource.ElementAt <TreeModel>(dateIndex); if (dateNode.Name.Equals(date2.Name)) { break; } } if (dateIndex == -1) { TreeModel newDate = new TreeModel(dateNode.Name); newDate.type = TreeModel.DATE; newDate.Children = new List <TreeModel>(); newDate.Children.Add(t); nextSource.Add(newDate); } else { nextSource.ElementAt <TreeModel>(dateIndex).Children.Add(t); } } } //进入下一节点 t.trackRoute = n; } } } foreach (TreeModel t in toRemove) { runningList.Remove(t); } this.Enabled = true; foreach (ZsmTreeView[] trees in treeList) { foreach (ZsmTreeView tree in trees) { sync.Post(context.startUpdateUI, tree); sync.Post(context.endUpdateUI, tree); } } }