Exemplo n.º 1
0
        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            if (this.listView1.CheckedItems.Count < 1)
            {
                MsgBox.ShowInfo("请勾选账号!");
                return;
            }

            List <int> checkedRows = new List <int>();

            for (int i = 0; i < this.listView1.CheckedItems.Count; i++)
            {
                checkedRows.Add(this.listView1.CheckedItems[i].Index);
            }

            ThreadPool.QueueUserWorkItem(o =>
            {
                SetControlEnabled(this.toolStrip1, false);
                for (int i = 0; i < checkedRows.Count; i++)
                {
                    int index     = checkedRows[i];
                    string cookie = GetListViewItemValue(this.listView1, index, 3);

                    #region 查询余额
                    try
                    {
                        var goldInfo = PH.GetGoldInfo(cookie);
                        SetListViewItemValue(this.listView1, index, 5, goldInfo.balance + "金");
                    }
                    catch (Exception ex)
                    {
                        SetListViewItemValue(this.listView1, index, 5, "余额查询失败");
                    }
                    #endregion

                    #region 查询下次可抢购时间

                    try
                    {
                        var orders = PH.QueryOrders(cookie, OrderType.ALL, 1);
                        if (orders.Count > 0)
                        {
                            DateTime lastOrderCreateTime = PapdHelper.ConvertFromUnixTime(orders[0].createTime);
                            DateTime nextOrderCreateTime = lastOrderCreateTime.AddDays(GlobalContext.CurrentConfigInfo.CreateOrderTimespan);
                            var leftDays = Math.Round((nextOrderCreateTime - DateTime.Now).TotalDays, 1);
                            var msg      = string.Format("{0},下次抢购时间:{1}",
                                                         leftDays > 0 ? ("还有" + leftDays + "天") : "可抢",
                                                         nextOrderCreateTime.ToString("yyyy/MM/dd HH:mm:ss dddd"));
                            SetListViewItemValue(this.listView1, index, 6, msg);
                        }
                        else
                        {
                            SetListViewItemValue(this.listView1, index, 6, "可抢");
                        }
                    }
                    catch (Exception ex)
                    {
                        SetListViewItemValue(this.listView1, index, 6, "查询下次抢购时间失败");
                    }
                    #endregion
                }
                SetControlEnabled(this.toolStrip1, true);
            });
        }