Esempio n. 1
0
        private async Task Search (bool isFirst)
        {
            if(SearchForm.HasError || mIsSeaching)
            {
                return;
            }
            if(isFirst != true && mIsLoadedAllData)
            {
                return;
            }
            IsPageDataLoading = !isFirst;
            mIsSeaching = true;

            if(isFirst)
            {
                mIsLoadedAllData = false;
                mCacheSearchForm = SearchForm.Clone() as DingdanSearchForm;
                Dingdans.Clear();
            }
            try
            {
                var marks = mCacheSearchForm.MarkTypes.Split(new string[] {","}, StringSplitOptions.RemoveEmptyEntries).Select(a => (MarkType)Enum.Parse(typeof(MarkType),a,true)).ToArray();
                var biaoshiIds  = mCacheSearchForm.XiekeIds.Split(new string[] {","}, StringSplitOptions.RemoveEmptyEntries)
                        .Select(a => Convert.ToInt64(a))
                        .ToArray();
                var rev =
                    await
                        Task.Run<CombinationDingdanData>(
                            () => mDingdanService.SearchDingdansByBiaoju(biaoshiIds, marks,
                                mCacheSearchForm.StartTime,
                                mCacheSearchForm.EndTime, isFirst ? 0 : mLastId));
                if(isFirst)
                {
                    Count = rev.TotalCount.ToString();
                    TotalSalary = rev.TotalSalary.ToString();
                }

                foreach(var dingdan in rev.Items )
                {
                    var uidingdan =
                        new UIBiaojuDingdan
                        {
                            Goods = dingdan.Goods,
                            BiaojuMarkInfo = dingdan.BiaojuMarkInfo,
                            BiaojuMarkType = dingdan.BiaojuMarkType,
                            ID = dingdan.ID,
                            BangpaiType = dingdan.BangpaiType,
                            Price = dingdan.Price,
                            Salary = dingdan.Salary,
                            SrcId = dingdan.SrcId,
                            Time = dingdan.Time,
                            ZhangguiQQ = dingdan.ZhangguiQQ,
                            Biaoshi = dingdan.Biaoshi,
                            QqImage = mQqBitmapImage
                        };
                    Dingdans.Add(uidingdan);
                    QQHelper.GetQQStatusImage(uidingdan.ZhangguiQQ, image => { uidingdan.QqImage = image; });
                }

                if(rev.Items .Count > 0)
                {
                    mLastId = rev.Items [rev.Items .Count - 1].ID;
                }
                mIsLoadedAllData = rev.IsLoadedAllData;
                if(isFirst)
                {
                    DingdanView.View.MoveCurrentToFirst();
                }
            } catch(Exception)
            {
                throw;
            } finally
            {
                mIsSeaching = false;
                IsPageDataLoading = false;
            }
        }
Esempio n. 2
0
        private async Task Search (bool isFirst)
        {
            IsExportEnabled = true;
            if(SearchForm.HasError || mIsSeaching)
            {
                return;
            }
            if(isFirst != true && mIsLoadedAllData)
            {
                return;
            }
            IsPageDataLoading = !isFirst;
            mIsSeaching = true;
            IsSearchEnable = false;

            if(isFirst)
            {
                mIsLoadedAllData = false;
                mCacheSearchForm = SearchForm.Clone() as DingdanSearchForm;
                Dingdans.Clear();
            }
            try
            {
                var rev = await Task.Run<CombinationDingdanData>(() =>
                {
                    return    mDingdanService.SearchDingdansByZhanggui(

                        mCacheSearchForm.DianpuIds.Split(',').Select(a => Convert.ToInt64(a)).ToArray(),
                        mCacheSearchForm.MarkTypes.Split(',')
                            .Select(a => (MarkType)Enum.Parse(typeof(MarkType), a))
                            .ToArray(),
                        mCacheSearchForm.StartTime,
                        mCacheSearchForm.EndTime,
                        isFirst ? 0 : mLastId);
                });
                if(isFirst)
                {
                    Count = rev.TotalCount.ToString();
                    TotalSalary = rev.TotalSalary.ToString();
                }

                foreach(var dingdan in rev.Items)
                {
                    var uidingdan =
                        new UIZhangguiDingdan
                        {
                            Goods = dingdan.Goods,
                            ZhangguiMarkInfo = dingdan.ZhangguiMarkInfo,
                            ZhangguiMarkType = dingdan.ZhangguiMarkType,
                            ID = dingdan.ID,
                            BangpaiType = dingdan.BangpaiType,
                            Price = dingdan.Price,
                            Salary = dingdan.Salary,
                            SrcId = dingdan.SrcId,
                            Time = dingdan.Time, 
                            Dianpu = dingdan.Dianpu,
                            BiaojuQQ = dingdan.BiaojuQQ,
                            QqImage = mQqBitmapImage,
                            Biaoshi = dingdan.Biaoshi
                        };
                    Dingdans.Add(uidingdan);
                    QQHelper.GetQQStatusImage(uidingdan.BiaojuQQ, image => { uidingdan.QqImage = image; });
                }

                if(rev.Items.Count > 0)
                {
                    mLastId = rev.Items[rev.Items.Count - 1].ID;
                }
                mIsLoadedAllData = rev.IsLoadedAllData;
                if(isFirst)
                {
                    DingdanView.View.MoveCurrentToFirst();
                }

            } catch(Exception)
            {
                throw;
            } finally
            {
                mIsSeaching = false;
                IsPageDataLoading = false;
                Task.Run(async () =>
                {
                    await Task.Delay(5000);
                    IsSearchEnable = true;
                });
            }
        }
Esempio n. 3
0
        private async Task Search (bool isFirst)
        {
            if(SearchForm.HasError || mIsSeaching)
            {
                return;
            }
            if(isFirst != true && mIsLoadedAllData)
            {
                return;
            }
            IsPageDataLoading = !isFirst;
            mIsSeaching = true;

            if(isFirst)
            {
                mIsLoadedAllData = false;
                mCacheSearchForm = SearchForm.Clone() as DingdanSearchForm;
                Dingdans.Clear();
            }
            try
            {
                var rev = await Task.Run(() => mDingdanService.SearchDingdansByMengzhu(mCacheSearchForm.StartTime,
                    mCacheSearchForm.EndTime, isFirst ? 0 : mLastId));
                   
                  
                if(isFirst)
                {
                    Count = rev.TotalCount.ToString();
                    TotalSalary = rev.TotalSalary.ToString();
                }

                foreach (var dingdan in rev.Items )
                {
                    var uidingdan =
                        new UIMengzhuDingdan()
                        {
                            Goods = dingdan.Goods,
                            ZhangguiMarkInfo = dingdan.ZhangguiMarkInfo,
                            ZhangguiMarkType = dingdan.ZhangguiMarkType,
                            
                            ID = dingdan.ID,
                            BangpaiType = dingdan.BangpaiType,
                            Price = dingdan.Price,
                            Salary = dingdan.Salary,
                            SrcId = dingdan.SrcId,
                            Time = dingdan.Time, 
                            Dianpu = dingdan.Dianpu,
                            BiaojuQQ = dingdan.BiaojuQQ, 
                            Zhanggui = dingdan.Zhanggui,
                            Biaoju = dingdan.Biaoju ,
                            Biaoshi = dingdan.Biaoshi,
                            BiaojuId = dingdan.BiaojuId.ToString(),
                            ZhangguiId = dingdan.ZhangguiId.ToString()
                        };
                    Dingdans.Add(uidingdan); 
                }

                if(rev.Items .Count > 0)
                {
                    mLastId = rev.Items [rev.Items .Count - 1].ID;
                }
                mIsLoadedAllData = rev.IsLoadedAllData;
                if(isFirst)
                {
                    DingdanView.View.MoveCurrentToFirst();
                }
            } catch(Exception)
            {
                throw;
            } finally
            {
                mIsSeaching = false;
                IsPageDataLoading = false;
            }
        }