Example #1
0
        public List <HashMap> GetDataList(DateTime date, string cookie)
        {
            BillManage    bill = new BillManage();
            List <string> list = bill.GetBillList <string>(date, cookie);

            JsonSerializer serializer = JsonSerializer.CreateInstance();
            string         user       = GetUser(cookie);

            StringBuilder  sbuilder = new StringBuilder();
            DateTime       cdate    = DateTime.Now;
            List <HashMap> rtList   = new List <HashMap>();

            foreach (string str in list)
            {
                List <HashMap> tempList = GetBillList(serializer, str, date, user);
                rtList.AddRange(tempList.ToArray());
            }

            return(rtList);
        }
Example #2
0
        internal void GetDetailsData(string cookies, List <HashMap> billDataList, SendDetailState detailSetate = null)
        {
            if (string.IsNullOrEmpty(cookies))
            {
                throw new Exception("请输入cookies");
            }
            string user = GetUser(cookies);
            Dictionary <ulong, string> dictionary = new Dictionary <ulong, string>();
            JsonSerializer             serializer = JsonSerializer.CreateInstance();

            for (int i = 0; i < billDataList.Count; i++)
            {
                IHashMap item     = billDataList[i];
                string   status   = item.Get <string>("status");
                HashMap  tempHash = serializer.Deserialize <HashMap>(item["content"].ToString());
                if (tempHash == null)
                {
                    continue;
                }
                ArrayList array = (ArrayList)((HashMap)tempHash["statusInfo"])["operations"];

                foreach (HashMap aitem in array)
                {
                    if (!"详情".Equals(aitem.Get <string>("text")))
                    {
                        continue;
                    }
                    string url  = string.Format("https:{0}", aitem.Get <string>("url"));
                    string tbid = item.Get <string>("tbid");

                    HashMap detail = GetBillDetail(tbid, url, cookies, i + 1, billDataList.Count, detailSetate);
                    //if (detail == null)//下载出错,直接移除
                    //{
                    //    billDataList.RemoveAt(i);
                    //    i--;
                    //}
                    item.Add("detail", detail);
                    break;
                }
            }
        }